| 05771552 | 26-Jan-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: clk: Get duty cycle from parent clock
Add CLK_DUTY_CYCLE_PARENT clock flag for clock which duty cycle information needs to be retrieved for the clock parent.
Reviewed-by: Gatien Chevallier
drivers: clk: Get duty cycle from parent clock
Add CLK_DUTY_CYCLE_PARENT clock flag for clock which duty cycle information needs to be retrieved for the clock parent.
Reviewed-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com>
show more ...
|
| 59db7f68 | 26-Jan-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: clk: Add clock duty cycle
Implement reading a clock duty cycle with new clock API function clk_get_duty_cycle() and clock operation handle ::clk_get_duty_cycle. When a clock does not provid
drivers: clk: Add clock duty cycle
Implement reading a clock duty cycle with new clock API function clk_get_duty_cycle() and clock operation handle ::clk_get_duty_cycle. When a clock does not provide the operation, it is assumed that the clock has a 50% duty cycle.
Clock duty cycle information is used for example for some analog-digital conversion peripheral. This new API function is also expected to be used by SCMI clock service introduced in the SCMI specification v3.2 [1] this allow to expose duty cycle service to SCMI clients.
Link: https://developer.arm.com/documentation/den0056/e/ [1] Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Gabriel Fernandez <gabriel.fernandez@foss.st.com> Reviewed-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
show more ...
|
| 9a4ec172 | 29-Sep-2023 |
Patrick Delaunay <patrick.delaunay@foss.st.com> |
core: pm: add macro for PM_HINT_STATE access
Add helper macros to read and test the power state hints provided by the platform during power management state transitions.
Reviewed-by: Etienne Carrie
core: pm: add macro for PM_HINT_STATE access
Add helper macros to read and test the power state hints provided by the platform during power management state transitions.
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
show more ...
|
| 4078bcde | 12-Feb-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: virt, ffa: keep guest partition until resources are reclaimed
Move a struct guest_partition to prtn_destroy_list if there are resources remaining to be reclaimed by the hypervisor. Currently t
core: virt, ffa: keep guest partition until resources are reclaimed
Move a struct guest_partition to prtn_destroy_list if there are resources remaining to be reclaimed by the hypervisor. Currently this is needed with FF-A and SPMC at S-EL1.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 3e0b361e | 12-Feb-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: ffa: store shm_bits in partition for SPMC at S-EL1
Store the bitmask keeping track of allocated shared memory handles in the current partition when configured with CFG_NS_VIRTUALIZATION and CF
core: ffa: store shm_bits in partition for SPMC at S-EL1
Store the bitmask keeping track of allocated shared memory handles in the current partition when configured with CFG_NS_VIRTUALIZATION and CFG_CORE_SEL1_SPMC.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 196cb5a0 | 25-Jan-2024 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
dt-bindings: add RIFSC to default bindings config for STM32MP25
The RIFSC header is now part of default bindings header file for STM32MP25.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.
dt-bindings: add RIFSC to default bindings config for STM32MP25
The RIFSC header is now part of default bindings header file for STM32MP25.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 066c3a39 | 25-Jan-2024 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
dt-bindings: add RIFSC bindings
Add bindings for the RIFSC configuration.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.co
dt-bindings: add RIFSC bindings
Add bindings for the RIFSC configuration.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| cd187630 | 25-Jan-2024 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
drivers: add stm32 RIFSC support
Add the RIFSC new driver support.
RIFSC (RIF Security Controller) is responsible for the isolation of hardware resources like memory or peripherals. It is composed
drivers: add stm32 RIFSC support
Add the RIFSC new driver support.
RIFSC (RIF Security Controller) is responsible for the isolation of hardware resources like memory or peripherals. It is composed of:
-RISC registers(slave peripherals) with RISUP(Resource Isolation Slave Unit for Peripherals) OR RISAL(Resource Isolation Slave Unit for Address space - Lite) logics. -RIMC registers(Non RIF-Aware masters counterpart) with RIMU (Resource Isolation Master Unit) logic. It is possible for a master to inherit from its slave port(RISUP) configuration.
This driver parses the RIFSC device tree configuration and applies it to put the firewall in place. Therefore, the device tree is mandatory.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Lionel Debieve <lionel.debieve@st.com> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 0179d5f8 | 25-Jan-2024 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
dt-bindings: add RIF to default bindings config for stm32mp25
Add a list of default bindings for STM32MP25 platforms.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: E
dt-bindings: add RIF to default bindings config for stm32mp25
Add a list of default bindings for STM32MP25 platforms.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| e1767b3b | 25-Jan-2024 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
dt-bindings: firewall: add RIF bindings
Add defines for Resource Isolation Framework (RIF) sub-system configuration.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Et
dt-bindings: firewall: add RIF bindings
Add defines for Resource Isolation Framework (RIF) sub-system configuration.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 1506f47a | 25-Jan-2024 |
Gatien Chevallier <gatien.chevallier@foss.st.com> |
drivers: firewall: add stm32_rif driver for common RIF features
The resource isolation framework (RIF) is a comprehensive set of hardware blocks designed to enforce and manage the isolation of STM32
drivers: firewall: add stm32_rif driver for common RIF features
The resource isolation framework (RIF) is a comprehensive set of hardware blocks designed to enforce and manage the isolation of STM32MP25xx hardware resources, like memories and peripherals.
The RIF manages security and privilege levels as well as compartment filtering. Each compartment is identified by a Compartment ID (CID).
Therefore, the access filtering can be, depending on the case: • restricted to none, one or more than one CID • secure-only, non-secure only, or both • privileged-only or privileged/unprivileged • read-only, write-only, or read/write
Add a firewall driver folder that contains firewall drivers. This RIF driver contains generic features shared between all drivers managing RIF configuration.
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 98d105a5 | 19-Feb-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
core: io: fix IO_READ32_POLL_TIMEOUT() when delay is 0us
Fix detection of timeout condition in IO_READ32_POLL_TIMEOUT() that was never triggered when delay argument is 0us. Indeed 0 is not a useful
core: io: fix IO_READ32_POLL_TIMEOUT() when delay is 0us
Fix detection of timeout condition in IO_READ32_POLL_TIMEOUT() that was never triggered when delay argument is 0us. Indeed 0 is not a useful increment value for a timeout counter.
Fixes: 97ea199a2ae8 ("core: io: IO_READ32_POLL_TIMEOUT()") Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| dcad1800 | 12-Feb-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: add nex_*init-calls
Add nex_*init-calls for drivers and services that resides in the nexus in case of virtualization. In case of virtualization the init-calls are based on final calls, while o
core: add nex_*init-calls
Add nex_*init-calls for drivers and services that resides in the nexus in case of virtualization. In case of virtualization the init-calls are based on final calls, while otherwise are the same as the non-nex counterpart.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| ba4f5940 | 12-Feb-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: add is_nexus() and refactor is_unpaged()
Add the function is_nexus() to tell if an address is an address available to the nexus when non-secure virtualization is enabled (CFG_NS_VIRTUALIZATION
core: add is_nexus() and refactor is_unpaged()
Add the function is_nexus() to tell if an address is an address available to the nexus when non-secure virtualization is enabled (CFG_NS_VIRTUALIZATION=y). The function is stubbed to return true for non-null arguments if non-secure virtualization isn't enabled, else false.
Make the argument for is_unpaged() const void * for consistency with the is_nexus() function. The stubbed version of is_unpaged() when paging isn't enabled is updated to perform a NULL check on the argument.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 97452933 | 24-Jan-2024 |
Niklas Kirschall <niki.nice1203@gmail.com> |
core: kernel: fix typo in huk_subkey.h inline comment
Fix a typo in `huk_subkey.h` inline comment where TEE_SUCCES should be TEE_SUCCESS.
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> S
core: kernel: fix typo in huk_subkey.h inline comment
Fix a typo in `huk_subkey.h` inline comment where TEE_SUCCES should be TEE_SUCCESS.
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Niklas Kirschall <niki.nice1203@gmail.com>
show more ...
|
| 89853006 | 30-Jan-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
core: crypto: fix crypto_asym_get_ecc_keypair_ops() stub
Correct definition of crypto_asym_get_ecc_keypair_ops() stub inline function when CFG_CRYPTO_ECC is disabled. The definition used a wrong fun
core: crypto: fix crypto_asym_get_ecc_keypair_ops() stub
Correct definition of crypto_asym_get_ecc_keypair_ops() stub inline function when CFG_CRYPTO_ECC is disabled. The definition used a wrong function label.
Fixes: 5516c6cd78da ("core: ecc: support the crypto driver") Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| e934bfa4 | 02-Feb-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: serial: add rx_intr_{enable,disable}() callbacks
Add optional callbacks to enable and disable receive interrupts from a serial device.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org
core: serial: add rx_intr_{enable,disable}() callbacks
Add optional callbacks to enable and disable receive interrupts from a serial device.
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 5a982d0e | 30-Jan-2024 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: dt: provide stubbed dt_getprop_as_number()
When compiled with CFG_DT=n link the following error can occur: aarch64-linux-gnu-ld.bfd: out/arm/core/arch/arm/kernel/boot.o: in function `get_sec_m
core: dt: provide stubbed dt_getprop_as_number()
When compiled with CFG_DT=n link the following error can occur: aarch64-linux-gnu-ld.bfd: out/arm/core/arch/arm/kernel/boot.o: in function `get_sec_mem_from_manifest': core/arch/arm/kernel/boot.c:1511: undefined reference to `dt_getprop_as_number' aarch64-linux-gnu-ld.bfd: core/arch/arm/kernel/boot.c:1519: undefined reference to `dt_getprop_as_number' aarch64-linux-gnu-ld.bfd: out/arm/core/mm/core_mmu.o: in function `collect_device_mem_ranges': core/mm/core_mmu.c:982: undefined reference to `dt_getprop_as_number' aarch64-linux-gnu-ld.bfd: core/mm/core_mmu.c:993: undefined reference to `dt_getprop_as_number'
Fix this by adding a stubbed version of dt_getprop_as_number() when CFG_DT=n.
Link: https://github.com/OP-TEE/optee_os/issues/6537 Fixes: 4e45454a85d3 ("core: add dt_getprop_as_number()") Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| d557d174 | 15-Jan-2024 |
Tony Han <tony.han@microchip.com> |
drivers: atmel_rstc: add the function to control sama7g5's USB reset
In sama7g5, USB POR is controlled by register RSTC_GRSTR.
Signed-off-by: Tony Han <tony.han@microchip.com> Acked-by: Jerome Fori
drivers: atmel_rstc: add the function to control sama7g5's USB reset
In sama7g5, USB POR is controlled by register RSTC_GRSTR.
Signed-off-by: Tony Han <tony.han@microchip.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| e07f9212 | 19-Dec-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: shared_resource: disable MCKPROT if not needed
Disable RCC MCKPROT if not needed on STM32MP15 platforms to allow non-secure world to control Cortex-M coprocessor. This change is neede
plat-stm32mp1: shared_resource: disable MCKPROT if not needed
Disable RCC MCKPROT if not needed on STM32MP15 platforms to allow non-secure world to control Cortex-M coprocessor. This change is needed when RCC secure hardening is enabled (RCC[TZEN] control bit) as it also default enable RCC MCKPROT preventing non-secure world from accessing some coprocessor SoC resources.
This change is needed when using in tree DTS files stm32mp15*-*-scmi.dts and non-secure world is in charge of loading and managing the remote processor firmware.
Reviewed-by: Gatien Chevallier <gatien.chevallier@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 59fea683 | 16-Jan-2024 |
Igor Opaniuk <igor.opaniuk@foundries.io> |
core: pta: drop benchmark
Drop Benchmark PTA as current implementation is non-function and obsolete, and it's not supported anymore.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: E
core: pta: drop benchmark
Drop Benchmark PTA as current implementation is non-function and obsolete, and it's not supported anymore.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
show more ...
|
| c37489ba | 08-Jan-2024 |
Clement Faure <clement.faure@nxp.com> |
core: msg_param: remove recursion in included headers
kernel/msg_param.h includes itself.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.s
core: msg_param: remove recursion in included headers
kernel/msg_param.h includes itself.
Signed-off-by: Clement Faure <clement.faure@nxp.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 5395fe89 | 11-Jan-2024 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: i2c: add missing __unused in stubbed function
Fix statc inline stub implementation of i2c_dt_get_dev() that lacks a __unused attribute on an unused argument.
Fixes: b357d34fe91f ("core: dt
drivers: i2c: add missing __unused in stubbed function
Fix statc inline stub implementation of i2c_dt_get_dev() that lacks a __unused attribute on an unused argument.
Fixes: b357d34fe91f ("core: dt_driver: swap TEE_result and retrieved device reference") Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 515c1ba9 | 22-Mar-2023 |
Clément Léger <clement.leger@bootlin.com> |
drivers: nvmem: add API for nvmem controllers
Add a nvmem API to access nvmem cells using device-tree description. This API allows to register nvmeme provider and obtain nvmem cells for consumer. Mu
drivers: nvmem: add API for nvmem controllers
Add a nvmem API to access nvmem cells using device-tree description. This API allows to register nvmeme provider and obtain nvmem cells for consumer. Much like other subsystem, this one relies on the generic dt_driver mechanism.
Signed-off-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 4fd40c39 | 22-Mar-2023 |
Clément Léger <clement.leger@bootlin.com> |
core: dt_driver: add DT_DRIVER_NVMEM support
Handle DT_DRIVER_NVMEM the same way that DT_DRIVER_PINCTRL is handled. Indeed, it uses the same kind of DT references (phandle to a subnode of a controll
core: dt_driver: add DT_DRIVER_NVMEM support
Handle DT_DRIVER_NVMEM the same way that DT_DRIVER_PINCTRL is handled. Indeed, it uses the same kind of DT references (phandle to a subnode of a controller) to get a nvmem cell.
Signed-off-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|