History log of /rk3399_ARM-atf/drivers/st/ (Results 126 – 150 of 305)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
7417cda605-Apr-2022 Yann Gautier <yann.gautier@foss.st.com>

fix(st-clock): correct stm32_clk_parse_fdt_by_name

The fdt_getprop() function sets the length to -1 if the property is not
found. We should then not use it later in stm32_clk_parse_fdt_by_name()
in

fix(st-clock): correct stm32_clk_parse_fdt_by_name

The fdt_getprop() function sets the length to -1 if the property is not
found. We should then not use it later in stm32_clk_parse_fdt_by_name()
in that case. Directly set *nb to 0U and return 0 if the property is not
found.

Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
Change-Id: I19c5c953f392cdc768e0b1f3f240fc99a73a049c

show more ...

b8eab51229-Mar-2022 Yann Gautier <yann.gautier@st.com>

fix(st-clock): check _clk_stm32_get_parent return

This issue was found by Coverity (CID 376885). The _clk_stm32_get_parent()
return shouldn't be negative. Return the error in this case.

Signed-off-

fix(st-clock): check _clk_stm32_get_parent return

This issue was found by Coverity (CID 376885). The _clk_stm32_get_parent()
return shouldn't be negative. Return the error in this case.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I91eff7e99fcdac9a258100b163fd9b040a9bd2c0

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2/bl2_el3.ld.S
/rk3399_ARM-atf/changelog.yaml
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/build.rst
/rk3399_ARM-atf/docs/plat/nxp/nxp-layerscape.rst
/rk3399_ARM-atf/drivers/fwu/fwu.c
/rk3399_ARM-atf/drivers/nxp/dcfg/dcfg.c
/rk3399_ARM-atf/drivers/nxp/ddr/nxp-ddr/ddr.mk
/rk3399_ARM-atf/drivers/nxp/ddr/nxp-ddr/dimm.c
/rk3399_ARM-atf/drivers/nxp/ddr/phy-gen2/phy.c
/rk3399_ARM-atf/drivers/scmi-msg/clock.c
/rk3399_ARM-atf/drivers/scmi-msg/power_domain.c
clk/clk-stm32-core.c
/rk3399_ARM-atf/drivers/ufs/ufs.c
/rk3399_ARM-atf/fdts/stm32mp13-bl2.dtsi
/rk3399_ARM-atf/fdts/stm32mp13-ddr.dtsi
/rk3399_ARM-atf/fdts/stm32mp13-ddr3-1x4Gb-1066-binF.dtsi
/rk3399_ARM-atf/fdts/stm32mp13-fw-config.dtsi
/rk3399_ARM-atf/fdts/stm32mp13-pinctrl.dtsi
/rk3399_ARM-atf/fdts/stm32mp131.dtsi
/rk3399_ARM-atf/fdts/stm32mp133.dtsi
/rk3399_ARM-atf/fdts/stm32mp135.dtsi
/rk3399_ARM-atf/fdts/stm32mp135f-dk-fw-config.dts
/rk3399_ARM-atf/fdts/stm32mp135f-dk.dts
/rk3399_ARM-atf/fdts/stm32mp13xa.dtsi
/rk3399_ARM-atf/fdts/stm32mp13xc.dtsi
/rk3399_ARM-atf/fdts/stm32mp13xd.dtsi
/rk3399_ARM-atf/fdts/stm32mp13xf.dtsi
/rk3399_ARM-atf/include/arch/aarch32/el3_common_macros.S
/rk3399_ARM-atf/include/arch/aarch64/el3_common_macros.S
/rk3399_ARM-atf/include/drivers/nxp/crypto/caam/caam.h
/rk3399_ARM-atf/include/drivers/nxp/dcfg/dcfg.h
/rk3399_ARM-atf/include/drivers/nxp/gic/gicv3/plat_gic.h
/rk3399_ARM-atf/include/dt-bindings/soc/stm32mp13-tzc400.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a76ae.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78_ae.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78c.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/rmmd_svc.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a76ae.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78_ae.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78c.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_plat_attest_token.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_realm_attest_key.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_sp.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_ras.c
/rk3399_ARM-atf/plat/nxp/common/img_loadr/load_img.c
/rk3399_ARM-atf/plat/nxp/common/include/default/ch_3/soc_default_base_addr.h
/rk3399_ARM-atf/plat/nxp/common/include/default/ch_3/soc_default_helper_macros.h
/rk3399_ARM-atf/plat/nxp/common/plat_make_helper/soc_common_def.mk
/rk3399_ARM-atf/plat/nxp/common/setup/ls_bl2_el3_setup.c
/rk3399_ARM-atf/plat/nxp/common/setup/ls_common.c
/rk3399_ARM-atf/plat/nxp/common/soc_errata/errata.c
/rk3399_ARM-atf/plat/nxp/common/soc_errata/errata.mk
/rk3399_ARM-atf/plat/nxp/common/soc_errata/errata_a009660.c
/rk3399_ARM-atf/plat/nxp/common/soc_errata/errata_a010539.c
/rk3399_ARM-atf/plat/nxp/common/soc_errata/errata_a050426.c
/rk3399_ARM-atf/plat/nxp/common/soc_errata/errata_list.h
/rk3399_ARM-atf/plat/nxp/common/tbbr/tbbr.mk
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/aarch64/ls1088a.S
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/aarch64/ls1088a_helpers.S
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/include/soc.h
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088aqds/ddr_init.c
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088aqds/plat_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088aqds/platform.c
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088aqds/platform.mk
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088aqds/platform_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088aqds/policy.h
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088ardb/ddr_init.c
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088ardb/plat_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088ardb/platform.c
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088ardb/platform.mk
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088ardb/platform_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/ls1088ardb/policy.h
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/soc.c
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/soc.def
/rk3399_ARM-atf/plat/nxp/soc-ls1088a/soc.mk
/rk3399_ARM-atf/plat/nxp/soc-lx2160a/soc.def
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_private.h
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_syscfg.c
/rk3399_ARM-atf/services/std_svc/rmmd/rmmd.mk
/rk3399_ARM-atf/services/std_svc/rmmd/rmmd_attest.c
/rk3399_ARM-atf/services/std_svc/rmmd/rmmd_main.c
/rk3399_ARM-atf/services/std_svc/rmmd/rmmd_private.h
/rk3399_ARM-atf/services/std_svc/rmmd/trp/trp_entry.S
/rk3399_ARM-atf/services/std_svc/rmmd/trp/trp_main.c
/rk3399_ARM-atf/services/std_svc/rmmd/trp/trp_private.h
/rk3399_ARM-atf/services/std_svc/std_svc_setup.c
/rk3399_ARM-atf/tools/nxp/create_pbl/create_pbl.c
/rk3399_ARM-atf/tools/nxp/create_pbl/pbl_ch3.mk
/rk3399_ARM-atf/tools/sptool/sp_mk_generator.py
6481a8f120-Jan-2021 Yann Gautier <yann.gautier@st.com>

feat(st-sdmmc2): allow compatible to be defined in platform code

Put DT_SDMMC2_COMPAT under #ifndef. Keep the default value if it is not
defined in platform code.

Change-Id: I611baaf1fc622d33e655ee

feat(st-sdmmc2): allow compatible to be defined in platform code

Put DT_SDMMC2_COMPAT under #ifndef. Keep the default value if it is not
defined in platform code.

Change-Id: I611baaf1fc622d33e655ee2c78d9c287baaa6a67
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

5278ec3f18-Jan-2022 Yann Gautier <yann.gautier@st.com>

feat(st-pmic): add pmic_voltages_init() function

This new function pmic_voltages_init() is used to set the minimum value
for STM32MP13 VDDCPU and VDDCORE regulators. This value is retrieved
from dev

feat(st-pmic): add pmic_voltages_init() function

This new function pmic_voltages_init() is used to set the minimum value
for STM32MP13 VDDCPU and VDDCORE regulators. This value is retrieved
from device tree.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: Ibbe237cb5dccc1fddf92e07ffd3955048ff82075

show more ...

9be88e7511-Mar-2020 Gabriel Fernandez <gabriel.fernandez@st.com>

feat(st-clock): add clock driver for STM32MP13

Add new clock driver for STM32MP13. Split the include file to manage
either STM32MP13 or STM32MP15.

Change-Id: Ia568cd12b1d5538809204f0fd2224d51e5d1e9

feat(st-clock): add clock driver for STM32MP13

Add new clock driver for STM32MP13. Split the include file to manage
either STM32MP13 or STM32MP15.

Change-Id: Ia568cd12b1d5538809204f0fd2224d51e5d1e985
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>

show more ...

111a384c12-Feb-2020 Yann Gautier <yann.gautier@st.com>

feat(stm32mp1): remove unsupported features on STM32MP13

* GPIO: On STM32MP13, there are no banks GPIOJ, GPIOK and GPIOZ.
* STM32MP13 is a single Cortex-A7 CPU: remove reset from MPU1
and reset fr

feat(stm32mp1): remove unsupported features on STM32MP13

* GPIO: On STM32MP13, there are no banks GPIOJ, GPIOK and GPIOZ.
* STM32MP13 is a single Cortex-A7 CPU: remove reset from MPU1
and reset from MCU traces
* There is no MCU on STM32MP13. Put MCU security management
under STM32MP15 flag.
* The authentication feature is not supported yet on STM32MP13,
put the code under SPM32MP15 flag.
* On STM32MP13, the monotonic counter is managed in ROM code, keep
the monotonic counter update just for STM32MP15.
* SYSCFG: put registers not present on STM32MP13 under STM32MP15
flag, as the code that manages them.
* PMIC: use ldo3 during DDR configuration only for STM32MP15
* Reset UART pins on USB boot is no more required.

Change-Id: Iceba59484a9bb02828fe7e99f3ecafe69c837bc7
Signed-off-by: Yann Gautier <yann.gautier@st.com>
Signed-off-by: Gabriel Fernandez <gabriel.fernandez@st.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/plat/stm32mp1.rst
/rk3399_ARM-atf/docs/security_advisories/index.rst
/rk3399_ARM-atf/docs/security_advisories/security-advisory-tfv-9.rst
pmic/stm32mp_pmic.c
/rk3399_ARM-atf/include/arch/aarch64/arch_helpers.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a710.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a72.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a76.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a77.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_x2.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cpu_macros.S
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n2.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_v1.h
/rk3399_ARM-atf/include/lib/cpus/wa_cve_2022_23960.h
/rk3399_ARM-atf/include/lib/gpt_rme/gpt_rme.h
/rk3399_ARM-atf/include/services/arm_arch_svc.h
/rk3399_ARM-atf/lib/aarch64/cache_helpers.S
/rk3399_ARM-atf/lib/aarch64/misc_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a57.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a710.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a72.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a73.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a75.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a76.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a77.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_x2.S
/rk3399_ARM-atf/lib/cpus/aarch64/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n2.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_v1.S
/rk3399_ARM-atf/lib/cpus/aarch64/wa_cve_2017_5715_bpiall.S
/rk3399_ARM-atf/lib/cpus/aarch64/wa_cve_2017_5715_mmu.S
/rk3399_ARM-atf/lib/cpus/aarch64/wa_cve_2022_23960_bhb.S
/rk3399_ARM-atf/lib/cpus/aarch64/wa_cve_2022_23960_bhb_vector.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/gpt_rme/gpt_rme.c
/rk3399_ARM-atf/lib/gpt_rme/gpt_rme_private.h
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/optee_sp_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_console.c
/rk3399_ARM-atf/plat/brcm/board/common/board_common.mk
/rk3399_ARM-atf/plat/intel/soc/agilex/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/agilex/platform.mk
/rk3399_ARM-atf/plat/intel/soc/common/drivers/ccu/ncore_ccu.c
/rk3399_ARM-atf/plat/intel/soc/common/drivers/ccu/ncore_ccu.h
/rk3399_ARM-atf/plat/intel/soc/common/include/platform_def.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_fcs.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_mailbox.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_reset_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_sip_svc.h
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_system_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/sip/socfpga_sip_ecc.c
/rk3399_ARM-atf/plat/intel/soc/common/sip/socfpga_sip_fcs.c
/rk3399_ARM-atf/plat/intel/soc/common/soc/socfpga_reset_manager.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_psci.c
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_sip_svc.c
/rk3399_ARM-atf/plat/intel/soc/n5x/bl31_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/n5x/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/n5x/platform.mk
/rk3399_ARM-atf/plat/intel/soc/stratix10/include/socfpga_plat_def.h
/rk3399_ARM-atf/plat/intel/soc/stratix10/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/cm3_system_reset.c
/rk3399_ARM-atf/plat/mediatek/mt8186/drivers/dfd/plat_dfd.c
/rk3399_ARM-atf/plat/mediatek/mt8186/drivers/dfd/plat_dfd.h
/rk3399_ARM-atf/plat/mediatek/mt8186/include/plat_sip_calls.h
/rk3399_ARM-atf/plat/mediatek/mt8186/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8186/plat_sip_calls.c
/rk3399_ARM-atf/plat/mediatek/mt8186/platform.mk
/rk3399_ARM-atf/plat/st/common/bl2_stm32_io_storage.c
/rk3399_ARM-atf/plat/st/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min-stm32mp1.mk
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_fip_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_private.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_syscfg.c
/rk3399_ARM-atf/plat/xilinx/common/pm_service/pm_ipi.c
/rk3399_ARM-atf/plat/xilinx/versal/pm_service/pm_client.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_psci.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_clock.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_ioctl.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_ioctl.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_defs.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
/rk3399_ARM-atf/services/arm_arch_svc/arm_arch_svc_setup.c
/rk3399_ARM-atf/services/std_svc/rmmd/rmmd_main.c
/rk3399_ARM-atf/tools/stm32image/stm32image.c
57e6018309-Feb-2022 Yann Gautier <yann.gautier@st.com>

fix(st-pmic): add static const to pmic_ops

The static was found by sparse tool:
drivers/st/pmic/stm32mp_pmic.c:456:18: warning: symbol 'pmic_ops'
was not declared. Should it be static?
The const wa

fix(st-pmic): add static const to pmic_ops

The static was found by sparse tool:
drivers/st/pmic/stm32mp_pmic.c:456:18: warning: symbol 'pmic_ops'
was not declared. Should it be static?
The const was also missing.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: Ibb5cfaf67ac980bf0af27712a95dbef05b617c25

show more ...

c507b06006-Mar-2022 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge "fix(st-clock): initialize pllcfg table" into integration

1f60d1bd28-Feb-2022 Yann Gautier <yann.gautier@foss.st.com>

feat(st-uart): manage oversampling by 8

UART oversampling by 8 allows higher baud rates for UART. This is
required when (UART freq / baudrate) <= 16. In this case the OVER8 bit
needs to be enabled i

feat(st-uart): manage oversampling by 8

UART oversampling by 8 allows higher baud rates for UART. This is
required when (UART freq / baudrate) <= 16. In this case the OVER8 bit
needs to be enabled in CR1 register. And the BRR register management is
different:
USARTDIV = (2 * UART freq / baudrate) (with div round nearest)
BRR[15:4] = USARTDIV[15:4]
BRR[3] = 0
BRR[2:0] = USARTDIV[3:0] >> 1

Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
Change-Id: Ia3fbeeb73a36a4dc485c7ba428c531e65b6f6c09

show more ...

af7775ab28-Feb-2022 Yann Gautier <yann.gautier@foss.st.com>

fix(st-uart): correctly fill BRR register

To get the nearest divisor for BRR register, we use:
Divisor = (Uart clock + (baudrate / 2)) / baudrate
But lsl was wrongly used instead of lsr to have the

fix(st-uart): correctly fill BRR register

To get the nearest divisor for BRR register, we use:
Divisor = (Uart clock + (baudrate / 2)) / baudrate
But lsl was wrongly used instead of lsr to have the division by 2.

Signed-off-by: Yann Gautier <yann.gautier@foss.st.com>
Change-Id: Iedcc3ccdb4cf8268012e82a66df2a9ec48fc1d79

show more ...

175758b204-Mar-2022 Yann Gautier <yann.gautier@st.com>

fix(st-clock): initialize pllcfg table

The issue was found by Coverity:
CID 376582: (UNINIT)
Using uninitialized value "*pllcfg[_PLL4]" when calling
"stm32mp1_check_pll_conf".
CID 376582:

fix(st-clock): initialize pllcfg table

The issue was found by Coverity:
CID 376582: (UNINIT)
Using uninitialized value "*pllcfg[_PLL4]" when calling
"stm32mp1_check_pll_conf".
CID 376582: (UNINIT)
Using uninitialized value "*pllcfg[_PLL3]" when calling
"stm32mp1_check_pll_conf".

Check PLL configs are valid before using pllcfg.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I49de849eaf451d0c165a8eb8555112a0a4140bbc

show more ...

9fa9a0c528-Feb-2022 Yann Gautier <yann.gautier@st.com>

fix(st-clock): print enums as unsigned

With gcc-11, the -Wformat-signedness warning complains about enum values
that should be printed as unsigned values. Change %d to %u for several
lines in the cl

fix(st-clock): print enums as unsigned

With gcc-11, the -Wformat-signedness warning complains about enum values
that should be printed as unsigned values. Change %d to %u for several
lines in the clock driver.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: Ia2d24e6feef5e852e0a6bfaa1286fe605f9a16b7

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/changelog.yaml
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/design_documents/context_mgmt_rework.rst
/rk3399_ARM-atf/docs/design_documents/index.rst
/rk3399_ARM-atf/docs/plat/arm/corstone1000/index.rst
/rk3399_ARM-atf/docs/plat/arm/index.rst
/rk3399_ARM-atf/docs/plat/imx8m.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/build.rst
/rk3399_ARM-atf/docs/plat/nxp/nxp-layerscape.rst
/rk3399_ARM-atf/docs/resources/diagrams/context_management_abs.png
/rk3399_ARM-atf/docs/resources/diagrams/context_mgmt_existing.png
/rk3399_ARM-atf/docs/resources/diagrams/context_mgmt_proposed.png
/rk3399_ARM-atf/drivers/allwinner/axp/axp803.c
/rk3399_ARM-atf/drivers/nxp/crypto/caam/src/jobdesc.c
/rk3399_ARM-atf/drivers/nxp/qspi/qspi.mk
clk/stm32mp1_clk.c
/rk3399_ARM-atf/include/drivers/measured_boot/event_log/event_log.h
/rk3399_ARM-atf/include/drivers/nxp/crypto/caam/sec_hw_specific.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a510.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a710.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_x2.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/services/ffa_svc.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a510.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a710.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_x2.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/mpmm/mpmm.c
/rk3399_ARM-atf/plat/arm/board/common/rotpk/arm_dev_rotpk.S
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_err.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_helpers.S
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_plat.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_pm.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_security.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_stack_protector.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_topology.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/corstone1000_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/fdts/corstone1000_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/corstone1000/common/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/corstone1000/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/corstone1000/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_security.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rdn2/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_variant.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8m_dyn_cfg_helpers.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8m_measured_boot.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/include/imx8m_measured_boot.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/dram_win.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/aarch64/ls1046a.S
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/aarch64/ls1046a_helpers.S
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/include/ns_access.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/include/soc.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046afrwy/ddr_init.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046afrwy/plat_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046afrwy/platform.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046afrwy/platform.mk
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046afrwy/platform_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046afrwy/policy.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046aqds/ddr_init.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046aqds/plat_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046aqds/platform.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046aqds/platform.mk
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046aqds/platform_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046aqds/policy.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046ardb/ddr_init.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046ardb/plat_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046ardb/platform.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046ardb/platform.mk
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046ardb/platform_def.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/ls1046ardb/policy.h
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/soc.c
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/soc.def
/rk3399_ARM-atf/plat/nxp/soc-ls1046a/soc.mk
/rk3399_ARM-atf/plat/nxp/soc-lx2160a/aarch64/lx2160a.S
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min-stm32mp1.mk
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_boot_device.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_shared_resources.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/nxp/create_pbl/create_pbl.mk
47065ffe06-Jan-2022 Yann Gautier <yann.gautier@st.com>

fix(st-pmic): correct verbose message

Replace %d with %u in log, to avoid warning when
-Wformat-signedness is enabled.

Change-Id: Ied5823520181f225ae09bd164e2e52e9a7692c60
Signed-off-by: Yann Gauti

fix(st-pmic): correct verbose message

Replace %d with %u in log, to avoid warning when
-Wformat-signedness is enabled.

Change-Id: Ied5823520181f225ae09bd164e2e52e9a7692c60
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

bc1c98a814-Feb-2022 Yann Gautier <yann.gautier@st.com>

fix(st-sdmmc2): correct cmd_idx type in messages

As cmd_idx is unsigned, we have to use %u and not %d.
This avoids warning when -Wformat-signedness is enabled.

Change-Id: I6954a8c939f3fb47dbb2c6db5

fix(st-sdmmc2): correct cmd_idx type in messages

As cmd_idx is unsigned, we have to use %u and not %d.
This avoids warning when -Wformat-signedness is enabled.

Change-Id: I6954a8c939f3fb47dbb2c6db56a1909565af078b
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

afcdc9d814-Feb-2022 Yann Gautier <yann.gautier@st.com>

fix(st-fmc): fix type in message

As page is unsigned, we should use %u and not %d.
Find with -Wformat-signedness.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I7205971ee5e83163e4fe4

fix(st-fmc): fix type in message

As page is unsigned, we should use %u and not %d.
Find with -Wformat-signedness.

Signed-off-by: Yann Gautier <yann.gautier@st.com>
Change-Id: I7205971ee5e83163e4fe47d33bb9e90832b59ae0

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch64/bl1_exceptions.S
/rk3399_ARM-atf/bl2/bl2_image_load_v2.c
/rk3399_ARM-atf/bl31/aarch64/ea_delegate.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl32/tsp/tsp_main.c
/rk3399_ARM-atf/changelog.yaml
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/docs/plat/qti-msm8916.rst
/rk3399_ARM-atf/docs/process/contributing.rst
/rk3399_ARM-atf/drivers/arm/tzc/tzc400.c
/rk3399_ARM-atf/drivers/io/io_mtd.c
/rk3399_ARM-atf/drivers/measured_boot/event_log/event_log.mk
/rk3399_ARM-atf/drivers/mtd/nand/raw_nand.c
/rk3399_ARM-atf/drivers/mtd/nand/spi_nand.c
/rk3399_ARM-atf/drivers/mtd/nor/spi_nor.c
/rk3399_ARM-atf/drivers/mtd/spi-mem/spi_mem.c
fmc/stm32_fmc2_nand.c
/rk3399_ARM-atf/drivers/ufs/ufs.c
/rk3399_ARM-atf/drivers/usb/usb_device.c
/rk3399_ARM-atf/include/arch/aarch64/arch_features.h
/rk3399_ARM-atf/include/arch/aarch64/arch_helpers.h
/rk3399_ARM-atf/include/arch/aarch64/el3_common_macros.S
/rk3399_ARM-atf/include/bl32/tsp/tsp.h
/rk3399_ARM-atf/include/drivers/arm/gicv2.h
/rk3399_ARM-atf/include/plat/common/common_def.h
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/extensions/spe/spe.c
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/libc/assert.c
/rk3399_ARM-atf/lib/libc/snprintf.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/rdn2/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rdn2/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn2/rdn2_plat.c
/rk3399_ARM-atf/plat/arm/board/rdn2/rdn2_security.c
/rk3399_ARM-atf/plat/arm/board/rdn2/rdn2_topology.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_soc_css_def_v2.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_plat_v2.c
/rk3399_ARM-atf/plat/qti/msm8916/aarch64/msm8916_helpers.S
/rk3399_ARM-atf/plat/qti/msm8916/aarch64/uartdm_console.S
/rk3399_ARM-atf/plat/qti/msm8916/include/msm8916_mmap.h
/rk3399_ARM-atf/plat/qti/msm8916/include/plat_macros.S
/rk3399_ARM-atf/plat/qti/msm8916/include/platform_def.h
/rk3399_ARM-atf/plat/qti/msm8916/include/uartdm_console.h
/rk3399_ARM-atf/plat/qti/msm8916/msm8916_bl31_setup.c
/rk3399_ARM-atf/plat/qti/msm8916/msm8916_cpu_boot.c
/rk3399_ARM-atf/plat/qti/msm8916/msm8916_gicv2.c
/rk3399_ARM-atf/plat/qti/msm8916/msm8916_gicv2.h
/rk3399_ARM-atf/plat/qti/msm8916/msm8916_pm.c
/rk3399_ARM-atf/plat/qti/msm8916/msm8916_pm.h
/rk3399_ARM-atf/plat/qti/msm8916/msm8916_topology.c
/rk3399_ARM-atf/plat/qti/msm8916/platform.mk
/rk3399_ARM-atf/plat/st/common/include/stm32mp_common.h
/rk3399_ARM-atf/plat/st/common/stm32mp_common.c
/rk3399_ARM-atf/plat/st/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_boot_device.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_pm.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_private.c
/rk3399_ARM-atf/services/spd/tspd/tspd_main.c
812daf9115-Dec-2020 Lionel Debieve <lionel.debieve@st.com>

feat(st): update the security based on new compatible

From the new binding, the RCC become secured based on the new
compatible. This must be done only from the secure OS initialisation.

Signed-off-

feat(st): update the security based on new compatible

From the new binding, the RCC become secured based on the new
compatible. This must be done only from the secure OS initialisation.

Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
Change-Id: I7f0a62f22bfcca638ddaefc9563df00f89f01653

show more ...

fc0aa10a11-Aug-2020 Yann Gautier <yann.gautier@st.com>

feat(st-gpio): do not apply secure config in BL2

At boot, the devices under ETZPC control are secured, so should be
their GPIOs. As securable GPIOs are secured by default, keep the reset
values in B

feat(st-gpio): do not apply secure config in BL2

At boot, the devices under ETZPC control are secured, so should be
their GPIOs. As securable GPIOs are secured by default, keep the reset
values in BL2.

Change-Id: I9e560d936f8e8fda0f96f6299bb0c3b35ba9b71f
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

53584e1d21-Sep-2021 Fabien Dessenne <fabien.dessenne@foss.st.com>

feat(st-gpio): allow to set a gpio in output mode

Allow to set a gpio in output mode from the device tree.

Signed-off-by: Fabien Dessenne <fabien.dessenne@foss.st.com>
Change-Id: Ic483324bc5fe916a6

feat(st-gpio): allow to set a gpio in output mode

Allow to set a gpio in output mode from the device tree.

Signed-off-by: Fabien Dessenne <fabien.dessenne@foss.st.com>
Change-Id: Ic483324bc5fe916a60df05f74706bd1da4d08aa5

show more ...

417196fa21-Sep-2021 Fabien Dessenne <fabien.dessenne@foss.st.com>

refactor(st-gpio): code improvements

No functional, change, but some improvements:
- Declare set_gpio() as static (only called locally)
- Handle the type ('open-drain') property independently from t

refactor(st-gpio): code improvements

No functional, change, but some improvements:
- Declare set_gpio() as static (only called locally)
- Handle the type ('open-drain') property independently from the
mode one.
- Replace mmio_clrbits_32() + mmio_setbits_32() with
mmio_clrsetbits_32().
- Add a missing log
- Add missing U() in macro definitions

Signed-off-by: Fabien Dessenne <fabien.dessenne@foss.st.com>
Change-Id: I1a79609609ac8e8001127ebefdb81def573f76fa

show more ...

072d753220-May-2019 Nicolas Le Bayon <nicolas.le.bayon@st.com>

refactor(st-drivers): improve BSEC driver

Rename driver file to BSEC2.
Split header file in IP and feature parts.
Add functions to access BSEC scratch register.
Several corrections and improvements.

refactor(st-drivers): improve BSEC driver

Rename driver file to BSEC2.
Split header file in IP and feature parts.
Add functions to access BSEC scratch register.
Several corrections and improvements.
Probe the driver earlier, especially to check debug features.

Change-Id: I1981536398d598d67a19d2d7766dacc18de72ec1
Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com>
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

9b4ca70d28-Jan-2022 Pascal Paillet <p.paillet@st.com>

feat(st-regulator): add support for regulator-always-on

Add support for regulator-always-on at BL2 level as it was supported
before using the regulator framework.

Signed-off-by: Pascal Paillet <p.p

feat(st-regulator): add support for regulator-always-on

Add support for regulator-always-on at BL2 level as it was supported
before using the regulator framework.

Signed-off-by: Pascal Paillet <p.paillet@st.com>
Change-Id: Idb2f4ddc2fdd4e0d31fb33da87c84618aa2e5135

show more ...

591d80c804-Dec-2019 Lionel Debieve <lionel.debieve@st.com>

refactor(st-clock): update STGEN management

Rework STGEN config function, and move it to stm32mp_clkfunc.c file.

Change-Id: I7784a79c486d1b8811f6f8d123e49ea34899e9b6
Signed-off-by: Lionel Debieve <

refactor(st-clock): update STGEN management

Rework STGEN config function, and move it to stm32mp_clkfunc.c file.

Change-Id: I7784a79c486d1b8811f6f8d123e49ea34899e9b6
Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

7418cf3917-Jan-2020 Yann Gautier <yann.gautier@st.com>

feat(st-clock): assign clocks to the correct BL

Some clocks are only required in BL2, like boot devices clocks:
FMC, QSPI.
Some clocks are only used in BL32: Timers, devices that need special
care f

feat(st-clock): assign clocks to the correct BL

Some clocks are only required in BL2, like boot devices clocks:
FMC, QSPI.
Some clocks are only used in BL32: Timers, devices that need special
care for independent reset.

Change-Id: Id4ba99afeea5095f419a86f7dc6423192c628d82
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

3d69149a27-Oct-2021 Yann Gautier <yann.gautier@st.com>

feat(st-clock): do not refcount on non-secure clocks in bl32

This change removes reference counting support in clock gating
implementation for clocks that rely on non-secure only RCC resources.
As R

feat(st-clock): do not refcount on non-secure clocks in bl32

This change removes reference counting support in clock gating
implementation for clocks that rely on non-secure only RCC resources.
As RCC registers are accessed straight by non-secure world for these
clocks, secure world cannot safely store the clock state and even
disabling such clock from secure world can jeopardize the non-secure
world clock management framework and drivers.

As a consequence, for such clocks, stm32_clock_enable() forces the clock
ON without any increment of a refcount and stm32_clock_disable() does
not disable the clock.

Change-Id: I0cc159b36a25dbc8676f05edf2668ae63c640537
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>

show more ...

aaa09b7127-Oct-2021 Yann Gautier <yann.gautier@st.com>

feat(st-clock): define secure and non-secure gate clocks

Array stm32mp1_clk_gate[] defines the clock resources. This change
add a secure attribute to the clock: secure upon RCC[TZEN] (SEC),
secure u

feat(st-clock): define secure and non-secure gate clocks

Array stm32mp1_clk_gate[] defines the clock resources. This change
add a secure attribute to the clock: secure upon RCC[TZEN] (SEC),
secure upon RCC[TZEN] and RCC[MCKPROT] (MKP) or always accessible
from non-secure (N_S).

At init, lookup clock tree to check if any of the secure clocks
is derived from PLL3 in which case PLL3 shall be secure.

Note that this change does not grow byte size of stm32mp1_clk_gate[].

Change-Id: I933d8a30007f3c72f755aa1ef6d7e6bcfabbfa9e
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
Signed-off-by: Yann Gautier <yann.gautier@st.com>

show more ...

12345678910>>...13