blob: 8e8819a3840ded58d4717481d867fb45e89bcffc [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Linus Torvalds1da177e2005-04-16 15:20:36 -07002/* drivers/atm/zeprom.h - ZeitNet ZN122x EEPROM (NM93C46) declarations */
3
4/* Written 1995,1996 by Werner Almesberger, EPFL LRC */
5
6
7#ifndef DRIVER_ATM_ZEPROM_H
8#define DRIVER_ATM_ZEPROM_H
9
10/* Different versions use different control registers */
11
12#define ZEPROM_V1_REG PCI_VENDOR_ID /* PCI register */
13#define ZEPROM_V2_REG 0x40
14
zuoqilin04fdfad2021-05-21 17:45:22 +080015/* Bits in control register */
Linus Torvalds1da177e2005-04-16 15:20:36 -070016
17#define ZEPROM_SK 0x80000000 /* strobe (probably on raising edge) */
18#define ZEPROM_CS 0x40000000 /* Chip Select */
19#define ZEPROM_DI 0x20000000 /* Data Input */
20#define ZEPROM_DO 0x10000000 /* Data Output */
21
22#define ZEPROM_SIZE 32 /* 32 bytes */
23#define ZEPROM_V1_ESI_OFF 24 /* ESI offset in EEPROM (V1) */
24#define ZEPROM_V2_ESI_OFF 4 /* ESI offset in EEPROM (V2) */
25
26#define ZEPROM_CMD_LEN 3 /* commands are three bits */
27#define ZEPROM_ADDR_LEN 6 /* addresses are six bits */
28
29/* Commands (3 bits) */
30
31#define ZEPROM_CMD_READ 6
32
33/* No other commands are needed. */
34
35#endif