[U-Boot] Watchdog DM conversion, sram overflow(SPL)

Stefan Roese sr at denx.de
Wed Jun 26 10:37:00 UTC 2019


On 26.06.19 11:53, Suniel Mahesh wrote:
> Hi,
> 
> I am trying to convert watchdog driver(omap3_wdt) on TI AM33XX platform to Driver Model.
> Since DM is also enabled in SPL, size of SPL image generated(with watchdog DM enabled) is
> bigger compared to the SRAM size(.u_boot_list section doesn't fit in the region alloted)
> and build is failing with the following error:
> 
>    LD      spl/drivers/usb/gadget/built-in.o
>    LD      spl/drivers/usb/musb-new/built-in.o
>    LD      spl/drivers/built-in.o
>    LD      spl/u-boot-spl
> arm-linux-ld.bfd: u-boot-spl section `.u_boot_list' will not fit in region `.sram'
> arm-linux-ld.bfd: region `.sram' overflowed by 48 bytes
> make[1]: *** [spl/u-boot-spl] Error 1
> make: *** [spl/u-boot-spl] Error 2
> 
> The SRAM size in the device is 130047 bytes, of which 110592 bytes are allocated for SPL
> Image, 6144 bytes for stack and the rest 12799 bytes for RAM Exec vectors, tracing data
> and static variables.
> 
> Maximum SPL image size is fixed at 110592 bytes
> 
> SPL size without Watchdog driver model is 110880 bytes.
> 
> So, the reason for such error is straight forward.
> 
> I can think of two possible approaches (might be wrong):
> 
> 1. either disable DM in SPL for watchdog ?
> (dm: mmc: Allow disabling driver model in SPL - by Simon Glass)
>   
> 2. The stack allocated for SPL in SRAM is 6KB and 12799 bytes for  RAM Exec vectors,
> tracing data and static variables. can we do something here, by borrowing some bytes ?
> 
> Or any possible solutions ?

You could also disable the watchdog in SPL and only enable it
later in U-Boot proper.

Thanks,
Stefan


More information about the U-Boot mailing list