diff --git a/drivers/pci/pci_common.c b/drivers/pci/pci_common.c
index a64792f988177dda4bc3ef2dab25937ffedc6ee0..2a149022e2f59d4aadb0dd2217bf2a14c4f70cf1 100644
--- a/drivers/pci/pci_common.c
+++ b/drivers/pci/pci_common.c
@@ -268,7 +268,7 @@ int __pci_hose_phys_to_bus(struct pci_controller *hose,
 		bus_addr = phys_addr - res->phys_start + res->bus_start;
 
 		if (bus_addr >= res->bus_start &&
-		    bus_addr < res->bus_start + res->size) {
+		    (bus_addr - res->bus_start) < res->size) {
 			*ba = bus_addr;
 			return 0;
 		}