-
Notifications
You must be signed in to change notification settings - Fork 713
[nrf noup] boards: nordic: Enable PSA RNG for nrf54h20 #3346
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
base: main
Are you sure you want to change the base?
Conversation
ironside PSA is currently not available upstream, just to clarify for others reading the PR description. |
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.
I'm not sure what entropy-prng is.
But having PSA provide entropy by default on 54H makes sense to me as it is the most secure source of entropy.
Users that want faster, less secure, entropy can explicitly develop/configure this at a later time I suppose.
3ce7175
to
3282d05
Compare
subsys/secure_storage/Kconfig
Outdated
menuconfig SECURE_STORAGE | ||
bool "Secure storage subsystem" | ||
depends on !BUILD_WITH_TFM | ||
depends on !NRF_IRONSIDE |
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.
missing #
in Upstream PR #
bool "PSA Crypto API" | ||
help | ||
Enable a PSA Crypto API provider in the build. If TF-M is enabled then | ||
it will be used for this scope, otherwise Mbed TLS will be used. |
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.
The help text doesn't mention out-of-tree providers.
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.
Looks great!
Noup since Ironside not available upstream and it is required for PSA RNG. This enables the PSA RNG as the default Zephyr entropy provider for the nrf54h20dk cpuapp and cpurad targets. Signed-off-by: Georgios Vasilakis <[email protected]>
…PTO_PSA The dependency should be PSA_CRYPTO_CLIENT and not MBEDTLS_PSA_CRYPTO_CLIENT because the former is more generic. TF-M can indeed provide PSA Crypto API, not only Mbed TLS. Upstream PR: 96415 Signed-off-by: Valerio Setti <[email protected]>
…_PSA_CRYPTO_C The driver code only relies on legacy Mbed TLS crypto, not on PSA API, so enabling MBEDTLS_PSA_CRYPTO_C is not needed here. Upstream PR: 96415 Signed-off-by: Valerio Setti <[email protected]>
…_C in BT_SILABS_EFR32 The driver only uses psa_generate_random() so ENTROPY_C is not required. Upstream PR: 96415 Signed-off-by: Valerio Setti <[email protected]>
…YPTO The goal of new Kconfig PSA_CRYPTO_PROVIDER is to automatically enable any of the PSA Crypto API provider available for the platform without having the user to manually pick the proper one. This provider can be either TF-M, if that's enabled in the build, or Mbed TLS otherwise. PSA_CRYPTO_PROVIDER simplifies also modules/subsystem Kconfigs removing blocks as: select MBEDTLS if !BUILD_WITH_TFM select MBEDTLS_PSA_CRYPTO_C if !BUILD_WITH_TFM Kconfig PSA_CRYPTO_PROVIDER_CUSTOM is also added to allow the end user to add a custom implementation of PSA Crypto API instead of TF-M or Mbed TLS ones. Upstream PR: 96415 Signed-off-by: Valerio Setti <[email protected]>
d786150
to
919f434
Compare
Exclude the application and radio core targets for nRF54H20 since they use Ironside as their PSA storage provider. Signed-off-by: Georgios Vasilakis <[email protected]>
5344fd6
to
ca2e1e8
Compare
Noup since Ironside not available upstream and it is required for PSA RNG.
This enables the PSA RNG as the default Zephyr entropy provider for the nrf54h20dk cpuapp and cpurad targets.