| plan 9 kernel history: overview | file list | diff list |
1995/0517/pc/io.h (diff list | history)
| 1995/0126/sys/src/9/pc/io.h:33,35 – 1995/0517/sys/src/9/pc/io.h:33,72 (short | long | prev | next) | ||
|
Add PCIcfg.
rsc Fri Mar 4 12:44:25 2005 | ||
| 1994/0908 | MaxEISA = 16, | |
| 1995/0126 | EISAconfig = 0xC80, | |
| 1991/0704 | }; | |
| 1995/0517 | /* * PCI Local Bus support. * Quick hack until we figure out how to * deal with EISA, PCI, PCMCIA, PnP, etc. */ enum { /* configuration mechanism #1 */ PCIaddr = 0xCF8, /* CONFIG_ADDRESS */ PCIdata = 0xCFC, /* CONFIG_DATA */ /* configuration mechanism #2 */ PCIcse = 0xCF8, /* configuration space enable */ PCIforward = 0xCFA, /* which bus */ }; typedef struct PCIcfg { ushort vid; /* vendor ID */ ushort did; /* device ID */ ushort command; ushort status; uchar rid; /* revision ID */ uchar loclass; /* specific register-level programming interface */ uchar subclass; uchar baseclass; uchar clsize; /* cache line size */ uchar latency; /* latency timer */ uchar header; /* header type */ uchar bist; /* built-in self-test */ ulong baseaddr[6]; /* memory or I/O base address registers */ ulong reserved28[2]; ulong romaddr; /* expansion ROM base address */ ulong reserved34[2]; uchar irq; /* interrupt line */ uchar irp; /* interrupt pin */ uchar mingnt; /* burst period length */ uchar maxlat; /* maximum latency between bursts */ } PCIcfg; | |