From: Becky Bruce Date: Wed, 7 May 2008 18:24:57 +0000 (-0500) Subject: Update pci code to use phys_addr_t X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=36f32675f40292002ee1fed252c180a43022d2d4;p=u-boot.git Update pci code to use phys_addr_t Physical addrs need to be represented by phys_addr_t, not unsigned long. Otherwise, systems that use CONFIG_PHYS_64BIT are going to fail mightily. Signed-off-by: Becky Bruce --- diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 7944b6684a..f01a75e7f8 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -221,7 +221,7 @@ pci_dev_t pci_find_device(unsigned int vendor, unsigned int device, int index) */ unsigned long pci_hose_phys_to_bus (struct pci_controller *hose, - unsigned long phys_addr, + phys_addr_t phys_addr, unsigned long flags) { struct pci_region *res; @@ -253,9 +253,9 @@ Done: return 0; } -unsigned long pci_hose_bus_to_phys(struct pci_controller* hose, - unsigned long bus_addr, - unsigned long flags) +phys_addr_t pci_hose_bus_to_phys(struct pci_controller* hose, + unsigned long bus_addr, + unsigned long flags) { struct pci_region *res; int i; diff --git a/include/pci.h b/include/pci.h index 8e5dacc0df..1c8e21688f 100644 --- a/include/pci.h +++ b/include/pci.h @@ -314,7 +314,7 @@ struct pci_region { unsigned long bus_start; /* Start on the bus */ - unsigned long phys_start; /* Start in physical address space */ + phys_addr_t phys_start; /* Start in physical address space */ unsigned long size; /* Size */ unsigned long flags; /* Resource flags */ @@ -331,7 +331,7 @@ struct pci_region { extern __inline__ void pci_set_region(struct pci_region *reg, unsigned long bus_start, - unsigned long phys_start, + phys_addr_t phys_start, unsigned long size, unsigned long flags) { reg->bus_start = bus_start; @@ -432,10 +432,10 @@ extern __inline__ void pci_set_ops(struct pci_controller *hose, extern void pci_setup_indirect(struct pci_controller* hose, u32 cfg_addr, u32 cfg_data); -extern unsigned long pci_hose_bus_to_phys(struct pci_controller* hose, - unsigned long addr, unsigned long flags); +extern phys_addr_t pci_hose_bus_to_phys(struct pci_controller* hose, + unsigned long addr, unsigned long flags); extern unsigned long pci_hose_phys_to_bus(struct pci_controller* hose, - unsigned long addr, unsigned long flags); + phys_addr_t addr, unsigned long flags); #define pci_phys_to_bus(dev, addr, flags) \ pci_hose_phys_to_bus(pci_bus_to_hose(PCI_BUS(dev)), (addr), (flags))