[U-Boot] [RFC 1/1] configs: rk3288: SPL file must fit into 32 KiB
Heinrich Schuchardt
xypron.glpk at gmx.de
Wed Feb 13 20:41:30 UTC 2019
On 2/13/19 9:23 PM, Philipp Tomsich wrote:
>
>
>> On 13.02.2019, at 21:21, Tom Rini <trini at konsulko.com> wrote:
>>
>> On Wed, Feb 13, 2019 at 09:13:05PM +0100, Heinrich Schuchardt wrote:
>>
>>> The SPL image for the rk3288 boards has to fit into 32 KiB. This includes
>>> 4 KiB for the device tree and up to 2 KiB for the file header.
>>>
>>> Without the patch we missed to see that the TinkerBoard
>>> spl/u-boot-spl-dtb.bin file is too big.
>>>
>>> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
>>
>> NAK. To repeat myself in what I said after this patch was already sent,
>> but for the record, we need to leverage CONFIG_SPL_MAX_SIZE (and
>> CONFIG_TPL_MAX_SIZE) with the BOARD_SIZE_CHECK logic (and use said logic
>> more widely) so that we catch this problem everywhere. A guess at max
>> DTB size is not enough. Thanks!
>
> Acknowledged.
>
I have figured out where to put the test but still have to work out the
details:
diff --git a/include/configs/rk3288_common.h
b/include/configs/rk3288_common.h
index c59f5eff7a..2d65a58f1e 100644
--- a/include/configs/rk3288_common.h
+++ b/include/configs/rk3288_common.h
@@ -23,6 +23,8 @@
#define CONFIG_SYS_INIT_SP_ADDR 0x00100000
#define CONFIG_SYS_LOAD_ADDR 0x00800800
#define CONFIG_SPL_STACK 0xff718000
+/* 32 KiB - 2 KiB for file header */
+#define CONFIG_SPL_MAX_SIZE (0x8000 - 0x800)
#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_TPL_BOOTROM_SUPPORT)
# define CONFIG_SPL_TEXT_BASE 0x0
#else
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 9d5921606e..ccb39eccd1 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -259,6 +259,9 @@ $(obj)/$(SPL_BIN)-dtb.bin: $(obj)/$(SPL_BIN)-nodtb.bin \
$(if
$(CONFIG_SPL_SEPARATE_BSS),,$(obj)/$(SPL_BIN)-pad.bin) \
$(FINAL_DTB_CONTAINER) FORCE
$(call if_changed,cat)
+ifneq ($(CONFIG_SPL_MAX_SIZE),)
+ echo TODO A test is needed here TODO
+endif
$(obj)/$(SPL_BIN).bin: $(obj)/$(SPL_BIN)-dtb.bin FORCE
$(call if_changed,copy)
Regards
Heinrich
More information about the U-Boot
mailing list