[U-Boot] [PATCH] SPL: do not use fix value for u-boot size

Stefano Babic sbabic at denx.de
Thu Aug 23 11:38:29 CEST 2012


On 23/08/2012 11:28, Stefan Roese wrote:
> Hi Stefano,
> 
> On 08/23/2012 11:23 AM, Stefano Babic wrote:
>>>> diff --git a/common/spl/spl.c b/common/spl/spl.c
>>>> index 7d15460..827ff1c 100644
>>>> --- a/common/spl/spl.c
>>>> +++ b/common/spl/spl.c
>>>> @@ -100,7 +100,11 @@ void spl_parse_image_header(const struct image_header *header)
>>>>  		debug("mkimage signature not found - ih_magic = %x\n",
>>>>  			header->ih_magic);
>>>>  		/* Let's assume U-Boot will not be more than 200 KB */
>>>> +#ifdef CONFIG_SYS_MONITOR_LEN
>>>> +		spl_image.size = CONFIG_SYS_MONITOR_LEN;
>>>> +#else
>>>>  		spl_image.size = 200 * 1024;
>>>> +#endif
>>>
>>> Yes, I noticed this 200 KiB setting as well. But it seems that this
>>> ".size" variable is not referenced at all. Or am I missing something?
>>
>> Your are missing something:
>>
>> drivers/mmc/spl_mmc.c:
>>
>> 55         /* convert size to sectors - round up */
>>  56         image_size_sectors = (spl_image.size + MMCSD_SECTOR_SIZE - 1) /
>>  57                                 MMCSD_SECTOR_SIZE;
>>
>> And I have an example where only a part of u-boot is copied.
> 
> Ahh, I see. Thanks.
> 
> I would prefer the following approach then, to move the #ifdef out of
> the C code:
> 
> #ifndef CONFIG_SYS_MONITOR_LEN
> #define CONFIG_SYS_MONITOR_LEN	(200 * 1024)
> #endif
> 
> and then use CONFIG_SYS_MONITOR_LEN unconditionally.

Fine with me - I will fix in V2.

Regards,
Stefano


-- 
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================


More information about the U-Boot mailing list