1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | /* |
3 | * PCI Backend - Data structures for special overlays for broken devices. |
4 | * |
5 | * Ryan Wilson <hap9@epoch.ncsc.mil> |
6 | * Chris Bookholt <hap10@epoch.ncsc.mil> |
7 | */ |
8 | |
9 | #ifndef __XEN_PCIBACK_CONF_SPACE_QUIRKS_H__ |
10 | #define __XEN_PCIBACK_CONF_SPACE_QUIRKS_H__ |
11 | |
12 | #include <linux/pci.h> |
13 | #include <linux/list.h> |
14 | |
15 | struct xen_pcibk_config_quirk { |
16 | struct list_head quirks_list; |
17 | struct pci_device_id devid; |
18 | struct pci_dev *pdev; |
19 | }; |
20 | |
21 | int xen_pcibk_config_quirks_add_field(struct pci_dev *dev, struct config_field |
22 | *field); |
23 | |
24 | int xen_pcibk_config_quirks_init(struct pci_dev *dev); |
25 | |
26 | void xen_pcibk_config_field_free(struct config_field *field); |
27 | |
28 | int xen_pcibk_config_quirk_release(struct pci_dev *dev); |
29 | |
30 | int xen_pcibk_field_is_dup(struct pci_dev *dev, unsigned int reg); |
31 | |
32 | #endif |
33 | |