History log of /rk3399_ARM-atf/lib/ (Results 2026 – 2050 of 2323)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
45b52c2002-Aug-2017 Eleanor Bonnici <Eleanor.bonnici@arm.com>

Cortex-A57: Implement workaround for erratum 859972

Erratum 855972 applies to revision r1p3 or earlier Cortex-A57 CPUs. The
recommended workaround is to disable instruction prefetch.

Change-Id: I56

Cortex-A57: Implement workaround for erratum 859972

Erratum 855972 applies to revision r1p3 or earlier Cortex-A57 CPUs. The
recommended workaround is to disable instruction prefetch.

Change-Id: I56eeac0b753eb1432bd940083372ad6f7e93b16a
Signed-off-by: Eleanor Bonnici <Eleanor.bonnici@arm.com>
Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>

show more ...

413115e106-Sep-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1019 from etienne-lms/log-size

CPU_DATA_LOG2SIZE depends on cache line size

216e58a304-Sep-2017 Roberto Vargas <roberto.vargas@arm.com>

Reduce time lock in psci_do_cpu_off

psci_set_power_off_state only initializes a local variable, so there
isn't any reason why it should be done while the lock is held.

Change-Id: I1c62f4cd5d860d102

Reduce time lock in psci_do_cpu_off

psci_set_power_off_state only initializes a local variable, so there
isn't any reason why it should be done while the lock is held.

Change-Id: I1c62f4cd5d860d102532e5a5350152180d41d127
Signed-off-by: Roberto Vargas <roberto.vargas@arm.com>

show more ...

86606eb501-Sep-2017 Etienne Carriere <etienne.carriere@linaro.org>

cpu log buffer size depends on cache line size

Platform may use specific cache line sizes. Since CACHE_WRITEBACK_GRANULE
defines the platform specific cache line size, it is used to define the
size

cpu log buffer size depends on cache line size

Platform may use specific cache line sizes. Since CACHE_WRITEBACK_GRANULE
defines the platform specific cache line size, it is used to define the
size of the cpu data structure CPU_DATA_SIZE aligned on cache line size.

Introduce assembly macro 'mov_imm' for AArch32 to simplify implementation
of function '_cpu_data_by_index'.

Change-Id: Ic2d49ffe0c3e51649425fd9c8c99559c582ac5a1
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2u/aarch32/bl2u_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl32/sp_min/aarch32/entrypoint.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.mk
/rk3399_ARM-atf/bl32/sp_min/sp_min_main.c
/rk3399_ARM-atf/bl32/sp_min/sp_min_private.h
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_exceptions.S
/rk3399_ARM-atf/common/aarch32/debug.S
/rk3399_ARM-atf/common/aarch64/debug.S
/rk3399_ARM-atf/docs/diagrams/generate_xlat_images.sh
/rk3399_ARM-atf/docs/diagrams/xlat_align.dia
/rk3399_ARM-atf/docs/diagrams/xlat_align.png
/rk3399_ARM-atf/docs/firmware-design.rst
/rk3399_ARM-atf/docs/user-guide.rst
/rk3399_ARM-atf/docs/xlat-tables-lib-v2-design.rst
/rk3399_ARM-atf/drivers/arm/cci/cci.c
/rk3399_ARM-atf/drivers/arm/smmu/smmu_v3.c
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dtb
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci.dts
/rk3399_ARM-atf/include/bl32/sp_min/platform_sp_min.h
/rk3399_ARM-atf/include/common/aarch32/asm_macros.S
/rk3399_ARM-atf/include/common/asm_macros_common.S
/rk3399_ARM-atf/include/drivers/arm/cci.h
/rk3399_ARM-atf/include/drivers/arm/smmu_v3.h
/rk3399_ARM-atf/include/lib/el3_runtime/cpu_data.h
/rk3399_ARM-atf/include/plat/arm/common/arm_config.h
el3_runtime/aarch32/cpu_data.S
el3_runtime/aarch64/cpu_data.S
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/fvp/aarch32/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/aarch64/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_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/fvp_topology.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_gicv3.c
/rk3399_ARM-atf/plat/common/aarch32/platform_mp_stack.S
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_pwrc_sram.S
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_trampoline.S
/rk3399_ARM-atf/plat/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_bl1_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl31_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_common.c
/rk3399_ARM-atf/plat/qemu/qemu_image_load.c
/rk3399_ARM-atf/plat/rockchip/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/services/spd/opteed/opteed_common.c
/rk3399_ARM-atf/services/spd/opteed/opteed_main.c
/rk3399_ARM-atf/services/spd/opteed/opteed_pm.c
/rk3399_ARM-atf/services/spd/opteed/opteed_private.h
b15bab6b30-Aug-2017 danh-arm <dan.handley@arm.com>

Merge pull request #1066 from islmit01/im/enable_cnp_bit

Enable CnP bit for ARMv8.2 CPUs


/rk3399_ARM-atf/docs/diagrams/Makefile
/rk3399_ARM-atf/docs/diagrams/int_handling.dia
/rk3399_ARM-atf/docs/diagrams/non-sec-int-handling.png
/rk3399_ARM-atf/docs/diagrams/sec-int-handling.png
/rk3399_ARM-atf/docs/firmware-design.rst
/rk3399_ARM-atf/include/lib/aarch32/arch.h
/rk3399_ARM-atf/include/lib/aarch64/arch.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_def.h
/rk3399_ARM-atf/include/plat/arm/common/plat_arm.h
locks/exclusive/aarch64/spinlock.S
xlat_tables_v2/aarch32/xlat_tables_arch.c
xlat_tables_v2/aarch64/xlat_tables_arch.c
/rk3399_ARM-atf/plat/arm/board/fvp/drivers/pwrc/fvp_pwrc.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_common.c
/rk3399_ARM-atf/plat/arm/css/drivers/scp/css_pm_scmi.c
/rk3399_ARM-atf/plat/arm/css/drivers/scpi/css_mhu.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_pwrc_sram.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/rockchip/common/include/plat_private.h
/rk3399_ARM-atf/plat/rockchip/common/pmusram/pmu_sram_cpus_on.S
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/suspend.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/suspend.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/gpio/rk3399_gpio.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/secure/secure.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/secure/secure.h
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/soc/soc.h
/rk3399_ARM-atf/plat/rockchip/rk3399/include/shared/addressmap_shared.h
80bcf98109-Aug-2017 Eleanor Bonnici <Eleanor.bonnici@arm.com>

CPU: Correct names of implementation-defined aux regs

At present, various CPU register macros that refer to CPUACTLR are named
ACTLR. This patch fixes that.

The previous register names are retained

CPU: Correct names of implementation-defined aux regs

At present, various CPU register macros that refer to CPUACTLR are named
ACTLR. This patch fixes that.

The previous register names are retained, but guarded by the
ERROR_DEPRECATED macro, so as not to break platforms that continue using
the old names.

Change-Id: Ia872196d81803f8f390b887d149e0fd054df519b
Signed-off-by: Eleanor Bonnici <Eleanor.bonnici@arm.com>

show more ...

01ebe3d225-Aug-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1059 from kenkuang/intergration

fix a typo abort sctlr_el2

9fce272507-Aug-2017 Isla Mitchell <isla.mitchell@arm.com>

Enable CnP bit for ARMv8.2 CPUs

This patch enables the CnP (Common not Private) bit for secure page
tables so that multiple PEs in the same Inner Shareable domain can use
the same translation table

Enable CnP bit for ARMv8.2 CPUs

This patch enables the CnP (Common not Private) bit for secure page
tables so that multiple PEs in the same Inner Shareable domain can use
the same translation table entries for a given stage of translation in
a particular translation regime. This only takes effect when ARM
Trusted Firmware is built with ARM_ARCH_MINOR >= 2.

ARM Trusted Firmware Design has been updated to include a description
of this feature usage.

Change-Id: I698305f047400119aa1900d34c65368022e410b8
Signed-off-by: Isla Mitchell <isla.mitchell@arm.com>

show more ...

f45e232a16-Aug-2017 Jeenu Viswambharan <jeenu.viswambharan@arm.com>

Add macro to test for minimum architecture version

The macro concisely expresses and requires architecture version to be at
least as required by its arguments. This would be useful when extending
Tr

Add macro to test for minimum architecture version

The macro concisely expresses and requires architecture version to be at
least as required by its arguments. This would be useful when extending
Trusted Firmware functionality for future architecture revisions.

Replace similar usage in the current code base with the new macro.

Change-Id: I9dcd0aa71a663eabd02ed9632b8ce87611fa5a57
Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2u/aarch32/bl2u_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl32/sp_min/aarch32/entrypoint.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.mk
/rk3399_ARM-atf/bl32/sp_min/sp_min_main.c
/rk3399_ARM-atf/bl32/sp_min/sp_min_private.h
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_exceptions.S
/rk3399_ARM-atf/common/aarch32/debug.S
/rk3399_ARM-atf/common/aarch64/debug.S
/rk3399_ARM-atf/docs/diagrams/generate_xlat_images.sh
/rk3399_ARM-atf/docs/diagrams/xlat_align.dia
/rk3399_ARM-atf/docs/diagrams/xlat_align.png
/rk3399_ARM-atf/docs/firmware-design.rst
/rk3399_ARM-atf/docs/user-guide.rst
/rk3399_ARM-atf/docs/xlat-tables-lib-v2-design.rst
/rk3399_ARM-atf/drivers/arm/cci/cci.c
/rk3399_ARM-atf/drivers/arm/smmu/smmu_v3.c
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dtb
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci.dts
/rk3399_ARM-atf/include/bl32/sp_min/platform_sp_min.h
/rk3399_ARM-atf/include/common/asm_macros_common.S
/rk3399_ARM-atf/include/drivers/arm/cci.h
/rk3399_ARM-atf/include/drivers/arm/smmu_v3.h
/rk3399_ARM-atf/include/lib/utils_def.h
/rk3399_ARM-atf/include/plat/arm/common/arm_config.h
locks/exclusive/aarch64/spinlock.S
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/fvp/aarch32/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/aarch64/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_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/fvp_topology.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_gicv3.c
/rk3399_ARM-atf/plat/common/aarch32/platform_mp_stack.S
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_pwrc_sram.S
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_trampoline.S
/rk3399_ARM-atf/plat/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_bl1_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl31_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_common.c
/rk3399_ARM-atf/plat/qemu/qemu_image_load.c
/rk3399_ARM-atf/plat/rockchip/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/services/spd/opteed/opteed_common.c
/rk3399_ARM-atf/services/spd/opteed/opteed_main.c
/rk3399_ARM-atf/services/spd/opteed/opteed_pm.c
/rk3399_ARM-atf/services/spd/opteed/opteed_private.h
5722b78c23-Aug-2017 Alistair Francis <alistair.francis@xilinx.com>

psci_common: Resolve GCC static analysis false positive

Previously commit 555ebb34db8f3424c1b394df2f10ecf9c1f70901 attmpted to fix this
GCC issue:

services/std_svc/psci/psci_common.c: In function '

psci_common: Resolve GCC static analysis false positive

Previously commit 555ebb34db8f3424c1b394df2f10ecf9c1f70901 attmpted to fix this
GCC issue:

services/std_svc/psci/psci_common.c: In function 'psci_do_state_coordination':
services/std_svc/psci/psci_common.c:220:27: error: array subscript is above
array bounds [-Werror=array-bounds]
psci_req_local_pwr_states[pwrlvl - 1][cpu_idx] = req_pwr_state;

This fix doesn't work as asserts aren't built in non-debug build flows.

Let's use GCCs #pragma option (documented here:
https://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html) to avoid
this false positive instead.

Signed-off-by: Alistair Francis <alistair.francis@xilinx.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2u/aarch32/bl2u_entrypoint.S
/rk3399_ARM-atf/bl32/sp_min/aarch32/entrypoint.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.mk
/rk3399_ARM-atf/bl32/sp_min/sp_min_main.c
/rk3399_ARM-atf/bl32/sp_min/sp_min_private.h
/rk3399_ARM-atf/docs/diagrams/generate_xlat_images.sh
/rk3399_ARM-atf/docs/diagrams/xlat_align.dia
/rk3399_ARM-atf/docs/diagrams/xlat_align.png
/rk3399_ARM-atf/docs/firmware-design.rst
/rk3399_ARM-atf/docs/user-guide.rst
/rk3399_ARM-atf/docs/xlat-tables-lib-v2-design.rst
/rk3399_ARM-atf/drivers/arm/cci/cci.c
/rk3399_ARM-atf/drivers/arm/smmu/smmu_v3.c
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dtb
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci.dts
/rk3399_ARM-atf/include/bl32/sp_min/platform_sp_min.h
/rk3399_ARM-atf/include/drivers/arm/cci.h
/rk3399_ARM-atf/include/drivers/arm/smmu_v3.h
/rk3399_ARM-atf/include/plat/arm/common/arm_config.h
psci/psci_common.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/fvp/aarch32/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/aarch64/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_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/fvp_topology.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_gicv3.c
/rk3399_ARM-atf/plat/common/aarch32/platform_mp_stack.S
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_pm.c
/rk3399_ARM-atf/plat/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_bl1_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl31_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_common.c
/rk3399_ARM-atf/plat/qemu/qemu_image_load.c
/rk3399_ARM-atf/services/spd/opteed/opteed_common.c
/rk3399_ARM-atf/services/spd/opteed/opteed_main.c
/rk3399_ARM-atf/services/spd/opteed/opteed_pm.c
/rk3399_ARM-atf/services/spd/opteed/opteed_private.h
2e09d4f823-Aug-2017 Ken Kuang <ken.kuang@spreadtrum.com>

fix a typo about sctlr_el2
which will cause write_sctlr_el2 use all sctlr_el1 value except the EE bit

The code doesn't "Use SCTLR_EL1.EE value to initialise sctlr_el2"
but, read out SCTLR_EL1 and cl

fix a typo about sctlr_el2
which will cause write_sctlr_el2 use all sctlr_el1 value except the EE bit

The code doesn't "Use SCTLR_EL1.EE value to initialise sctlr_el2"
but, read out SCTLR_EL1 and clear EE bit, then set to sctlr_el2

Signed-off-by: Ken Kuang <ken.kuang@spreadtrum.com>

show more ...


/rk3399_ARM-atf/Makefile
/rk3399_ARM-atf/bl2u/aarch32/bl2u_entrypoint.S
/rk3399_ARM-atf/bl31/aarch64/runtime_exceptions.S
/rk3399_ARM-atf/bl32/sp_min/aarch32/entrypoint.S
/rk3399_ARM-atf/bl32/sp_min/sp_min.mk
/rk3399_ARM-atf/bl32/sp_min/sp_min_main.c
/rk3399_ARM-atf/bl32/sp_min/sp_min_private.h
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_entrypoint.S
/rk3399_ARM-atf/bl32/tsp/aarch64/tsp_exceptions.S
/rk3399_ARM-atf/common/aarch32/debug.S
/rk3399_ARM-atf/common/aarch64/debug.S
/rk3399_ARM-atf/docs/diagrams/generate_xlat_images.sh
/rk3399_ARM-atf/docs/diagrams/xlat_align.dia
/rk3399_ARM-atf/docs/diagrams/xlat_align.png
/rk3399_ARM-atf/docs/firmware-design.rst
/rk3399_ARM-atf/docs/user-guide.rst
/rk3399_ARM-atf/docs/xlat-tables-lib-v2-design.rst
/rk3399_ARM-atf/drivers/arm/cci/cci.c
/rk3399_ARM-atf/drivers/arm/smmu/smmu_v3.c
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dtb
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-1t.dts
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci-common.dtsi
/rk3399_ARM-atf/fdts/fvp-base-gicv3-psci.dts
/rk3399_ARM-atf/include/bl32/sp_min/platform_sp_min.h
/rk3399_ARM-atf/include/common/asm_macros_common.S
/rk3399_ARM-atf/include/drivers/arm/cci.h
/rk3399_ARM-atf/include/drivers/arm/smmu_v3.h
/rk3399_ARM-atf/include/plat/arm/common/arm_config.h
el3_runtime/aarch64/context_mgmt.c
/rk3399_ARM-atf/make_helpers/defaults.mk
/rk3399_ARM-atf/plat/arm/board/fvp/aarch32/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/aarch64/fvp_helpers.S
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_bl31_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/fvp_topology.c
/rk3399_ARM-atf/plat/arm/board/fvp/include/plat_macros.S
/rk3399_ARM-atf/plat/arm/board/fvp/include/platform_def.h
/rk3399_ARM-atf/plat/arm/board/fvp/platform.mk
/rk3399_ARM-atf/plat/arm/common/arm_gicv3.c
/rk3399_ARM-atf/plat/common/aarch32/platform_mp_stack.S
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_pwrc_sram.S
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_pm.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/plat_trampoline.S
/rk3399_ARM-atf/plat/qemu/platform.mk
/rk3399_ARM-atf/plat/qemu/qemu_bl1_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_mem_params_desc.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_bl31_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_common.c
/rk3399_ARM-atf/plat/qemu/qemu_image_load.c
/rk3399_ARM-atf/plat/rockchip/common/aarch64/plat_helpers.S
/rk3399_ARM-atf/services/spd/opteed/opteed_common.c
/rk3399_ARM-atf/services/spd/opteed/opteed_main.c
/rk3399_ARM-atf/services/spd/opteed/opteed_pm.c
/rk3399_ARM-atf/services/spd/opteed/opteed_private.h
54661cd224-Apr-2017 Summer Qin <summer.qin@arm.com>

Add Trusted OS extra image parsing support for ARM standard platforms

Trusted OS may have extra images to be loaded. Load them one by one
and do the parsing. In this patch, ARM TF need to load up to

Add Trusted OS extra image parsing support for ARM standard platforms

Trusted OS may have extra images to be loaded. Load them one by one
and do the parsing. In this patch, ARM TF need to load up to 3 images
for optee os: header, pager and paged images. Header image is the info
about optee os and images. Pager image include pager code and data.
Paged image include the paging parts using virtual memory.

Change-Id: Ia3bcfa6d8a3ed7850deb5729654daca7b00be394
Signed-off-by: Summer Qin <summer.qin@arm.com>

show more ...

3e0cba5201-Aug-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1021 from vwadekar/psci-early-suspend-handler

lib: psci: early suspend handler for platforms

235581cf01-Aug-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1045 from sandrine-bailleux-arm/sb/xlat-lib-ctx

Fix sign of variable in xlat_tables_print()

664e693101-Aug-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

xlat lib v2: Fix sign of debug loop variable

This patch changes the sign of the loop variable used in
xlat_tables_print(). It needs to be unsigned because it is compared
against another unsigned int

xlat lib v2: Fix sign of debug loop variable

This patch changes the sign of the loop variable used in
xlat_tables_print(). It needs to be unsigned because it is compared
against another unsigned int.

Change-Id: I2b3cee7990dd75e8ebd2701de3860ead7cad8dc8
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>

show more ...

1862d62010-Jul-2017 Varun Wadekar <vwadekar@nvidia.com>

lib: psci: early suspend handler for platforms

This patch adds an early suspend handler, that executes with
SMP and data cache enabled. This handler allows platforms to
perform any early actions dur

lib: psci: early suspend handler for platforms

This patch adds an early suspend handler, that executes with
SMP and data cache enabled. This handler allows platforms to
perform any early actions during the CPU suspend entry sequence.

This handler is optional and platforms can choose to implement it
depending on their needs. The `pwr_domain_suspend` handler still
exists and platforms can keep on using it without any side effects.

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

show more ...

ddc5bfdb31-Jul-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1035 from sandrine-bailleux-arm/sb/xlat-lib-ctx

Translation table library v2 improvements

d9f1815531-Jul-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1033 from davidcunado-arm/dc/psci_flush

Address edge case for stale PSCI CPU data in cache

881cf37426-Jul-2017 davidcunado-arm <david.cunado@arm.com>

Merge pull request #1031 from robertovargas-arm/assert_format

Use standard UNIX file:line format in assert


/rk3399_ARM-atf/docs/plat/hikey.rst
/rk3399_ARM-atf/docs/plat/hikey960.rst
/rk3399_ARM-atf/docs/plat/poplar.rst
stdlib/assert.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_io_storage.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl1_setup.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_bl2u_setup.c
/rk3399_ARM-atf/plat/arm/common/tsp/arm_tsp_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/aarch64/hikey_common.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_io_storage.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_pwrc.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_sip_svc.c
/rk3399_ARM-atf/plat/hisilicon/hikey/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey/platform.mk
/rk3399_ARM-atf/plat/hisilicon/hikey960/aarch64/hikey960_common.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/drivers/ipc/hisi_ipc.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/drivers/pwrc/hisi_pwrc.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_io_storage.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/include/plat_macros.S
/rk3399_ARM-atf/plat/hisilicon/hikey960/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey960/platform.mk
/rk3399_ARM-atf/plat/hisilicon/poplar/aarch64/platform_common.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl1_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl31_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/include/hi3798cv200.h
/rk3399_ARM-atf/plat/hisilicon/poplar/include/plat_macros.S
/rk3399_ARM-atf/plat/hisilicon/poplar/include/plat_private.h
/rk3399_ARM-atf/plat/hisilicon/poplar/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/poplar/include/poplar_layout.h
/rk3399_ARM-atf/plat/hisilicon/poplar/plat_pm.c
/rk3399_ARM-atf/plat/hisilicon/poplar/plat_storage.c
/rk3399_ARM-atf/plat/hisilicon/poplar/plat_topology.c
/rk3399_ARM-atf/plat/hisilicon/poplar/platform.mk
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.c
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt6795/drivers/timer/mt_cpuxgpt.c
/rk3399_ARM-atf/plat/mediatek/mt6795/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/mtcmos/mtcmos.c
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/flowctrl/flowctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_gic.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/soc/t132/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/ari.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/qemu/dt.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_common.c
/rk3399_ARM-atf/plat/qemu/qemu_pm.c
/rk3399_ARM-atf/plat/qemu/topology.c
/rk3399_ARM-atf/plat/rockchip/common/aarch64/platform_common.c
/rk3399_ARM-atf/plat/rockchip/common/bl31_plat_setup.c
/rk3399_ARM-atf/plat/rockchip/common/drivers/parameter/ddr_parameter.c
/rk3399_ARM-atf/plat/rockchip/common/drivers/parameter/ddr_parameter.h
/rk3399_ARM-atf/plat/rockchip/common/include/plat_private.h
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/plat/rockchip/common/plat_pm.c
/rk3399_ARM-atf/plat/rockchip/common/plat_topology.c
/rk3399_ARM-atf/plat/rockchip/rk3328/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3328/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/ddr/ddr_rk3368.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dfs.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram_spec_timing.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/suspend.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/gpio/rk3399_gpio.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/m0_ctl.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3399/plat_sip_calls.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_psci.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_client.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_client.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_ipi.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
/rk3399_ARM-atf/readme.rst
71341d2319-Jul-2017 David Cunado <david.cunado@arm.com>

Address edge case for stale PSCI CPU data in cache

There is a theoretical edge case during CPU_ON where the cache
may contain stale data for the target CPU data - this can occur
under the following

Address edge case for stale PSCI CPU data in cache

There is a theoretical edge case during CPU_ON where the cache
may contain stale data for the target CPU data - this can occur
under the following conditions:

- the target CPU is in another cluster from the current
- the target CPU was the last CPU to shutdown on its cluster
- the cluster was removed from coherency as part of the CPU shutdown

In this case the cache maintenace that was performed as part of the
target CPUs shutdown was not seen by the current CPU's cluster. And
so the cache may contain stale data for the target CPU.

This patch adds a cache maintenance operation (flush) for the
cache-line containing the target CPU data - this ensures that the
target CPU data is read from main memory.

Change-Id: If8cfd42639b03174f60669429b7f7a757027d0fb
Signed-off-by: David Cunado <david.cunado@arm.com>

show more ...


/rk3399_ARM-atf/docs/plat/hikey.rst
/rk3399_ARM-atf/docs/plat/hikey960.rst
/rk3399_ARM-atf/docs/plat/poplar.rst
psci/psci_on.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_io_storage.c
/rk3399_ARM-atf/plat/arm/board/fvp/fvp_pm.c
/rk3399_ARM-atf/plat/arm/board/juno/juno_bl1_setup.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_bl2u_setup.c
/rk3399_ARM-atf/plat/arm/common/tsp/arm_tsp_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/aarch64/hikey_common.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey/hikey_io_storage.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_pwrc.c
/rk3399_ARM-atf/plat/hisilicon/hikey/hisi_sip_svc.c
/rk3399_ARM-atf/plat/hisilicon/hikey/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey/platform.mk
/rk3399_ARM-atf/plat/hisilicon/hikey960/aarch64/hikey960_common.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/drivers/ipc/hisi_ipc.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/drivers/pwrc/hisi_pwrc.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl1_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_bl2_setup.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey960/hikey960_io_storage.c
/rk3399_ARM-atf/plat/hisilicon/hikey960/include/plat_macros.S
/rk3399_ARM-atf/plat/hisilicon/hikey960/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/hikey960/platform.mk
/rk3399_ARM-atf/plat/hisilicon/poplar/aarch64/platform_common.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl1_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl2_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/bl31_plat_setup.c
/rk3399_ARM-atf/plat/hisilicon/poplar/include/hi3798cv200.h
/rk3399_ARM-atf/plat/hisilicon/poplar/include/plat_macros.S
/rk3399_ARM-atf/plat/hisilicon/poplar/include/plat_private.h
/rk3399_ARM-atf/plat/hisilicon/poplar/include/platform_def.h
/rk3399_ARM-atf/plat/hisilicon/poplar/include/poplar_layout.h
/rk3399_ARM-atf/plat/hisilicon/poplar/plat_pm.c
/rk3399_ARM-atf/plat/hisilicon/poplar/plat_storage.c
/rk3399_ARM-atf/plat/hisilicon/poplar/plat_topology.c
/rk3399_ARM-atf/plat/hisilicon/poplar/platform.mk
/rk3399_ARM-atf/plat/mediatek/common/mtk_plat_common.c
/rk3399_ARM-atf/plat/mediatek/mt6795/bl31_plat_setup.c
/rk3399_ARM-atf/plat/mediatek/mt6795/drivers/timer/mt_cpuxgpt.c
/rk3399_ARM-atf/plat/mediatek/mt6795/plat_pm.c
/rk3399_ARM-atf/plat/mediatek/mt8173/drivers/mtcmos/mtcmos.c
/rk3399_ARM-atf/plat/mediatek/mt8173/plat_sip_calls.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/aarch64/tegra_helpers.S
/rk3399_ARM-atf/plat/nvidia/tegra/common/drivers/flowctrl/flowctrl.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_bl31_setup.c
/rk3399_ARM-atf/plat/nvidia/tegra/common/tegra_gic.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/soc/t132/plat_psci_handlers.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t132/plat_secondary.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/ari.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t186/drivers/mce/nvg.c
/rk3399_ARM-atf/plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
/rk3399_ARM-atf/plat/qemu/dt.c
/rk3399_ARM-atf/plat/qemu/qemu_bl2_setup.c
/rk3399_ARM-atf/plat/qemu/qemu_common.c
/rk3399_ARM-atf/plat/qemu/qemu_pm.c
/rk3399_ARM-atf/plat/qemu/topology.c
/rk3399_ARM-atf/plat/rockchip/common/aarch64/platform_common.c
/rk3399_ARM-atf/plat/rockchip/common/bl31_plat_setup.c
/rk3399_ARM-atf/plat/rockchip/common/drivers/parameter/ddr_parameter.c
/rk3399_ARM-atf/plat/rockchip/common/drivers/parameter/ddr_parameter.h
/rk3399_ARM-atf/plat/rockchip/common/include/plat_private.h
/rk3399_ARM-atf/plat/rockchip/common/params_setup.c
/rk3399_ARM-atf/plat/rockchip/common/plat_pm.c
/rk3399_ARM-atf/plat/rockchip/common/plat_topology.c
/rk3399_ARM-atf/plat/rockchip/rk3328/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3328/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/ddr/ddr_rk3368.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3368/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dfs.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/dram_spec_timing.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/dram/suspend.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/gpio/rk3399_gpio.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/m0_ctl.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/pmu/pmu.c
/rk3399_ARM-atf/plat/rockchip/rk3399/drivers/soc/soc.c
/rk3399_ARM-atf/plat/rockchip/rk3399/plat_sip_calls.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/bl31_zynqmp_setup.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/plat_psci.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_api_sys.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_client.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_client.h
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_ipi.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/pm_service/pm_svc_main.c
/rk3399_ARM-atf/plat/xilinx/zynqmp/tsp/tsp_plat_setup.c
0044231d19-Jul-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

xlat lib: Fix some types

Fix the type length and signedness of some of the constants and
variables used in the translation table library.

This patch supersedes Pull Request #1018:
https://github.co

xlat lib: Fix some types

Fix the type length and signedness of some of the constants and
variables used in the translation table library.

This patch supersedes Pull Request #1018:
https://github.com/ARM-software/arm-trusted-firmware/pull/1018

Change-Id: Ibd45faf7a4fb428a0bf71c752551d35800212fb2
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>

show more ...

7bba688419-Jul-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

Import ctzdi2.c from LLVM compiler-rt

When using __builtin_ctzll() in AArch32 code, the compiler may translate
that into a call to the __ctzdi2() function. In this case, the linking
phase fails beca

Import ctzdi2.c from LLVM compiler-rt

When using __builtin_ctzll() in AArch32 code, the compiler may translate
that into a call to the __ctzdi2() function. In this case, the linking
phase fails because TF doesn't provide an implementation for it.

This patch imports the implementation of the __ctzdi2() function from
LLVM's compiler-rt project and hooks it into TF's build system. The
ctzdi2.c file is an unmodified copy from the master branch as of
July 19 2017 (SVN revision: 308480).

Change-Id: I96766a025ba28e1afc6ef6a5c4ef91d85fc8f32b
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>

show more ...

347621bb11-Jul-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

xlat lib v2: Remove hard-coded virtual address space size

Previous patches have made it possible to specify the physical and
virtual address spaces sizes for each translation context. However,
there

xlat lib v2: Remove hard-coded virtual address space size

Previous patches have made it possible to specify the physical and
virtual address spaces sizes for each translation context. However,
there are still some places in the code where the physical (resp.
virtual) address space size is assumed to be PLAT_PHY_ADDR_SPACE_SIZE
(resp. PLAT_VIRT_ADDR_SPACE_SIZE).

This patch removes them and reads the relevant address space size
from the translation context itself instead. This information is now
passed in argument to the enable_mmu_arch() function, which needs it
to configure the TCR_ELx.T0SZ field (in AArch64) or the TTBCR.T0SZ
field (in AArch32) appropriately.

Change-Id: I20b0e68b03a143e998695d42911d9954328a06aa
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>

show more ...

d83f357931-May-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

xlat lib v2: Refactor the functions enabling the MMU

This patch refactors both the AArch32 and AArch64 versions of the
function enable_mmu_arch().

In both versions, the code now computes the VMSA-r

xlat lib v2: Refactor the functions enabling the MMU

This patch refactors both the AArch32 and AArch64 versions of the
function enable_mmu_arch().

In both versions, the code now computes the VMSA-related system
registers upfront then program them in one go (rather than interleaving
the 2).

In the AArch64 version, this allows to reduce the amount of code
generated by the C preprocessor and limits it to the actual differences
between EL1 and EL3.

In the AArch32 version, this patch also removes the function
enable_mmu_internal_secure() and moves its code directly inside
enable_mmu_arch(), as it was its only caller.

Change-Id: I35c09b6db4404916cbb2e2fd3fda2ad59f935954
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>

show more ...

99f6079831-May-2017 Sandrine Bailleux <sandrine.bailleux@arm.com>

xlat lib v2: Remove init_xlat_tables_arch() function

In both the AArch32 and AArch64 versions, this function used to check
the sanity of the PLAT_PHY_ADDR_SPACE_SIZE in regard to the
architectural m

xlat lib v2: Remove init_xlat_tables_arch() function

In both the AArch32 and AArch64 versions, this function used to check
the sanity of the PLAT_PHY_ADDR_SPACE_SIZE in regard to the
architectural maximum value. Instead, export the
xlat_arch_get_max_supported_pa() function and move the debug
assertion in AArch-agnostic code.

The AArch64 used to also precalculate the TCR.PS field value, based
on the size of the physical address space. This is now done directly
by enable_mmu_arch(), which now receives the physical address space size
in argument.

Change-Id: Ie77ea92eb06db586f28784fdb479c6e27dd1acc1
Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>

show more ...

1...<<81828384858687888990>>...93