-
Notifications
You must be signed in to change notification settings - Fork 3k
Add PSA build components to build configuration for non-PSA targets #8680
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code looks okay, but the commit message should explain how this works and why the default target gets the values it does.
Are any tests needed to check this is working as expected? What if someone adds a new target and they use "components"
instead of "components_add"
? It seems a bit fragile in that regard.
@Patater, components_add is the best we came up with with current configuration system. If onyobe have better ideas, please do share, we are open for suggestions. Regarding tests, it was tested manually. I do not see how you can we test configuration changes automatically. The changes are in configuration and not in the parser code. Regarding the commit message, @orenc17, can you please reword commit message. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@Patater, the problem you raise can already happen with this inheritance scheme, take for example the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems fine to me.
My testing concern is not about testing this as-is, but testing for regressions introduced by new targets that don't know they shouldn't use "components". As @mikisch81 points out, it seems we also need a test for Another issue is that the commit message isn't up to our standards (https://os.mbed.com/docs/latest/reference/workflow.html#guidelines-for-github-pull-requests) |
I too am confused by the difference between Would it be possible to clarify? |
@cmonr,
|
I want to emphasize that the PR only configures targets slightly different ba adding PSA related components to default target. This may seem unclear for now, as this is a initial commit for allowing integration with other modules. You can take a look at https://github.com/kfnta/mbed-os/tree/feature-psa for more details. |
Work seems to have been addressed: |
Build : SUCCESSBuild number : 3597 Triggering tests/morph test |
Exporter Build : SUCCESSBuild number : 3202 |
Test : FAILUREBuild number : 3374 |
re-try for seemingly unrelated network issue: |
I checked locally and |
restarting the build /morph build |
Build : SUCCESSBuild number : 3600 Triggering tests/morph test |
Test : FAILUREBuild number : 3377 |
@0xc0170 @NirSonnenschein guys is it safe now to re-trigger the tests? |
@mikisch81 unfortunately CI is still not stable yet, we will try to re-run as soon as it is working as expected. |
/morph build |
This would make for a good issue topic so that we can track and assign work to it. @alzix Thanks for the clarification on the difference between labels. Should we expect any kind of documentation around the new label? |
Build : SUCCESSBuild number : 3614 Triggering tests/morph test |
Exporter Build : FAILUREBuild number : 3218 |
/morph export-build |
Test : FAILUREBuild number : 3393 |
Exporter Build : SUCCESSBuild number : 3220 |
* Added PSA components to base Target in targets.json * Fix all targets declaring components
Rebased on top of master branch |
/morph build |
Build : SUCCESSBuild number : 3617 Triggering tests/morph test |
@Patater Could you please check if you are now happy with these changes ? |
Exporter Build : SUCCESSBuild number : 3225 |
Test : SUCCESSBuild number : 3399 |
@cmonr So it can be merged, there are a couple of PRs dependent on this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@ARMmbed/mbed-os-maintainers According to this description, this appears like it came in too soon? Fingers crossed that's not the case. |
That's not the case, the 2 PRs are not dependent, the kvstore PR has nothing to do with this PR. |
Description
Target
intargets.json
Full list of components and assignment to targets is listed below:
[Target]
[NSPE_Target]
[SPE_Target]
[NSPE_Target]
[SPE_Target]
PSA_SRV_IMPL
PSA_SRV_EMUL
PSA_SRV_IPC
SPE
NSPE
SPM_MAILBOX
SPM_MAILBOX/NSPE
SPM_MAILBOX/SPE
PSA_SRV_IMPL
- include secure service business logic implementation code. For example mbedCrytpo or secure time core logicPSA_SRV_EMUL
- include a wrapper code for non-PSA platforms, that provides PSA API compliance, by directly invoking code fromPSA_SRV_IMPL
PSA_SRV_IPC
- include a wrapper code for PSA platforms that calls IPC PSA API for invokingPSA_SRV_IMPL
inSPE
SPE
- include code that compiles ONLY to secure image and never compiles to non-secure imageNSPE
- include code that compiles ONLY to snon-secure image and never compiles to secure imageSPM_MAILBOX
- include mailbox driver implementation code for multicore targetsPull request type
@theotherjimmy @Patater @alzix