History log of /rk3399_ARM-atf/plat/arm/board/arm_fpga/ (Results 51 – 75 of 81)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
2173b3e030-Sep-2020 André Przywara <andre.przywara@arm.com>

Merge changes from topic "fpga_generic" into integration

* changes:
arm_fpga: Add platform documentation
arm_fpga: Add post-build linker script
arm_fpga: Add ROM trampoline
arm_fpga: Add dev

Merge changes from topic "fpga_generic" into integration

* changes:
arm_fpga: Add platform documentation
arm_fpga: Add post-build linker script
arm_fpga: Add ROM trampoline
arm_fpga: Add devicetree file
arm_fpga: Remove SPE PMU DT node if SPE is not available
arm_fpga: Adjust GICR size in DT to match number of cores
fdt: Add function to adjust GICv3 redistributor size
drivers: arm: gicv3: Allow detecting number of cores

show more ...


/rk3399_ARM-atf/common/fdt_fixup.c
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/arm/arm_fpga/index.rst
/rk3399_ARM-atf/docs/plat/arm/index.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/measured_boot/measured_boot.mk
/rk3399_ARM-atf/drivers/mtd/nand/raw_nand.c
/rk3399_ARM-atf/drivers/mtd/nor/spi_nor.c
/rk3399_ARM-atf/drivers/st/clk/stm32mp1_clk.c
/rk3399_ARM-atf/drivers/st/crypto/stm32_hash.c
/rk3399_ARM-atf/drivers/st/gpio/stm32_gpio.c
/rk3399_ARM-atf/drivers/st/io/io_mmc.c
/rk3399_ARM-atf/drivers/st/mmc/stm32_sdmmc2.c
/rk3399_ARM-atf/fdts/arm_fpga.dts
/rk3399_ARM-atf/fdts/morello-fvp.dts
/rk3399_ARM-atf/fdts/morello.dtsi
/rk3399_ARM-atf/fdts/tc0.dts
/rk3399_ARM-atf/include/common/fdt_fixup.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/drivers/measured_boot/event_log.h
/rk3399_ARM-atf/include/drivers/raw_nand.h
/rk3399_ARM-atf/include/drivers/st/etzpc.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a77.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/rainier.h
/rk3399_ARM-atf/include/lib/libc/string.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a77.S
/rk3399_ARM-atf/lib/cpus/aarch64/rainier.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/libc/aarch32/memset.S
/rk3399_ARM-atf/lib/libc/aarch64/memset.S
/rk3399_ARM-atf/lib/libc/libc_asm.mk
/rk3399_ARM-atf/lib/libc/strtok.c
build_axf.ld.S
fpga_bl31_setup.c
fpga_gicv3.c
fpga_private.h
platform.mk
rom_trampoline.S
/rk3399_ARM-atf/plat/arm/board/morello/aarch64/morello_helper.S
/rk3399_ARM-atf/plat/arm/board/morello/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/morello/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/morello/morello_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/morello/morello_def.h
/rk3399_ARM-atf/plat/arm/board/morello/morello_interconnect.c
/rk3399_ARM-atf/plat/arm/board/morello/morello_plat.c
/rk3399_ARM-atf/plat/arm/board/morello/morello_security.c
/rk3399_ARM-atf/plat/arm/board/morello/morello_topology.c
/rk3399_ARM-atf/plat/arm/board/morello/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/tc0/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_security.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_plat.c
01301b1116-Sep-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Add post-build linker script

For the Arm Ltd. FPGAs to run, we need to load several payloads into the
FPGA's memory:
- Some trampoline code at address 0x0, to jump to BL31's entry point.
-

arm_fpga: Add post-build linker script

For the Arm Ltd. FPGAs to run, we need to load several payloads into the
FPGA's memory:
- Some trampoline code at address 0x0, to jump to BL31's entry point.
- The actual BL31 binary at the beginning of DRAM.
- The (generic) DTB image to describe the hardware.
- The actual non-secure payloads (kernel, ramdisks, ...)

The latter is application specific, but the first three blobs are rather
generic.
Since the uploader tool supports ELF binaries, it seems helpful to
combine these three images into one .axf file, as this also simplifies
the command line.

Add a post-build linker script, that combines those three bits into one
ELF file, together with their specific load addresses.
Include a call to "ld" with this linker script in the platform Makefile,
so it will be build automatically. The result will be called "bl31.axf".

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

show more ...

f45c6d8603-Aug-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Add ROM trampoline

The application cores of the FPGAs used in Arm Ltd. start execution at
address 0x0. This is the location of some (emulated) ROM area (which can
be written to by the uplo

arm_fpga: Add ROM trampoline

The application cores of the FPGAs used in Arm Ltd. start execution at
address 0x0. This is the location of some (emulated) ROM area (which can
be written to by the uploading tool).
Since the arm_fpga port is configured to run from DRAM, we load BL31 to
the beginning of DRAM (mapped at 2GB). This requires some small
trampoline code in the "ROM" to jump to the BL31 entry point.

To avoid some extra magic binary, add a tiny assembly file with that
trivial jump instruction to the tree, so this binary can be created
alongside BL31.

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

show more ...

b48883c703-Aug-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Add devicetree file

The FPGA images used in Arm Ltd. focus on CPU cores, so they share a
common platform, with a minimal set of peripherals (interconnect, GIC,
UART).
This allows to suppor

arm_fpga: Add devicetree file

The FPGA images used in Arm Ltd. focus on CPU cores, so they share a
common platform, with a minimal set of peripherals (interconnect, GIC,
UART).
This allows to support most platforms with a single devicetree file.
The topology and number of CPU cores differ, but those will added at
runtime, in BL31. Other adjustments (GICR size, SPE node, command line)
are also done at this point.

Add the common devicetree file to TF-A's build system, so it can be
build together with BL31. At runtime, the resulting .dtb file should be
uploaded to the address given with FPGA_PRELOADED_DTB_BASE at build time.

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

show more ...

40a0de1903-Aug-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Remove SPE PMU DT node if SPE is not available

The Statistical Profiling Extension (SPE) is an architectural feature we
can safely detect at runtime. However it still relies on one piece o

arm_fpga: Remove SPE PMU DT node if SPE is not available

The Statistical Profiling Extension (SPE) is an architectural feature we
can safely detect at runtime. However it still relies on one piece of
platform-specific information: the interrupt line it is connected
to. This requires SPE to be described in a devicetree node.

Since SPE support varies with the CPU cores found on an FPGA image, we
should detect the presence of SPE at runtime, and remove a potentially
existing SPE PMU node from the DT.

This allows to always have the SPE node in a generic devicetree file,
without risking exposing it on a CPU without this feature.

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

show more ...

283e559524-Aug-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Adjust GICR size in DT to match number of cores

The size of a GICv3 redistributor region depends on the number of
cores in the system. For the ARM FPGA port, we detect the topology at
runt

arm_fpga: Adjust GICR size in DT to match number of cores

The size of a GICv3 redistributor region depends on the number of
cores in the system. For the ARM FPGA port, we detect the topology at
runtime, and adjust the CPU DT nodes accordingly.
Now the size of the GICR region must also be adjusted, or Linux will
fail to initialise the GICv3.

Use the newly introduced function to overwrite the GICR size entry in
the GICv3 reg property. We count the number of existing cores by
iterating over the GICR frames until we find the LAST bit set in TYPER.

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

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch64/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/bl1_main.c
/rk3399_ARM-atf/bl31/bl31.mk
/rk3399_ARM-atf/common/fdt_fixup.c
/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/design/firmware-design.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/process/coding-guidelines.rst
/rk3399_ARM-atf/docs/process/contributing.rst
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3_helpers.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/marvell/ccu.c
/rk3399_ARM-atf/drivers/marvell/mochi/ap807_setup.c
/rk3399_ARM-atf/drivers/marvell/mochi/apn806_setup.c
/rk3399_ARM-atf/drivers/measured_boot/measured_boot.mk
/rk3399_ARM-atf/drivers/mtd/nand/raw_nand.c
/rk3399_ARM-atf/drivers/mtd/nor/spi_nor.c
/rk3399_ARM-atf/drivers/st/clk/stm32mp1_clk.c
/rk3399_ARM-atf/drivers/st/crypto/stm32_hash.c
/rk3399_ARM-atf/drivers/st/gpio/stm32_gpio.c
/rk3399_ARM-atf/drivers/st/io/io_mmc.c
/rk3399_ARM-atf/drivers/st/mmc/stm32_sdmmc2.c
/rk3399_ARM-atf/fdts/corstone700_fpga.dts
/rk3399_ARM-atf/fdts/cot_descriptors.dtsi
/rk3399_ARM-atf/fdts/n1sdp-multi-chip.dts
/rk3399_ARM-atf/fdts/tc0.dts
/rk3399_ARM-atf/include/common/fdt_fixup.h
/rk3399_ARM-atf/include/common/nv_cntr_ids.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/drivers/marvell/ccu.h
/rk3399_ARM-atf/include/drivers/measured_boot/event_log.h
/rk3399_ARM-atf/include/drivers/raw_nand.h
/rk3399_ARM-atf/include/drivers/st/etzpc.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/libc/stdio.h
/rk3399_ARM-atf/include/lib/libc/string.h
/rk3399_ARM-atf/include/lib/psci/psci_lib.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/fconf_nv_cntr_getter.h
/rk3399_ARM-atf/include/tools_share/tbbr_oid.h
/rk3399_ARM-atf/lib/cpus/aarch64/dsu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/extensions/spe/spe.c
/rk3399_ARM-atf/lib/fconf/fconf_cot_getter.c
/rk3399_ARM-atf/lib/libc/aarch32/memset.S
/rk3399_ARM-atf/lib/libc/aarch64/memset.S
/rk3399_ARM-atf/lib/libc/libc_asm.mk
/rk3399_ARM-atf/lib/libc/memset.c
/rk3399_ARM-atf/lib/libc/snprintf.c
/rk3399_ARM-atf/lib/libc/strlcat.c
/rk3399_ARM-atf/lib/libc/strtok.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/make_helpers/armv7-a-cpus.mk
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/make_helpers/windows.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
fpga_bl31_setup.c
fpga_gicv3.c
fpga_private.h
/rk3399_ARM-atf/plat/arm/board/common/board_arm_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/corstone700/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_trusted_boot.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/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/platform.mk
/rk3399_ARM-atf/plat/arm/board/rde1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgi575/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgm775/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/tc0/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_security.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/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_nv_cntr_getter.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_plat.c
/rk3399_ARM-atf/plat/common/aarch64/plat_ehf.c
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.c
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8183/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8192/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/qti/qtiseclib/inc/qtiseclib_cb_interface.h
/rk3399_ARM-atf/plat/qti/qtiseclib/src/qtiseclib_cb_interface.c
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/plat/rpi/rpi3/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/services/spd/trusty/smcall.h
/rk3399_ARM-atf/services/spd/trusty/trusty.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/cert_create/Makefile
/rk3399_ARM-atf/tools/encrypt_fw/Makefile
/rk3399_ARM-atf/tools/fiptool/Makefile
/rk3399_ARM-atf/tools/fiptool/Makefile.msvc
/rk3399_ARM-atf/tools/fiptool/win_posix.c
/rk3399_ARM-atf/tools/fiptool/win_posix.h
/rk3399_ARM-atf/tools/sptool/Makefile
1994e56220-Aug-2020 Javier Almansa Sobrino <javier.almansasobrino@arm.com>

arm_fpga: Add support for unknown MPIDs

This patch allows the system to fallback to a default CPU library
in case the MPID does not match with any of the supported ones.

This feature can be enabled

arm_fpga: Add support for unknown MPIDs

This patch allows the system to fallback to a default CPU library
in case the MPID does not match with any of the supported ones.

This feature can be enabled by setting SUPPORT_UNKNOWN_MPID build
option to 1 (enabled by default only on arm_fpga platform).

This feature can be very dangerous on a production image and
therefore it MUST be disabled for Release images.

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: I0df7ef2b012d7d60a4fd5de44dea1fbbb46881ba

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl1/aarch64/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/bl1_main.c
/rk3399_ARM-atf/bl31/bl31.mk
/rk3399_ARM-atf/bl31/bl31_main.c
/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/design/firmware-design.rst
/rk3399_ARM-atf/docs/process/coding-guidelines.rst
/rk3399_ARM-atf/docs/process/contributing.rst
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/marvell/ccu.c
/rk3399_ARM-atf/drivers/marvell/mochi/ap807_setup.c
/rk3399_ARM-atf/drivers/marvell/mochi/apn806_setup.c
/rk3399_ARM-atf/drivers/measured_boot/measured_boot.mk
/rk3399_ARM-atf/fdts/corstone700_fpga.dts
/rk3399_ARM-atf/fdts/cot_descriptors.dtsi
/rk3399_ARM-atf/fdts/n1sdp-multi-chip.dts
/rk3399_ARM-atf/fdts/tc0.dts
/rk3399_ARM-atf/include/common/nv_cntr_ids.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/drivers/marvell/ccu.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/generic.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/libc/stdio.h
/rk3399_ARM-atf/include/lib/libc/string.h
/rk3399_ARM-atf/include/lib/psci/psci_lib.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/fconf_nv_cntr_getter.h
/rk3399_ARM-atf/include/tools_share/tbbr_oid.h
/rk3399_ARM-atf/lib/cpus/aarch64/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/dsu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/generic.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/extensions/spe/spe.c
/rk3399_ARM-atf/lib/fconf/fconf_cot_getter.c
/rk3399_ARM-atf/lib/libc/memset.c
/rk3399_ARM-atf/lib/libc/snprintf.c
/rk3399_ARM-atf/lib/libc/strlcat.c
/rk3399_ARM-atf/lib/psci/psci_common.c
/rk3399_ARM-atf/make_helpers/armv7-a-cpus.mk
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/make_helpers/windows.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
platform.mk
/rk3399_ARM-atf/plat/arm/board/common/board_arm_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/corstone700/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_trusted_boot.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/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/platform.mk
/rk3399_ARM-atf/plat/arm/board/rde1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgi575/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgm775/platform.mk
/rk3399_ARM-atf/plat/arm/board/tc0/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/tc0/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/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_nv_cntr_getter.c
/rk3399_ARM-atf/plat/common/aarch64/plat_ehf.c
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.c
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.h
/rk3399_ARM-atf/plat/mediatek/mt8173/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8183/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8192/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/qti/qtiseclib/inc/qtiseclib_cb_interface.h
/rk3399_ARM-atf/plat/qti/qtiseclib/src/qtiseclib_cb_interface.c
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/plat/rpi/rpi3/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/services/spd/trusty/smcall.h
/rk3399_ARM-atf/services/spd/trusty/trusty.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/cert_create/Makefile
/rk3399_ARM-atf/tools/encrypt_fw/Makefile
/rk3399_ARM-atf/tools/fiptool/Makefile
/rk3399_ARM-atf/tools/fiptool/Makefile.msvc
/rk3399_ARM-atf/tools/fiptool/win_posix.c
/rk3399_ARM-atf/tools/fiptool/win_posix.h
/rk3399_ARM-atf/tools/sptool/Makefile
20ff991e04-Jun-2020 Javier Almansa Sobrino <javier.almansasobrino@arm.com>

arm_fpga: Add support to populate the CPU nodes in the DTB

At the moment BL31 dynamically discovers the CPU topology of an FPGA
system at runtime, but does not export it to the non-secure world.
Any

arm_fpga: Add support to populate the CPU nodes in the DTB

At the moment BL31 dynamically discovers the CPU topology of an FPGA
system at runtime, but does not export it to the non-secure world.
Any BL33 user would typically looks at the devicetree to learn about
existing CPUs.

This patch exports a minimum /cpus node in a devicetree to satisfy
the binding. This means that no cpumaps or caches are described.
This could be added later if needed.

An existing /cpus node in the DT will make the code bail out with a
message.

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: I589a2b3412411a3660134bdcef3a65e8200e1d7e

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/common/backtrace/backtrace.c
/rk3399_ARM-atf/common/fdt_fixup.c
/rk3399_ARM-atf/docs/about/contact.rst
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/cot-binding.rst
/rk3399_ARM-atf/docs/components/debugfs-design.rst
/rk3399_ARM-atf/docs/components/exception-handling.rst
/rk3399_ARM-atf/docs/components/platform-interrupt-controller-API.rst
/rk3399_ARM-atf/docs/components/sdei.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager-mm.rst
/rk3399_ARM-atf/docs/components/secure-partition-manager.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.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/porting-guide.rst
/rk3399_ARM-atf/docs/glossary.rst
/rk3399_ARM-atf/docs/plat/arm/arm-build-options.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/index.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/build.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/porting.rst
/rk3399_ARM-atf/docs/plat/mt8192.rst
/rk3399_ARM-atf/docs/plat/qemu-sbsa.rst
/rk3399_ARM-atf/docs/plat/qemu.rst
/rk3399_ARM-atf/docs/plat/qti.rst
/rk3399_ARM-atf/docs/process/coding-guidelines.rst
/rk3399_ARM-atf/docs/process/contributing.rst
/rk3399_ARM-atf/docs/process/security.rst
/rk3399_ARM-atf/drivers/allwinner/axp/common.c
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/rk3399_ARM-atf/drivers/auth/tbbr/tbbr_cot_bl2.c
/rk3399_ARM-atf/fdts/cot_descriptors.dtsi
/rk3399_ARM-atf/fdts/optee_sp_manifest.dts
/rk3399_ARM-atf/fdts/tc0.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/arch/aarch64/el3_common_macros.S
/rk3399_ARM-atf/include/bl1/bl1.h
/rk3399_ARM-atf/include/common/fdt_fixup.h
/rk3399_ARM-atf/include/common/tbbr/tbbr_img_def.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/drivers/marvell/mochi/cp110_setup.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/denver.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/extensions/amu.h
/rk3399_ARM-atf/include/lib/extensions/amu_private.h
/rk3399_ARM-atf/include/lib/smccc.h
/rk3399_ARM-atf/include/plat/arm/common/arm_reclaim_init.ld.S
/rk3399_ARM-atf/include/plat/arm/common/fconf_arm_sp_getter.h
/rk3399_ARM-atf/include/services/ffa_svc.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/include/tools_share/firmware_image_package.h
/rk3399_ARM-atf/lib/aarch32/misc_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a53.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a55.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a57.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a72.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a76.S
/rk3399_ARM-atf/lib/cpus/aarch64/cpu_helpers.S
/rk3399_ARM-atf/lib/cpus/aarch64/denver.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/debugfs/devfip.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/extensions/amu/aarch32/amu.c
/rk3399_ARM-atf/lib/extensions/amu/aarch64/amu.c
/rk3399_ARM-atf/lib/libc/snprintf.c
/rk3399_ARM-atf/lib/romlib/Makefile
/rk3399_ARM-atf/lib/semihosting/semihosting.c
/rk3399_ARM-atf/lib/utils/mem_region.c
/rk3399_ARM-atf/lib/xlat_tables/aarch32/nonlpae_tables.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/make_helpers/tbbr/tbbr_tools.mk
/rk3399_ARM-atf/plat/allwinner/common/allwinner-common.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/a5ds_err.c
fpga_bl31_setup.c
platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_spmc_optee_sp_manifest.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/fvp_ve_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp_ve/fvp_ve_err.c
/rk3399_ARM-atf/plat/arm/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_common.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_def.h
/rk3399_ARM-atf/plat/arm/board/n1sdp/n1sdp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/rde1edge/rde1edge_err.c
/rk3399_ARM-atf/plat/arm/board/rdn1edge/rdn1edge_err.c
/rk3399_ARM-atf/plat/arm/board/sgi575/sgi575_err.c
/rk3399_ARM-atf/plat/arm/board/sgm775/sgm775_err.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_err.c
/rk3399_ARM-atf/plat/arm/board/tc0/tc0_plat.c
/rk3399_ARM-atf/plat/arm/common/arm_bl2_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.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/common/sp_min/arm_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_plat.c
/rk3399_ARM-atf/plat/common/aarch64/platform_mp_stack.S
/rk3399_ARM-atf/plat/common/plat_bl1_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/imx/common/imx_ehf.c
/rk3399_ARM-atf/plat/imx/common/imx_sdei.c
/rk3399_ARM-atf/plat/imx/common/plat_imx8_gic.c
/rk3399_ARM-atf/plat/imx/imx8m/gpc_common.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8m_psci_common.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/include/gpc_reg.h
/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/imx8mn/include/gpc_reg.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/include/gpc_reg.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/gpc.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/include/gpc_reg.h
/rk3399_ARM-atf/plat/imx/imx8m/include/gpc.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0_amc/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_mcbin/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_puzzle/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/ble/ble.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/mss/mss_bl2_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_ble_setup.c
/rk3399_ARM-atf/plat/marvell/octeontx/otx2/t91/t9130/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/octeontx/otx2/t91/t9130/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/octeontx/otx2/t91/t9130/board/phy-porting-layer.h
/rk3399_ARM-atf/plat/marvell/octeontx/otx2/t91/t9130/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/octeontx/otx2/t91/t9130/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt8192/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/mediatek/mt8192/aarch64/platform_common.c
/rk3399_ARM-atf/plat/mediatek/mt8192/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt8192/include/plat_helpers.h
/rk3399_ARM-atf/plat/mediatek/mt8192/include/plat_macros.S
/rk3399_ARM-atf/plat/mediatek/mt8192/include/plat_private.h
/rk3399_ARM-atf/plat/mediatek/mt8192/include/platform_def.h
/rk3399_ARM-atf/plat/mediatek/mt8192/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8192/plat_topology.c
/rk3399_ARM-atf/plat/mediatek/mt8192/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/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_delay_timer.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_platform.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/bpmp/bpmp.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/bpmp_ipc/intf.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/bpmp_ipc/intf.h
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/bpmp_ipc/ivc.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/bpmp_ipc/ivc.h
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/flowctrl/flowctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/gpcdma/gpcdma.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/memctrl/memctrl_v1.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/memctrl/memctrl_v2.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/pmc/pmc.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/smmu/smmu.c
/rk3399_ARM-atf/plat/nvidia/tegra/drivers/spe/shared_console.S
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/memctrl.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/memctrl_v2.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/smmu.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/plat_macros.S
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t132/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra_mc_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t210/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_platform.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/lib/debug/profiler.c
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/platform_t132.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/mce_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_ras.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_trampoline.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/platform_t194.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/platform_t210.mk
/rk3399_ARM-atf/plat/qemu/common/qemu_common.c
/rk3399_ARM-atf/plat/qemu/common/qemu_spm.c
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/include/platform_def.h
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/platform.mk
/rk3399_ARM-atf/plat/qti/common/inc/aarch64/plat_macros.S
/rk3399_ARM-atf/plat/qti/common/inc/qti_board_def.h
/rk3399_ARM-atf/plat/qti/common/inc/qti_cpu.h
/rk3399_ARM-atf/plat/qti/common/inc/qti_interrupt_svc.h
/rk3399_ARM-atf/plat/qti/common/inc/qti_plat.h
/rk3399_ARM-atf/plat/qti/common/inc/qti_rng.h
/rk3399_ARM-atf/plat/qti/common/inc/qti_uart_console.h
/rk3399_ARM-atf/plat/qti/common/inc/spmi_arb.h
/rk3399_ARM-atf/plat/qti/common/src/aarch64/qti_helpers.S
/rk3399_ARM-atf/plat/qti/common/src/aarch64/qti_kryo4_gold.S
/rk3399_ARM-atf/plat/qti/common/src/aarch64/qti_kryo4_silver.S
/rk3399_ARM-atf/plat/qti/common/src/aarch64/qti_uart_console.S
/rk3399_ARM-atf/plat/qti/common/src/pm8998.c
/rk3399_ARM-atf/plat/qti/common/src/qti_bl31_setup.c
/rk3399_ARM-atf/plat/qti/common/src/qti_common.c
/rk3399_ARM-atf/plat/qti/common/src/qti_gic_v3.c
/rk3399_ARM-atf/plat/qti/common/src/qti_interrupt_svc.c
/rk3399_ARM-atf/plat/qti/common/src/qti_pm.c
/rk3399_ARM-atf/plat/qti/common/src/qti_rng.c
/rk3399_ARM-atf/plat/qti/common/src/qti_stack_protector.c
/rk3399_ARM-atf/plat/qti/common/src/qti_syscall.c
/rk3399_ARM-atf/plat/qti/common/src/qti_topology.c
/rk3399_ARM-atf/plat/qti/common/src/spmi_arb.c
/rk3399_ARM-atf/plat/qti/qtiseclib/inc/qtiseclib_cb_interface.h
/rk3399_ARM-atf/plat/qti/qtiseclib/inc/qtiseclib_defs.h
/rk3399_ARM-atf/plat/qti/qtiseclib/inc/qtiseclib_interface.h
/rk3399_ARM-atf/plat/qti/qtiseclib/inc/sc7180/qtiseclib_defs_plat.h
/rk3399_ARM-atf/plat/qti/qtiseclib/src/qtiseclib_cb_interface.c
/rk3399_ARM-atf/plat/qti/qtiseclib/src/qtiseclib_interface_stub.c
/rk3399_ARM-atf/plat/qti/sc7180/inc/platform_def.h
/rk3399_ARM-atf/plat/qti/sc7180/inc/qti_rng_io.h
/rk3399_ARM-atf/plat/qti/sc7180/inc/qti_secure_io_cfg.h
/rk3399_ARM-atf/plat/qti/sc7180/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min-stm32mp1.mk
/rk3399_ARM-atf/plat/ti/k3/platform.mk
/rk3399_ARM-atf/services/spd/tlkd/tlkd_common.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd.mk
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_pm.c
/rk3399_ARM-atf/services/std_svc/spmd/spmd_private.h
/rk3399_ARM-atf/tools/cert_create/Makefile
/rk3399_ARM-atf/tools/cert_create/include/dualroot/cot.h
/rk3399_ARM-atf/tools/cert_create/src/dualroot/cot.c
/rk3399_ARM-atf/tools/encrypt_fw/Makefile
/rk3399_ARM-atf/tools/fiptool/Makefile
/rk3399_ARM-atf/tools/fiptool/tbbr_config.c
/rk3399_ARM-atf/tools/sptool/Makefile
/rk3399_ARM-atf/tools/sptool/sp_mk_generator.py
fa30f73b07-Jul-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Support uploading a custom command line

The command line for BL33 payloads is typically taken from the DTB. On
"normal" systems the bootloader will put the right version in there, but
we t

arm_fpga: Support uploading a custom command line

The command line for BL33 payloads is typically taken from the DTB. On
"normal" systems the bootloader will put the right version in there, but
we typically don't use one on the FPGAs.
To avoid editing (and possibly re-packaging) the DTB for every change in
the command line, try to read it from some "magic" memory location
instead. It can be easily placed there by the tool that uploads the
other payloads to the FPGA's memory. BL31 will then replace the existing
command line in the DTB with that new string.

To avoid reading garbage, check the memory location for containing a
magic value. This is conveniently chosen to be a simple ASCII string, so
it can just preceed the actual command line in a text file:
--------------------------------
CMD:console=ttyAMA0,38400n8 debug loglevel=8
--------------------------------

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

show more ...

727bbf6813-May-2020 Javier Almansa Sobrino <javier.almansasobrino@arm.com>

arm_fpga: Add support for topology self-discovery

As secondary cores show up, they populate an array to
announce themselves so plat_core_pos_by_mpidr() can
return an invalid COREID code for any non-

arm_fpga: Add support for topology self-discovery

As secondary cores show up, they populate an array to
announce themselves so plat_core_pos_by_mpidr() can
return an invalid COREID code for any non-existing
MPIDR that it is queried about.

The Power Domain Tree Description is populated with
a topology based on the maximum harcoded values.

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: I8fd64761a2296714ce0f37c46544f3e6f13b5f61

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2/bl2_main.c
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/cot-binding.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/measured_boot/event_log.rst
/rk3399_ARM-atf/docs/components/measured_boot/index.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/docs/plat/imx8m.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/build.rst
/rk3399_ARM-atf/drivers/arm/gic/common/gic_common.c
/rk3399_ARM-atf/drivers/arm/gic/v2/gicdv2_helpers.c
/rk3399_ARM-atf/drivers/arm/gic/v2/gicv2.mk
/rk3399_ARM-atf/drivers/arm/gic/v3/gic-x00.c
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/brcm/rng.c
/rk3399_ARM-atf/drivers/io/io_fip.c
/rk3399_ARM-atf/drivers/io/io_memmap.c
/rk3399_ARM-atf/drivers/io/io_semihosting.c
/rk3399_ARM-atf/drivers/io/io_storage.c
/rk3399_ARM-atf/drivers/marvell/cache_llc.c
/rk3399_ARM-atf/drivers/marvell/comphy/phy-comphy-cp110.c
/rk3399_ARM-atf/drivers/marvell/mg_conf_cm3/mg_conf_cm3.c
/rk3399_ARM-atf/drivers/marvell/mg_conf_cm3/mg_conf_cm3.h
/rk3399_ARM-atf/drivers/measured_boot/event_log.c
/rk3399_ARM-atf/drivers/measured_boot/event_print.c
/rk3399_ARM-atf/drivers/measured_boot/measured_boot.c
/rk3399_ARM-atf/drivers/measured_boot/measured_boot.mk
/rk3399_ARM-atf/drivers/st/clk/stm32mp1_clk.c
/rk3399_ARM-atf/drivers/st/crypto/stm32_hash.c
/rk3399_ARM-atf/drivers/st/gpio/stm32_gpio.c
/rk3399_ARM-atf/drivers/st/iwdg/stm32_iwdg.c
/rk3399_ARM-atf/drivers/st/pmic/stm32mp_pmic.c
/rk3399_ARM-atf/fdts/cot_descriptors.dtsi
/rk3399_ARM-atf/include/common/fdt_wrappers.h
/rk3399_ARM-atf/include/common/tbbr/tbbr_img_def.h
/rk3399_ARM-atf/include/drivers/marvell/cache_llc.h
/rk3399_ARM-atf/include/drivers/measured_boot/event_log.h
/rk3399_ARM-atf/include/drivers/measured_boot/measured_boot.h
/rk3399_ARM-atf/include/drivers/measured_boot/tcg.h
/rk3399_ARM-atf/include/drivers/st/stm32mp1_clk.h
/rk3399_ARM-atf/include/dt-bindings/clock/stm32mp1-clks.h
/rk3399_ARM-atf/include/dt-bindings/reset/stm32mp1-resets.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/fconf/fconf_dyn_cfg_getter.h
/rk3399_ARM-atf/include/lib/fconf/fconf_tbbr_getter.h
/rk3399_ARM-atf/include/lib/libc/stdbool.h
/rk3399_ARM-atf/include/lib/libfdt/fdt.h
/rk3399_ARM-atf/include/lib/libfdt/libfdt.h
/rk3399_ARM-atf/include/lib/libfdt/libfdt_env.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/lib/fconf/fconf_tbbr_getter.c
/rk3399_ARM-atf/lib/libfdt/fdt.c
/rk3399_ARM-atf/lib/libfdt/fdt_addresses.c
/rk3399_ARM-atf/lib/libfdt/fdt_empty_tree.c
/rk3399_ARM-atf/lib/libfdt/fdt_overlay.c
/rk3399_ARM-atf/lib/libfdt/fdt_ro.c
/rk3399_ARM-atf/lib/libfdt/fdt_rw.c
/rk3399_ARM-atf/lib/libfdt/fdt_strerror.c
/rk3399_ARM-atf/lib/libfdt/fdt_sw.c
/rk3399_ARM-atf/lib/libfdt/fdt_wip.c
/rk3399_ARM-atf/lib/libfdt/libfdt_internal.h
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
aarch64/fpga_helpers.S
fpga_bl31_setup.c
fpga_def.h
fpga_private.h
fpga_topology.c
include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/corstone700/common/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/corstone700/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_nt_config_getter.c
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/event_log.dtsi
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_nt_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_tsp_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_measured_boot.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/fconf_nt_config_getter.h
/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/board/fvp_ve/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddaniel/rddaniel_trusted_boot.c
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/platform.mk
/rk3399_ARM-atf/plat/arm/board/rddanielxlr/rddanielxlr_trusted_boot.c
/rk3399_ARM-atf/plat/arm/common/arm_bl1_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_bl2_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg_helpers.c
/rk3399_ARM-atf/plat/arm/css/sgm/fdts/sgm_tb_fw_config.dts
/rk3399_ARM-atf/plat/brcm/board/common/board_common.mk
/rk3399_ARM-atf/plat/brcm/board/stingray/include/sr_def.h
/rk3399_ARM-atf/plat/common/plat_bl1_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/rk3399_ARM-atf/plat/imx/common/imx_sip_handler.c
/rk3399_ARM-atf/plat/imx/common/imx_sip_svc.c
/rk3399_ARM-atf/plat/imx/common/include/imx_sip_svc.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/include/gpc_reg.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mn/include/gpc_reg.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/gpc.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/imx8mp_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/imx8mp_psci.c
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/include/gpc_reg.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mp/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/include/gpc_reg.h
/rk3399_ARM-atf/plat/imx/imx8m/include/gpc.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0_amc/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_mcbin/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_puzzle/board/dram_port.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_puzzle/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_puzzle/board/system_power.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_puzzle/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_puzzle/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/a8k_common.mk
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/armada/common/aarch64/marvell_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_bl2_setup.c
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_common.mk
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_io_storage.c
/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/nvidia/tegra/common/tegra_common.mk
/rk3399_ARM-atf/plat/rpi/rpi4/rpi4_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl2_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_image_desc.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_io_storage.c
/rk3399_ARM-atf/plat/st/common/include/stm32mp_shared_resources.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/platform_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_private.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_smc.h
/rk3399_ARM-atf/plat/st/stm32mp1/services/stm32mp1_svc_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min-stm32mp1.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_scmi.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_shared_resources.c
/rk3399_ARM-atf/tools/fiptool/fiptool.c
/rk3399_ARM-atf/tools/fiptool/fiptool.h
/rk3399_ARM-atf/tools/marvell/doimage/doimage.c
c5346ed508-Jul-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Predefine DTB and BL33 load addresses

The memory layout for the FPGA is fairly uniform for most of the FPGA
images, and we already assume that DRAM starts at 2GB by default.

Prepopulate P

arm_fpga: Predefine DTB and BL33 load addresses

The memory layout for the FPGA is fairly uniform for most of the FPGA
images, and we already assume that DRAM starts at 2GB by default.

Prepopulate PRELOADED_BL33_BASE and FPGA_PRELOADED_DTB_BASE to some
sane default values, to simplify building some stock image.
If people want to deviate from that, they can always override those
addresses on the make command line.

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

show more ...

2c13ef9025-Jun-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Add Klein and Matterhorn support

To support FPGAs with those cores as well, as the respective cpulib
files to the Makefile.

Change-Id: I1a60867d5937be88b32b210c7817be4274554a76
Signed-off

arm_fpga: Add Klein and Matterhorn support

To support FPGAs with those cores as well, as the respective cpulib
files to the Makefile.

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

show more ...

9a65ba8525-Jun-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Support more CPU clusters

The maximum number of clusters is currently set to 2, which is quite
limiting. As there are FPGA images with 4 clusters, let's increase the
limit to 4.

Change-Id

arm_fpga: Support more CPU clusters

The maximum number of clusters is currently set to 2, which is quite
limiting. As there are FPGA images with 4 clusters, let's increase the
limit to 4.

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

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2/bl2_el3.ld.S
/rk3399_ARM-atf/bl31/bl31.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp.ld.S
/rk3399_ARM-atf/docs/components/cot-binding.rst
/rk3399_ARM-atf/docs/components/exception-handling.rst
/rk3399_ARM-atf/docs/components/fconf/index.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/ras.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/design/firmware-design.rst
/rk3399_ARM-atf/docs/design/interrupt-framework-design.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/perf/psci-performance-juno.rst
/rk3399_ARM-atf/docs/plat/allwinner.rst
/rk3399_ARM-atf/docs/plat/marvell/armada/build.rst
/rk3399_ARM-atf/docs/plat/meson-axg.rst
/rk3399_ARM-atf/docs/plat/meson-g12a.rst
/rk3399_ARM-atf/docs/plat/meson-gxl.rst
/rk3399_ARM-atf/docs/process/security.rst
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl1_load_config.puml
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl2_populate.puml
/rk3399_ARM-atf/drivers/arm/css/scp/css_bom_bootloader.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gic-x00.c
/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_common.c
/rk3399_ARM-atf/drivers/marvell/cache_llc.c
/rk3399_ARM-atf/drivers/marvell/ccu.c
/rk3399_ARM-atf/drivers/marvell/comphy/comphy-cp110.h
/rk3399_ARM-atf/drivers/marvell/comphy/phy-comphy-cp110.c
/rk3399_ARM-atf/fdts/corstone700.dtsi
/rk3399_ARM-atf/fdts/corstone700_fpga.dts
/rk3399_ARM-atf/fdts/corstone700_fvp.dts
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/drivers/arm/css/css_scp.h
/rk3399_ARM-atf/include/drivers/auth/tbbr_cot_common.h
/rk3399_ARM-atf/include/drivers/marvell/cache_llc.h
/rk3399_ARM-atf/include/drivers/marvell/ccu.h
/rk3399_ARM-atf/include/export/common/tbbr/tbbr_img_def_exp.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a77.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/neoverse_n1.h
/rk3399_ARM-atf/include/lib/fconf/fconf.h
/rk3399_ARM-atf/include/lib/fconf/fconf_dyn_cfg_getter.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3k/common/armada_common.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3k/common/board_marvell_def.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3k/common/marvell_def.h
/rk3399_ARM-atf/include/plat/marvell/armada/a3k/common/plat_marvell.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/tools_share/firmware_image_package.h
/rk3399_ARM-atf/include/tools_share/tbbr_oid.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a77.S
/rk3399_ARM-atf/lib/cpus/aarch64/neoverse_n1.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/debugfs/devfip.c
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/fconf/fconf.mk
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/plat/allwinner/common/sunxi_security.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/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
fpga_def.h
/rk3399_ARM-atf/plat/arm/board/corstone700/common/corstone700_helpers.S
/rk3399_ARM-atf/plat/arm/board/corstone700/common/corstone700_plat.c
/rk3399_ARM-atf/plat/arm/board/corstone700/common/corstone700_pm.c
/rk3399_ARM-atf/plat/arm/board/corstone700/common/corstone700_security.c
/rk3399_ARM-atf/plat/arm/board/corstone700/common/corstone700_stack_protector.c
/rk3399_ARM-atf/plat/arm/board/corstone700/common/corstone700_topology.c
/rk3399_ARM-atf/plat/arm/board/corstone700/common/drivers/mhu/mhu.c
/rk3399_ARM-atf/plat/arm/board/corstone700/common/drivers/mhu/mhu.h
/rk3399_ARM-atf/plat/arm/board/corstone700/common/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/corstone700/platform.mk
/rk3399_ARM-atf/plat/arm/board/corstone700/sp_min/sp_min-corstone700.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/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/fvp_bl2_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/fconf_hw_config_getter.h
/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/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/include/platform_def.h
/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/include/platform_def.h
/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/common/arm_bl1_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_bl2_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_bl31_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/common/sp_min/arm_sp_min_setup.c
/rk3399_ARM-atf/plat/arm/css/sgm/fdts/sgm_tb_fw_config.dts
/rk3399_ARM-atf/plat/arm/css/sgm/include/sgm_base_platform_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/a3700/board/pm_src.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/a3700/mvebu_def.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/a3700/plat_bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/a3700/platform.mk
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/a3700_common.mk
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/a3700_ea.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/a3700_sip_svc.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/aarch64/a3700_common.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/dram_win.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/a3700_plat_def.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/a3700_pm.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/ddr_info.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/dram_win.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/io_addr_dec.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/plat_macros.S
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/io_addr_dec.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a3k/common/plat_pm.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a70x0_amc/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0/board/marvell_plat_config.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/a80x0_mcbin/board/marvell_plat_config.c
/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/include/platform_def.h
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/mss/mss_bl2_setup.c
/rk3399_ARM-atf/plat/marvell/armada/a8k/common/plat_bl31_setup.c
/rk3399_ARM-atf/plat/marvell/armada/common/aarch64/marvell_helpers.S
/rk3399_ARM-atf/plat/marvell/armada/common/marvell_common.mk
/rk3399_ARM-atf/plat/st/common/include/stm32mp_shared_resources.h
/rk3399_ARM-atf/plat/st/stm32mp1/include/stm32mp1_shared_resources.h
/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/sp_min/sp_min_setup.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/plat/st/stm32mp1/stm32mp1_shared_resources.c
/rk3399_ARM-atf/tools/cert_create/include/dualroot/cot.h
/rk3399_ARM-atf/tools/cert_create/include/tbbr/tbb_ext.h
/rk3399_ARM-atf/tools/cert_create/src/dualroot/cot.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_cert.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_ext.c
/rk3399_ARM-atf/tools/fiptool/tbbr_config.c
53baf7f025-Jun-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Fix MPIDR topology checks

The plat_core_pos_by_mpidr() implementation for the Arm FPGA port has
some issues, which leads to problems when matching GICv3 redistributors
with cores:
- The po

arm_fpga: Fix MPIDR topology checks

The plat_core_pos_by_mpidr() implementation for the Arm FPGA port has
some issues, which leads to problems when matching GICv3 redistributors
with cores:
- The power domain tree was not taking multithreading into account, so
we ended up with the wrong mapping between MPIDRs and core IDs.
- Before even considering an MPIDR, we try to make sure Aff2 is 0.
Unfortunately this is the cluster ID when the MT bit is set.
- We mask off the MT bit in MPIDR, before basing decisions on it.
- When detecting the MT bit, we are properly calculating the thread ID,
but don't account for the shift in the core and cluster ID checks.

Those problems lead to early rejections of MPIDRs values, in particular
when called from the GIC code. As a result, CPU_ON for secondary cores
was failing for most of the cores.

Fix this by properly handling the MT bit in plat_core_pos_by_mpidr(),
also pulling in FPGA_MAX_PE_PER_CPU when populating the power domain
tree.

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

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/docs/about/maintainers.rst
/rk3399_ARM-atf/docs/components/ras.rst
/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/build-options.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/arm/gic/v2/gicv2_main.c
/rk3399_ARM-atf/drivers/auth/dualroot/cot.c
/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/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/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/rk3399_ARM-atf/include/common/tbbr/cot_def.h
/rk3399_ARM-atf/include/common/tbbr/tbbr_img_def.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/drivers/brcm/scp.h
/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/drivers/st/scmi-msg.h
/rk3399_ARM-atf/include/drivers/st/scmi.h
/rk3399_ARM-atf/include/export/common/tbbr/tbbr_img_def_exp.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a76.h
/rk3399_ARM-atf/include/lib/extensions/ras.h
/rk3399_ARM-atf/include/lib/extensions/ras_arch.h
/rk3399_ARM-atf/include/plat/arm/common/fconf_sec_intr_config.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/services/ffa_svc.h
/rk3399_ARM-atf/include/tools_share/firmware_image_package.h
/rk3399_ARM-atf/include/tools_share/tbbr_oid.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a76.S
/rk3399_ARM-atf/lib/cpus/aarch64/denver.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/debugfs/devfip.c
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/extensions/ras/ras_common.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/make_helpers/tbbr/tbbr_tools.mk
fpga_topology.c
/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/rdn1edge/fdts/rdn1edge_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/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/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/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra194_ras_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/mce_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_ras.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/platform_t194.mk
/rk3399_ARM-atf/plat/rockchip/rk3368/include/platform_def.h
/rk3399_ARM-atf/services/std_svc/spmd/spmd_main.c
/rk3399_ARM-atf/tools/cert_create/include/cert.h
/rk3399_ARM-atf/tools/cert_create/include/dualroot/cot.h
/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/dualroot/cot.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_cert.c
/rk3399_ARM-atf/tools/cert_create/src/tbbr/tbb_ext.c
/rk3399_ARM-atf/tools/fiptool/tbbr_config.c
/rk3399_ARM-atf/tools/sptool/sp_mk_generator.py
b4ad365a25-Mar-2020 Andre Przywara <andre.przywara@arm.com>

GICv3: GIC-600: Detect GIC-600 at runtime

The only difference between GIC-500 and GIC-600 relevant to TF-A is the
differing power management sequence.
A certain GIC implementation is detectable at r

GICv3: GIC-600: Detect GIC-600 at runtime

The only difference between GIC-500 and GIC-600 relevant to TF-A is the
differing power management sequence.
A certain GIC implementation is detectable at runtime, for instance by
checking the IIDR register. Let's add that test before initiating the
GIC-600 specific sequence, so the code can be used on both GIC-600 and
GIC-500 chips alike, without deciding on a GIC chip at compile time.

This means that the GIC-500 "driver" is now redundant. To allow minimal
platform support, add a switch to disable GIC-600 support.

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

show more ...


/rk3399_ARM-atf/docs/design/cpu-specific-build-macros.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/arm/fvp/index.rst
/rk3399_ARM-atf/drivers/arm/gic/v3/gic-x00.c
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3.mk
/rk3399_ARM-atf/drivers/marvell/mochi/cp110_setup.c
/rk3399_ARM-atf/drivers/st/crypto/stm32_hash.c
/rk3399_ARM-atf/drivers/st/etzpc/etzpc.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/stm32mp157c.dtsi
/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/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/drivers/st/etzpc.h
/rk3399_ARM-atf/include/drivers/st/stm32mp_reset.h
/rk3399_ARM-atf/include/dt-bindings/soc/st,stm32-etzpc.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/plat/arm/common/arm_reclaim_init.ld.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_hercules_ae.S
/rk3399_ARM-atf/lib/cpus/cpu-ops.mk
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_fw_config.dts
platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fdts/fvp_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/juno/fdts/juno_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/n1sdp/platform.mk
/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/board/tc0/platform.mk
/rk3399_ARM-atf/plat/arm/css/sgi/sgi-common.mk
/rk3399_ARM-atf/plat/arm/css/sgm/sgm-common.mk
/rk3399_ARM-atf/plat/common/aarch64/platform_mp_stack.S
/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/marvell/a8k/common/a8k_common.mk
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/include/platform_def.h
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/plat/rockchip/rk3368/include/platform_def.h
/rk3399_ARM-atf/plat/socionext/synquacer/include/plat.ld.S
/rk3399_ARM-atf/plat/socionext/synquacer/include/platform_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/bl2_plat_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min-stm32mp1.mk
/rk3399_ARM-atf/plat/st/stm32mp1/sp_min/sp_min_setup.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/ti/k3/common/k3_psci.c
/rk3399_ARM-atf/plat/ti/k3/common/plat_common.mk
/rk3399_ARM-atf/plat/ti/k3/include/platform_def.h
/rk3399_ARM-atf/services/std_svc/spm_mm/spm_mm_xlat.c
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/Makefile
/rk3399_ARM-atf/common/desc_image_load.c
/rk3399_ARM-atf/common/fdt_wrappers.c
/rk3399_ARM-atf/docs/about/features.rst
/rk3399_ARM-atf/docs/about/maintainers.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/psa-ffa-manifest-binding.rst
/rk3399_ARM-atf/docs/design/auth-framework.rst
/rk3399_ARM-atf/docs/getting_started/build-options.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/docs/plat/arm/index.rst
/rk3399_ARM-atf/docs/plat/arm/tc0/index.rst
/rk3399_ARM-atf/docs/plat/imx8m.rst
/rk3399_ARM-atf/docs/process/contributing.rst
/rk3399_ARM-atf/docs/process/faq.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/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/fdts/tc0.dts
/rk3399_ARM-atf/include/arch/aarch64/arch.h
/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/common/fdt_wrappers.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/lib/cpus/aarch64/cortex_a78.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cortex_hercules_ae.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/extensions/twed.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/fconf_sdei_getter.h
/rk3399_ARM-atf/include/plat/common/platform.h
/rk3399_ARM-atf/include/services/ffa_svc.h
/rk3399_ARM-atf/include/services/sdei.h
/rk3399_ARM-atf/include/services/sdei_flags.h
/rk3399_ARM-atf/include/services/spm_core_manifest.h
/rk3399_ARM-atf/include/services/spmd_svc.h
/rk3399_ARM-atf/lib/cpus/aarch64/cortex_a78.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/lib/extensions/mpam/mpam.c
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/a5ds/fdts/a5ds_fw_config.dts
platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/fconf/fconf_hw_config_getter.c
/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_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/include/platform_def.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/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/jmptbl.i
/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/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/aarch64/arm_sdei.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/common/arm_console.c
/rk3399_ARM-atf/plat/arm/common/fconf/fconf_sdei_getter.c
/rk3399_ARM-atf/plat/brcm/board/common/board_common.mk
/rk3399_ARM-atf/plat/common/aarch64/plat_common.c
/rk3399_ARM-atf/plat/common/plat_spmd_manifest.c
/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/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_platform.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/include/tegra_platform.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/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/renesas/rcar/bl2_plat_setup.c
/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
/rk3399_ARM-atf/services/arm_arch_svc/arm_arch_svc_setup.c
/rk3399_ARM-atf/services/std_svc/sdei/sdei_main.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
dee3042c09-Apr-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Read UART address from DT

The arm_fpga port requires a DTB, to launch a BL33 payload.
To make this port more flexible, we can also use the information in the
DT to configure the console dr

arm_fpga: Read UART address from DT

The arm_fpga port requires a DTB, to launch a BL33 payload.
To make this port more flexible, we can also use the information in the
DT to configure the console driver.
For a start, find the DT node pointed to by the stdout-path property, and
read the base address from there.
This assumes for now that the stdout-path points to a PL011 UART.

This allows to remove platform specific addresses from the image. We
keep the original base address for the crash console.

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

show more ...

1a0f936624-Jan-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Read GICD and GICR base addresses from DT

Since we use a DTB with all platform information to pass this on to a
kernel loaded as BL33, we can as well make use of it for our own
purposes.

arm_fpga: Read GICD and GICR base addresses from DT

Since we use a DTB with all platform information to pass this on to a
kernel loaded as BL33, we can as well make use of it for our own
purposes.

Every DT would contain a node for the GIC(v3) interrupt controller, so
we can read the base address for the distributor and redistributors from
there.

This avoids hard coding this information in the code and allows for a more
flexible binary.

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

show more ...

670c66af24-Jan-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Read generic timer counter frequency from DT

The ARM Generic Timer DT binding describes an (optional) property to
declare the counter frequency. Its usage is normally discouraged, as the
v

arm_fpga: Read generic timer counter frequency from DT

The ARM Generic Timer DT binding describes an (optional) property to
declare the counter frequency. Its usage is normally discouraged, as the
value should be read from the CNTFRQ_EL0 system register.

However in our case we can use it to program this register in the first
place, which avoids us to hard code a counter frequency into the code.
We keep some default value in, if the DT lacks that property for
whatever reason.

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

show more ...

93bb7a0a09-Apr-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Use Generic UART

The SCP firmware on the ARM FPGA initialises the UART already. This allows
us to treat the PL011 as an SBSA Generic UART, which does not require
any further setup.

This i

arm_fpga: Use Generic UART

The SCP firmware on the ARM FPGA initialises the UART already. This allows
us to treat the PL011 as an SBSA Generic UART, which does not require
any further setup.

This in particular removes the need for any baudrate and base clock related
settings to be hard coded into the BL31 image.

Change-Id: I16fc943526267356b97166a7068459e06ff77f0f
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/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/drivers/st/spi/stm32_qspi.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/st/stm32mp_clkfunc.h
/rk3399_ARM-atf/lib/fconf/fconf_dyn_cfg_getter.c
/rk3399_ARM-atf/lib/fconf/fconf_tbbr_getter.c
aarch64/fpga_helpers.S
fpga_console.c
fpga_def.h
include/platform_def.h
platform.mk
/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_pm.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/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/juno/jmptbl.i
/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
a82ea1db09-Apr-2020 Andre Przywara <andre.przywara@arm.com>

arm_fpga: Remove bogus timer initialisation

The arm_fpga platform code contains an dubious line to initialise some
timer. On closer inspection this turn out to be bogus, as this was only
needed on s

arm_fpga: Remove bogus timer initialisation

The arm_fpga platform code contains an dubious line to initialise some
timer. On closer inspection this turn out to be bogus, as this was only
needed on some special (older) FPGA board, and is actually not needed on
the current model. Also the base address was wrong anyways.

Remove the code entirely.

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

show more ...


/rk3399_ARM-atf/bl1/aarch32/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/aarch64/bl1_context_mgmt.c
/rk3399_ARM-atf/bl1/bl1_fwu.c
/rk3399_ARM-atf/bl1/bl1_main.c
/rk3399_ARM-atf/bl2/bl2_image_load_v2.c
/rk3399_ARM-atf/bl2u/bl2u_main.c
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/plat/brcm-stingray.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/brcm/chimp.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_chal_sd.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_csl_sdcard.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_csl_sdcmd.c
/rk3399_ARM-atf/drivers/brcm/emmc/emmc_pboot_hal_memory_drv.c
/rk3399_ARM-atf/drivers/brcm/iproc_gpio.c
/rk3399_ARM-atf/drivers/brcm/ocotp.c
/rk3399_ARM-atf/drivers/brcm/scp.c
/rk3399_ARM-atf/drivers/brcm/sotp.c
/rk3399_ARM-atf/drivers/brcm/spi/iproc_qspi.c
/rk3399_ARM-atf/drivers/brcm/spi/iproc_qspi.h
/rk3399_ARM-atf/drivers/brcm/spi/iproc_spi.c
/rk3399_ARM-atf/drivers/brcm/spi_flash.c
/rk3399_ARM-atf/drivers/brcm/spi_sf.c
/rk3399_ARM-atf/drivers/io/io_fip.c
/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/drivers/arm/gic_common.h
/rk3399_ARM-atf/include/drivers/arm/gicv3.h
/rk3399_ARM-atf/include/drivers/auth/auth_mod.h
/rk3399_ARM-atf/include/drivers/brcm/chimp.h
/rk3399_ARM-atf/include/drivers/brcm/chimp_nv_defs.h
/rk3399_ARM-atf/include/drivers/brcm/dmu.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/bcm_emmc.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_api.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_brcm_rdb_sd4_top.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_chal_sd.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_chal_types.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_csl_sd.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_csl_sdcmd.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_csl_sdprot.h
/rk3399_ARM-atf/include/drivers/brcm/emmc/emmc_pboot_hal_memory_drv.h
/rk3399_ARM-atf/include/drivers/brcm/fru.h
/rk3399_ARM-atf/include/drivers/brcm/iproc_gpio.h
/rk3399_ARM-atf/include/drivers/brcm/ocotp.h
/rk3399_ARM-atf/include/drivers/brcm/scp.h
/rk3399_ARM-atf/include/drivers/brcm/sf.h
/rk3399_ARM-atf/include/drivers/brcm/sotp.h
/rk3399_ARM-atf/include/drivers/brcm/spi.h
/rk3399_ARM-atf/include/drivers/brcm/spi_flash.h
/rk3399_ARM-atf/include/drivers/io/io_fip.h
/rk3399_ARM-atf/include/lib/coreboot.h
/rk3399_ARM-atf/include/lib/fconf/fconf_tbbr_getter.h
/rk3399_ARM-atf/include/lib/smccc.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/include/plat/arm/common/arm_fconf_getter.h
/rk3399_ARM-atf/include/plat/brcm/common/bcm_console.h
/rk3399_ARM-atf/include/plat/brcm/common/bcm_elog.h
/rk3399_ARM-atf/include/plat/brcm/common/brcm_def.h
/rk3399_ARM-atf/include/plat/brcm/common/plat_brcm.h
/rk3399_ARM-atf/lib/coreboot/coreboot_table.c
/rk3399_ARM-atf/lib/locks/bakery/bakery_lock_normal.c
/rk3399_ARM-atf/lib/xlat_tables_v2/aarch64/xlat_tables_arch.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_core.c
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_private.h
fpga_bl31_setup.c
fpga_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_def.h
/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/board/juno/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/rddaniel/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_io_storage.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/common/bcm_console.c
/rk3399_ARM-atf/plat/brcm/board/common/bcm_elog.c
/rk3399_ARM-atf/plat/brcm/board/common/bcm_elog_ddr.c
/rk3399_ARM-atf/plat/brcm/board/common/bcm_elog_ddr.h
/rk3399_ARM-atf/plat/brcm/board/common/board_arm_trusted_boot.c
/rk3399_ARM-atf/plat/brcm/board/common/board_common.c
/rk3399_ARM-atf/plat/brcm/board/common/board_common.mk
/rk3399_ARM-atf/plat/brcm/board/common/brcm_mbedtls.c
/rk3399_ARM-atf/plat/brcm/board/common/chip_id.h
/rk3399_ARM-atf/plat/brcm/board/common/cmn_plat_def.h
/rk3399_ARM-atf/plat/brcm/board/common/cmn_plat_util.h
/rk3399_ARM-atf/plat/brcm/board/common/cmn_sec.c
/rk3399_ARM-atf/plat/brcm/board/common/cmn_sec.h
/rk3399_ARM-atf/plat/brcm/board/common/err.c
/rk3399_ARM-atf/plat/brcm/board/common/plat_setup.c
/rk3399_ARM-atf/plat/brcm/board/common/platform_common.c
/rk3399_ARM-atf/plat/brcm/board/common/sbl_util.c
/rk3399_ARM-atf/plat/brcm/board/common/sbl_util.h
/rk3399_ARM-atf/plat/brcm/board/common/timer_sync.c
/rk3399_ARM-atf/plat/brcm/board/stingray/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/brcm/board/stingray/bcm958742t-ns3.mk
/rk3399_ARM-atf/plat/brcm/board/stingray/bcm958742t.mk
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ddr/soc/include/board_family.h
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ext_sram_init/ext_sram_init.c
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ext_sram_init/ext_sram_init.h
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/ihost_pll_config.c
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/plat_emmc.c
/rk3399_ARM-atf/plat/brcm/board/stingray/driver/swreg.c
/rk3399_ARM-atf/plat/brcm/board/stingray/include/bl33_info.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/board_info.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/crmu_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/ddr_init.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/fsx.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/ihost_pm.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/iommu.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/ncsi.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/paxb.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/paxc.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/plat_macros.S
/rk3399_ARM-atf/plat/brcm/board/stingray/include/platform_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/platform_sotp.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/scp_cmd.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/scp_utils.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/sdio.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/sr_def.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/sr_utils.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/swreg.h
/rk3399_ARM-atf/plat/brcm/board/stingray/include/timer_sync.h
/rk3399_ARM-atf/plat/brcm/board/stingray/platform.mk
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl2_setup.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/bl31_setup.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/brcm_pm_ops.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/fsx.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/ihost_pm.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/iommu.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/ncsi.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/paxb.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/paxc.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/pm.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/scp_cmd.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/scp_utils.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/sdio.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/sr_paxb_phy.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/topology.c
/rk3399_ARM-atf/plat/brcm/board/stingray/src/tz_sec.c
/rk3399_ARM-atf/plat/brcm/common/brcm_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/brcm/common/brcm_bl2_setup.c
/rk3399_ARM-atf/plat/brcm/common/brcm_bl31_setup.c
/rk3399_ARM-atf/plat/brcm/common/brcm_ccn.c
/rk3399_ARM-atf/plat/brcm/common/brcm_common.c
/rk3399_ARM-atf/plat/brcm/common/brcm_gicv3.c
/rk3399_ARM-atf/plat/brcm/common/brcm_image_load.c
/rk3399_ARM-atf/plat/brcm/common/brcm_io_storage.c
/rk3399_ARM-atf/plat/brcm/common/brcm_mhu.c
/rk3399_ARM-atf/plat/brcm/common/brcm_mhu.h
/rk3399_ARM-atf/plat/brcm/common/brcm_scpi.c
/rk3399_ARM-atf/plat/brcm/common/brcm_scpi.h
/rk3399_ARM-atf/plat/socionext/uniphier/include/platform_def.h
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
3e58803603-Apr-2020 Manish Pandey <manish.pandey2@arm.com>

arm_fpga: adapt to new way of including gicv3 files

with commit a6ea06f5, the way platform includes gicv3 files has been
modified, this patch adapts to new method of including gicv3 files
for arm_fp

arm_fpga: adapt to new way of including gicv3 files

with commit a6ea06f5, the way platform includes gicv3 files has been
modified, this patch adapts to new method of including gicv3 files
for arm_fpga platform.

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

show more ...


/rk3399_ARM-atf/.gitreview
/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/drivers/auth/cryptocell/713/cryptocell_crypto.c
/rk3399_ARM-atf/drivers/auth/cryptocell/713/cryptocell_plat_helpers.c
/rk3399_ARM-atf/drivers/auth/cryptocell/cryptocell_crypto.mk
/rk3399_ARM-atf/include/common/bl_common.ld.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_api.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_crypto_api.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_crypto_asym_api.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_crypto_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/bsv_error.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_address_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_boot_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_pal_types.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_pal_types_plat.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_pka_hw_plat_defs.h
/rk3399_ARM-atf/include/drivers/arm/cryptocell/713/cc_sec_defs.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/cpu_macros.S
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_tables_v2.h
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31.ld.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_fiq_glue.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_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
535c824e02-Apr-2020 Javier Almansa Sobrino <javier.almansasobrino@arm.com>

Fix coverity defects found on the FPGA port.

Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
Change-Id: I397b642eff8a09b201f497f8d2ba39e2460c0dba


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl32/sp_min/sp_min.ld.S
/rk3399_ARM-atf/bl32/tsp/tsp_main.c
/rk3399_ARM-atf/common/desc_image_load.c
/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/fconf.rst
/rk3399_ARM-atf/docs/components/index.rst
/rk3399_ARM-atf/docs/components/spci-manifest-binding.rst
/rk3399_ARM-atf/docs/getting_started/build-options.rst
/rk3399_ARM-atf/docs/getting_started/porting-guide.rst
/rk3399_ARM-atf/docs/plat/hikey.rst
/rk3399_ARM-atf/docs/plat/hikey960.rst
/rk3399_ARM-atf/docs/plat/meson-gxbb.rst
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl1_load_config.puml
/rk3399_ARM-atf/docs/resources/diagrams/plantuml/fconf_bl2_populate.puml
/rk3399_ARM-atf/drivers/arm/gic/v3/gicv3.mk
/rk3399_ARM-atf/drivers/auth/mbedtls/mbedtls_common.mk
/rk3399_ARM-atf/drivers/st/ddr/stm32mp1_ram.c
/rk3399_ARM-atf/drivers/st/fmc/stm32_fmc2_nand.c
/rk3399_ARM-atf/drivers/st/io/io_stm32image.c
/rk3399_ARM-atf/drivers/st/spi/stm32_qspi.c
/rk3399_ARM-atf/fdts/corstone700.dts
/rk3399_ARM-atf/include/arch/aarch32/el3_common_macros.S
/rk3399_ARM-atf/include/arch/aarch64/arch_helpers.h
/rk3399_ARM-atf/include/bl32/payloads/tlk.h
/rk3399_ARM-atf/include/drivers/raw_nand.h
/rk3399_ARM-atf/include/lib/cpus/aarch64/denver.h
/rk3399_ARM-atf/include/lib/el3_runtime/aarch64/context.h
/rk3399_ARM-atf/include/lib/el3_runtime/context_mgmt.h
/rk3399_ARM-atf/include/lib/pmf/pmf_helpers.h
/rk3399_ARM-atf/include/lib/xlat_tables/xlat_mmu_helpers.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_dyn_cfg_helpers.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
/rk3399_ARM-atf/include/plat/arm/common/smccc_def.h
/rk3399_ARM-atf/lib/el3_runtime/aarch64/context.S
/rk3399_ARM-atf/lib/fconf/fconf.c
/rk3399_ARM-atf/lib/fconf/fconf.mk
/rk3399_ARM-atf/lib/xlat_tables_v2/xlat_tables_context.c
/rk3399_ARM-atf/make_helpers/build_macros.mk
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/allwinner/sun50i_h6/include/sunxi_mmap.h
/rk3399_ARM-atf/plat/arm/board/a5ds/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/a5ds/platform.mk
fpga_pm.c
/rk3399_ARM-atf/plat/arm/board/corstone700/include/platform_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_bl1_setup.c
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/board/fvp_ve/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp_ve/platform.mk
/rk3399_ARM-atf/plat/arm/board/juno/platform.mk
/rk3399_ARM-atf/plat/arm/board/n1sdp/platform.mk
/rk3399_ARM-atf/plat/arm/board/rdn1edge/platform.mk
/rk3399_ARM-atf/plat/arm/board/sgm775/fdts/sgm775_fw_config.dts
/rk3399_ARM-atf/plat/arm/board/sgm775/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_bl2_setup.c
/rk3399_ARM-atf/plat/arm/common/arm_common.mk
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg.c
/rk3399_ARM-atf/plat/arm/common/arm_dyn_cfg_helpers.c
/rk3399_ARM-atf/plat/arm/common/arm_image_load.c
/rk3399_ARM-atf/plat/arm/common/arm_io_storage.c
/rk3399_ARM-atf/plat/arm/common/fconf/arm_fconf_io.c
/rk3399_ARM-atf/plat/arm/css/sgi/include/sgi_base_platform_def.h
/rk3399_ARM-atf/plat/arm/css/sgi/sgi-common.mk
/rk3399_ARM-atf/plat/arm/css/sgi/sgi_bl31_setup.c
/rk3399_ARM-atf/plat/arm/css/sgm/sgm-common.mk
/rk3399_ARM-atf/plat/common/plat_psci_common.c
/rk3399_ARM-atf/plat/imx/common/include/imx8_iomux.h
/rk3399_ARM-atf/plat/imx/imx8m/imx8mm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8m/imx8mq/platform.mk
/rk3399_ARM-atf/plat/imx/imx8qm/imx8qm_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qm/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8qm/platform.mk
/rk3399_ARM-atf/plat/imx/imx8qx/imx8qx_bl31_setup.c
/rk3399_ARM-atf/plat/imx/imx8qx/include/platform_def.h
/rk3399_ARM-atf/plat/imx/imx8qx/platform.mk
/rk3399_ARM-atf/plat/marvell/a3700/common/a3700_common.mk
/rk3399_ARM-atf/plat/mediatek/mt8183/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/bpmp_ipc/ivc.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/memctrl/memctrl_v1.c
/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_gicv2.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/flowctrl.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/drivers/mce.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/platform_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t186/tegra186_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/t194/tegra_def.h
/rk3399_ARM-atf/plat/nvidia/tegra/include/tegra_private.h
/rk3399_ARM-atf/plat/nvidia/tegra/platform.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/platform_t132.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_memctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_trampoline.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/platform_t186.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/include/t194_nvg.h
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/mce/mce.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/drivers/se/se.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/plat_memctrl.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/t194/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t194/platform_t194.mk
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/drivers/se/security_engine.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/platform_t210.mk
/rk3399_ARM-atf/plat/qemu/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_sbsa/platform.mk
/rk3399_ARM-atf/plat/rockchip/rk3399/platform.mk
/rk3399_ARM-atf/plat/rpi/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/plat/rpi/common/include/rpi_shared.h
/rk3399_ARM-atf/plat/rpi/common/rpi3_pm.c
/rk3399_ARM-atf/plat/rpi/rpi3/include/platform_def.h
/rk3399_ARM-atf/plat/rpi/rpi3/platform.mk
/rk3399_ARM-atf/plat/rpi/rpi4/include/platform_def.h
/rk3399_ARM-atf/plat/rpi/rpi4/platform.mk
/rk3399_ARM-atf/plat/socionext/synquacer/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/platform.mk
/rk3399_ARM-atf/plat/socionext/uniphier/tsp/uniphier_tsp_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl2_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_bl31_setup.c
/rk3399_ARM-atf/plat/socionext/uniphier/uniphier_xlat_setup.c
/rk3399_ARM-atf/plat/st/common/include/stm32mp_common.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/include/stm32mp1_private.h
/rk3399_ARM-atf/plat/st/stm32mp1/plat_image_load.c
/rk3399_ARM-atf/plat/st/stm32mp1/platform.mk
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_def.h
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_private.c
/rk3399_ARM-atf/plat/st/stm32mp1/stm32mp1_security.c
/rk3399_ARM-atf/plat/ti/k3/common/plat_common.mk
/rk3399_ARM-atf/plat/xilinx/versal/include/versal_def.h
/rk3399_ARM-atf/plat/xilinx/versal/platform.mk
/rk3399_ARM-atf/plat/xilinx/zynqmp/include/zynqmp_def.h
/rk3399_ARM-atf/services/spd/tlkd/tlkd_main.c
/rk3399_ARM-atf/services/spd/tlkd/tlkd_pm.c
/rk3399_ARM-atf/services/spd/trusty/trusty.c
4b5793c915-Jan-2020 Oliver Swede <oli.swede@arm.com>

plat/arm/board/arm_fpga: Compile with additional CPU libraries

This change is part of the goal of enabling the port to be compatible
with multiple FPGA images.

BL31 behaves differently depending on

plat/arm/board/arm_fpga: Compile with additional CPU libraries

This change is part of the goal of enabling the port to be compatible
with multiple FPGA images.

BL31 behaves differently depending on whether or not the CPUs in the
system use cache coherency, and as a result any CPU libraries that are
compiled together must serve processors that are consistent in this
regard.

This compiles a different set of CPU libraries depending on whether or
not the HW_ASSISTED_COHERENCY is enabled at build-time to indicate the
CPUs support hardware-level support for cache coherency. This build
flag is used in the makefile in the same way as the Arm FVP port.

Signed-off-by: Oliver Swede <oli.swede@arm.com>
Change-Id: I18300b4443176b89767015e3688c0f315a91c27e

show more ...

62056e4e07-Jan-2020 Oliver Swede <oli.swede@arm.com>

plat/arm/board/arm_fpga: Enable position-independent execution

This allows the BL31 port to run with position-independent execution
enabled so that it can be ran from any address in the system.
This

plat/arm/board/arm_fpga: Enable position-independent execution

This allows the BL31 port to run with position-independent execution
enabled so that it can be ran from any address in the system.
This increases the flexibility of the image, allowing it to be ran from
other locations rather than only its hardcoded absolute address
(currently set to the typical DRAM base of 2GB). This may be useful for
future images that describe system configurations with other memory
layouts (e.g. where SRAM is included).

It does this by setting ENABLE_PIE=1 and changing the absolute
address to 0. The load address of bl31.bin can then be specified by
the -l [load address] argument in the fpga-run command (additionally,
this address is required by any preceding payloads that specify the
start address. For ELF payloads this is usually extracted automatically
by reading the entrypoint address in the header, however bl31.bin is a
different file format so has this additional dependency).

Signed-off-by: Oliver Swede <oli.swede@arm.com>
Change-Id: Idd74787796ab0cf605fe2701163d9c4b3223a143

show more ...

1234