| 5d49c2f4 | 01-Oct-2021 |
Clement Faure <clement.faure@nxp.com> |
drivers: caam: check destination buffer size before copying message
At the end of the RSA-OAEP decryption operation, check if the destination message buffer is big enough to hold the output of the d
drivers: caam: check destination buffer size before copying message
At the end of the RSA-OAEP decryption operation, check if the destination message buffer is big enough to hold the output of the decryption operation. If the buffer is too small, return TEE_ERROR_SHORT_BUFFER error code along the expected buffer size.
Fixes: 796ea6d867 ("drivers: caam: implement NXP CAAM Driver - RSA") Signed-off-by: Clement Faure <clement.faure@nxp.com> Reviewed-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| d1b3da61 | 13-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
ARM: dts: stm32mp15: secure-status from RCC node
Remove specific secure-status property from RCC clock/reset device node in the DT since useless now that RCC secure hardening configuration is driven
ARM: dts: stm32mp15: secure-status from RCC node
Remove specific secure-status property from RCC clock/reset device node in the DT since useless now that RCC secure hardening configuration is driven from the node compatible property, not from status/secure-status state.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| ecef9014 | 03-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: clk: split clock initialization sequence
Move clock initialization sequence from function stm32mp1_clk_early_init() to a new local function stm32mp1_clk_init() that get all FDT refere
plat-stm32mp1: clk: split clock initialization sequence
Move clock initialization sequence from function stm32mp1_clk_early_init() to a new local function stm32mp1_clk_init() that get all FDT references. This change will allow to factorize clock initialization when generic clock framework will be supported.
Implement enable_rcc_tzen() and disable_rcc_tzen() helper functions for the same purpose.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| d40ee790 | 24-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: clk: new compatible st,stm32mp1-rcc-secure
Update to Linux v5.14 DT bindings on RCC clock driver. Legacy compatible "st,stm32mp1-rcc" relates to RCC with security hardening disabled.
plat-stm32mp1: clk: new compatible st,stm32mp1-rcc-secure
Update to Linux v5.14 DT bindings on RCC clock driver. Legacy compatible "st,stm32mp1-rcc" relates to RCC with security hardening disabled. New compatible "st,stm32mp1-rcc-secure" relates to platforms where RCC security hardening is enabled. The new compatible was introduced in Linux kernel v5.14 from [1].
Link: [1] https://lore.kernel.org/r/20210617051814.12018-11-gabriel.fernandez@foss.st.com Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| aae59a1e | 24-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
drivers: stm32_gpio: inline function when without GPIO support
Provide an implementation for GPIO configuration when the driver is not embedded (CFG_STM32_GPIO!=y). In such configuration, platform c
drivers: stm32_gpio: inline function when without GPIO support
Provide an implementation for GPIO configuration when the driver is not embedded (CFG_STM32_GPIO!=y). In such configuration, platform cannot configure the GPIO pins hence place an assert() instruction.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 7a2947dc | 24-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: fix dependencies in shared resources
GPIO pin counting depends on embedded DTB, not CFG_DT. Process GPIO configuration upon CFG_STM32_GPIO=y.
Signed-off-by: Etienne Carriere <etienne
plat-stm32mp1: fix dependencies in shared resources
GPIO pin counting depends on embedded DTB, not CFG_DT. Process GPIO configuration upon CFG_STM32_GPIO=y.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 56b7d5f5 | 24-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: GPIO and SCMI mandate embedded DTB
Mandate embedded DTB support for stm32mp1 GPIO driver and SCMI server.
Platform stm32mp1 can be build without embedded DTB support in which case m
plat-stm32mp1: GPIO and SCMI mandate embedded DTB
Mandate embedded DTB support for stm32mp1 GPIO driver and SCMI server.
Platform stm32mp1 can be build without embedded DTB support in which case most peripheral cannot be used. This configuration is used for development purpose for which the platform security hardening is disabled.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 16c88879 | 24-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: embed GPIO banks helper upon CFG_STM32_GPIO
Embed platform functions stm32_*_gpio_bank_*() upon CFG_STM32_GPIO.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by
plat-stm32mp1: embed GPIO banks helper upon CFG_STM32_GPIO
Embed platform functions stm32_*_gpio_bank_*() upon CFG_STM32_GPIO.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 9c5f7b0f | 23-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: pmic: release constraint on non-secure I2C clock parent
Remove constraints securing the parents of a non-secure clock. This constraints adds no value on such unsafe configuration.
Si
plat-stm32mp1: pmic: release constraint on non-secure I2C clock parent
Remove constraints securing the parents of a non-secure clock. This constraints adds no value on such unsafe configuration.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 34443269 | 06-Oct-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: fix typo in parent clock trace string ID
Fix debug string identifier for parent clock HCLK6.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <j
plat-stm32mp1: fix typo in parent clock trace string ID
Fix debug string identifier for parent clock HCLK6.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| ea6f231c | 06-Oct-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: fix clock rate computation for CRYP1/GPIOZ/HASH1/MDMA
Fix parent clock identifier in stm32mp15 clock driver for CRYP1, GPIOZ, HASH1 and MDMA clocks. The issue affected only clock rate
plat-stm32mp1: fix clock rate computation for CRYP1/GPIOZ/HASH1/MDMA
Fix parent clock identifier in stm32mp15 clock driver for CRYP1, GPIOZ, HASH1 and MDMA clocks. The issue affected only clock rate computation for these 4 clocks, not the clock gating support.
CRYP1, GPIOZ and HASH1 clocks are fed by HCLK5, not PCLK5. MDMA clock is fed by HCLK6, not PCLK5.
Reported-by: Chaemin Lim <vn.cmlim@gmail.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 0e6830ba | 25-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: move debug info and CC optimization level to config.mk
Move configuration switches CFG_DEBUG_INFO and CFG_CC_OPT_LEVEL default values from arm.mk to config.mk and add a short description.
Sig
core: move debug info and CC optimization level to config.mk
Move configuration switches CFG_DEBUG_INFO and CFG_CC_OPT_LEVEL default values from arm.mk to config.mk and add a short description.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 511c7659 | 14-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: arm: remove deprecated CFG_CC_OPTIMIZE_FOR_SIZE
Remove CFG_CC_OPTIMIZE_FOR_SIZE configuration size that is not used and is incorrectly tested here (should be tested against != y).
Signed-off-
core: arm: remove deprecated CFG_CC_OPTIMIZE_FOR_SIZE
Remove CFG_CC_OPTIMIZE_FOR_SIZE configuration size that is not used and is incorrectly tested here (should be tested against != y).
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 811c42d4 | 01-Oct-2021 |
Jerome Forissier <jerome@forissier.org> |
plat-vexpress: enable CFG_ENABLE_EMBEDDED_TESTS by default
The vexpress platform family is mainly used for development and testing so it makes sense to enable internal tests by default. What this do
plat-vexpress: enable CFG_ENABLE_EMBEDDED_TESTS by default
The vexpress platform family is mainly used for development and testing so it makes sense to enable internal tests by default. What this does currently is xtest 1001 runs core internal tests and xtest 1006 runs TA bget tests.
As a result, remove redundant CFG_ENABLE_EMBEDDED_TESTS=y in the Azure CI build script and add one configuration with tests disabled.
Signed-off-by: Jerome Forissier <jerome@forissier.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 88876632 | 01-Oct-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: new config switch CFG_PREALLOC_RPC_CACHE
CFG_PREALLOC_RPC_CACHE=y enables preallocation of an RPC shared memory reference per secure thread. It is default enabled for backward configuration co
core: new config switch CFG_PREALLOC_RPC_CACHE
CFG_PREALLOC_RPC_CACHE=y enables preallocation of an RPC shared memory reference per secure thread. It is default enabled for backward configuration compatibility.
Disabling CFG_PREALLOC_RPC_CACHE can be useful when CFG_WITH_PAGER=y and the pager page pool is somewhat small as RPC cache shm consumes several kByte of unpaged memory.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| ed430aaf | 01-Oct-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: arm: mm: add pager constraint on dynamic shm release functions
Fix missing pager constraints on dynamic shm release function. These are needed since SMC function ID OPTEE_SMC_DISABLE_SHM_CACHE
core: arm: mm: add pager constraint on dynamic shm release functions
Fix missing pager constraints on dynamic shm release function. These are needed since SMC function ID OPTEE_SMC_DISABLE_SHM_CACHE executes in a fastcall SMC unpaged context and may call dynamic shm release functions to release RPC preallocated shm.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| e4ca953c | 10-Aug-2021 |
Clement Faure <clement.faure@nxp.com> |
drivers: imx: add OCOTP driver
Add OCOTP driver for imx6, imx7, imx7ulp and imx8m platforms. The implementation only supports the read of OCOTP shadow registers. It also implements the tee_otp_get_d
drivers: imx: add OCOTP driver
Add OCOTP driver for imx6, imx7, imx7ulp and imx8m platforms. The implementation only supports the read of OCOTP shadow registers. It also implements the tee_otp_get_die_id() function.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 17bfd1a6 | 29-Sep-2021 |
Igor Opaniuk <igor.opaniuk@foundries.io> |
poplar: disable CFG_SECURE_DATA_PATH by default
Since linaro-swg/linux.git branch optee [1] was rebased onto kernel v5.12, Secure Data Path is broken in xtest [2] because the client side is based on
poplar: disable CFG_SECURE_DATA_PATH by default
Since linaro-swg/linux.git branch optee [1] was rebased onto kernel v5.12, Secure Data Path is broken in xtest [2] because the client side is based on the ION allocator, which was removed from the kernel.
Therefore, disable SDP support by default.
Link: [1] https://github.com/linaro-swg/linux/tree/optee-v5.12-20210628 Link: [2] https://github.com/OP-TEE/optee_test/blob/3.13.0/host/xtest/regression_1000.c#L1220-L1263
Reviewed-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
show more ...
|
| 3469baa6 | 26-Aug-2019 |
Clement Faure <clement.faure@nxp.com> |
core: imx: disable SNVS for imx8qx
Disable SNVS as it is not supported by i.MX8QX platforms.
Fixes: d3bf580a67 ("core: imx: add support for i.MX 8QxP") Signed-off-by: Clement Faure <clement.faure@n
core: imx: disable SNVS for imx8qx
Disable SNVS as it is not supported by i.MX8QX platforms.
Fixes: d3bf580a67 ("core: imx: add support for i.MX 8QxP") Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 7e785722 | 21-Sep-2021 |
Clement Faure <clement.faure@nxp.com> |
core: imx: workaround PL310 errata 752271
Under very rare circumstances and under the following conditions, the double linefill can cause data corruption.
Conditions: * The double linefill feature
core: imx: workaround PL310 errata 752271
Under very rare circumstances and under the following conditions, the double linefill can cause data corruption.
Conditions: * The double linefill feature is enabled. * The L2 cache contains dirty data.
This fault is present in PL310 revisions r3p0, r3p1, r3p1-50rel0. This fault is fixed in r3p2.
The only workaround to this errata is to disable the double linefill feature. [1]
Link: [1] https://www.nxp.com/docs/en/errata/IMX6DQCE.pdf Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| b9cb8f26 | 21-Sep-2021 |
Clement Faure <clement.faure@nxp.com> |
core: imx: tune PL310 configuration for mx6sll
Tune PL310 L2 cache controller for better performances: * Enable double linefill * Disable prefetch drop * Set prefetch offset to 0xF
Fixes: 4dac83
core: imx: tune PL310 configuration for mx6sll
Tune PL310 L2 cache controller for better performances: * Enable double linefill * Disable prefetch drop * Set prefetch offset to 0xF
Fixes: 4dac83288 ("core: imx: add imx6sll evk board support") Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 6a548f15 | 19-Aug-2019 |
Clement Faure <clement.faure@nxp.com> |
core: imx: enable CFG_NO_SMP for imx6sll
i.MX 6SLL does not have SMP extension.
Fixes: 4dac83288b ("core: imx: add imx6sll evk board support") Signed-off-by: Clement Faure <clement.faure@nxp.com> A
core: imx: enable CFG_NO_SMP for imx6sll
i.MX 6SLL does not have SMP extension.
Fixes: 4dac83288b ("core: imx: add imx6sll evk board support") Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 739ec6e1 | 05-Feb-2020 |
Clement Faure <clement.faure@nxp.com> |
core: imx: remove useless header include
Remove #include <arm32.h> since arm.h is already included.
Fixes: f51f270a70 ("core: arm: imx: get mmdc type") Signed-off-by: Clement Faure <clement.faure@n
core: imx: remove useless header include
Remove #include <arm32.h> since arm.h is already included.
Fixes: f51f270a70 ("core: arm: imx: get mmdc type") Signed-off-by: Clement Faure <clement.faure@nxp.com> Reviewed-by: Jerome Forissier <jerome@forissier.org>
show more ...
|
| 0d7e03a9 | 01-Sep-2021 |
Clement Faure <clement.faure@nxp.com> |
drivers: crypto: fix ECC key size bytes to bits conversion
Convert the ECC key size from bytes to bits. By adding the new key_size variable, it also fixes the crypto driver traces bellow printing th
drivers: crypto: fix ECC key size bytes to bits conversion
Convert the ECC key size from bytes to bits. By adding the new key_size variable, it also fixes the crypto driver traces bellow printing the ECC key size from the variable that was missing.
Fixes: d29cd2e ("core: driver: generic resources for crypto device driver - ECC") Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Ruchika Gupta <ruchika.gupta@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 2391d619 | 31-Aug-2021 |
Clement Faure <clement.faure@nxp.com> |
drivers: crypto: acipher: fix traces compilation
Cast key pointers to uintptr_t to avoid compilation warnings when crypto driver traces are enabled (CFG_CRYPTO_DRIVER_DEBUG=0x1)
Fixes: 62590f0 ("dr
drivers: crypto: acipher: fix traces compilation
Cast key pointers to uintptr_t to avoid compilation warnings when crypto driver traces are enabled (CFG_CRYPTO_DRIVER_DEBUG=0x1)
Fixes: 62590f0 ("drivers: crypto: implement crypto device driver - DSA") Signed-off-by: Clement Faure <clement.faure@nxp.com> Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Ruchika Gupta <ruchika.gupta@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|