aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2012-12-10 18:20:12 -0500
committerBjorn Helgaas <bhelgaas@google.com>2012-12-10 18:20:12 -0500
commit1cb73f8c479e66541fefd3f7fa547b1fa56cdc54 (patch)
tree662259b3d602db1ba4fe203346cc73dff826b2fa
parent3ced69f8bba1b766d6c1ea8f26c32a9b3e6fe75c (diff)
parentdbd3fc3345390a989a033427aa915a0dfb62149f (diff)
Merge branch 'pci/mjg-pci-roms-from-efi' into next
* pci/mjg-pci-roms-from-efi: PCI: Use phys_addr_t for physical ROM address
-rw-r--r--arch/x86/pci/common.c4
-rw-r--r--drivers/pci/rom.c2
-rw-r--r--include/linux/pci.h2
3 files changed, 4 insertions, 4 deletions
diff --git a/arch/x86/pci/common.c b/arch/x86/pci/common.c
index 6a6b01778dab..1b1dda90a945 100644
--- a/arch/x86/pci/common.c
+++ b/arch/x86/pci/common.c
@@ -628,8 +628,8 @@ int pcibios_add_device(struct pci_dev *dev)
628 (PCI_FUNC(dev->devfn) == rom->function) && 628 (PCI_FUNC(dev->devfn) == rom->function) &&
629 (dev->vendor == rom->vendor) && 629 (dev->vendor == rom->vendor) &&
630 (dev->device == rom->devid)) { 630 (dev->device == rom->devid)) {
631 dev->rom = (void *)(unsigned long)(pa_data + 631 dev->rom = pa_data +
632 offsetof(struct pci_setup_rom, romdata)); 632 offsetof(struct pci_setup_rom, romdata);
633 dev->romlen = rom->pcilen; 633 dev->romlen = rom->pcilen;
634 } 634 }
635 } 635 }
diff --git a/drivers/pci/rom.c b/drivers/pci/rom.c
index 3a3828fbc879..ab886b7ee327 100644
--- a/drivers/pci/rom.c
+++ b/drivers/pci/rom.c
@@ -122,7 +122,7 @@ void __iomem *pci_map_rom(struct pci_dev *pdev, size_t *size)
122 */ 122 */
123 if (pdev->rom && pdev->romlen) { 123 if (pdev->rom && pdev->romlen) {
124 *size = pdev->romlen; 124 *size = pdev->romlen;
125 return phys_to_virt((phys_addr_t)pdev->rom); 125 return phys_to_virt(pdev->rom);
126 /* 126 /*
127 * IORESOURCE_ROM_SHADOW set on x86, x86_64 and IA64 supports legacy 127 * IORESOURCE_ROM_SHADOW set on x86, x86_64 and IA64 supports legacy
128 * memory map if the VGA enable bit of the Bridge Control register is 128 * memory map if the VGA enable bit of the Bridge Control register is
diff --git a/include/linux/pci.h b/include/linux/pci.h
index ea41a0a52a59..d11cc6e79994 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -333,7 +333,7 @@ struct pci_dev {
333 }; 333 };
334 struct pci_ats *ats; /* Address Translation Service */ 334 struct pci_ats *ats; /* Address Translation Service */
335#endif 335#endif
336 void *rom; /* Physical pointer to ROM if it's not from the BAR */ 336 phys_addr_t rom; /* Physical address of ROM if it's not from the BAR */
337 size_t romlen; /* Length of ROM if it's not from the BAR */ 337 size_t romlen; /* Length of ROM if it's not from the BAR */
338}; 338};
339 339