diff options
| author | Michael Brown | 2007-03-10 19:08:33 +0100 |
|---|---|---|
| committer | Michael Brown | 2007-03-10 19:08:33 +0100 |
| commit | 520d9c36af2f9e4f207dd7275a47ea97c668f749 (patch) | |
| tree | fc665c3d4c250d3c9411219f580f5affbbf03873 /src/include/eisa.h | |
| parent | Start a new release notes file (RELNOTES) in preparation for release (diff) | |
| download | ipxe-520d9c36af2f9e4f207dd7275a47ea97c668f749.tar.gz ipxe-520d9c36af2f9e4f207dd7275a47ea97c668f749.tar.xz ipxe-520d9c36af2f9e4f207dd7275a47ea97c668f749.zip | |
Updated ISAPnP, EISA, MCA and ISA buses to current device model.
ISA 3c509 is currently non-functional, although the EISA (3c509-eisa) and
MCA (3c529) variants should build OK.
None of this code is yet tested.
Diffstat (limited to 'src/include/eisa.h')
| -rw-r--r-- | src/include/eisa.h | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/src/include/eisa.h b/src/include/eisa.h deleted file mode 100644 index 403a133f4..000000000 --- a/src/include/eisa.h +++ /dev/null @@ -1,95 +0,0 @@ -#ifndef EISA_H -#define EISA_H - -#include "stdint.h" -#include "isa_ids.h" -#include "nic.h" - -/* - * EISA constants - * - */ - -#define EISA_MIN_SLOT (0x1) -#define EISA_MAX_SLOT (0xf) /* Must be 2^n - 1 */ -#define EISA_SLOT_BASE( n ) ( 0x1000 * (n) ) - -#define EISA_MFG_ID_HI ( 0xc80 ) -#define EISA_MFG_ID_LO ( 0xc81 ) -#define EISA_PROD_ID_HI ( 0xc82 ) -#define EISA_PROD_ID_LO ( 0xc83 ) -#define EISA_GLOBAL_CONFIG ( 0xc84 ) - -#define EISA_CMD_RESET ( 1 << 2 ) -#define EISA_CMD_ENABLE ( 1 << 0 ) - -/* - * A location on an EISA bus - * - */ -struct eisa_loc { - unsigned int slot; -}; - -/* - * A physical EISA device - * - */ -struct eisa_device { - const char *name; - unsigned int slot; - uint16_t ioaddr; - uint16_t mfg_id; - uint16_t prod_id; -}; - -/* - * An individual EISA device identified by ID - * - */ -struct eisa_id { - const char *name; - uint16_t mfg_id, prod_id; -}; - -/* - * An EISA driver, with a device ID (struct eisa_id) table. - * - */ -struct eisa_driver { - const char *name; - struct eisa_id *ids; - unsigned int id_count; -}; - -/* - * Define an EISA driver - * - */ -#define EISA_DRIVER( _name, _ids ) \ - static struct eisa_driver _name = { \ - .ids = _ids, \ - .id_count = sizeof ( _ids ) / sizeof ( _ids[0] ), \ - } - -/* - * Functions in eisa.c - * - */ -extern void eisa_device_enabled ( struct eisa_device *eisa, int enabled ); -extern void eisa_fill_nic ( struct nic *nic, struct eisa_device *eisa ); - -static inline void enable_eisa_device ( struct eisa_device *eisa ) { - eisa_device_enabled ( eisa, 1 ); -} -static inline void disable_eisa_device ( struct eisa_device *eisa ) { - eisa_device_enabled ( eisa, 0 ); -} - -/* - * EISA bus global definition - * - */ -extern struct bus_driver eisa_driver; - -#endif /* EISA_H */ |
