diff options
Diffstat (limited to 'include/linux/pci.h')
-rw-r--r-- | include/linux/pci.h | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/include/linux/pci.h b/include/linux/pci.h index 486d4251d4..aa29ff5d17 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -1,3 +1,5 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + /* * pci.h * @@ -100,7 +102,7 @@ struct pci_dev { struct pci_slot *slot; /* Physical slot this device is in */ const struct pci_device_id *id; /* the id this device matches */ - struct device_d dev; + struct device dev; unsigned int devfn; /* encoded device & function index */ unsigned short vendor; @@ -139,7 +141,7 @@ enum { }; struct pci_bus { struct pci_controller *host; /* associated host controller */ - struct device_d *parent; + struct device *parent; struct pci_bus *parent_bus; /* parent bus */ struct list_head node; /* node in list of buses */ struct list_head children; /* list of child buses */ @@ -171,7 +173,7 @@ extern struct pci_ops *pci_ops; */ struct pci_controller { struct pci_controller *next; - struct device_d *parent; + struct device *parent; struct pci_bus *bus; const struct pci_ops *pci_ops; @@ -194,15 +196,11 @@ struct pci_driver { const struct pci_device_id *id_table; /* must be non-NULL for probe to be called */ int (*probe) (struct pci_dev *dev, const struct pci_device_id *id); /* New device inserted */ void (*remove) (struct pci_dev *dev); /* Device removed (NULL if not a hot-plug capable driver) */ - struct driver_d driver; + struct driver driver; }; #define to_pci_driver(drv) container_of(drv, struct pci_driver, driver) -/* these helpers provide future and backwards compatibility - * for accessing popular PCI BAR info */ -#define pci_resource_start(dev, bar) ((dev)->resource[(bar)].start) - /** * DEFINE_PCI_DEVICE_TABLE - macro used to describe a pci device table * @_table: device table name @@ -324,12 +322,15 @@ static inline int pci_write_config_dword(const struct pci_dev *dev, int where, void pci_set_master(struct pci_dev *dev); void pci_clear_master(struct pci_dev *dev); int pci_enable_device(struct pci_dev *dev); +int pci_select_bars(struct pci_dev *dev, unsigned long flags); u8 pci_find_next_capability(struct pci_dev *dev, u8 pos, int cap); u8 pci_find_capability(struct pci_dev *dev, int cap); extern void __iomem *pci_iomap(struct pci_dev *dev, int bar); +int pci_flr(struct pci_dev *pdev); + /* * The world is not perfect and supplies us with broken PCI devices. * For at least a part of these bugs we need a work-around, so both @@ -354,8 +355,8 @@ enum pci_fixup_pass { /* Anonymous variables would be nice... */ #define DECLARE_PCI_FIXUP_SECTION(section, name, vendor, device, class, \ class_shift, hook) \ - static const struct pci_fixup __PASTE(__pci_fixup_##name,__LINE__) __used \ - __attribute__((__section__(#section), aligned((sizeof(void *))))) \ + static const struct pci_fixup __PASTE(__pci_fixup_##name,__LINE__) \ + __ll_elem(section) __aligned(sizeof(void *)) \ = { vendor, device, class, class_shift, hook }; #define DECLARE_PCI_FIXUP_CLASS_EARLY(vendor, device, class, \ |