| 4ed45027 | 21-Oct-2021 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: verify size of allocated shared memory
Makes sure that normal world cannot change the size of allocated shared memory, resulting in a smaller buffer being allocated.
This reintroduces cc6bc5f
core: verify size of allocated shared memory
Makes sure that normal world cannot change the size of allocated shared memory, resulting in a smaller buffer being allocated.
This reintroduces cc6bc5f94210 ("core: verify size of allocated shared memory") which was lost with Fixes: 2786f1438fc8 ("core: thread: separate old SMC interface handling"). In addition is the READ_ONCE() macro is used when reading the returned size from non-secure shared memory.
Since then we have a separate set of functions to deal with RPC when communicating with FF-A. A corresponding size check is added for the FF-A version of thread_rpc_alloc().
Reported-by: Patrik Lantz <patrik.lantz@axis.com> Reviewed-by: Patrik Lantz <patrik.lantz@axis.com> Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 36ebac6d | 02-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: kernel: pm: initialize local variables
Initialize local variables in pm_change_state().
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@
core: kernel: pm: initialize local variables
Initialize local variables in pm_change_state().
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 5920ec25 | 02-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: kernel: pm: refine suspend/resume sequence order
Change PM generic implementation to call handlers for suspend in the reserve order in which they were registered and to call handlers for resum
core: kernel: pm: refine suspend/resume sequence order
Change PM generic implementation to call handlers for suspend in the reserve order in which they were registered and to call handlers for resume in the opposite order, that is the order in which the handlers where registered.
This change allows to reuse the driver initialization ordering which is expected to match device drivers dependencies. This change will be even more useful when using probe support and dependencies resolution.
The change does not affect the 2 PM registration levels: core and drivers. Core handlers are still suspends after drivers and resumed before drivers.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Gatien Chevallier <gatien.chevallier@st.com>
show more ...
|
| 502e23ad | 02-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: pm: add a name to registered pm_callback_handle
Adds an argument to register a name (string debug identifier) for PM handlers registered to PM framework.
Caller can provide a NULL reference o
core: pm: add a name to registered pm_callback_handle
Adds an argument to register a name (string debug identifier) for PM handlers registered to PM framework.
Caller can provide a NULL reference or a valid string pointer. When pager is enabled, the registration ensures the name lies in an unpaged section, possibly allocating heap for that purpose.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Gatien Chevallier <gatien.chevallier@st.com>
show more ...
|
| 452502d6 | 02-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: clk: panic on driver init failure
Panic when stm32mp1 clock driver initialization fails.
Renames local function stm32mp1_clk_init() to stm32mp1_clk_fdt_init() as it relates the drive
plat-stm32mp1: clk: panic on driver init failure
Panic when stm32mp1 clock driver initialization fails.
Renames local function stm32mp1_clk_init() to stm32mp1_clk_fdt_init() as it relates the driver initialization from FDT node content.
Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| b3ece0b9 | 02-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: clk: move functions in source file
Moves __clk_is_enabled() and gate_is_non_secure() inside stm32mp1_clk.c source file to ease integration to clk framework.
Acked-by: Jerome Forissie
plat-stm32mp1: clk: move functions in source file
Moves __clk_is_enabled() and gate_is_non_secure() inside stm32mp1_clk.c source file to ease integration to clk framework.
Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| defba8af | 31-Oct-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: clk: fix const attribute in function arguments
Fixes __clk_enable(), __clk_disable() and __clk_is_enabled() arguments against misplaced const attribute.
Acked-by: Jerome Forissier <j
plat-stm32mp1: clk: fix const attribute in function arguments
Fixes __clk_enable(), __clk_disable() and __clk_is_enabled() arguments against misplaced const attribute.
Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 87852b61 | 30-Oct-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: clk: refine always on clocks
Change implementation of clock_is_always_on() to prepare for registration of clock in the generic clock framework.
Acked-by: Jerome Forissier <jerome@for
plat-stm32mp1: clk: refine always on clocks
Change implementation of clock_is_always_on() to prepare for registration of clock in the generic clock framework.
Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 0faa0a8a | 30-Oct-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: clk: remove useless static array
Local array secure_enable[] in function enable_static_secure_clocks() does not need to be static.
Acked-by: Jerome Forissier <jerome@forissier.org> S
plat-stm32mp1: clk: remove useless static array
Local array secure_enable[] in function enable_static_secure_clocks() does not need to be static.
Acked-by: Jerome Forissier <jerome@forissier.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| fa8cb7a8 | 03-Nov-2021 |
Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> |
crypto: stm32: use CRYP IP for authenc algorithm
Add STM32 CRYP as an Authenticated Encryption provider for GCM and CCM.
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> Reviewed-
crypto: stm32: use CRYP IP for authenc algorithm
Add STM32 CRYP as an Authenticated Encryption provider for GCM and CCM.
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| e3e4ce47 | 26-Apr-2021 |
Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> |
drivers: crypto: implement crypto driver - AUTHENC
Add a generic cryptographic Authenticated Encryption driver interface connecting TEE Crypto generic APIs to HW driver interface.
Signed-off-by: Ni
drivers: crypto: implement crypto driver - AUTHENC
Add a generic cryptographic Authenticated Encryption driver interface connecting TEE Crypto generic APIs to HW driver interface.
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> Acked-by: Cedric Neveux <cedric.neveux@nxp.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 95134dac | 11-Oct-2021 |
Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> |
plat-stm32mp1: enable CRYPTO HW if available
Compile crypto framework and use CRYP1 ip if available.
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> Reviewed-by: Etienne Carriere
plat-stm32mp1: enable CRYPTO HW if available
Compile crypto framework and use CRYP1 ip if available.
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 5e64ae67 | 26-Jul-2021 |
Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> |
crypto: stm32: use CRYP IP for CIPHER algorithms
Add CRYP IP drivers, and add STM32 CRYP as a drvcrypt cipher provider.
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> Reviewed-b
crypto: stm32: use CRYP IP for CIPHER algorithms
Add CRYP IP drivers, and add STM32 CRYP as a drvcrypt cipher provider.
Signed-off-by: Nicolas Toromanoff <nicolas.toromanoff@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 704f6edd | 12-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: dt_driver: make struct dt_driver_provider opaque
Move struct dt_driver_provider from header file to source file so that the DT driver provider internals are not exposed to core.
Provider data
core: dt_driver: make struct dt_driver_provider opaque
Move struct dt_driver_provider from header file to source file so that the DT driver provider internals are not exposed to core.
Provider database reference dt_driver_provider can now be internal to dt_driver.c.
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| ef20efc4 | 05-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: dt_driver: factorize clk_dt_node_clock_probe_driver()
Move/rename clk_dt_get_from_provider() to dt_driver_probe_device_by_node() and local helper clk_get_compatible_driver() to probe_device_by
core: dt_driver: factorize clk_dt_node_clock_probe_driver()
Move/rename clk_dt_get_from_provider() to dt_driver_probe_device_by_node() and local helper clk_get_compatible_driver() to probe_device_by_compat().
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 01254f1d | 05-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: dt_driver: move probe callback to dt_driver
Move ::probe field from struct dt_driver_setup to struct dt_driver and remove struct dt_driver_setup.
Acked-by: Jerome Forissier <jerome@forissier.
core: dt_driver: move probe callback to dt_driver
Move ::probe field from struct dt_driver_setup to struct dt_driver and remove struct dt_driver_setup.
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| a22e85b2 | 05-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: dt_driver: factorize clk_dt_get_from_provider()
Implement dt_driver_device_from_node_idx_prop() for clk_dt_get_by_idx_prop() to get target reference instance.
Move/rename clk_dt_get_from_prov
core: dt_driver: factorize clk_dt_get_from_provider()
Implement dt_driver_device_from_node_idx_prop() for clk_dt_get_by_idx_prop() to get target reference instance.
Move/rename clk_dt_get_from_provider() to dt_driver_device_from_provider_prop()
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| f498c404 | 05-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: dt_driver: factorize clk_get_provider_by_*()
Move rename clk_get_provider_by_{node|phandle}() to dt_driver_get_provider_by_*().
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clé
core: dt_driver: factorize clk_get_provider_by_*()
Move rename clk_get_provider_by_{node|phandle}() to dt_driver_get_provider_by_*().
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 3fd340e5 | 04-Nov-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: dt_driver: factorize DT cells helper functions
Move/rename fdt_clock_cells() to fdt_get_dt_driver_cells(). and clk_dt_register_clk_provider() to dt_driver_register_provider().
Add helper func
core: dt_driver: factorize DT cells helper functions
Move/rename fdt_clock_cells() to fdt_get_dt_driver_cells(). and clk_dt_register_clk_provider() to dt_driver_register_provider().
Add helper function dt_driver_provider_cells() to get ::provider_cells from a registered provider reference.
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 8c0c44c9 | 10-Sep-2021 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: dt_driver: factorize DT phandle util resources
Move struct clk_dt_phandle_args and struct clk_dt_provider from clk_dt.h to dt_driver.h and rename them to struct dt_driver_phandle_args and stru
core: dt_driver: factorize DT phandle util resources
Move struct clk_dt_phandle_args and struct clk_dt_provider from clk_dt.h to dt_driver.h and rename them to struct dt_driver_phandle_args and struct dt_driver_provider.
Introduce type get_of_device_func for callback functions used to retrieve a device instance reference from a DT phandle possible with arguments.
Acked-by: Jerome Forissier <jerome@forissier.org> Acked-by: Clément Léger <clement.leger@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| aabd492e | 03-Nov-2021 |
Lionel Debieve <lionel.debieve@foss.st.com> |
drivers: stm32_rng: use reg_size to map virtual addresses
Use the register map size from the dt_node_info structure to call the phys_to_virt() function.
Signed-off-by: Lionel Debieve <lionel.debiev
drivers: stm32_rng: use reg_size to map virtual addresses
Use the register map size from the dt_node_info structure to call the phys_to_virt() function.
Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 3ae6a7d7 | 03-Nov-2021 |
Lionel Debieve <lionel.debieve@foss.st.com> |
drivers: stm32_uart: use reg_size to map virtual addresses
Use the register map size from the dt_node_info structure to call the phys_to_virt() function.
Signed-off-by: Lionel Debieve <lionel.debie
drivers: stm32_uart: use reg_size to map virtual addresses
Use the register map size from the dt_node_info structure to call the phys_to_virt() function.
Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 717f942a | 03-Nov-2021 |
Lionel Debieve <lionel.debieve@foss.st.com> |
drivers: stm32_i2c: use reg_size to map virtual addresses
Use directly the register map size from the dt_node_info structure to call the io_pa_or_va() function.
Signed-off-by: Lionel Debieve <lione
drivers: stm32_i2c: use reg_size to map virtual addresses
Use directly the register map size from the dt_node_info structure to call the io_pa_or_va() function.
Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 06fd21dd | 03-Nov-2021 |
Lionel Debieve <lionel.debieve@foss.st.com> |
core: kernel: add reg_size in the dt_node_info structure
Add the register size read from device tree in the dt_node_info structure. It may be used to map the IO registers with the correct address ra
core: kernel: add reg_size in the dt_node_info structure
Add the register size read from device tree in the dt_node_info structure. It may be used to map the IO registers with the correct address range.
Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| df7cecc0 | 03-Nov-2021 |
Lionel Debieve <lionel.debieve@foss.st.com> |
core: kernel: use size_t instead of ssize_t for _fdt_reg_size()
Size is read from the reg device tree property as an unsigned value coming from fdt32_to_cpu(). Use a size_t with associated error cod
core: kernel: use size_t instead of ssize_t for _fdt_reg_size()
Size is read from the reg device tree property as an unsigned value coming from fdt32_to_cpu(). Use a size_t with associated error code DT_INFO_INVALID_REG_SIZE as return in prototype. Update the current users according to this change.
Signed-off-by: Lionel Debieve <lionel.debieve@foss.st.com> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|