diff --git a/drivers/pci/fsl_pci_init.c b/drivers/pci/fsl_pci_init.c
index 7625cccec7ebc9455efb87351d7e627b4339a4c0..e57acba0d27e7ce425109410d4399d82b9514e3e 100644
--- a/drivers/pci/fsl_pci_init.c
+++ b/drivers/pci/fsl_pci_init.c
@@ -58,7 +58,7 @@ void pciauto_config_init(struct pci_controller *hose);
 int fsl_pci_setup_inbound_windows(struct pci_region *r)
 {
 	struct pci_region *rgn_base = r;
-	u64 sz = min((u64)gd->ram_size, 1ull << 32);
+	u64 sz = min((u64)gd->ram_size, (1ull << 32) - 1);
 
 	phys_addr_t phys_start = CONFIG_SYS_PCI_MEMORY_PHYS;
 	pci_addr_t bus_start = CONFIG_SYS_PCI_MEMORY_BUS;