Permalink
Browse files

FogBugz #292094: Arria10: fdtimagesize too small for GHRD DTB

The A10 uboot variable, fdtimagesize, is used as the number of
bytes to copy out of qspiflash for the linux device tree.
The patch changes the value from 0x5000 to 0x7f00 which is
the maximum space between the load addresses from the
dtb and kernel, 0x100 and 0x8000, respectively.

Signed-off-by: Matthew Gerlach <mgerlach@opensource.altera.com>
  • Loading branch information...
1 parent bc36391 commit 6ea73c3e4b67f94809786b02d1f886469d678600 Matthew Gerlach committed Apr 12, 2015
Showing with 7 additions and 2 deletions.
  1. +7 −2 include/configs/socfpga_arria10.h
@@ -216,15 +216,20 @@
* Do note the value will overide also the chosen node in FDT blob.
*/
#define CONFIG_BOOTARGS "console=ttyS0," __stringify(CONFIG_BAUDRATE)
+#define CONFIG_SYS_DTB_ADDR 0x100
+#define MAX_DTB_SIZE_IN_RAM 0x7f00
+#if ((CONFIG_SYS_DTB_ADDR + MAX_DTB_SIZE_IN_RAM) > CONFIG_SYS_LOAD_ADDR)
+#error "MAX_DTB_SIZE_IN_RAM is too big. It will overwrite zImage in memory."
+#endif
#define CONFIG_EXTRA_ENV_SETTINGS \
"verify=y\0" \
"loadaddr=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
- "fdtaddr=0x00000100\0" \
+ "fdtaddr=" __stringify(CONFIG_SYS_DTB_ADDR) "\0" \
"bootimage=zImage\0" \
"bootimagesize=0x600000\0" \
"fdtimage=socfpga_arria10_socdk.dtb\0" \
- "fdtimagesize=0x5000\0" \
+ "fdtimagesize=" __stringify(MAX_DTB_SIZE_IN_RAM) "\0" \
"fdt_high=0x2000000\0" \
"mmcloadcmd=fatload\0" \
"mmcloadpart=1\0" \

0 comments on commit 6ea73c3

Please sign in to comment.