History log of /optee_os/core/arch/arm/ (Results 776 – 800 of 3635)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
f7a5c21e29-May-2023 Jerome Forissier <jerome.forissier@linaro.org>

arm64: memtag: strip tag from crash dumps

The MTE tag is not really useful when displaying a crash dump. In fact
it makes it more complicated for tools like script/symbolize.py to
retrieve the actua

arm64: memtag: strip tag from crash dumps

The MTE tag is not really useful when displaying a crash dump. In fact
it makes it more complicated for tools like script/symbolize.py to
retrieve the actual (untagged) virtual address, especially as we now
support non-Arm architectures and therefore blindly stripping the MTE
bits is not possible.

This commit strips the tag in call stacks displayed by
print_stack_arm64(). It also removes it from the virtual address shown
on abort (__print_abort_info()) since symbolize.py does try to resolve
the address as symbol + offset ; but in this case the tagged address is
printed as well, because it can be helpful to diagnose tag check faults.

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

9cc3a2ff25-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 ...

4d02884718-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 ...

2a5482f730-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 ...

cae2bfff23-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 ...

ffa9387304-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 ...

f49f23f703-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 ...

923f61cd03-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 ...

412d46f602-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 ...

8af7813802-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 ...

a65dd3a602-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 ...

cfbb92ac02-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 ...

79321a8902-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 ...

a1c5302302-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 ...

fba7d2ad02-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 ...

30bfe0d406-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 ...

358bf47c16-May-2023 Etienne Carriere <etienne.carriere@linaro.org>

core: interrupt: rename itr_core_handler()

Renames itr_core_handler() to interrupt_main_handler() as a later
change will modify interrupt chip API functions using interrupt_
as prefix.

Reviewed-by:

core: interrupt: rename itr_core_handler()

Renames itr_core_handler() to interrupt_main_handler() as a later
change will modify interrupt chip API functions using interrupt_
as prefix.

Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

0ee3f52e16-May-2023 Etienne Carriere <etienne.carriere@linaro.org>

drivers: gic: factorize call to gic_init() or gic_init_base_addr()

Platforms call either gic_init() or gic_init_base_addr() depending
on whether CFG_WITH_ARM_TRUSTED_FW is defined or not. This chang

drivers: gic: factorize call to gic_init() or gic_init_base_addr()

Platforms call either gic_init() or gic_init_base_addr() depending
on whether CFG_WITH_ARM_TRUSTED_FW is defined or not. This change
factorize this logic from gic_init() implementation and makes
gic_init_base_addr() local to gic.c.

For that purpose functions gic_init_base_address() and gic_dt_get_irq()
are moved inside gic.c source file.
source file.

Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

67e55c5116-May-2023 Etienne Carriere <etienne.carriere@linaro.org>

core: define main interrupt controller data from its driver

All but one platforms define CPU core interrupt controller from their
platform main.c source file next to its main interrupt handler.
This

core: define main interrupt controller data from its driver

All but one platforms define CPU core interrupt controller from their
platform main.c source file next to its main interrupt handler.
This change factorize these implementation by moving the definition
of the controller data instance straight in the controller driver
source file. This change makes each controller driver to implement
straight itr_core_handler() function, preventing a extra branch on
interrupt execution. Interrupt controller driver initialization
function now straight calls itr_core_init().

This changes treats case when CFG_CORE_WORKAROUND_ARM_NMFI is enable
to not conflict with core/arch/arm/kernel/thread.c that already
overrides itr_core_handler() weak implementation.

With this change, the main controller initialization function
(gic_init(), gic_init_base_addr(), gic_cpu_init() and hfic_init())
no more gets the controller data as input argument.

As a consequence, definition of struct hfic_data and struct gic_data
moves from their respective driver header file to the respective
driver source file.

As a consequence, gic_dump() no more requires an argument.

Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

8b78beb415-Dec-2022 Clément Léger <clement.leger@bootlin.com>

plat-sam: enable pinctrl and atmel_pio driver for wlsom1 board

The board will need these options to apply I2C pin muxing in order to
communicate with the PMIC.

Signed-off-by: Clément Léger <clement

plat-sam: enable pinctrl and atmel_pio driver for wlsom1 board

The board will need these options to apply I2C pin muxing in order to
communicate with the PMIC.

Signed-off-by: Clément Léger <clement.leger@bootlin.com>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>

show more ...

06ae0ae114-Dec-2022 Clément Léger <clement.leger@bootlin.com>

dts: at91: set PIO controller as secure

Set the PIO pinctrl as secure to ensure pin configurations are not
modifiable by non secure world.

Signed-off-by: Clément Léger <clement.leger@bootlin.com>
A

dts: at91: set PIO controller as secure

Set the PIO pinctrl as secure to ensure pin configurations are not
modifiable by non secure world.

Signed-off-by: Clément Léger <clement.leger@bootlin.com>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>

show more ...

a8c290bd23-Feb-2023 Clément Léger <clement.leger@bootlin.com>

plat-sam: enable CFG_DRIVERS_GPIO for sama5d27_wlsom1_ek flavor

The PMIC present on this board will needs to access a GPIOs to enter low
power mode.

Signed-off-by: Clément Léger <clement.leger@boot

plat-sam: enable CFG_DRIVERS_GPIO for sama5d27_wlsom1_ek flavor

The PMIC present on this board will needs to access a GPIOs to enter low
power mode.

Signed-off-by: Clément Léger <clement.leger@bootlin.com>
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...

6e2fe64a21-Feb-2023 Clément Léger <clement.leger@bootlin.com>

dt_driver_test: add tests for gpio controller framework

Add various tests for the GPIO dt controller framework much like what was
done for the rstclr system.

Signed-off-by: Clément Léger <clement.l

dt_driver_test: add tests for gpio controller framework

Add various tests for the GPIO dt controller framework much like what was
done for the rstclr system.

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@linaro.org>

show more ...

2277c3f701-Mar-2023 Clément Léger <clement.leger@bootlin.com>

plat-sam: registers clocks for SCMI usage

Use scmi_clk_add() to register all clocks that are available on the
sama5d2 SoC.

Signed-off-by: Clément Léger <clement.leger@bootlin.com>
Acked-by: Etienne

plat-sam: registers clocks for SCMI usage

Use scmi_clk_add() to register all clocks that are available on the
sama5d2 SoC.

Signed-off-by: Clément Léger <clement.leger@bootlin.com>
Acked-by: Etienne Carriere <etienne.carriere@linaro.org>
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>

show more ...

f9e3700618-Jun-2021 Clément Léger <clement.leger@bootlin.com>

plat-sam: enable use of SCMI generic clock support

All clocks for the plat-sam are described using the clk framework.
Enable this option to allow using them with SCMI transparently.

Signed-off-by:

plat-sam: enable use of SCMI generic clock support

All clocks for the plat-sam are described using the clk framework.
Enable this option to allow using them with SCMI transparently.

Signed-off-by: Clément Léger <clement.leger@bootlin.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: Thomas Perrot <thomas.perrot@bootlin.com>

show more ...

1...<<31323334353637383940>>...146