[U-Boot] [PATCH] Makefile: use $(shell ...) for determining file_size

Simon Glass sjg at chromium.org
Fri Jul 25 16:14:55 CEST 2014


Hi Chris,

On 24 July 2014 06:14, Chris Packham <judge.packham at gmail.com> wrote:
> Hi Simon,
>
> On Wed, Jul 23, 2014 at 10:27 PM, Simon Glass <sjg at chromium.org> wrote:
>> On 22 July 2014 18:08, Chris Packham <judge.packham at gmail.com> wrote:
>>> file_size was being calculated using back-ticks but map_size uses
>>> $(shell ...). Update the file_size calculation to use $(shell ...).
>>>
>>> Signed-off-by: Chris Packham <judge.packham at gmail.com>
>>
>> Acked-by: Simon Glass <sjg at chromium.org>
>>
>> But you might want to look at this.
>>
>> http://patchwork.ozlabs.org/patch/371936/
>>
>
> Thanks. I've re-submitted a version with Jeroen's change included and
> it seems a v2 of his patch is imminent too. Either way I'm not fussed.
>
> But this has highlighted another issue I'm experiencing related to
> this code. Originally I thought it was because I was doing something a
> bit weird with a custom u-boot.lds but actually the problem is my
> u-boot is setup so that it finishes exactly at the end of a 32bit
> address space so _image_binary_end is just off the end of it which
> screws up the size calculation.
>
>   $ grep _image_binary_end u-boot.map
>                 0x0000000100000000                _image_binary_end = .
>
>   $ grep _image_binary_end System.map
>   00000000 A _image_binary_end
>
>   $ make binary_size_check
>   ...
>   System.map shows a binary size of -4294180864
>     but u-boot.bin shows 786432
>   make: *** [binary_size_check] Error 1
>
> I think it should be possible to change binary_size_check to use
> u-boot.map instead of System.map but would that be OK for all
> architectures?

That's unfortunate - it's just a little check. It does protect again a
breakage but we need to keep it simple. Maybe in this case we can mask
with 0xffffffff and get the right answer?

Regards,
Simon


More information about the U-Boot mailing list