Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some backend changes #28

Merged
merged 4 commits into from
Jun 12, 2024
Merged

Some backend changes #28

merged 4 commits into from
Jun 12, 2024

Conversation

naushir
Copy link
Collaborator

@naushir naushir commented May 1, 2024

This will break the kernel driver if not updated together.

@naushir
Copy link
Collaborator Author

naushir commented May 1, 2024

@davidplowman and @njhollinghurst we won't merge this yet, but just a heads-up.

These cannot be used to make a derived class.  Also change the protected
section to private.

Signed-off-by: Naushir Patuck <[email protected]>
To allow the BackEnd and FrontEnd objects to be safely shared between
processes, it must be a standard layout type.  Add a static_assert to
ensure this is the case.

Remove the const reference PiSPVariant members from both BackEnd and
FrontEnd and replace with a const PiSPVariant member.

Remove all BackEnd default config std::map types.  These are replaced by
std::vector<std::pair<.,.>> types which are standard layout types.

Signed-off-by: Naushir Patuck <[email protected]>
Remove the various extras fields from struct pisp_be_config. These
fields are not used by the driver nor the hardware, so do not belong
in this structure.

Signed-off-by: Naushir Patuck <[email protected]>
These are never used by either the kernel driver or libpisp.

Signed-off-by: Naushir Patuck <[email protected]>
@naushir
Copy link
Collaborator Author

naushir commented Jun 5, 2024

@davidplowman and @njhollinghurst

This change removes the extra fields from the BE config structure, but keeps backward compatibility. The "standard layout" change is needed for libcamera.

@naushir
Copy link
Collaborator Author

naushir commented Jun 5, 2024

Sadly these changes will break the simulator and the run-test. These will need fixing up soon...

@naushir naushir marked this pull request as ready for review June 5, 2024 12:28
@njhollinghurst
Copy link
Collaborator

LGTM. The padding is a useful kludge for compatibility, e.g. for people running an older image who might need to upgrade their kernel for some other reason. I can help with the simulator/HAL changes.

@naushir naushir merged commit d5878b2 into main Jun 12, 2024
5 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants