diff options
author | dfr <dfr@FreeBSD.org> | 1999-10-14 21:38:33 +0000 |
---|---|---|
committer | dfr <dfr@FreeBSD.org> | 1999-10-14 21:38:33 +0000 |
commit | 37ab4f7a31956a5d39e3eb1f74da3865b7d0fd3e (patch) | |
tree | 368f670667f06e1028edad29b2c6720ab1c3532d /sys/pci/pcivar.h | |
parent | 22acf6986dd3517e491a4d9e4deee1109e4ee940 (diff) | |
download | FreeBSD-src-37ab4f7a31956a5d39e3eb1f74da3865b7d0fd3e.zip FreeBSD-src-37ab4f7a31956a5d39e3eb1f74da3865b7d0fd3e.tar.gz |
* Implement bus_set/get/delete_resource for pci.
* Change the hack used on the alpha for mapping devices into DENSE or
BWX memory spaces to a simpler one. Its still a hack and should be
a seperate api to explicitly map the resource.
* Add $FreeBSD$ as necessary.
Diffstat (limited to 'sys/pci/pcivar.h')
-rw-r--r-- | sys/pci/pcivar.h | 30 |
1 files changed, 7 insertions, 23 deletions
diff --git a/sys/pci/pcivar.h b/sys/pci/pcivar.h index ae4958d..31cea00 100644 --- a/sys/pci/pcivar.h +++ b/sys/pci/pcivar.h @@ -56,28 +56,11 @@ typedef u_int64_t pci_addr_t; /* u_int64_t for system with 64bit addresses */ typedef u_int32_t pci_addr_t; /* u_int64_t for system with 64bit addresses */ #endif -/* map register information */ - -typedef struct { - u_int32_t base; - u_int8_t type; -#define PCI_MAPMEM 0x01 /* memory map */ -#define PCI_MAPMEMP 0x02 /* prefetchable memory map */ -#define PCI_MAPPORT 0x04 /* port map */ - u_int8_t ln2size; - u_int8_t ln2range; - u_int8_t reg; /* offset of map register in config space */ -/* u_int8_t dummy;*/ - struct resource *res; /* handle from resource manager */ -} pcimap; - /* config header information common to all header types */ typedef struct pcicfg { struct device *dev; /* device which owns this */ - pcimap *map; /* pointer to array of PCI maps */ void *hdrspec; /* pointer to header type specific data */ - struct resource *irqres; /* resource descriptor for interrupt mapping */ u_int16_t subvendor; /* card vendor ID */ u_int16_t subdevice; /* card device ID, assigned by card vendor */ @@ -163,12 +146,6 @@ typedef struct pciattach { struct pciattach *next; } pciattach; -struct pci_devinfo { - STAILQ_ENTRY(pci_devinfo) pci_links; - pcicfgregs cfg; - struct pci_conf conf; -}; - extern u_int32_t pci_numdevs; @@ -192,6 +169,13 @@ pcicfgregs * pci_devlist_get_parent(pcicfgregs *cfg); #include "pci_if.h" +/* + * Define pci-specific resource flags for accessing memory via dense + * or bwx memory spaces. These flags are ignored on i386. + */ +#define PCI_RF_DENSE 0x10000 +#define PCI_RF_BWX 0x20000 + enum pci_device_ivars { PCI_IVAR_SUBVENDOR, PCI_IVAR_SUBDEVICE, |