u-boot/arch/arm/mach-tegra
Stephen Warren 2a5f7f2074 ARM: tegra: pick up actual memory size
On Tegra186, U-Boot is booted by the binary firmware as if it were a
Linux kernel. Consequently, a DTB is passed to U-Boot. Cache the address
of that DTB, and parse the /memory/reg property to determine the actual
RAM regions that U-Boot and subsequent EL2/EL1 SW may actually use.

Given the binary FW passes a DTB to U-Boot, I anticipate the suggestion
that U-Boot use that DTB as its control DTB. I don't believe that would
work well, so I do not plan to put any effort into this. By default the
FW-supplied DTB is the L4T kernel's DTB, which uses non-upstreamed DT
bindings. U-Boot aims to use only upstreamed DT bindings, or as close as
it can get. Replacing this DTB with a DTB using upstream bindings is
physically quite easy; simply replace the content of one of the GPT
partitions on the eMMC. However, the binary FW at least partially relies
on the existence/content of some nodes in the DTB, and that requires the
DTB to be written according to downstream bindings. Equally, if U-Boot
continues to use appended DTBs built from its own source tree, as it does
for all other Tegra platforms, development and deployment is much easier.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
2016-07-21 09:31:30 -07:00
..
tegra20 tegra: video: Merge the display driver into one file 2016-02-16 09:17:52 -07:00
tegra30 Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
tegra114 Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
tegra124 ARM: tegra: parameterize common XUSB code 2015-11-12 09:21:06 -07:00
tegra186 ARM: tegra: pick up actual memory size 2016-07-21 09:31:30 -07:00
tegra210 ARM: tegra210: set PLLE_PTS bit when enabling PLLE 2016-03-29 09:57:57 -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 armv8: mmu: Add support of non-identical mapping 2016-07-15 09:01:43 -07:00
board.c dm: tegra: Provide serial platform data for SPL 2015-12-05 18:22:38 -05:00
board2.c ARM: tegra: enable GPU node by compatible value 2016-05-04 13:31:03 -07:00
board186.c ARM: tegra: pick up actual memory size 2016-07-21 09:31:30 -07:00
cache.c Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
clock.c Various, unrelated tree-wide typo fixes. 2016-07-16 09:43:12 -04: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: Tegra210: Add support to common Tegra source/config files 2015-07-28 10:30:20 -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: add IVC protocol implementation 2016-07-21 09:31:30 -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: add IVC protocol implementation 2016-07-21 09:31:30 -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