Index: sys/dev/pci/pciio.h =================================================================== RCS file: /cvsroot/src/sys/dev/pci/pciio.h,v retrieving revision 1.3 diff -u -p -r1.3 pciio.h --- sys/dev/pci/pciio.h 6 Jun 2009 12:56:43 -0000 1.3 +++ sys/dev/pci/pciio.h 11 Jun 2009 08:49:35 -0000 @@ -93,4 +93,37 @@ struct pciio_businfo { #define PCI_IOC_BUSINFO _IOR('P', 4, struct pciio_businfo) +/* + * pciio_dbdf_cfgreg { + * + * Like pciio_bdf_cfgreg, except for any domain/bus/dev/func + */ +struct pciio_dbdf_cfgreg { + u_int domain; + u_int bus; + u_int device; + u_int function; + struct pciio_cfgreg cfgreg; +}; + +/* + * Read and write PCI configuration space registers on any + * device within a given PCI domain. + */ +#define PCI_IOC_DBDF_CFGREAD _IOWR('P', 5, struct pciio_dbdf_cfgreg) +#define PCI_IOC_DBDF_CFGWRITE _IOW('P', 6, struct pciio_dbdf_cfgreg) + +/* + * pciio_domaininfo: + * + * Information for a PCI domain (autoconfiguration node) instance. + */ +struct pciio_domaininfo { + u_int domain; /* pci domain */ + u_int busno; /* bus number */ + u_int maxdevs; /* max devices on bus */ +}; + +#define PCI_IOC_DOMAININFO _IOR('P', 7, struct pciio_domaininfo) + #endif /* _DEV_PCI_PCIIO_H_ */