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