Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6] / drivers / atm / zeprom.h
1 /* drivers/atm/zeprom.h - ZeitNet ZN122x EEPROM (NM93C46) declarations */
2
3 /* Written 1995,1996 by Werner Almesberger, EPFL LRC */
4
5
6 #ifndef DRIVER_ATM_ZEPROM_H
7 #define DRIVER_ATM_ZEPROM_H
8
9 /* Different versions use different control registers */
10
11 #define ZEPROM_V1_REG   PCI_VENDOR_ID   /* PCI register */
12 #define ZEPROM_V2_REG   0x40
13
14 /* Bits in contol register */
15
16 #define ZEPROM_SK       0x80000000      /* strobe (probably on raising edge) */
17 #define ZEPROM_CS       0x40000000      /* Chip Select */
18 #define ZEPROM_DI       0x20000000      /* Data Input */
19 #define ZEPROM_DO       0x10000000      /* Data Output */
20
21 #define ZEPROM_SIZE     32              /* 32 bytes */
22 #define ZEPROM_V1_ESI_OFF 24            /* ESI offset in EEPROM (V1) */
23 #define ZEPROM_V2_ESI_OFF 4             /* ESI offset in EEPROM (V2) */
24
25 #define ZEPROM_CMD_LEN  3               /* commands are three bits */
26 #define ZEPROM_ADDR_LEN 6               /* addresses are six bits */
27
28 /* Commands (3 bits) */
29
30 #define ZEPROM_CMD_READ 6
31
32 /* No other commands are needed. */
33
34 #endif