History log of /rk3399_ARM-atf/lib/ (Results 1576 – 1600 of 2463)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
8286967511-Jun-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

plat/arm: Load and populate fw_config and tb_fw_config

Modified the code to do below changes:

1. Load tb_fw_config along with fw_config by BL1.
2. Populate fw_config device tree information in the

plat/arm: Load and populate fw_config and tb_fw_config

Modified the code to do below changes:

1. Load tb_fw_config along with fw_config by BL1.
2. Populate fw_config device tree information in the
BL1 to load tb_fw_config.
3. In BL2, populate fw_config information to retrieve
the address of tb_fw_config and then tb_fw_config
gets populated using retrieved address.
4. Avoid processing of configuration file in case of error
value returned from "fw_config_load" function.
5. Updated entrypoint information for BL2 image so
that it's arg0 should point to fw_config address.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
Change-Id: Ife6f7b673a074e7f544ee3d1bda7645fd5b2886c

show more ...

f17ae7b011-Jun-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

fconf: Handle error from fconf_load_config

Updated 'fconf_load_config' function to return
the error.
Error from 'fconf_load_config" gets handled
by BL1 in subsequent patches.

Signed-off-by: Manish

fconf: Handle error from fconf_load_config

Updated 'fconf_load_config' function to return
the error.
Error from 'fconf_load_config" gets handled
by BL1 in subsequent patches.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: I4360f4df850e355b5762bb2d9666eb285101bc68

show more ...

9233dd0911-Jun-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

fconf: Allow fconf to load additional firmware configuration

Modified the `fconf_load_config` function so that it can
additionally support loading of tb_fw_config along with
fw_config.

Signed-off-b

fconf: Allow fconf to load additional firmware configuration

Modified the `fconf_load_config` function so that it can
additionally support loading of tb_fw_config along with
fw_config.

Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Ie060121d367ba12e3fcac5b8ff169d415a5c2bcd

show more ...

04e0697331-May-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

fconf: Clean confused naming between TB_FW and FW_CONFIG

Cleaned up confused naming between TB_FW and FW_CONFIG.

Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
Signed-off-by: Manish V B

fconf: Clean confused naming between TB_FW and FW_CONFIG

Cleaned up confused naming between TB_FW and FW_CONFIG.

Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: I9e9f6e6ca076d38fee0388f97d370431ae067f08

show more ...

ce10f9f411-Jun-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

fiptool: Add fw_config in FIP

Added support in fiptool to include fw_config image
in FIP.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Ibbd14723a4141598d9d7f6bfcf88a0ef92cf

fiptool: Add fw_config in FIP

Added support in fiptool to include fw_config image
in FIP.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Ibbd14723a4141598d9d7f6bfcf88a0ef92cf87bc

show more ...

3cb84a5431-May-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

plat/arm: Rentroduce tb_fw_config device tree

Moved BL2 configuration nodes from fw_config to newly
created tb_fw_config device tree.

fw_config device tree's main usage is to hold properties shared

plat/arm: Rentroduce tb_fw_config device tree

Moved BL2 configuration nodes from fw_config to newly
created tb_fw_config device tree.

fw_config device tree's main usage is to hold properties shared
across all BLx images.
An example is the "dtb-registry" node, which contains the
information about the other device tree configurations
(load-address, size).

Also, Updated load-address of tb_fw_config which is now located
after fw_config in SRAM.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: Ic398c86a4d822dacd55b5e25fd41d4fe3888d79a

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/drivers/arm/gic/v2/gicv2_main.c
/rk3399_ARM-atf/drivers/st/scmi-msg/base.c
/rk3399_ARM-atf/drivers/st/scmi-msg/base.h
/rk3399_ARM-atf/drivers/st/scmi-msg/clock.c
/rk3399_ARM-atf/drivers/st/scmi-msg/clock.h
/rk3399_ARM-atf/drivers/st/scmi-msg/common.h
/rk3399_ARM-atf/drivers/st/scmi-msg/entry.c
/rk3399_ARM-atf/drivers/st/scmi-msg/reset_domain.c
/rk3399_ARM-atf/drivers/st/scmi-msg/reset_domain.h
/rk3399_ARM-atf/drivers/st/scmi-msg/smt.c
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/drivers/brcm/scp.h
/rk3399_ARM-atf/include/drivers/st/scmi-msg.h
/rk3399_ARM-atf/include/drivers/st/scmi.h
/rk3399_ARM-atf/include/services/ffa_svc.h
fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/fdts/fvp_ve_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp_ve/fdts/fvp_ve_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/fdts/juno_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/fdts/juno_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/fdts/rddaniel_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddaniel/fdts/rddaniel_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/platform.mk
/rk3399_ARM-atf/plat/arm/board/rde1edge/fdts/rde1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rde1edge/fdts/rde1edge_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rde1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgi575/fdts/sgi575_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgi575/fdts/sgi575_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgi575/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/fdts/tc0_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/tc0/fdts/tc0_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/tc0/platform.mk
/rk3399_ARM-atf/plat/arm/css/sgm/fdts/sgm_tb_fw_config.dts
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v2.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_gicv3.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
dcbfbcb502-Jun-2020 johpow01 <john.powell@arm.com>

Workaround for Cortex A76 erratum 1800710

Cortex A76 erratum 1800710 is a Cat B erratum, present in older
revisions of the Cortex A76 processor core. The workaround is to
set a bit in the ECTLR_EL1

Workaround for Cortex A76 erratum 1800710

Cortex A76 erratum 1800710 is a Cat B erratum, present in older
revisions of the Cortex A76 processor core. The workaround is to
set a bit in the ECTLR_EL1 system register, which disables allocation
of splintered pages in the L2 TLB.

This errata is explained in this SDEN:
https://static.docs.arm.com/sden885749/g/Arm_Cortex_A76_MP052_Software_Developer_Errata_Notice_v20.pdf

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: Ifc34f2e9e053dcee6a108cfb7df7ff7f497c9493

show more ...

d7b08e6929-May-2020 johpow01 <john.powell@arm.com>

Workaround for Cortex A76 erratum 1791580

Cortex A76 erratum 1791580 is a Cat B erratum present in earlier
revisions of the Cortex A76. The workaround is to set a bit in the
implementation defined C

Workaround for Cortex A76 erratum 1791580

Cortex A76 erratum 1791580 is a Cat B erratum present in earlier
revisions of the Cortex A76. The workaround is to set a bit in the
implementation defined CPUACTLR2 register, which forces atomic store
operations to write-back memory to be performed in the L1 data cache.

This errata is explained in this SDEN:
https://static.docs.arm.com/sden885749/g/Arm_Cortex_A76_MP052_Software_Developer_Errata_Notice_v20.pdf

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: Iefd58159b3f2e2286138993317b98e57dc361925

show more ...


/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/build.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/misc/mvebu-a8k-addr-map.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/misc/mvebu-amb.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/misc/mvebu-ccu.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/misc/mvebu-io-win.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/misc/mvebu-iob.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/porting.rst
/rk3399_ARM-atf/docs/plat/marvell/index.rst
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl2.c
/rk3399_ARM-atf/drivers/marvell/ap807_clocks_init.c
/rk3399_ARM-atf/drivers/marvell/comphy/phy-comphy-cp110.c
/rk3399_ARM-atf/drivers/marvell/comphy/phy-comphy-cp110.h
/rk3399_ARM-atf/drivers/marvell/mci.c
/rk3399_ARM-atf/drivers/marvell/mochi/ap807_setup.c
/rk3399_ARM-atf/drivers/marvell/mochi/apn806_setup.c
/rk3399_ARM-atf/include/drivers/marvell/aro.h
/rk3399_ARM-atf/include/drivers/marvell/mci.h
/rk3399_ARM-atf/include/drivers/marvell/mochi/ap_setup.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a76.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3700/common/armada_common.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3700/common/board_marvell_def.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3700/common/marvell_def.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3700/common/plat_marvell.h
/rk3399_ARM-atf/include/plat/marvell/armada/a8k/common/armada_common.h
/rk3399_ARM-atf/include/plat/marvell/armada/a8k/common/board_marvell_def.h
/rk3399_ARM-atf/include/plat/marvell/armada/a8k/common/marvell_def.h
/rk3399_ARM-atf/include/plat/marvell/armada/a8k/common/plat_marvell.h
/rk3399_ARM-atf/include/plat/marvell/armada/a8k/common/plat_pm_trace.h
/rk3399_ARM-atf/include/plat/marvell/armada/common/aarch64/cci_macros.S
/rk3399_ARM-atf/include/plat/marvell/armada/common/aarch64/marvell_macros.S
/rk3399_ARM-atf/include/plat/marvell/armada/common/marvell_plat_priv.h
/rk3399_ARM-atf/include/plat/marvell/armada/common/marvell_pm.h
/rk3399_ARM-atf/include/plat/marvell/armada/common/mvebu.h
/rk3399_ARM-atf/include/tools_share/dualroot_oid.h
/rk3399_ARM-atf/include/tools_share/tbbr_oid.h
cpus/aarch64/cortex_a76.S
cpus/cpu-ops.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/tc0/fdts/tc0_fw_config.dts
/rk3399_ARM-atf/plat/marvell/armada/a3700/a3700/board/pm_src.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/a3700/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/armada/a3700/a3700/plat_bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/a3700/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/a3700_common.mk
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/a3700_ea.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/a3700_sip_svc.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/aarch64/a3700_common.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/dram_win.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/include/a3700_plat_def.h
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/include/a3700_pm.h
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/include/ddr_info.h
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/include/dram_win.h
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/include/io_addr_dec.h
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/include/plat_macros.S
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/io_addr_dec.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a3700/common/plat_pm.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0_amc/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0_amc/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0_amc/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0_amc/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/board/phy-porting-layer.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_mcbin/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_mcbin/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_mcbin/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_mcbin/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/a8k_common.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/aarch64/a8k_common.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/aarch64/plat_arch_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/ble/ble.ld.S
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/ble/ble.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/ble/ble_main.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/ble/ble_mem.S
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/include/a8k_plat_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/include/ddr_info.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/include/mentor_i2c_plat.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/include/plat_macros.S
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/mss/mss_a8k.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/mss/mss_bl2_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/mss/mss_pm_ipc.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/mss/mss_pm_ipc.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_bl1_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_ble_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_pm.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_pm_trace.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_thermal.c
/rk3399_ARM-atf/plat/marvell/armada/common/aarch64/marvell_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/marvell/armada/common/aarch64/marvell_common.c
/rk3399_ARM-atf/plat/marvell/armada/common/aarch64/marvell_helpers.S
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_bl1_setup.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_bl2_setup.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_cci.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_common.mk
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_console.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_ddr_info.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_gicv2.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_gicv3.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_image_load.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_io_storage.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_pm.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_topology.c
/rk3399_ARM-atf/plat/marvell/armada/common/mrvl_sip_svc.c
/rk3399_ARM-atf/plat/marvell/armada/common/mss/mss_common.mk
/rk3399_ARM-atf/plat/marvell/armada/common/mss/mss_ipc_drv.c
/rk3399_ARM-atf/plat/marvell/armada/common/mss/mss_ipc_drv.h
/rk3399_ARM-atf/plat/marvell/armada/common/mss/mss_mem.h
/rk3399_ARM-atf/plat/marvell/armada/common/mss/mss_scp_bl2_format.h
/rk3399_ARM-atf/plat/marvell/armada/common/mss/mss_scp_bootloader.c
/rk3399_ARM-atf/plat/marvell/armada/common/mss/mss_scp_bootloader.h
/rk3399_ARM-atf/plat/marvell/armada/common/plat_delay_timer.c
/rk3399_ARM-atf/plat/marvell/marvell.mk
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra194_ras_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_ras.c
/rk3399_ARM-atf/tools/cert_create/include/tbbr/tbb_cert.h
/rk3399_ARM-atf/tools/cert_create/include/tbbr/tbb_ext.h
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_cert.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_ext.c
fbc44bd112-Jun-2020 Varun Wadekar <vwadekar@nvidia.com>

Prevent RAS register access from lower ELs

This patch adds a build config 'RAS_TRAP_LOWER_EL_ERR_ACCESS' to set
SCR_EL3.TERR during CPU boot. This bit enables trapping RAS register
accesses from EL1

Prevent RAS register access from lower ELs

This patch adds a build config 'RAS_TRAP_LOWER_EL_ERR_ACCESS' to set
SCR_EL3.TERR during CPU boot. This bit enables trapping RAS register
accesses from EL1 or EL2 to EL3.

RAS_TRAP_LOWER_EL_ERR_ACCESS is disabled by default.

Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Change-Id: Ifb0fb0afedea7dd2a29a0b0491a1161ecd241438

show more ...

8ca6153818-Mar-2019 David Pu <dpu@nvidia.com>

Tegra194: add RAS exception handling

This patch adds all Tegra194 RAS nodes definitions and support to
handle all uncorrectable RAS errors.

Change-Id: I109b5a8dbca91d92752dc282c4ca30f273c475f9
Sign

Tegra194: add RAS exception handling

This patch adds all Tegra194 RAS nodes definitions and support to
handle all uncorrectable RAS errors.

Change-Id: I109b5a8dbca91d92752dc282c4ca30f273c475f9
Signed-off-by: David Pu <dpu@nvidia.com>
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>

show more ...

c5c1af0d24-May-2020 Varun Wadekar <vwadekar@nvidia.com>

cpus: denver: disable cycle counter when event counting is prohibited

The Denver CPUs implement support for PMUv3 for ARMv8.1 and expect the
PMCR_EL0 to be saved in non-secure context.

This patch d

cpus: denver: disable cycle counter when event counting is prohibited

The Denver CPUs implement support for PMUv3 for ARMv8.1 and expect the
PMCR_EL0 to be saved in non-secure context.

This patch disables cycle counter when event counting is prohibited
immediately on entering the secure world to avoid leaking useful
information about the PMU counters. The context saving code later
saves the value of PMCR_EL0 to the non-secure world context.

Verified with 'PMU Leakage' test suite.

******************************* Summary *******************************
> Test suite 'PMU Leakage'
Passed
=================================
Tests Skipped : 2
Tests Passed : 2
Tests Failed : 0
Tests Crashed : 0
Total tests : 4
=================================

Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
Change-Id: I3675e2b99b44ed23d86e29a5af1b496e80324875

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/include/common/tbbr/cot_def.h
/rk3399_ARM-atf/include/common/tbbr/tbbr_img_def.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/export/common/tbbr/tbbr_img_def_exp.h
/rk3399_ARM-atf/include/plat/arm/common/fconf_sec_intr_config.h
cpus/aarch64/denver.S
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_gicv3.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/sp_min/sp_min-fvp.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/fdts/fvp_ve_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/fdts/juno_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddaniel/fdts/rddaniel_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rde1edge/fdts/rde1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgi575/fdts/sgi575_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/tc0/fdts/tc0_fw_config.dts
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_sp.c
/rk3399_ARM-atf/plat/arm/common/fconf/fconf_sec_intr_config.c
/rk3399_ARM-atf/plat/intel/soc/agilex/bl2_plat_setup.c
/rk3399_ARM-atf/plat/intel/soc/agilex/include/agilex_clock_manager.h
/rk3399_ARM-atf/plat/intel/soc/agilex/include/agilex_mmc.h
/rk3399_ARM-atf/plat/intel/soc/agilex/platform.mk
/rk3399_ARM-atf/plat/intel/soc/agilex/soc/agilex_clock_manager.c
/rk3399_ARM-atf/plat/intel/soc/agilex/soc/agilex_mmc.c
/rk3399_ARM-atf/plat/intel/soc/agilex/soc/agilex_pinmux.c
/rk3399_ARM-atf/plat/intel/soc/common/drivers/ccu/ncore_ccu.c
/rk3399_ARM-atf/plat/intel/soc/common/include/socfpga_system_manager.h
/rk3399_ARM-atf/plat/intel/soc/common/socfpga_delay_timer.c
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/tools/sptool/sp_mk_generator.py
0792dd7d22-May-2020 Manish Pandey <manish.pandey2@arm.com>

cert_create: add SiP owned secure partitions support

Add support to generate certificate "sip-sp-cert" for Secure
Partitions(SP) owned by Silicon provider(SiP).
To avoid deviation from TBBR specific

cert_create: add SiP owned secure partitions support

Add support to generate certificate "sip-sp-cert" for Secure
Partitions(SP) owned by Silicon provider(SiP).
To avoid deviation from TBBR specification the support is only added for
dualroot CoT and not for TBBR CoT.

A single certificate file is generated containing hash of individual
packages. Maximum 8 secure partitions are supported.

Following new options added to cert_tool:
--sip-sp-cert --> SiP owned Secure Partition Content Certificate
--sp-pkg1 --> Secure Partition Package1 file
--sp-pkg2
.....
--sp-pkg8

Trusted world key pair is used for signing.

Going forward, this feature can be extended for Platfrom owned
Partitions, if required.

Signed-off-by: Manish Pandey <manish.pandey2@arm.com>
Change-Id: Ia6dfbc1447cfb41b1fcbd12cf2bf7b88f409bd8d

show more ...

2375111403-Jun-2020 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge "Rename Cortex-Hercules to Cortex-A78" into integration

578d2e9d03-Jun-2020 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge "Rename Cortex Hercules Files to Cortex A78" into integration

29d0ee5416-Apr-2020 Jimmy Brisson <jimmy.brisson@arm.com>

Enable ARMv8.6-ECV Self-Synch when booting to EL2

Enhanced Counter Virtualization, ECV, is an architecture extension introduced
in ARMv8.6. This extension allows the hypervisor, at EL2, to setup
sel

Enable ARMv8.6-ECV Self-Synch when booting to EL2

Enhanced Counter Virtualization, ECV, is an architecture extension introduced
in ARMv8.6. This extension allows the hypervisor, at EL2, to setup
self-synchronizing views of the timers for it's EL1 Guests. This patch pokes the
control register to enable this extension when booting a hypervisor at EL2.

Change-Id: I4e929ecdf400cea17eff1de5cf8704aa7e40973d
Signed-off-by: Jimmy Brisson <jimmy.brisson@arm.com>

show more ...

110ee43316-Apr-2020 Jimmy Brisson <jimmy.brisson@arm.com>

Enable ARMv8.6-FGT when booting to EL2

The Fine Grained Traps (FGT) architecture extension was added to aarch64 in
ARMv8.6. This extension primarily allows hypervisors, at EL2, to trap specific
inst

Enable ARMv8.6-FGT when booting to EL2

The Fine Grained Traps (FGT) architecture extension was added to aarch64 in
ARMv8.6. This extension primarily allows hypervisors, at EL2, to trap specific
instructions in a more fine grained manner, with an enable bit for each
instruction. This patch adds support for this extension by enabling the
extension when booting an hypervisor at EL2.

Change-Id: Idb9013ed118b6a1b7b76287237096de992ca4da3
Signed-off-by: Jimmy Brisson <jimmy.brisson@arm.com>

show more ...


/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/design/auth-framework.rst
/rk3399_ARM-atf/docs/plat/arm/index.rst
/rk3399_ARM-atf/docs/plat/arm/tc0/index.rst
/rk3399_ARM-atf/docs/plat/imx8m.rst
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl1.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl2.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_common.c
/rk3399_ARM-atf/drivers/st/clk/stm32mp1_clk.c
/rk3399_ARM-atf/drivers/st/crypto/stm32_hash.c
/rk3399_ARM-atf/drivers/st/fmc/stm32_fmc2_nand.c
/rk3399_ARM-atf/drivers/st/mmc/stm32_sdmmc2.c
/rk3399_ARM-atf/drivers/st/reset/stm32mp1_reset.c
/rk3399_ARM-atf/drivers/st/spi/stm32_qspi.c
/rk3399_ARM-atf/fdts/tc0.dts
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/arch/aarch64/arch_features.h
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/common/tbbr/cot_def.h
/rk3399_ARM-atf/include/drivers/auth/tbbr_cot_common.h
/rk3399_ARM-atf/include/drivers/st/stm32mp1_rcc.h
/rk3399_ARM-atf/include/drivers/st/stm32mp_reset.h
/rk3399_ARM-atf/include/plat/arm/common/arm_reclaim_init.ld.S
el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/plat/arm/board/tc0/fdts/tc0_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/tc0/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/tc0/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/tc0/include/tc0_helpers.S
/rk3399_ARM-atf/plat/arm/board/tc0/include/tc0_plat.h
/rk3399_ARM-atf/plat/arm/board/tc0/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_err.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_interconnect.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_plat.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_security.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_topology.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_trusted_boot.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/brcm/board/common/board_common.mk
/rk3399_ARM-atf/plat/common/aarch64/platform_mp_stack.S
/rk3399_ARM-atf/plat/hisilicon/hikey/platform.mk
/rk3399_ARM-atf/plat/hisilicon/hikey960/platform.mk
/rk3399_ARM-atf/plat/imx/imx7/common/imx7.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/gpc.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/imx8mn_psci.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/include/gpc.h
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/rpi/rpi3/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
/rk3399_ARM-atf/plat/st/common/include/stm32mp_common.h
/rk3399_ARM-atf/plat/st/common/include/stm32mp_dt.h
/rk3399_ARM-atf/plat/st/common/stm32mp_common.c
/rk3399_ARM-atf/plat/st/common/stm32mp_dt.c
/rk3399_ARM-atf/plat/st/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_private.c
3f35709c01-Jun-2020 Jimmy Brisson <jimmy.brisson@arm.com>

Rename Cortex-Hercules to Cortex-A78

Change-Id: I89b90cbdfc8f2aa898b4f3676a4764f060f8e138
Signed-off-by: Jimmy Brisson <jimmy.brisson@arm.com>

83c1584d01-Jun-2020 Jimmy Brisson <jimmy.brisson@arm.com>

Rename Cortex Hercules Files to Cortex A78

This should allow git to easily track file moves

Signed-off-by: Jimmy Brisson <jimmy.brisson@arm.com>
Change-Id: I1592cf39a4f94209c560dc6d1a8bc1bfb21d8327


/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/design/auth-framework.rst
/rk3399_ARM-atf/docs/plat/arm/index.rst
/rk3399_ARM-atf/docs/plat/arm/tc0/index.rst
/rk3399_ARM-atf/docs/plat/imx8m.rst
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl1.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl2.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_common.c
/rk3399_ARM-atf/drivers/st/clk/stm32mp1_clk.c
/rk3399_ARM-atf/fdts/tc0.dts
/rk3399_ARM-atf/include/common/tbbr/cot_def.h
/rk3399_ARM-atf/include/drivers/auth/tbbr_cot_common.h
/rk3399_ARM-atf/include/drivers/st/stm32mp1_rcc.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_hercules_ae.h
cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/plat/arm/board/arm_fpga/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/fdts/tc0_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/tc0/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/tc0/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/tc0/include/tc0_helpers.S
/rk3399_ARM-atf/plat/arm/board/tc0/include/tc0_plat.h
/rk3399_ARM-atf/plat/arm/board/tc0/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_err.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_interconnect.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_plat.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_security.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_topology.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_trusted_boot.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/brcm/board/common/board_common.mk
/rk3399_ARM-atf/plat/hisilicon/hikey/platform.mk
/rk3399_ARM-atf/plat/hisilicon/hikey960/platform.mk
/rk3399_ARM-atf/plat/imx/imx7/common/imx7.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/gpc.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/imx8mn_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/imx8mn_psci.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/include/gpc.h
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/rpi/rpi3/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
/rk3399_ARM-atf/plat/st/common/include/stm32mp_common.h
/rk3399_ARM-atf/plat/st/common/include/stm32mp_dt.h
/rk3399_ARM-atf/plat/st/common/stm32mp_common.c
/rk3399_ARM-atf/plat/st/common/stm32mp_dt.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_private.c
dbcc44a126-May-2020 Alexei Fedorov <Alexei.Fedorov@arm.com>

TF-A: Fix wrong register read for MPAM extension

This patch fixes wrong ID_AA64DFR0_EL1 register read instead of
ID_AA64PFR0_EL1 to detect support for MPAM extension.
It also implements get_mpam_ver

TF-A: Fix wrong register read for MPAM extension

This patch fixes wrong ID_AA64DFR0_EL1 register read instead of
ID_AA64PFR0_EL1 to detect support for MPAM extension.
It also implements get_mpam_version() function which returns
MPAM version as:
0x00: None Armv8.0 or later;
0x01: v0.1 Armv8.4 or later;
0x10: v1.0 Armv8.2 or later;
0x11: v1.1 Armv8.4 or later;

Change-Id: I31d776b1a1b60cb16e5e62296d70adb129d7b760
Reported-by: Matteo Zini <matteozini96@gmail.com>
Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>

show more ...


/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/psa-ffa-manifest-binding.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/global_substitutions.txt
/rk3399_ARM-atf/docs/glossary.rst
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci-aarch32.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-aarch32.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-2t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-dynamiq.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci.dts
/rk3399_ARM-atf/fdts/fvp-defs-dynamiq.dtsi
/rk3399_ARM-atf/fdts/fvp-defs.dtsi
/rk3399_ARM-atf/fdts/fvp-foundation-gicv2-psci.dts
/rk3399_ARM-atf/fdts/fvp-foundation-gicv3-psci.dts
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/arch/aarch64/arch_features.h
/rk3399_ARM-atf/include/common/fdt_wrappers.h
/rk3399_ARM-atf/include/services/ffa_svc.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/include/services/spmd_svc.h
extensions/mpam/mpam.c
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_console.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_gicv3.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/fconf_hw_config_getter.h
/rk3399_ARM-atf/plat/arm/board/fvp/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/sp_min/sp_min-fvp.mk
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/rk3399_ARM-atf/plat/arm/common/arm_console.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_ehf.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_fiq_glue.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_sdei.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_stack_protector.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_private.h
/rk3399_ARM-atf/services/std_svc/std_svc_setup.c
6cac724d22-Apr-2020 johpow01 <john.powell@arm.com>

Enable v8.6 WFE trap delays

This patch enables the v8.6 extension to add a delay before WFE traps
are taken. A weak hook plat_arm_set_twedel_scr_el3 has been added in
plat/common/aarch64/plat_common

Enable v8.6 WFE trap delays

This patch enables the v8.6 extension to add a delay before WFE traps
are taken. A weak hook plat_arm_set_twedel_scr_el3 has been added in
plat/common/aarch64/plat_common.c that disables this feature by default
but platform-specific code can override it when needed.

The only hook provided sets the TWED fields in SCR_EL3, there are similar
fields in HCR_EL2, SCTLR_EL2, and SCTLR_EL1 to control WFE trap delays in
lower ELs but these should be configured by code running at EL2 and/or EL1
depending on the platform configuration and is outside the scope of TF-A.

Signed-off-by: John Powell <john.powell@arm.com>
Change-Id: I0a9bb814205efeab693a3d0a0623e62144abba2d

show more ...

30ee375513-May-2020 Max Shvetsov <maksims.svecovs@arm.com>

Fix exception in save/restore of EL2 registers.

Removing FPEXC32_EL2 from the register save/restore routine for EL2
registers since it is already a part of save/restore routine for
fpregs.

Signed-o

Fix exception in save/restore of EL2 registers.

Removing FPEXC32_EL2 from the register save/restore routine for EL2
registers since it is already a part of save/restore routine for
fpregs.

Signed-off-by: Max Shvetsov <maksims.svecovs@arm.com>
Change-Id: I5ed45fdbf7c8efa8dcfcd96586328d4f6b256bc4

show more ...

45aecff028-Apr-2020 Manish V Badarkhe <Manish.Badarkhe@arm.com>

Implement workaround for AT speculative behaviour

During context switching from higher EL (EL2 or higher)
to lower EL can cause incorrect translation in TLB due to
speculative execution of AT instru

Implement workaround for AT speculative behaviour

During context switching from higher EL (EL2 or higher)
to lower EL can cause incorrect translation in TLB due to
speculative execution of AT instruction using out-of-context
translation regime.

Workaround is implemented as below during EL's (EL1 or EL2)
"context_restore" operation:
1. Disable page table walk using SCTLR.M and TCR.EPD0 & EPD1
bits for EL1 or EL2 (stage1 and stage2 disabled)
2. Save all system registers except TCR and SCTLR (for EL1 and EL2)
3. Do memory barrier operation (isb) to ensure all
system register writes are done.
4. Restore TCR and SCTLR registers (for EL1 and EL2)

Errata details are available for various CPUs as below:
Cortex-A76: 1165522
Cortex-A72: 1319367
Cortex-A57: 1319537
Cortex-A55: 1530923
Cortex-A53: 1530924

More details can be found in mail-chain:
https://lists.trustedfirmware.org/pipermail/tf-a/2020-April/000445.html

Currently, Workaround is implemented as build option which is default
disabled.

Signed-off-by: Manish V Badarkhe <Manish.Badarkhe@arm.com>
Change-Id: If8545e61f782cb0c2dda7ffbaf50681c825bd2f0

show more ...

6eb4304c05-May-2020 Sandrine Bailleux <sandrine.bailleux@arm.com>

Merge changes I85eb75cf,Ic6d9f927 into integration

* changes:
fconf: Update dyn_config compatible string
doc: Add binding document for fconf.

592c396d20-Apr-2020 Louis Mayencourt <louis.mayencourt@arm.com>

fconf: Update dyn_config compatible string

Dynamic configuration properties are fconf properties. Modify the
compatible string from "arm,.." to "fconf,.." to reflect this.

Signed-off-by: Louis Maye

fconf: Update dyn_config compatible string

Dynamic configuration properties are fconf properties. Modify the
compatible string from "arm,.." to "fconf,.." to reflect this.

Signed-off-by: Louis Mayencourt <louis.mayencourt@arm.com>
Change-Id: I85eb75cf877c5f4d3feea3936d4c348ca843bc6c

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/bl1.ld.S
/rk3399_ARM-atf/bl2/bl2.ld.S
/rk3399_ARM-atf/bl2/bl2_el3.ld.S
/rk3399_ARM-atf/bl2u/bl2u.ld.S
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/docs/Makefile
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/about/release-information.rst
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/change-log.rst
/rk3399_ARM-atf/docs/components/arm-sip-service.rst
/rk3399_ARM-atf/docs/components/debugfs-design.rst
/rk3399_ARM-atf/docs/components/exception-handling.rst
/rk3399_ARM-atf/docs/components/fconf/fconf_properties.rst
/rk3399_ARM-atf/docs/components/fconf/index.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager-design.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/interrupt-framework-design.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/psci-lib-integration-guide.rst
/rk3399_ARM-atf/docs/getting_started/rt-svc-writers-guide.rst
/rk3399_ARM-atf/docs/index.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/brcm-stingray.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/docs/security_advisories/security-advisory-tfv-8.rst
/rk3399_ARM-atf/drivers/arm/gic/v3/gic600_multichip_private.h
/rk3399_ARM-atf/drivers/arm/gic/v3/gicdv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicrv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3.mk
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_main.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_private.h
/rk3399_ARM-atf/fdts/a5ds.dts
/rk3399_ARM-atf/include/arch/aarch32/arch.h
/rk3399_ARM-atf/include/arch/aarch32/arch_helpers.h
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/arch/aarch64/arch_helpers.h
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/drivers/arm/gic_common.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/fdts/fvp_ve_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/fdts/juno_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddaniel/fdts/rddaniel_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_err.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_plat.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_security.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_topology.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/fdts/rde1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rdn1edge/fdts/rdn1edge_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgi575/fdts/sgi575_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_fw_config.dts
/rk3399_ARM-atf/plat/arm/css/common/css_pm.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgm/include/sgm_base_platform_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl2_setup.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/paxb.c
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
ff4e6c3526-Mar-2020 Andre Przywara <andre.przywara@arm.com>

fdt/wrappers: Replace fdtw_read_cells() implementation

Our fdtw_read_cells() implementation goes to great lengths to
sanity-check every parameter and result, but leaves a big hole open:
The size of

fdt/wrappers: Replace fdtw_read_cells() implementation

Our fdtw_read_cells() implementation goes to great lengths to
sanity-check every parameter and result, but leaves a big hole open:
The size of the storage the value pointer points at needs to match the
number of cells given. This can't be easily checked at compile time,
since we lose the size information by using a void pointer.
Regardless the current usage of this function is somewhat wrong anyways,
since we use it on single-element, fixed-length properties only, for
which the DT binding specifies the size.
Typically we use those functions dealing with a number of cells in DT
context to deal with *dynamically* sized properties, which depend on
other properties (#size-cells, #clock-cells, ...), to specify the number
of cells needed.

Another problem with the current implementation is the use of
ambiguously sized types (uintptr_t, size_t) together with a certain
expectation about their size. In general there is no relation between
the length of a DT property and the bitness of the code that parses the
DTB: AArch64 code could encounter 32-bit addresses (where the physical
address space is limited to 4GB [1]), while AArch32 code could read
64-bit sized properties (/memory nodes on LPAE systems, [2]).

To make this more clear, fix the potential issues and also align more
with other DT users (Linux and U-Boot), introduce functions to explicitly
read uint32 and uint64 properties. As the other DT consumers, we do this
based on the generic "read array" function.
Convert all users to use either of those two new functions, and make
sure we never use a pointer to anything other than uint32_t or uint64_t
variables directly.

This reveals (and fixes) a bug in plat_spmd_manifest.c, where we write
4 bytes into a uint16_t variable (passed via a void pointer).

Also we change the implementation of the function to better align with
other libfdt users, by using the right types (fdt32_t) and common
variable names (*prop, prop_names).

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi#n874
[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/ecx-2000.dts

Change-Id: I718de960515117ac7a3331a1b177d2ec224a3890
Signed-off-by: Andre Przywara <andre.przywara@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/bl1.ld.S
/rk3399_ARM-atf/bl2/bl2.ld.S
/rk3399_ARM-atf/bl2/bl2_el3.ld.S
/rk3399_ARM-atf/bl2u/bl2u.ld.S
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/Makefile
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/about/release-information.rst
/rk3399_ARM-atf/docs/change-log-upcoming.rst
/rk3399_ARM-atf/docs/change-log.rst
/rk3399_ARM-atf/docs/components/arm-sip-service.rst
/rk3399_ARM-atf/docs/components/debugfs-design.rst
/rk3399_ARM-atf/docs/components/exception-handling.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager-design.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/interrupt-framework-design.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/psci-lib-integration-guide.rst
/rk3399_ARM-atf/docs/getting_started/rt-svc-writers-guide.rst
/rk3399_ARM-atf/docs/index.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/brcm-stingray.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/docs/security_advisories/security-advisory-tfv-8.rst
/rk3399_ARM-atf/drivers/arm/gic/v3/gic600_multichip_private.h
/rk3399_ARM-atf/drivers/arm/gic/v3/gicdv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicrv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3.mk
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_main.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_private.h
/rk3399_ARM-atf/drivers/st/clk/stm32mp1_clk.c
/rk3399_ARM-atf/drivers/st/clk/stm32mp_clkfunc.c
/rk3399_ARM-atf/drivers/st/ddr/stm32mp1_ram.c
/rk3399_ARM-atf/fdts/a5ds.dts
/rk3399_ARM-atf/include/arch/aarch32/arch.h
/rk3399_ARM-atf/include/arch/aarch32/arch_helpers.h
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/arch/aarch64/arch_helpers.h
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/common/fdt_wrappers.h
/rk3399_ARM-atf/include/drivers/arm/gic_common.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/drivers/st/stm32mp_clkfunc.h
fconf/fconf_dyn_cfg_getter.c
fconf/fconf_tbbr_getter.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/arm_fpga/fpga_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/fvp/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/fdts/rddanielxlr_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_err.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_plat.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_security.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_topology.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_sp.c
/rk3399_ARM-atf/plat/arm/css/common/css_pm.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgm/include/sgm_base_platform_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl2_setup.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/paxb.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
/rk3399_ARM-atf/plat/st/common/include/stm32mp_dt.h
/rk3399_ARM-atf/plat/st/common/stm32mp_dt.c
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk

1...<<61626364656667686970>>...99