1 /* SPDX-License-Identifier: GPL-2.0 */
3 * PCI Backend - Data structures for special overlays for broken devices.
5 * Ryan Wilson <hap9@epoch.ncsc.mil>
6 * Chris Bookholt <hap10@epoch.ncsc.mil>
9 #ifndef __XEN_PCIBACK_CONF_SPACE_QUIRKS_H__
10 #define __XEN_PCIBACK_CONF_SPACE_QUIRKS_H__
12 #include <linux/pci.h>
13 #include <linux/list.h>
15 struct xen_pcibk_config_quirk
{
16 struct list_head quirks_list
;
17 struct pci_device_id devid
;
21 int xen_pcibk_config_quirks_add_field(struct pci_dev
*dev
, struct config_field
24 int xen_pcibk_config_quirks_remove_field(struct pci_dev
*dev
, int reg
);
26 int xen_pcibk_config_quirks_init(struct pci_dev
*dev
);
28 void xen_pcibk_config_field_free(struct config_field
*field
);
30 int xen_pcibk_config_quirk_release(struct pci_dev
*dev
);
32 int xen_pcibk_field_is_dup(struct pci_dev
*dev
, unsigned int reg
);