diff options
author | Jesse Barnes <jbarnes@virtuousgeek.org> | 2012-02-24 14:25:33 -0800 |
---|---|---|
committer | Jesse Barnes <jbarnes@virtuousgeek.org> | 2012-02-24 14:25:33 -0800 |
commit | ecd58d667a6ac4350d2f67b9accaadf575bae4b0 (patch) | |
tree | 5209771a0a1f61820171e444d3e4a580ecf3955f /include/linux/pci.h | |
parent | b07f2ebc109b607789f648dedcff4b125f9afec6 (diff) | |
parent | fb127cb9de791d62fb393d6e65fa9869bddd2460 (diff) |
Merge branch 'pci-next+probe_only+bus2res-fb127cb' of git://github.com/bjorn-helgaas/linux into linux-next
Diffstat (limited to 'include/linux/pci.h')
-rw-r--r-- | include/linux/pci.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/pci.h b/include/linux/pci.h index bcaa51ca785..be58a51706c 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -368,6 +368,18 @@ static inline int pci_channel_offline(struct pci_dev *pdev) return (pdev->error_state != pci_channel_io_normal); } +struct pci_host_bridge_window { + struct list_head list; + struct resource *res; /* host bridge aperture (CPU address) */ + resource_size_t offset; /* bus address + offset = CPU address */ +}; + +struct pci_host_bridge { + struct list_head list; + struct pci_bus *bus; /* root bus */ + struct list_head windows; /* pci_host_bridge_windows */ +}; + /* * The first PCI_BRIDGE_RESOURCE_NUM PCI bus resources (those that correspond * to P2P or CardBus bridge windows) go in a table. Additional ones (for @@ -636,6 +648,10 @@ void pci_fixup_cardbus(struct pci_bus *); /* Generic PCI functions used internally */ +void pcibios_resource_to_bus(struct pci_dev *dev, struct pci_bus_region *region, + struct resource *res); +void pcibios_bus_to_resource(struct pci_dev *dev, struct resource *res, + struct pci_bus_region *region); void pcibios_scan_specific_bus(int busn); extern struct pci_bus *pci_find_bus(int domain, int busnr); void pci_bus_add_devices(const struct pci_bus *bus); @@ -896,6 +912,8 @@ void pci_release_selected_regions(struct pci_dev *, int); /* drivers/pci/bus.c */ void pci_add_resource(struct list_head *resources, struct resource *res); +void pci_add_resource_offset(struct list_head *resources, struct resource *res, + resource_size_t offset); void pci_free_resource_list(struct list_head *resources); void pci_bus_add_resource(struct pci_bus *bus, struct resource *res, unsigned int flags); struct resource *pci_bus_resource_n(const struct pci_bus *bus, int n); |