[U-Boot] [PATCH 1/3] PCI: dm: Ignore 64-bit memory regions if CONFIG_SYS_PCI_64BIT not set

Simon Glass sjg at chromium.org
Mon May 14 19:51:50 UTC 2018


On 14 May 2018 at 09:47, Tuomas Tynkkynen <tuomas.tynkkynen at iki.fi> wrote:
> Currently, qemu_arm_defconfig and qemu_arm64_defconfig only work with
> the 'highmem=off' parameter passed to QEMU's virt machine. The reason is
> that when 'highmem' is not disabled, QEMU appends 64-bit a memory
> resource to the PCI controller's regions property in DT in addition to
> the 32-bit PCI memory window in low memory. And the current DT parsing
> code picks the last (thus the 64-bit one) memory resource, whose address
> eventually gets silently truncated to 32 bits because
> CONFIG_SYS_PCI_64BIT is not set, which obviously causes PCI to break.
>
> Avoid this problem by ignoring memory regions whose addresses are above
> the 32-bit boundary when CONFIG_SYS_PCI_64BIT is not set.
>
> Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen at iki.fi>
> ---
>  drivers/pci/pci-uclass.c | 7 +++++++
>  1 file changed, 7 insertions(+)
>

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


More information about the U-Boot mailing list