arm: mvebu: turris_mox: fix PCIe ranges in device tree
authorMarek Behún <marek.behun@nic.cz>
Wed, 8 Apr 2020 17:25:22 +0000 (19:25 +0200)
committerStefan Roese <sr@denx.de>
Tue, 14 Apr 2020 11:16:42 +0000 (13:16 +0200)
Use the new a3700_fdt_fix_pcie_regions function in turris_mox.c so that
MOX boards with 4 GB RAM are fully supported.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Stefan Roese <sr@denx.de>
board/CZ.NIC/turris_mox/turris_mox.c

index 8e4c023103254cb72255dc92e7ffb89d98bec655..470ea32f9c3ccaf43b6597a2016103dff6e44f7e 100644 (file)
@@ -4,6 +4,7 @@
  */
 
 #include <common.h>
+#include <asm/arch/cpu.h>
 #include <asm/arch/soc.h>
 #include <asm/io.h>
 #include <asm/gpio.h>
@@ -104,6 +105,11 @@ int board_fix_fdt(void *blob)
                return 0;
        }
 
+       if (a3700_fdt_fix_pcie_regions(blob) < 0) {
+               printf("Cannot fix PCIe regions in U-Boot's device tree!\n");
+               return 0;
+       }
+
        return 0;
 }
 #endif
@@ -708,6 +714,11 @@ int ft_board_setup(void *blob, bd_t *bd)
                res = fdt_setprop_string(blob, node, "status", "okay");
                if (res < 0)
                        return res;
+
+               /* Fix PCIe regions for devices with 4 GB RAM */
+               res = a3700_fdt_fix_pcie_regions(blob);
+               if (res < 0)
+                       return res;
        }
 
        /*