The devicetrees for various platforms already exceed 16k. Add a define
CONFIG_SYS_FDT_SIZE to specify the FDT size, and set to 16k for the
two boards that define this CONFIG_SYS_FDT_BASE parameter. This
allows platforms with larger devicetree blobs to boot from NOR.

Signed-off-by: Mike Looijmans <mike.looijm...@topic.nl>
---
v2: Instead of a default, just specify the value for the two boards that use it.
 common/spl/spl_nor.c                 | 4 ++--
 include/configs/a3m071.h             | 1 +
 include/configs/microblaze-generic.h | 1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/common/spl/spl_nor.c b/common/spl/spl_nor.c
index da2422f..8ea874c 100644
--- a/common/spl/spl_nor.c
+++ b/common/spl/spl_nor.c
@@ -40,11 +40,11 @@ int spl_nor_load_image(void)
 
                        /*
                         * Copy DT blob (fdt) to SDRAM. Passing pointer to
-                        * flash doesn't work (16 KiB should be enough for DT)
+                        * flash doesn't work
                         */
                        memcpy((void *)CONFIG_SYS_SPL_ARGS_ADDR,
                               (void *)(CONFIG_SYS_FDT_BASE),
-                              (16 << 10));
+                              CONFIG_SYS_FDT_SIZE);
 
                        return 0;
                } else {
diff --git a/include/configs/a3m071.h b/include/configs/a3m071.h
index 8f17dd1..ab2477c 100644
--- a/include/configs/a3m071.h
+++ b/include/configs/a3m071.h
@@ -334,6 +334,7 @@
 
 #define CONFIG_SYS_OS_BASE     0xfc200000
 #define CONFIG_SYS_FDT_BASE    0xfc1e0000
+#define CONFIG_SYS_FDT_SIZE    (16<<10)
 
 #define        CONFIG_EXTRA_ENV_SETTINGS                                       
\
        "netdev=eth0\0"                                                 \
diff --git a/include/configs/microblaze-generic.h 
b/include/configs/microblaze-generic.h
index 047e756..e5bf700 100644
--- a/include/configs/microblaze-generic.h
+++ b/include/configs/microblaze-generic.h
@@ -305,6 +305,7 @@
                                         0x60000)
 #define CONFIG_SYS_FDT_BASE            (CONFIG_SYS_FLASH_BASE + \
                                         0x40000)
+#define CONFIG_SYS_FDT_SIZE            (16<<10)
 #define CONFIG_SYS_SPL_ARGS_ADDR       (CONFIG_SYS_TEXT_BASE + \
                                         0x1000000)
 
-- 
1.9.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to