X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=lib%2Fpci.h;h=eeb4a55cb18db40c0bafd9babaa4a9454f357779;hb=4c2b4b1bfa348ea22a22f4ca271bc13096ab3e78;hp=16388fa3508dd2a37e50b628e656fb235124e0a3;hpb=2b883e3fd5ad2da5351599f327cc76006e2ef2f0;p=pciutils.git diff --git a/lib/pci.h b/lib/pci.h index 16388fa..eeb4a55 100644 --- a/lib/pci.h +++ b/lib/pci.h @@ -16,7 +16,7 @@ #include "header.h" #include "types.h" -#define PCI_LIB_VERSION 0x030700 +#define PCI_LIB_VERSION 0x030800 #ifndef PCI_ABI #define PCI_ABI @@ -43,6 +43,7 @@ enum pci_access_type { PCI_ACCESS_DARWIN, /* Darwin */ PCI_ACCESS_SYLIXOS_DEVICE, /* SylixOS pci */ PCI_ACCESS_HURD, /* GNU/Hurd */ + PCI_ACCESS_WIN32_CFGMGR32, /* Win32 cfgmgr32.dll */ PCI_ACCESS_MAX }; @@ -148,6 +149,7 @@ struct pci_dev { u8 prog_if, rev_id; /* Programming interface for device_class and revision id */ u16 subsys_vendor_id, subsys_id; /* Subsystem vendor id and subsystem id */ struct pci_dev *parent; /* Parent device, does not have to be always accessible */ + int no_config_access; /* No access to config space for this device */ /* Fields used internally */ struct pci_access *access; @@ -244,8 +246,11 @@ struct pci_cap *pci_find_cap_nr(struct pci_dev *, unsigned int id, unsigned int struct pci_filter { int domain, bus, slot, func; /* -1 = ANY */ - int vendor, device, device_class; - int rfu[3]; + int vendor, device; + int device_class; + unsigned int device_class_mask; /* Which bits of the device_class are compared, default=all */ + int prog_if; + int rfu[1]; }; void pci_filter_init(struct pci_access *, struct pci_filter *) PCI_ABI;