[U-Boot] [PATCH] pci: fix address range check in __pci_hose_phys_to_bus()

Simon Glass sjg at chromium.org
Thu Nov 19 21:05:15 CET 2015


On 19 November 2015 at 09:40, Stephen Warren <swarren at wwwdotorg.org> wrote:
> On 11/18/2015 07:05 AM, Marcel Ziswiler wrote:
>>
>> The address range check may overflow if the memory region is located at
>> the top of the 32-bit address space. This can e.g. be seen on TK1 if
>> using the E1000 gigabit Ethernet driver where start and size are both
>> 0x80000000 leading to the following messages:
>>
>> Apalis TK1 # tftpboot $loadaddr test_file
>> Using e1000#0 device
>> TFTP from server 192.168.10.1; our IP address is 192.168.10.2
>> Filename 'test_file'.
>> Load address: 0x80408000
>> Loading: pci_hose_phys_to_bus: invalid physical address
>>
>> This patch fixes this by changing the order of the addition vs.
>> subtraction in the range check just like already done in
>> __pci_hose_bus_to_phys().
>
>
> Reviewed-by: Stephen Warren <swarren at nvidia.com>

Acked-by: Simon Glass <sjg at chromium.org>


More information about the U-Boot mailing list