| 84c0a67b | 29-Jan-2024 |
Olivier Masse <olivier.masse@nxp.com> |
drivers: caam: Update CCB Clear Written Register
Introduce more CCB CLR WR register
Signed-off-by: Olivier Masse <olivier.masse@nxp.com> Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked
drivers: caam: Update CCB Clear Written Register
Introduce more CCB CLR WR register
Signed-off-by: Olivier Masse <olivier.masse@nxp.com> Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| b78d0115 | 29-Jan-2024 |
Olivier Masse <olivier.masse@nxp.com> |
drivers: caam: Add SEQ FIFO Load
Introduce Sequence Fifo load command
Signed-off-by: Olivier Masse <olivier.masse@nxp.com> Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wikl
drivers: caam: Add SEQ FIFO Load
Introduce Sequence Fifo load command
Signed-off-by: Olivier Masse <olivier.masse@nxp.com> Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 76d6685e | 17-Dec-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
tree-wide: use power-of-2 rounding macros where applicable
Use ROUNDUP2(), ROUNDUP2_OVERFLOW(), ROUNDUP2_DIV() and ROUNDDOWN2() at places where the rounding argument is a variable value and we want
tree-wide: use power-of-2 rounding macros where applicable
Use ROUNDUP2(), ROUNDUP2_OVERFLOW(), ROUNDUP2_DIV() and ROUNDDOWN2() at places where the rounding argument is a variable value and we want to leverage the implementation of these routines optimized for a power-of-2 rounding argument.
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 4f75eab0 | 22-Oct-2024 |
yuzexi <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: add RSA algorithm
Add RSA support in Hisilicon crypto drivers.
Signed-off-by: yuzexi <yuzexi@hisilicon.com> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Acke
driver: crypto: hisilicon: add RSA algorithm
Add RSA support in Hisilicon crypto drivers.
Signed-off-by: yuzexi <yuzexi@hisilicon.com> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 67da2ad7 | 22-Oct-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: stm32_cryp: remove registering to shared_resource driver
Remove registering of STM32 CRYP driver to shared_resources driver that is deprecated since integration of the firewall framework an
drivers: stm32_cryp: remove registering to shared_resource driver
Remove registering of STM32 CRYP driver to shared_resources driver that is deprecated since integration of the firewall framework and will soon be removed.
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Reviewed-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
show more ...
|
| 461cf006 | 20-Jun-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
drivers: caam: sm: fix SM partition permission in SMAG registers
SM partition SMAG1 permissions were wrongly set for generating DEK blob which results in error while decapsulating DEK blob during HA
drivers: caam: sm: fix SM partition permission in SMAG registers
SM partition SMAG1 permissions were wrongly set for generating DEK blob which results in error while decapsulating DEK blob during HAB encrypted boot. Setting the permissions correctly fix this issue.
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Fixes: 2a12ae237796 ("drivers: caam: add CAAM secure memory driver")
show more ...
|
| ba7db6e0 | 14-Nov-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
drivers: caam: enable/disable prediction resistance based on CONFIG flag
With prediction resistance enabled, on every random number request CAAM is forced to do reseeding of DRBG, which is time taki
drivers: caam: enable/disable prediction resistance based on CONFIG flag
With prediction resistance enabled, on every random number request CAAM is forced to do reseeding of DRBG, which is time taking process which leads to lower Random number generation performance. So to give user the flexibility to enable/disable this feature a flag CFG_CAAM_RNG_RUNTIME_PR is introduced. By default it will be disabled and user can enable it as per its requirement.
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| cbb7d5e5 | 29-May-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
driver: caam: disable RNG buffering
Previous design of keeping RNG data in a buffer and giving random number to user from that buffer is vulnerable to attacks and also not NIST/FIPS compliant. So to
driver: caam: disable RNG buffering
Previous design of keeping RNG data in a buffer and giving random number to user from that buffer is vulnerable to attacks and also not NIST/FIPS compliant. So to make it more secure and NIST/FIPS compliant, will get random number from CAAM on each user request.
Reference: Section 2.7 of NIST SP 800-90C
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 116d03ab | 04-Nov-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
drivers: caam: cache align Key blob modifier
An array was used as Key blob modifier, changed it cache aligned dynamic memory.
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens W
drivers: caam: cache align Key blob modifier
An array was used as Key blob modifier, changed it cache aligned dynamic memory.
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 36179ff1 | 31-May-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
drivers: caam: check only format bit in operation
operation variable has been updated after entering the function so we cannot check against full RSA operations. Updated to check only format bit in
drivers: caam: check only format bit in operation
operation variable has been updated after entering the function so we cannot check against full RSA operations. Updated to check only format bit in operation
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| cf865357 | 04-Nov-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
drivers: caam: fix CFG_CORE_BIGNUM_MAX_BITS
CFG_CORE_BIGNUM_MAX_BITS should be 4576 4096 (RSA Max key size) + 8 * 60 (Header serialization and Black blob overhead in bytes)
Signed-off-by: Sahil Mal
drivers: caam: fix CFG_CORE_BIGNUM_MAX_BITS
CFG_CORE_BIGNUM_MAX_BITS should be 4576 4096 (RSA Max key size) + 8 * 60 (Header serialization and Black blob overhead in bytes)
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| dd7b51e5 | 06-Nov-2024 |
Jorge Ramirez-Ortiz <jorge@foundries.io> |
crypto: se05x: improve object deletion logs
For SE05x, only private keys are stored in the secure element: the OP-TEE secure storage REE/RPMB retains the full public key but just a handle to the pri
crypto: se05x: improve object deletion logs
For SE05x, only private keys are stored in the secure element: the OP-TEE secure storage REE/RPMB retains the full public key but just a handle to the private key.
If the secure element's persistent storage is erased, but OP-TEE's secure storage remains, the public key can still be accessed while the private key is inaccessible. However, in such cases, the 'key' will still appear as present in the PKCS#11 database.
When CFG_CORE_SE05X_BLOCK_OBJ_DEL_ON_ERROR is enabled (not by default) and the key pointed to by the handle is not present in the secure element, OP-TEE PKCS#11 clients will encounter an error when attempting to delete the private key information held in the OP-TEE secure storage.
If the setting is disabled, the PKCS#11 storage clears the private key handle without errors.
This commit removes some ambiguity, so users do not see error messages when operations complete successfully.
It also fails on sss_se05x_key_object_init errors unconditionally since a failure on this function can only signify some form of stack corruption.
Signed-off-by: Jorge Ramirez-Ortiz <jorge@foundries.io> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 6a0116ed | 04-Oct-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: use fdt_reg_info()
Use fdt_reg_info() instead of fdt_reg_base_address() and fdt_reg_size() to optimize look up in the DT due to finding parent node.
Signed-off-by: Etienne Carriere <etienn
drivers: use fdt_reg_info()
Use fdt_reg_info() instead of fdt_reg_base_address() and fdt_reg_size() to optimize look up in the DT due to finding parent node.
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 7e29b821 | 05-Nov-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
drivers: caam: Update comments in ECC driver
There were some typos in comments in the code, updated them
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> |
| e64a5512 | 05-Nov-2024 |
Sahil Malhotra <sahil.malhotra@nxp.com> |
drivers: caam: Update comments in RSA driver
There were some typos in comments in the code, updated them
Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> |
| 82affb6a | 28-Sep-2023 |
Clement Faure <clement.faure@nxp.com> |
drivers: caam: hal: add caam_hal_sm_get_base_dt() implementation
Implement caam_hal_sm_get_base_dt() function when CFG_DT=y
Signed-off-by: Clement Faure <clement.faure@nxp.com> Signed-off-by: Sahil
drivers: caam: hal: add caam_hal_sm_get_base_dt() implementation
Implement caam_hal_sm_get_base_dt() function when CFG_DT=y
Signed-off-by: Clement Faure <clement.faure@nxp.com> Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 75be62ae | 15-Jun-2021 |
Franck LENORMAND <franck.lenormand@nxp.com> |
drivers: caam: skip JR init of CFG_JR_HAB_INDEX
On iMX8M SoC, the HAB requires the JR0 to be set to secure world to decrypt the kernel image when loading the image in U-Boot.
Before reaching u-boot
drivers: caam: skip JR init of CFG_JR_HAB_INDEX
On iMX8M SoC, the HAB requires the JR0 to be set to secure world to decrypt the kernel image when loading the image in U-Boot.
Before reaching u-boot, OP-TEE and TF-A set the JR0 to the non-secure domain that leads to a HAB failure when trying to decrypt the kernel.
To fix the issue, this commit introduces CFG_JR_HAB_INDEX that specifies which JR the HAB uses. OPTEE will skip the initialization of CFG_JR_HAB_INDEX and leave it as secure.
It will also disable its usage in the device tree to inform the kernel.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Signed-off-by: Franck LENORMAND <franck.lenormand@nxp.com> Signed-off-by: Sahil Malhotra <sahil.malhotra@nxp.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| c7834440 | 23-Sep-2024 |
Maxime Méré <maxime.mere@foss.st.com> |
drivers: crypto: stm32: fix SAES driver set_field_u32 usage
set_field_u32() is a function that allows you to change a specific bit in a register by using a mask. The function returns the full value
drivers: crypto: stm32: fix SAES driver set_field_u32 usage
set_field_u32() is a function that allows you to change a specific bit in a register by using a mask. The function returns the full value of the register, which means that the use of bitwise OR here is a mistake. The current code works here only because the modified registers are initialized. Moreover, I've reverted a commit as there is no need to shift the value as the function already does it.
Fix the usage of the function in the SAES driver by replacing bitwise OR assignments with simple assignments.
Fixes: c83a542f3734 ("drivers: crypto: stm32: fix SAES key selection") Fixes: 4320f5cf30c5 ("crypto: stm32: SAES cipher support") Signed-off-by: Maxime Méré <maxime.mere@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| a4203052 | 19-Aug-2024 |
yuzexi <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: add montgomery algorithm
add operation of X25519 and X448 algorithm, including alloc_keypair, gen_keypar and shared_secret
Signed-off-by: yuzexi <yuzexi@hisilicon.com> Ac
driver: crypto: hisilicon: add montgomery algorithm
add operation of X25519 and X448 algorithm, including alloc_keypair, gen_keypar and shared_secret
Signed-off-by: yuzexi <yuzexi@hisilicon.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 0c05871e | 29-Jul-2024 |
leisen <leisen1@huawei.com> |
drivers: crypto: hisilicon: add authenc algorithm
Add authenc algorithm for hisilicon SEC driver
Signed-off-by: leisen <leisen1@huawei.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> |
| 8448708b | 08-Aug-2024 |
Zexi Yu <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: replace free() and memzero() by free_wipe()
replace free() and memzero() by free_wipe()
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.f
driver: crypto: hisilicon: replace free() and memzero() by free_wipe()
replace free() and memzero() by free_wipe()
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 5cab250e | 08-Aug-2024 |
Zexi Yu <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: delete msg->result which is not used
delete msg->result which is not used
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linar
driver: crypto: hisilicon: delete msg->result which is not used
delete msg->result which is not used
Signed-off-by: Zexi Yu <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| b5203cb1 | 17-Jul-2024 |
yuzexi <yuzexi@hisilicon.com> |
driver: crypto: hisilicon: add ECC sign and verify
add ECC sign and verify
Signed-off-by: yuzexi <yuzexi@hisilicon.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> |
| e885351c | 04-Jul-2024 |
leisen <leisen1@huawei.com> |
drivers: crypto: hisilicon: fix incorrect use of error code
Fix incorrect use of memory-related error code in hash algorithm.
Fixes: 94c8a3397ec4 ("drivers: crypto: hisilicon:Add HASH and HMAC algo
drivers: crypto: hisilicon: fix incorrect use of error code
Fix incorrect use of memory-related error code in hash algorithm.
Fixes: 94c8a3397ec4 ("drivers: crypto: hisilicon:Add HASH and HMAC algorithm") Signed-off-by: leisen <leisen1@huawei.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 562874be | 26-May-2024 |
leisen <leisen1@huawei.com> |
drivers: crypto: hisilicon: Add cipher algorithm
Add DES, 3DES, AES and SM4 cipher algorithm
Signed-off-by: leisen <leisen1@huawei.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by
drivers: crypto: hisilicon: Add cipher algorithm
Add DES, 3DES, AES and SM4 cipher algorithm
Signed-off-by: leisen <leisen1@huawei.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|