History log of /optee_os/core/kernel/ (Results 101 – 125 of 502)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
3d52f27c12-Feb-2024 Jens Wiklander <jens.wiklander@linaro.org>

core: move multi_core_panic_handler into __nex_data

Multi core panic interrupts are delivered on all cores on panic. For
this to work reliably with CFG_NS_VIRTUALIZATION=y make sure that
multi_core_

core: move multi_core_panic_handler into __nex_data

Multi core panic interrupts are delivered on all cores on panic. For
this to work reliably with CFG_NS_VIRTUALIZATION=y make sure that
multi_core_panic_handler is located in nexus memory.

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


/optee_os/.github/workflows/ci.yml
/optee_os/core/arch/arm/crypto/ghash-ce-core_a64.S
/optee_os/core/arch/arm/dts/fsl-lx2160a.dtsi
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/optee_ffa.h
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/kernel/timer_a64.c
/optee_os/core/arch/arm/kernel/virtualization.c
/optee_os/core/arch/arm/plat-k3/drivers/sec_proxy.c
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-rcar/conf.mk
/optee_os/core/arch/arm/plat-sam/sam_sfr.c
/optee_os/core/arch/arm/plat-stm32mp1/shared_resources.c
/optee_os/core/arch/arm/plat-stm32mp2/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/riscv/kernel/kern.ld.S
/optee_os/core/crypto/aes-gcm.c
/optee_os/core/drivers/atmel_piobu.c
/optee_os/core/drivers/atmel_rstc.c
/optee_os/core/drivers/atmel_rtc.c
/optee_os/core/drivers/atmel_shdwc.c
/optee_os/core/drivers/atmel_tcb.c
/optee_os/core/drivers/atmel_trng.c
/optee_os/core/drivers/atmel_wdt.c
/optee_os/core/drivers/clk/clk-stm32mp13.c
/optee_os/core/drivers/crypto/caam/acipher/caam_ecc.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/crypto/caam/hal/common/hal_rng.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/hal_rng.c
/optee_os/core/drivers/crypto/hisilicon/hisi_qm.c
/optee_os/core/drivers/crypto/se050/crypto.mk
/optee_os/core/drivers/crypto/stm32/stm32_saes.c
/optee_os/core/drivers/hfic.c
/optee_os/core/drivers/nvmem/atmel_sfc.c
/optee_os/core/drivers/pinctrl/atmel_pio.c
/optee_os/core/drivers/pl011.c
/optee_os/core/drivers/regulator/regulator_gpio.c
/optee_os/core/drivers/stm32_rng.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/widevine_huk.c
/optee_os/core/include/crypto/crypto_impl.h
/optee_os/core/include/drivers/atmel_rstc.h
/optee_os/core/include/drivers/serial.h
/optee_os/core/include/drivers/stm32mp1_rcc.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/huk_subkey.h
/optee_os/core/include/kernel/msg_param.h
/optee_os/core/include/mm/core_memprot.h
panic.c
/optee_os/core/lib/libtomcrypt/gcm.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/pta/sub.mk
/optee_os/core/pta/widevine.c
/optee_os/core/tee/entry_std.c
/optee_os/core/tee/fs_dirfile.c
/optee_os/core/tee/tadb.c
/optee_os/core/tee/tee_svc_cryp.c
/optee_os/ldelf/ta_elf.c
/optee_os/ldelf/ta_elf_rel.c
/optee_os/lib/libutee/include/pta_widevine.h
/optee_os/mk/config.mk
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
a039ffc605-Jan-2024 Clement Faure <clement.faure@nxp.com>

core: kernel: dt: check return values from snprintf()

Check return values from snprintf() function.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jerome Forissier <jerome.foriss

core: kernel: dt: check return values from snprintf()

Check return values from snprintf() function.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

e33c3ff505-Jan-2024 Clement Faure <clement.faure@nxp.com>

core: kernel: check device tree property pointer

Assert `prop` pointer before using it in fdt32_to_cpu().

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jerome Forissier <jerome.

core: kernel: check device tree property pointer

Assert `prop` pointer before using it in fdt32_to_cpu().

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

5ca2c36510-Jan-2024 Clement Faure <clement.faure@nxp.com>

core: remove unnecessary includes

Remove unnecessary includes.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander

core: remove unnecessary includes

Remove unnecessary includes.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Acked-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 ...


/optee_os/.github/workflows/ci.yml
/optee_os/CHANGELOG.md
/optee_os/core/arch/arm/dts/sama5d2.dtsi
/optee_os/core/arch/arm/kernel/abort.c
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/link_dummies_paged.c
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/mobj_dyn_shm.c
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul_rng.c
/optee_os/core/arch/arm/plat-rcar/conf.mk
/optee_os/core/arch/arm/plat-rcar/romapi.c
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/platform_config.h
/optee_os/core/arch/arm/tee/entry_fast.c
/optee_os/core/arch/riscv/include/kernel/thread_private_arch.h
/optee_os/core/arch/riscv/kernel/entry.S
/optee_os/core/arch/riscv/kernel/thread_optee_abi_rv.S
/optee_os/core/arch/riscv/mm/core_mmu_arch.c
/optee_os/core/crypto/aes-gcm-ghash-tbl.c
/optee_os/core/crypto/crypto.c
/optee_os/core/crypto/sm3-hmac.c
/optee_os/core/drivers/clk/clk.c
/optee_os/core/drivers/clk/clk_dt.c
/optee_os/core/drivers/gpio/gpio.c
/optee_os/core/drivers/nvmem/atmel_sfc.c
/optee_os/core/drivers/nvmem/nvmem.c
/optee_os/core/drivers/nvmem/sub.mk
/optee_os/core/drivers/scmi-msg/smt.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/drivers/i2c.h
/optee_os/core/include/drivers/nvmem.h
console.c
dt.c
ree_fs_ta.c
scall.c
tee_misc.c
tee_ta_manager.c
tee_time.c
user_ta.c
wait_queue.c
/optee_os/core/mm/mobj.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/device.c
/optee_os/core/pta/scmi.c
/optee_os/core/pta/stats.c
/optee_os/core/pta/system.c
/optee_os/core/pta/tests/aes_perf.c
/optee_os/core/pta/tests/dt_driver_test.c
/optee_os/core/tee/tadb.c
/optee_os/core/tee/tee_cryp_utl.c
/optee_os/core/tee/tee_fs_key_manager.c
/optee_os/core/tee/tee_fs_rpc.c
/optee_os/core/tee/tee_obj.c
/optee_os/core/tee/tee_pobj.c
/optee_os/core/tee/tee_ree_fs.c
/optee_os/core/tee/tee_svc_storage.c
/optee_os/core/tee/tee_time_generic.c
/optee_os/ldelf/ta_elf.c
/optee_os/lib/libutee/include/elf_common.h
/optee_os/mk/config.mk
4fd40c3922-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 ...

963eb45710-Jan-2024 Clement Faure <clement.faure@nxp.com>

core: fix unintended sign extension

Suspicious implicit sign extension: memtag_get_tag(kaddr) with type
uint8_t (8 bits, unsigned) is promoted in
memtag_get_tag(kaddr) << uref_tag_shift to type int

core: fix unintended sign extension

Suspicious implicit sign extension: memtag_get_tag(kaddr) with type
uint8_t (8 bits, unsigned) is promoted in
memtag_get_tag(kaddr) << uref_tag_shift to type int (32 bits, signed),
then sign-extended to type unsigned long (64 bits, unsigned).

If memtag_get_tag(kaddr) << uref_tag_shift is greater than 0x7FFFFFFF,
the upper bits of the result will all be 1.

Cast memtag_get_tag(kaddr) to vaddr_t to avoid implicit sign extension.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...


/optee_os/CHANGELOG.md
/optee_os/core/arch/arm/dts/stm32mp135f-dk.dts
/optee_os/core/arch/arm/dts/stm32mp151.dtsi
/optee_os/core/arch/arm/dts/stm32mp157a-dk1-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp157c-dk2-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ev1-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/tz_ssvce_pl310.h
/optee_os/core/arch/arm/include/mm/core_mmu_arch.h
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/kernel/tz_ssvce_pl310_a32.S
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2600.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2700.c
/optee_os/core/arch/arm/plat-corstone1000/main.c
/optee_os/core/arch/arm/plat-imx/imx_pl310.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul_rng.c
/optee_os/core/arch/arm/plat-k3/main.c
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-rockchip/main.c
/optee_os/core/arch/arm/plat-rzn1/main.c
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-sam/main.c
/optee_os/core/arch/arm/plat-sam/matrix.c
/optee_os/core/arch/arm/plat-sam/matrix.h
/optee_os/core/arch/arm/plat-sam/platform_config.h
/optee_os/core/arch/arm/plat-sam/sama7g5.h
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp2/main.c
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/riscv/include/riscv.h
/optee_os/core/arch/riscv/kernel/thread_arch.c
/optee_os/core/crypto/sm3.c
/optee_os/core/drivers/crypto/caam/acipher/caam_dsa.c
/optee_os/core/drivers/crypto/caam/acipher/caam_ecc.c
/optee_os/core/drivers/crypto/caam/caam_rng.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/crypto/caam/hal/common/hal_rng.c
/optee_os/core/drivers/crypto/caam/hal/common/registers/rng_regs.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_defines.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_helper.h
/optee_os/core/drivers/crypto/caam/include/caam_hal_rng.h
/optee_os/core/drivers/crypto/hisilicon/hisi_qm.c
/optee_os/core/drivers/crypto/hisilicon/include/hisi_qm.h
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/gpio/gpio.c
/optee_os/core/drivers/plic.c
/optee_os/core/drivers/remoteproc/stm32_remoteproc.c
/optee_os/core/drivers/remoteproc/sub.mk
/optee_os/core/drivers/stm32_gpio.c
/optee_os/core/drivers/stm32_iwdg.c
/optee_os/core/drivers/stm32_rng.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/drivers/clk_dt.h
/optee_os/core/include/drivers/gic.h
/optee_os/core/include/drivers/stm32_iwdg.h
/optee_os/core/include/drivers/stm32_remoteproc.h
/optee_os/core/include/dt-bindings/gpio/stm32mp_gpio.h
/optee_os/core/include/kernel/transfer_list.h
user_access.c
/optee_os/core/pta/stats.c
/optee_os/core/pta/stm32mp/remoteproc_pta.c
/optee_os/core/pta/stm32mp/rproc_pub_key.h
/optee_os/core/pta/stm32mp/sub.mk
/optee_os/core/pta/sub.mk
/optee_os/lib/libutee/include/remoteproc_pta.h
/optee_os/lib/libutee/include/utee_defines.h
/optee_os/mk/config.mk
/optee_os/ta/pkcs11/src/object.c
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/pkcs11/src/pkcs11_attributes.h
/optee_os/ta/pkcs11/src/processing.c
/optee_os/ta/pkcs11/sub.mk
/optee_os/ta/remoteproc/Makefile
/optee_os/ta/remoteproc/include/ta_remoteproc.h
/optee_os/ta/remoteproc/src/elf_parser.c
/optee_os/ta/remoteproc/src/elf_parser.h
/optee_os/ta/remoteproc/src/remoteproc_core.c
/optee_os/ta/remoteproc/src/sub.mk
/optee_os/ta/remoteproc/src/user_ta_header_defines.h
/optee_os/ta/remoteproc/sub.mk
/optee_os/ta/remoteproc/user_ta.mk
a5bf88f017-Jun-2022 Gatien Chevallier <gatien.chevallier@foss.st.com>

core: fix trace in add_node_to_probe()

Fix trace format, drv_name and node_name are inverted.

Fixes: b3a88b52a17c ("core: dt_driver probe sequence")
Signed-off-by: Gatien Chevallier <gatien.chevall

core: fix trace in add_node_to_probe()

Fix trace format, drv_name and node_name are inverted.

Fixes: b3a88b52a17c ("core: dt_driver probe sequence")
Signed-off-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

508e247629-Nov-2023 Raymond Mao <raymond.mao@linaro.org>

core: update transfer list header and signature

Add tl->flags and TL_FLAGS_HAS_CHECKSUM to align to the latest FW
Handoff spec update.
Bypass checksum verifying and updating if TL_FLAGS_HAS_CHECKSUM

core: update transfer list header and signature

Add tl->flags and TL_FLAGS_HAS_CHECKSUM to align to the latest FW
Handoff spec update.
Bypass checksum verifying and updating if TL_FLAGS_HAS_CHECKSUM bit
is not set in tl->flags.
Update TL signature to 4a0f_b10b to align to the latest FW Handoff
spec update.

Note: It causes Transfer List ABI breakage due to FW Handoff spec
stays with same rev number (v0.9) with above changes.

Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

86dbb17927-Nov-2023 Raymond Mao <raymond.mao@linaro.org>

core: remove unused bytes from transfer list

Only marks the minimum bytes required by alignment as 'TL_TAG_EMPTY'
and release the rest of unused bytes from transfer list when downsizing
the data of

core: remove unused bytes from transfer list

Only marks the minimum bytes required by alignment as 'TL_TAG_EMPTY'
and release the rest of unused bytes from transfer list when downsizing
the data of a transfer entry.
Function transfer_list_set_data_size() will remove the unused bytes
from the transfer list so that the freed space is allocable when adding
new transfer entries.

Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

01ef3c7901-Dec-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: panic(): avoid panic in panic

When configured with CFG_HALT_CORES_ON_PANIC=y panic() sends a secure
SGI to all other CPUs to trap all of them, but if interrupts haven't
been configured yet it

core: panic(): avoid panic in panic

When configured with CFG_HALT_CORES_ON_PANIC=y panic() sends a secure
SGI to all other CPUs to trap all of them, but if interrupts haven't
been configured yet it triggers a cascade of panics. So add a check to
see if interrupts are configured before trying to trap the other CPUs.

Fixes: 2b719df0fc1c ("core: interrupt: halt other cores when one is panicking")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com>

show more ...

245a552c01-Dec-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: add interrupt_get_main_chip_may_fail()

Add interrupt_get_main_chip_may_fail() to be able to check if it's
possible to use interrupts without causing a panic.

Signed-off-by: Jens Wiklander <je

core: add interrupt_get_main_chip_may_fail()

Add interrupt_get_main_chip_may_fail() to be able to check if it's
possible to use interrupts without causing a panic.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com>

show more ...

c038f3da29-Nov-2023 Etienne Carriere <etienne.carriere@foss.st.com>

core: dt_driver: do not defer probe on skip phandler arguments

Prevent dt_driver_device_from_node_idx_prop() to request driver probe
deferral when needing to skip phandle arguments cells related to

core: dt_driver: do not defer probe on skip phandler arguments

Prevent dt_driver_device_from_node_idx_prop() to request driver probe
deferral when needing to skip phandle arguments cells related to
providers not yet registered. When skipping these phandle argument cells
we don't really need the skipped provider is registered, we can read
the #xxx-cells property in the provider DT node straight.

For example, consider a driver which DT node defines:
clocks = <&foo_clock 1 2 3>, <&bar_clock 2>;
clock-names = "foo", "bar";
If driver calls clk_get_by_name(fdt, node, "bar"), it does not need to
wait &foo_clock related driver to be already probed, it does not even
need the driver to be ever probed.

Fixes: a22e85b25772 ("core: dt_driver: factorize clk_dt_get_from_provider()")
Acked-by: Gatien Chevallier <gatien.chevallier@foss.st.com>
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

a05577ea23-Nov-2023 Etienne Carriere <etienne.carriere@foss.st.com>

tree wide: clarify PTA ABI

Explicitly describe the statistics PTA ABI using dedicated inline
comments and moving struct pta_stats_ta and struct pta_stats_alloc
from respectively tee_ta_manager.c and

tree wide: clarify PTA ABI

Explicitly describe the statistics PTA ABI using dedicated inline
comments and moving struct pta_stats_ta and struct pta_stats_alloc
from respectively tee_ta_manager.c and malloc.h to pta_stats.h
header file.

For that purpose, define ALLOC_ID_* macros to identify each allocator
one can query information from through the statistics PTA API.

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

show more ...

5411580923-Nov-2023 Etienne Carriere <etienne.carriere@foss.st.com>

core: rename struct tee_ta_dump_stats

Rename struct tee_ta_dump_stats to struct pta_stats_ta to prepare
the creation of pta_stats.h header file that will define the
whole statistics PTA API and ABI,

core: rename struct tee_ta_dump_stats

Rename struct tee_ta_dump_stats to struct pta_stats_ta to prepare
the creation of pta_stats.h header file that will define the
whole statistics PTA API and ABI, located in libutee/include/
as already done for all other PTAs.

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

show more ...

2617f49f22-Nov-2023 Etienne Carriere <etienne.carriere@foss.st.com>

tree wide: rename struct malloc_stats

Rename struct malloc_stats to struct pta_stats_alloc to prepare
the creation of pta_stats.h header file that will define the
whole statistics PTA API and ABI, l

tree wide: rename struct malloc_stats

Rename struct malloc_stats to struct pta_stats_alloc to prepare
the creation of pta_stats.h header file that will define the
whole statistics PTA API and ABI, located in libutee/include/
as already done for all other PTAs.

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

show more ...

2e02a73723-Oct-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: ffa: add notifications with SPMC at S-EL1

Adds support for asynchronous notifications via FF-A with SPMC at S-EL1.

The OP-TEE FF-A ABI is extended to report support for asynchronous
notificat

core: ffa: add notifications with SPMC at S-EL1

Adds support for asynchronous notifications via FF-A with SPMC at S-EL1.

The OP-TEE FF-A ABI is extended to report support for asynchronous
notifications during OPTEE_FFA_EXCHANGE_CAPABILITIES.

The SPMC at S-EL1 is extended to provide the FF-A notifications ABI to a
normal world VM.

The notifications depends on having a non-secure SGI interrupt ID
available to notify normal world that a notification is pending.
Notifications becomes available once platform code has called
thread_spmc_set_async_notif_intid() with a designed SGI ID.

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

show more ...

f2b06bc523-Oct-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: notif: remove interrupt assumptions

Removes the assumption in notif_register_driver() that OP-TEE is using
interrupts to notify the normal world. The coming FF-A based
implementation will use

core: notif: remove interrupt assumptions

Removes the assumption in notif_register_driver() that OP-TEE is using
interrupts to notify the normal world. The coming FF-A based
implementation will use FFA_NOTIFICATION_SET for when notifying using an
SPMC at S-EL2 or EL3.

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

show more ...

a2a3dfbc23-Oct-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: separate async notification implementation

Separates the implementation of sending asynchronous notifications from
the part managing reception of events. This makes room for an
alternative imp

core: separate async notification implementation

Separates the implementation of sending asynchronous notifications from
the part managing reception of events. This makes room for an
alternative implementation based on FF-A.

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

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/core/arch/arm/dts/stm32mp131.dtsi
/optee_os/core/arch/arm/dts/stm32mp135f-dk.dts
/optee_os/core/arch/arm/dts/stm32mp157a-dk1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-dk2.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/plat-aspeed/conf.mk
/optee_os/core/arch/arm/plat-d06/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pwr.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pwr.h
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_syscfg.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_syscfg.h
/optee_os/core/arch/arm/plat-stm32mp1/plat_tzc400.c
/optee_os/core/arch/arm/plat-stm32mp1/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/core.mk
/optee_os/core/drivers/crypto/hisilicon/hisi_qm.c
/optee_os/core/drivers/crypto/hisilicon/include/hisi_qm.h
/optee_os/core/drivers/crypto/hisilicon/sub.mk
/optee_os/core/drivers/crypto/sub.mk
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/hisi_trng.c
/optee_os/core/drivers/regulator/regulator.c
/optee_os/core/drivers/regulator/regulator_gpio.c
/optee_os/core/drivers/regulator/stm32mp13_regulator_iod.c
/optee_os/core/drivers/regulator/sub.mk
/optee_os/core/include/drivers/regulator.h
/optee_os/core/include/drivers/stm32mp13_regulator_iod.h
/optee_os/core/include/mm/core_mmu.h
notif.c
notif_default.c
sub.mk
/optee_os/core/mm/core_mmu.c
/optee_os/mk/config.mk
/optee_os/ta/pkcs11/src/pkcs11_token.c
e9376d0208-Oct-2023 Etienne Carriere <etienne.carriere@foss.st.com>

core: interrupt: add interrupt_create_handler()

Adds interrupt_create_handler() API function in interrupt framework.
The function is to be used with interrupt controls obtained
from the DT with int

core: interrupt: add interrupt_create_handler()

Adds interrupt_create_handler() API function in interrupt framework.
The function is to be used with interrupt controls obtained
from the DT with interrupt_dt_get() interrupt_dt_get_by_index() or
interrupt_dt_get_by_name().

The function differs from legacy interrupt_add_handler() in that
this latter always reconfigure the interrupt while new
interrupt_create_handler() function assumes the interrupt was configured
from interrupt_dt_get() or friends.

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

33a0c83514-Jun-2023 Etienne Carriere <etienne.carriere@foss.st.com>

core: interrupt: registering interrupt providers

Adds interrupt chip framework API functions for an interrupt controller
to register as an interrupt provider in the driver probing sequence
based on

core: interrupt: registering interrupt providers

Adds interrupt chip framework API functions for an interrupt controller
to register as an interrupt provider in the driver probing sequence
based on device tree. This allows interrupt consumer to be deferred
when a dependent interrupt controller is not yet initialized.

Interrupt controllers register a driver in DT_DRIVER providers list
with: interrupt_register_provider().

Interrupt consumer can get their interrupt through DT data with
interrupt_dt_get(), interrupt_dt_get_by_index() or
interrupt_dt_get_by_name().

This change removes inclusion of interrupt.h from kernel/dt.h as it is
not needed and conflicts with inclusion of kernel/dt.h from
kernel/interrupt.h.

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

show more ...

b548a65706-Nov-2023 Etienne Carriere <etienne.carriere@foss.st.com>

core: dt_driver: reference output device reference as void *

Changes dt_driver API function to reference device reference as
void * instead of void ** which could be confusing as the reference
can b

core: dt_driver: reference output device reference as void *

Changes dt_driver API function to reference device reference as
void * instead of void ** which could be confusing as the reference
can be a pointer to a device pointer (e.g. in clk_dt.c) or a pointer
to a structure (e.g. interrupt.c).

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

show more ...

955b02aa10-Oct-2023 Etienne Carriere <etienne.carriere@foss.st.com>

core: dt_driver: don't enforce phandle 1st arg is a phandle

Changes local function device_from_provider_prop() to assume its
argument @prop points to the first argument to pass with phandle.

This c

core: dt_driver: don't enforce phandle 1st arg is a phandle

Changes local function device_from_provider_prop() to assume its
argument @prop points to the first argument to pass with phandle.

This change allows a later change to support other DT bindings
("interrupts" property) where 1st cell of the property is not
a phandle but the 1st phandle argument to be passed.

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

bce2f88a19-Nov-2023 Vincent Mailhol <mailhol.vincent@wanadoo.fr>

tree-wide: remove useless newline character in *MSG() messages

The *MSG() macros take care of printing a newline. Adding a newline
character ('\n') is useless. Remove it.

Signed-off-by: Vincent Mai

tree-wide: remove useless newline character in *MSG() messages

The *MSG() macros take care of printing a newline. Adding a newline
character ('\n') is useless. Remove it.

Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

dcff802b16-Nov-2023 Raymond Mao <raymond.mao@linaro.org>

core: add new argument to init_external_dt()

Add argument to function init_external_dt() to allow callers to specify
the maximum size of external DTB to be initialized.

Signed-off-by: Raymond Mao <

core: add new argument to init_external_dt()

Add argument to function init_external_dt() to allow callers to specify
the maximum size of external DTB to be initialized.

Signed-off-by: Raymond Mao <raymond.mao@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

3d8cac1410-May-2022 Patrick Delaunay <patrick.delaunay@foss.st.com>

core: kernel: tee_ta_manager.c: add uuid in open session error trace

Adds the TA UUID in open session error trace to allow to identify
witch TA cause the issue when debug trace are not acitvated.

B

core: kernel: tee_ta_manager.c: add uuid in open session error trace

Adds the TA UUID in open session error trace to allow to identify
witch TA cause the issue when debug trace are not acitvated.

By the way, fix specifier for res argument that is a uint32_t.

Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

12345678910>>...21