Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6d5dd8525b | ||
|
|
9e4dd3b992 | ||
|
|
d7f05ac5b6 | ||
|
|
3a5e3ed6eb | ||
|
|
c8cbb34758 |
@@ -210,6 +210,7 @@ N: aspeed
|
||||
ARM BROADCOM BCM283X / BCM27XX
|
||||
M: Matthias Brugger <mbrugger@suse.com>
|
||||
M: Peter Robinson <pbrobinson@gmail.com>
|
||||
M: Simon Glass <sjg@chromium.org>
|
||||
S: Maintained
|
||||
F: arch/arm/dts/bcm283*
|
||||
F: arch/arm/mach-bcm283x/
|
||||
|
||||
@@ -48,29 +48,30 @@ dfu_alt_info+=zImage fat 0 1
|
||||
*
|
||||
* scriptaddr and pxefile_addr_r can be pretty much anywhere that doesn't
|
||||
* conflict with something else. Reserving 1M for each of them at
|
||||
* 0x02400000-0x02500000 and 0x02500000-0x02600000 should be plenty.
|
||||
* 0x05400000-0x05500000 and 0x05500000-0x05600000 should be plenty.
|
||||
*
|
||||
* On ARM, both the DTB and any possible initrd must be loaded such that they
|
||||
* fit inside the lowmem mapping in Linux. In practice, this usually means not
|
||||
* more than ~700M away from the start of the kernel image but this number can
|
||||
* be larger OR smaller depending on e.g. the 'vmalloc=xxxM' command line
|
||||
* parameter given to the kernel. So reserving memory from low to high
|
||||
* satisfies this constraint again. Reserving 1M at 0x02600000-0x02700000 for
|
||||
* the DTB leaves rest of the free RAM to the initrd starting at 0x02700000.
|
||||
* Even with the smallest possible CPU-GPU memory split of the CPU getting
|
||||
* only 64M, the remaining 25M starting at 0x02700000 should allow quite
|
||||
* large initrds before they start colliding with U-Boot.
|
||||
* satisfies this constraint again. Reserving 1M at 0x05600000-0x05700000 for
|
||||
* the DTB leaves rest of the free RAM to the initrd starting at 0x05700000.
|
||||
* This means that the board must have at least 128MB of RAM available to
|
||||
* U-Boot, more if the initrd is large.
|
||||
*
|
||||
* For compressed kernels, the maximum size is just under 32MB, with an area for
|
||||
* decompression at 0x02000000 with space for 52MB, which is plenty for current
|
||||
* kernels.
|
||||
*
|
||||
* limit bootm_size to 512MB so that all boot images stay within the bottom
|
||||
* 512MB of memory
|
||||
*/
|
||||
#ifdef CONFIG_ARM64
|
||||
fdt_high=ffffffffffffffff
|
||||
initrd_high=ffffffffffffffff
|
||||
#else
|
||||
fdt_high=ffffffff
|
||||
initrd_high=ffffffff
|
||||
#endif
|
||||
bootm_size=0x20000000
|
||||
|
||||
kernel_addr_r=0x00080000
|
||||
kernel_comp_addr_r=0x02000000
|
||||
kernel_comp_size=0x02000000
|
||||
kernel_comp_size=0x03400000
|
||||
scriptaddr=0x05400000
|
||||
pxefile_addr_r=0x05500000
|
||||
fdt_addr_r=0x05600000
|
||||
|
||||
@@ -553,10 +553,8 @@ static int reserve_fdt(void)
|
||||
* section, then it will be relocated with other data.
|
||||
*/
|
||||
if (gd->fdt_blob) {
|
||||
int size = fdt_totalsize(gd->fdt_blob);
|
||||
|
||||
gd->boardf->fdt_size = ALIGN(size + CONFIG_OF_EXPAND,
|
||||
32);
|
||||
gd->boardf->fdt_size =
|
||||
ALIGN(fdt_totalsize(gd->fdt_blob), 32);
|
||||
|
||||
gd->start_addr_sp = reserve_stack_aligned(
|
||||
gd->boardf->fdt_size);
|
||||
|
||||
11
dts/Kconfig
11
dts/Kconfig
@@ -219,17 +219,6 @@ config OF_OMIT_DTB
|
||||
This is used for boards which normally provide a devicetree via a
|
||||
runtime mechanism (such as OF_BOARD), to avoid confusion.
|
||||
|
||||
config OF_EXPAND
|
||||
hex # "Amount to allow the control FDT to expand"
|
||||
default SYS_FDT_PAD if OF_LIBFDT
|
||||
default 0
|
||||
help
|
||||
Some boards make use of the control FDT to boot an OS, thus when
|
||||
image_setup_libfdt() adds extra things to the end of the FDT, there
|
||||
needs to be enough space.
|
||||
|
||||
Set this to the number of bytes of extra space required for the FDT.
|
||||
|
||||
config DEFAULT_DEVICE_TREE
|
||||
string "Default Device Tree for DT control"
|
||||
depends on OF_CONTROL
|
||||
|
||||
Reference in New Issue
Block a user