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

Marek Vasut marek.vasut at gmail.com
Wed Jun 26 13:09:05 UTC 2019


On 6/26/19 2:51 PM, Suniel Mahesh wrote:
> On 26/06/19 16:49, Marek Vasut wrote:
>> On 6/26/19 12:54 PM, Jagan Teki wrote:
>>> On Wed, Jun 26, 2019 at 4:07 PM Stefan Roese <sr at denx.de> wrote:
>>>>
>>>> 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.
>>>
>>> May be his requirement is to reset the watchdog if SPL hang or something.
>>
>> Non-DM WDT support can do that just fine.
>>
> My question was that can we do a Non-DM WDT in SPL, which was my first item above.
> 
> I will try for a Non-DM WDT in SPL.

Yes, non-DM in SPL is OK.

-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list