u-boot-brain/arch/arm/mach-tegra
Stephen Warren d40d69ee35 ARM: tegra: reduce DRAM size mapped into MMU on ARM64
ARM CPUs can architecturally (speculatively) prefetch completely arbitrary
normal memory locations, as defined by the current translation tables. The
current MMU configuration for 64-bit Tegras maps an extremely large range
of addresses as DRAM, well beyond the actual physical maximum DRAM window,
even though U-Boot only needs access to the first 2GB of DRAM; the Tegra
port of U-Boot deliberately limits itself to 2GB of RAM since some HW
modules on at least some 64-bit Tegra SoCs can only access a 32-bit
physical address space. This change reduces the amount of RAM mapped via
the MMU to disallow the CPU from ever speculatively accessing RAM that
U-Boot will definitely not access. This avoids the possibility of the HW
raising SError due to accesses to always-invalid physical addresses.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
2016-10-10 11:00:03 -07:00
..
tegra20 ARM: tegra: add APIs the clock uclass driver will need 2016-09-27 09:11:02 -07:00
tegra30 ARM: tegra: add APIs the clock uclass driver will need 2016-09-27 09:11:02 -07:00
tegra114 ARM: tegra: add APIs the clock uclass driver will need 2016-09-27 09:11:02 -07:00
tegra124 ARM: tegra: add APIs the clock uclass driver will need 2016-09-27 09:11:02 -07:00
tegra186 ARM: tegra: flush caches via SMC call 2016-09-27 09:11:03 -07:00
tegra210 ARM: tegra: add APIs the clock uclass driver will need 2016-09-27 09:11:02 -07:00
ap.c bug.h: move BUILD_BUG_* defines to include/linux/bug.h 2016-01-25 10:39:59 -05:00
arm64-mmu.c ARM: tegra: reduce DRAM size mapped into MMU on ARM64 2016-10-10 11:00:03 -07:00
board.c dm: tegra: Provide serial platform data for SPL 2015-12-05 18:22:38 -05:00
board2.c mmc: tegra: Add DM_MMC support to Tegra MMC driver 2016-09-27 09:11:01 -07:00
board186.c mmc: tegra: Add DM_MMC support to Tegra MMC driver 2016-09-27 09:11:01 -07:00
cache.c Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
clock.c ARM: tegra: fix clock_get_periph_rate() for UART clocks 2016-09-27 09:11:02 -07:00
cmd_enterrcm.c ARM: tegra: collect SoC sources into mach-tegra 2015-02-21 08:23:51 -05:00
cpu.c Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
cpu.h ARM: tegra: reduce CSITE clock from 204M to 136M 2016-08-15 10:26:14 -07:00
dt-setup.c ARM: tegra: move ft_system_setup() 2016-08-15 10:26:13 -07:00
emc.c ARM: tegra: move NVIDIA common files to arch/arm/mach-tegra 2015-05-13 09:46:19 -07:00
emc.h ARM: tegra: move NVIDIA common files to arch/arm/mach-tegra 2015-05-13 09:46:19 -07:00
gpu.c ARM: tegra: enable GPU node by compatible value 2016-05-04 13:31:03 -07:00
ivc.c ARM: tegra: add IVC protocol implementation 2016-07-21 09:31:30 -07:00
Kconfig ARM: tegra: enable standard clock/reset APIs everywhere 2016-09-27 09:11:03 -07:00
lowlevel_init.S ARM: Tegra210: Add support to common Tegra source/config files 2015-07-28 10:30:20 -07:00
Makefile ARM: tegra: move ft_system_setup() 2016-08-15 10:26:13 -07:00
pinmux-common.c ARM: tegra: Build warning fixes for 64-bit 2015-07-27 15:54:18 -07:00
powergate.c tegra: Introduce SRAM repair on tegra124 2015-06-09 09:56:14 -07:00
psci.S ARM: PSCI: Switch to per-CPU target PC storage in secure data section 2016-07-15 15:54:58 +02:00
spl.c ARM: tegra: collect SoC sources into mach-tegra 2015-02-21 08:23:51 -05:00
sys_info.c ARM: tegra: collect SoC sources into mach-tegra 2015-02-21 08:23:51 -05:00
xusb-padctl-common.c ARM: tegra: create common XUSB padctl driver file 2015-11-12 09:21:06 -07:00
xusb-padctl-common.h ARM: tegra: add lane tables to Tegra210 XUSB padctl 2015-11-12 09:21:07 -07:00
xusb-padctl-dummy.c ARM: tegra: rename dummy XUSB padctl implementation 2015-11-12 09:21:06 -07:00