| 8fd620f7 | 22-May-2023 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: rename dt_driver_phandle_args to dt_pargs
Renames struct dt_driver_phandle_args to struct dt_pargs to shorten the label and prevent ugly line breaks in function signatures.
Acked-by: Jens Wik
core: rename dt_driver_phandle_args to dt_pargs
Renames struct dt_driver_phandle_args to struct dt_pargs to shorten the label and prevent ugly line breaks in function signatures.
Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 9cc3a2ff | 25-Apr-2023 |
Imre Kis <imre.kis@arm.com> |
core: spmc: configure SP's NS interrupt action based on the manifest
Use mandatory ns-interrupts-action SP manifest property to configure signaled or queued non-secure interrupt handling.
Signed-of
core: spmc: configure SP's NS interrupt action based on the manifest
Use mandatory ns-interrupts-action SP manifest property to configure signaled or queued non-secure interrupt handling.
Signed-off-by: Imre Kis <imre.kis@arm.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 4d028847 | 18-Apr-2023 |
Imre Kis <imre.kis@arm.com> |
core: spmc: handle non-secure interrupts
Add FFA_INTERRUPT and FFA_RUN support for signaling non-secure interrupts and for resuming to the secure world. If a secure partition is preempted by a non-s
core: spmc: handle non-secure interrupts
Add FFA_INTERRUPT and FFA_RUN support for signaling non-secure interrupts and for resuming to the secure world. If a secure partition is preempted by a non-secure interrupt OP-TEE saves the SP's state and sends an FFA_INTERRUPT to the normal world. After handling the interrupt the normal world should send an FFA_RUN to OP-TEE so it can continue running the SP. If OP-TEE is the active FF-A endpoint (i.e. it is running TAs) the non-secure interrupts are signaled by the existing OPTEE_FFA_YIELDING_CALL_RETURN_INTERRUPT message instead of FFA_INTERRUPT.
Signed-off-by: Imre Kis <imre.kis@arm.com> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 24b364c8 | 26-May-2023 |
Etienne Carriere <etienne.carriere@linaro.org> |
drivers: gpio: add operation inline description
Adds few inline description comment to GPIO operators.
Acked-by: Thomas Perrot <thomas.perrot@bootlin.com> Signed-off-by: Etienne Carriere <etienne.c
drivers: gpio: add operation inline description
Adds few inline description comment to GPIO operators.
Acked-by: Thomas Perrot <thomas.perrot@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 83f24981 | 26-May-2023 |
Etienne Carriere <etienne.carriere@linaro.org> |
drivers: gpio: add put operation handle
Adds a put operation handler for a GPIO consumer driver to be able to release the GPIO resources it has allocated when getting its GPIO. This is needed for ex
drivers: gpio: add put operation handle
Adds a put operation handler for a GPIO consumer driver to be able to release the GPIO resources it has allocated when getting its GPIO. This is needed for example, when such a consumer driver must defer its probe sequence and will get again its GPIO making gpio_dt_alloc_pin() to be called again.
Acked-by: Thomas Perrot <thomas.perrot@bootlin.com> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 2a5482f7 | 30-May-2023 |
Etienne Carriere <etienne.carriere@linaro.org> |
plat-stm32mp1: add missing inclusion of stm32_gpio.h
Adds inclusion of stm32_gpio.h from main.c that is needed when CFG_STM32MP13 is enabled.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org
plat-stm32mp1: add missing inclusion of stm32_gpio.h
Adds inclusion of stm32_gpio.h from main.c that is needed when CFG_STM32MP13 is enabled.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| 23bdf063 | 24-May-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: stm32_rng: fix case when RNG is not ready
Checks RNG data ready status bit before each read of a 32bit sample from the RNG FIFO. Indeed the data ready status bit tells that the RNG FIFO con
drivers: stm32_rng: fix case when RNG is not ready
Checks RNG data ready status bit before each read of a 32bit sample from the RNG FIFO. Indeed the data ready status bit tells that the RNG FIFO contains random bytes by burst of 32bit word, not by burst of 4 32bit words.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| cae2bfff | 23-May-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
plat-stm32mp1: remove unused stm32mp_gpio_bank_is_shared()
Removes platform function stm32mp_gpio_bank_is_shared() that is not used.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-b
plat-stm32mp1: remove unused stm32mp_gpio_bank_is_shared()
Removes platform function stm32mp_gpio_bank_is_shared() that is not used.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 36844e78 | 23-May-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: stm32_gpio: fix driver header file guards
Fixes the names of the macro used as stm32_gpio.h header file guard.
Acked-by: Lionel Debieve <lionel.debieve@foss.st.com> Signed-off-by: Etienne
drivers: stm32_gpio: fix driver header file guards
Fixes the names of the macro used as stm32_gpio.h header file guard.
Acked-by: Lionel Debieve <lionel.debieve@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 0e0435e2 | 23-May-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: stm32_gpio: probe pinctrl nodes
This change makes stm32_gpio driver to register GPIO bank when the driver of probed on compatible pin control instances found in the device tree. This change
drivers: stm32_gpio: probe pinctrl nodes
This change makes stm32_gpio driver to register GPIO bank when the driver of probed on compatible pin control instances found in the device tree. This change however does not yet register pinctrl providers to DT_DRIVER framework.
Acked-by: Lionel Debieve <lionel.debieve@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| 9818a481 | 23-May-2023 |
Etienne Carriere <etienne.carriere@foss.st.com> |
drivers: stm32_gpio: helper function to register GPIO banks
Adds an helper function (dt_stm32_gpio_bank()) to register GPIO banks in stm32_gpio driver based on DT pinctrl nodes. GPIO banks are regis
drivers: stm32_gpio: helper function to register GPIO banks
Adds an helper function (dt_stm32_gpio_bank()) to register GPIO banks in stm32_gpio driver based on DT pinctrl nodes. GPIO banks are registered in a local list from which will be later used to find a bank based on its ID number. The function is expected to be called from the driver probe sequence. The function ensures a bank is not registered twice.
Acked-by: Lionel Debieve <lionel.debieve@foss.st.com> Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
show more ...
|
| d7c41fc3 | 25-May-2023 |
Etienne Carriere <etienne.carriere@linaro.org> |
drivers: pinctrl: fix stubbed pinctrl_free_state()
Fixes pinctrl_free_state() when CFG_DRIVERS_PINCTRL is disabled as the API function has no return value.
The issue is reported by GCC with an erro
drivers: pinctrl: fix stubbed pinctrl_free_state()
Fixes pinctrl_free_state() when CFG_DRIVERS_PINCTRL is disabled as the API function has no return value.
The issue is reported by GCC with an error trace like the below:
core/include/drivers/pinctrl.h: In function ‘pinctrl_free_state’: lib/libutee/include/tee_api_defines.h:117:43: error: ‘return’ with a value, in function returning void [-Werror=return-type] 117 | #define TEE_ERROR_NOT_SUPPORTED 0xFFFF000A | ^~~~~~~~~~ core/include/drivers/pinctrl.h:158:16: note: in expansion of macro ‘TEE_ERROR_NOT_SUPPORTED’ 158 | return TEE_ERROR_NOT_SUPPORTED; | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from core/include/drivers/stm32_uart.h:10, from core/arch/arm/plat-stm32mp1/main.c:14: core/include/drivers/pinctrl.h:156:6: note: declared here 156 | void pinctrl_free_state(struct pinctrl_state *state __unused) | ^~~~~~~~~~~~~~~~~~
Fixes: 9aec039ec0d7 ("drivers: pinctrl: add pinctrl support") Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| e1aad7e9 | 24-May-2023 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: riscv: fix interrupt_main_handler() reference
Fixes itr_core_handler() reference in RiscV architecture that was renamed interrupt_main_handler() in commit referred below.
Fixes: 358bf47c0612
core: riscv: fix interrupt_main_handler() reference
Fixes itr_core_handler() reference in RiscV architecture that was renamed interrupt_main_handler() in commit referred below.
Fixes: 358bf47c0612 ("core: interrupt: rename itr_core_handler()") Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>
show more ...
|
| ffa93873 | 04-May-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: ffa: initialize my_rxtx.size
Adds missing initialization of my_rxtx.size with CFG_CORE_SEL2_SPMC=y.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Balint Dobszay <balin
core: ffa: initialize my_rxtx.size
Adds missing initialization of my_rxtx.size with CFG_CORE_SEL2_SPMC=y.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| f49f23f7 | 03-May-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: ffa: rename nw_rxtx to my_rxtx
Renames nw_rxtx to my_rxtx to be more clear when we have an SPMC at S-EL2 and the rxtx buffer is shared with the SPMC instead of normal world.
Reviewed-by: Jero
core: ffa: rename nw_rxtx to my_rxtx
Renames nw_rxtx to my_rxtx to be more clear when we have an SPMC at S-EL2 and the rxtx buffer is shared with the SPMC instead of normal world.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 923f61cd | 03-May-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: ffa: support FFA_VERSION from S-EL0 SPs only
FFA_VERSION using ERET as conduit is not permitted in the FF-A specification. So remove support for it in thread_spmc_msg_recv() but keep it in spm
core: ffa: support FFA_VERSION from S-EL0 SPs only
FFA_VERSION using ERET as conduit is not permitted in the FF-A specification. So remove support for it in thread_spmc_msg_recv() but keep it in spmc_sp_msg_handler() for S-EL0 SPs where the conduit is SVC.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 412d46f6 | 02-May-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: ffa: support FFA_SPM_ID_GET
Supports the FFA_SPM_ID_GET function introduced with FF-A v1.1.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Balint Dobszay <balint.dobsza
core: ffa: support FFA_SPM_ID_GET
Supports the FFA_SPM_ID_GET function introduced with FF-A v1.1.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 8af78138 | 02-May-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: ffa: rename spmc_get_id() to get_my_id()
Renames spmc_get_id() to get_my_id() in order to avoid confusion with the function FFA_SPM_ID_GET introduced with FF-A v1.1.
Reviewed-by: Jerome Foris
core: ffa: rename spmc_get_id() to get_my_id()
Renames spmc_get_id() to get_my_id() in order to avoid confusion with the function FFA_SPM_ID_GET introduced with FF-A v1.1.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| a65dd3a6 | 02-Feb-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: spmc: support virtualization with SPMC at S-EL1
Adds support for virtualization with OP-TEE as SPMC at S-EL1. This if the FF-A counterpart of SMC based ABI with virtualization.
Reviewed-by: B
core: spmc: support virtualization with SPMC at S-EL1
Adds support for virtualization with OP-TEE as SPMC at S-EL1. This if the FF-A counterpart of SMC based ABI with virtualization.
Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| cfbb92ac | 02-Feb-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: register spmc_init() with boot_final()
In case of virtualization registers spmc_init() with boot_final() instead of service_init() to have my_endpoint_id initialized as part of boot initializa
core: register spmc_init() with boot_final()
In case of virtualization registers spmc_init() with boot_final() instead of service_init() to have my_endpoint_id initialized as part of boot initialization instead of delayed initialization when the OP-TEE partition is created.
This guarantees that my_endpoint_id holds the correct value when the first FF-A request is received.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| ab1ba412 | 02-Feb-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: add memory type MEM_AREA_NEX_NSEC_SHM
Adds the memory type MEM_AREA_NEX_NSEC_SHM used to map non-secure shared memory in the nexus.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
core: add memory type MEM_AREA_NEX_NSEC_SHM
Adds the memory type MEM_AREA_NEX_NSEC_SHM used to map non-secure shared memory in the nexus.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 79321a89 | 02-Feb-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: add virt_get_current_guest_id()
Adds the helper function virt_get_current_guest_id().
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander
core: add virt_get_current_guest_id()
Adds the helper function virt_get_current_guest_id().
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| a1c53023 | 02-Feb-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: spmc: support FF-A 1.1
Adds support for FF-A 1.1. Now OP-TEE will need to be able to work with both version 1.0 and 1.1 depending on the other endpoint. The callee supplies its implemented ver
core: spmc: support FF-A 1.1
Adds support for FF-A 1.1. Now OP-TEE will need to be able to work with both version 1.0 and 1.1 depending on the other endpoint. The callee supplies its implemented version and OP-TEE chooses the highest common version and returns that. This is done per endpoint so some endpoint may very well use version 1.0 while another uses version 1.1.
Two data structures, struct ffa_mem_transaction and struct ffa_partition_info, are affected. Runtime conditionals are used to select which version to use based on the negotiated FF-A version.
Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| fba7d2ad | 02-Feb-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: spmc: improve checks in handle_mem_share()
For the two FF-A functions FFA_MEM_SHARE_64 and FFA_MEM_SHARE_32 update the checks in handle_mem_share() for: - 32-bit vs 64-bit calling convention,
core: spmc: improve checks in handle_mem_share()
For the two FF-A functions FFA_MEM_SHARE_64 and FFA_MEM_SHARE_32 update the checks in handle_mem_share() for: - 32-bit vs 64-bit calling convention, that is, when to mask of the upper 32 bits. - that the reported fragment length does not exceed the total length of the memory transaction descriptor.
Reviewed-by: Balint Dobszay <balint.dobszay@arm.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 30bfe0d4 | 06-Mar-2023 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: arm64: use adr_l for __nex_bss_start and __nex_bss_end
Fixes the following linker errors when CFG_NS_VIRTUALIZATION is enabled: .../entry_a64.o: in function `clear_bss': .../entry_a64.
core: arm64: use adr_l for __nex_bss_start and __nex_bss_end
Fixes the following linker errors when CFG_NS_VIRTUALIZATION is enabled: .../entry_a64.o: in function `clear_bss': .../entry_a64.S:237:(.text._start+0x8c): relocation truncated to fit: R_AARCH64_ADR_PREL_LO21 against symbol `__nex_bss_start' defined in .bss.mempool_default section in all_objs.o .../entry_a64.S:238:(.text._start+0x90): relocation truncated to fit: R_AARCH64_ADR_PREL_LO21 against symbol `__nex_bss_end' defined in .bss.mempool_default section in all_objs.o
Use the adr_l macro instead of adr to get the addresses for start and end of .nex_bss.
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|