-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
entropy: Add PSA rng as the entropy provider for the nrf54h20 #17200
base: main
Are you sure you want to change the base?
Changes from all commits
d0f98bd
fb042cf
b0e4725
742e25a
a87d15d
aed90dc
2a13835
6d2b472
d31662d
fa4046f
486c38a
ba25e36
0fc4139
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
# | ||
# Copyright (c) 2024 Nordic Semiconductor ASA | ||
# | ||
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause | ||
# | ||
|
||
# Disable serial and UART interface. | ||
CONFIG_SERIAL=n | ||
CONFIG_UART_CONSOLE=n | ||
CONFIG_LOG=n | ||
|
||
# RAM usage configuration | ||
CONFIG_HEAP_MEM_POOL_SIZE=8192 | ||
CONFIG_MAIN_STACK_SIZE=2048 | ||
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=2048 | ||
|
||
# BT configuration | ||
CONFIG_BT=y | ||
CONFIG_BT_HCI_RAW=y | ||
CONFIG_BT_MAX_CONN=1 | ||
CONFIG_BT_CTLR_ASSERT_HANDLER=y | ||
CONFIG_BT_PERIPHERAL=y | ||
CONFIG_BT_CENTRAL=n | ||
CONFIG_BT_BUF_ACL_RX_SIZE=502 | ||
CONFIG_BT_BUF_ACL_TX_SIZE=251 | ||
CONFIG_BT_CTLR_DATA_LENGTH_MAX=251 | ||
CONFIG_BT_CTLR_PHY_2M=n | ||
|
||
# ipc_radio | ||
CONFIG_IPC_RADIO_BT=y | ||
CONFIG_IPC_RADIO_BT_HCI_IPC=y | ||
|
||
# NRF_802154_ENCRYPTION is not enabled by default in the `overlay-802154.conf` file | ||
# that is pulled in by NETCORE_IPC_RADIO_IEEE802154 in application's Kconfig.sysbuild. | ||
# For Wi-Fi builds, this option will not get applied anyway. | ||
CONFIG_NRF_802154_ENCRYPTION=y |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -29,6 +29,12 @@ config NORDIC_SECURITY_BACKEND | |
Note that this will enable nrf_oberon by default. Multiple backends is | ||
not supported. | ||
|
||
config PSA_SSF_CRYPTO_CLIENT | ||
bool | ||
prompt "PSA crypto provided through SDFW Service Framework (SSF)" | ||
default y | ||
depends on SSF_CLIENT && SSF_PSA_CRYPTO_SERVICE_ENABLED | ||
Comment on lines
+32
to
+36
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Just an observation: since the SSF PSA crypto client exists solely as a backend for this API, we could consider integrating it more closely in the future There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think that it makes a lot of sense to do that indeed! |
||
|
||
config NRF_SECURITY | ||
tomi-font marked this conversation as resolved.
Show resolved
Hide resolved
|
||
bool | ||
prompt "Enable nRF Security" if !PSA_PROMPTLESS | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
/* | ||
* Copyright (c) 2024 Nordic Semiconductor ASA | ||
* | ||
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause | ||
*/ | ||
|
||
/* This is intentionally empty since the SSF doesn't support any configuration yet. */ |
This file was deleted.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
/* | ||
* Copyright (c) 2025 Nordic Semiconductor ASA | ||
* | ||
* SPDX-License-Identifier: LicenseRef-Nordic-5-Clause | ||
*/ | ||
|
||
#include <psa/crypto.h> | ||
|
||
/* This define exists in the psa_crypto.c file, I kept the same | ||
* name here so that it can be searched the same way. | ||
* In the psa_core.c this define is the concatenation of | ||
* PSA_CRYPTO_SUBSYSTEM_DRIVER_WRAPPERS_INITIALIZED (=0x1)| | ||
* PSA_CRYPTO_SUBSYSTEM_KEY_SLOTS_INITIALIZED (=0x2)| | ||
* PSA_CRYPTO_SUBSYSTEM_TRANSACTION_INITIALIZED (=0x4) | ||
* Just for conformity I kept the same value here. | ||
*/ | ||
#define PSA_CRYPTO_SUBSYSTEM_ALL_INITIALISED (0x7) | ||
|
||
/* This function is defined in psa_crypto_core.h */ | ||
int psa_can_do_hash(psa_algorithm_t hash_alg) | ||
{ | ||
(void) hash_alg; | ||
Check warning on line 22 in subsys/nrf_security/src/ssf_secdom/ssf_psa_core_compatibility.c
|
||
/* No initialization is needed when SSF is used, so just return the | ||
* expected value here. | ||
Check failure on line 24 in subsys/nrf_security/src/ssf_secdom/ssf_psa_core_compatibility.c
|
||
*/ | ||
return PSA_CRYPTO_SUBSYSTEM_ALL_INITIALISED; | ||
Check warning on line 26 in subsys/nrf_security/src/ssf_secdom/ssf_psa_core_compatibility.c
|
||
} | ||
|
||
/* This function is defined in psa_crypto_core.h */ | ||
int psa_can_do_cipher(psa_key_type_t key_type, psa_algorithm_t cipher_alg) | ||
{ | ||
(void) key_type; | ||
Check warning on line 32 in subsys/nrf_security/src/ssf_secdom/ssf_psa_core_compatibility.c
|
||
(void) cipher_alg; | ||
Check warning on line 33 in subsys/nrf_security/src/ssf_secdom/ssf_psa_core_compatibility.c
|
||
/* No initialization is needed when SSF is used, so just return the | ||
* expected value here. | ||
Check failure on line 35 in subsys/nrf_security/src/ssf_secdom/ssf_psa_core_compatibility.c
|
||
*/ | ||
return PSA_CRYPTO_SUBSYSTEM_ALL_INITIALISED; | ||
Check warning on line 37 in subsys/nrf_security/src/ssf_secdom/ssf_psa_core_compatibility.c
|
||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -20,3 +20,11 @@ | |
&usbhs { | ||
status = "disabled"; | ||
}; | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It does not help for high current consumption... There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I will revert this commit , the low level tests are passing now but the reason that they failed before was not that I enabled these dts entries. |
||
&cpusec_cpuapp_ipc { | ||
status = "disabled"; | ||
}; | ||
|
||
&cpusec_bellboard { | ||
status = "disabled"; | ||
}; |
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.
Are those two
/library
paths actually needed?