powerpc: fix pci window initialization to work with > 4GB DRAM
authorBecky Bruce <becky.bruce@freescale.com>
Mon, 27 Oct 2008 21:09:42 +0000 (16:09 -0500)
committerAndrew Fleming-AFLEMING <afleming@freescale.com>
Mon, 27 Oct 2008 21:27:58 +0000 (16:27 -0500)
The existing code has a few errors that need to be fixed in
order to support large RAM sizes.  Fix those, and add a
comment to make it clearer.

Signed-off-by: Becky Bruce <becky.bruce@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
drivers/pci/fsl_pci_init.c

index 483e06b4beeb4a38eda172e63d9cf76a0fff0dcb..7625cccec7ebc9455efb87351d7e627b4339a4c0 100644 (file)
@@ -87,16 +87,20 @@ int fsl_pci_setup_inbound_windows(struct pci_region *r)
        }
 
 #if defined(CONFIG_PHYS_64BIT) && defined(CONFIG_SYS_PCI_64BIT)
+       /*
+        * On 64-bit capable systems, set up a mapping for all of DRAM
+        * in high pci address space.
+        */
        pci_sz = 1ull << __ilog2_u64(gd->ram_size);
        /* round up to the next largest power of two */
        if (gd->ram_size > pci_sz)
-               sz = 1ull << (__ilog2_u64(gd->ram_size) + 1);
+               pci_sz = 1ull << (__ilog2_u64(gd->ram_size) + 1);
        debug ("R64 bus_start: %llx phys_start: %llx size: %llx\n",
-               (u64)CONFIG_SYS_PCI_MEMORY_BUS,
+               (u64)CONFIG_SYS_PCI64_MEMORY_BUS,
                (u64)CONFIG_SYS_PCI_MEMORY_PHYS,
                (u64)pci_sz);
        pci_set_region(r++,
-                       CONFIG_SYS_PCI_MEMORY_BUS,
+                       CONFIG_SYS_PCI64_MEMORY_BUS,
                        CONFIG_SYS_PCI_MEMORY_PHYS,
                        pci_sz,
                        PCI_REGION_MEM | PCI_REGION_MEMORY |