1 |
1275 |
phoenix |
/*********************************************************
|
2 |
|
|
* *
|
3 |
|
|
* Definition of D-Link DE-620 Ethernet Pocket adapter *
|
4 |
|
|
* *
|
5 |
|
|
*********************************************************/
|
6 |
|
|
|
7 |
|
|
/* DE-620's CMD port Command */
|
8 |
|
|
#define CS0 0x08 /* 1->0 command strobe */
|
9 |
|
|
#define ICEN 0x04 /* 0=enable DL3520 host interface */
|
10 |
|
|
#define DS0 0x02 /* 1->0 data strobe 0 */
|
11 |
|
|
#define DS1 0x01 /* 1->0 data strobe 1 */
|
12 |
|
|
|
13 |
|
|
#define WDIR 0x20 /* general 0=read 1=write */
|
14 |
|
|
#define RDIR 0x00 /* (not 100% confirm ) */
|
15 |
|
|
#define PS2WDIR 0x00 /* ps/2 mode 1=read, 0=write */
|
16 |
|
|
#define PS2RDIR 0x20
|
17 |
|
|
|
18 |
|
|
#define IRQEN 0x10 /* 1 = enable printer IRQ line */
|
19 |
|
|
#define SELECTIN 0x08 /* 1 = select printer */
|
20 |
|
|
#define INITP 0x04 /* 0 = initial printer */
|
21 |
|
|
#define AUTOFEED 0x02 /* 1 = printer auto form feed */
|
22 |
|
|
#define STROBE 0x01 /* 0->1 data strobe */
|
23 |
|
|
|
24 |
|
|
#define RESET 0x08
|
25 |
|
|
#define NIS0 0x20 /* 0 = BNC, 1 = UTP */
|
26 |
|
|
#define NCTL0 0x10
|
27 |
|
|
|
28 |
|
|
/* DE-620 DIC Command */
|
29 |
|
|
#define W_DUMMY 0x00 /* DIC reserved command */
|
30 |
|
|
#define W_CR 0x20 /* DIC write command register */
|
31 |
|
|
#define W_NPR 0x40 /* DIC write Next Page Register */
|
32 |
|
|
#define W_TBR 0x60 /* DIC write Tx Byte Count 1 reg */
|
33 |
|
|
#define W_RSA 0x80 /* DIC write Remote Start Addr 1 */
|
34 |
|
|
|
35 |
|
|
/* DE-620's STAT port bits 7-4 */
|
36 |
|
|
#define EMPTY 0x80 /* 1 = receive buffer empty */
|
37 |
|
|
#define INTLEVEL 0x40 /* 1 = interrupt level is high */
|
38 |
|
|
#define TXBF1 0x20 /* 1 = transmit buffer 1 is in use */
|
39 |
|
|
#define TXBF0 0x10 /* 1 = transmit buffer 0 is in use */
|
40 |
|
|
#define READY 0x08 /* 1 = h/w ready to accept cmd/data */
|
41 |
|
|
|
42 |
|
|
/* IDC 1 Command */
|
43 |
|
|
#define W_RSA1 0xa0 /* write remote start address 1 */
|
44 |
|
|
#define W_RSA0 0xa1 /* write remote start address 0 */
|
45 |
|
|
#define W_NPRF 0xa2 /* write next page register NPR15-NPR8 */
|
46 |
|
|
#define W_DFR 0xa3 /* write delay factor register */
|
47 |
|
|
#define W_CPR 0xa4 /* write current page register */
|
48 |
|
|
#define W_SPR 0xa5 /* write start page register */
|
49 |
|
|
#define W_EPR 0xa6 /* write end page register */
|
50 |
|
|
#define W_SCR 0xa7 /* write system configuration register */
|
51 |
|
|
#define W_TCR 0xa8 /* write Transceiver Configuration reg */
|
52 |
|
|
#define W_EIP 0xa9 /* write EEPM Interface port */
|
53 |
|
|
#define W_PAR0 0xaa /* write physical address register 0 */
|
54 |
|
|
#define W_PAR1 0xab /* write physical address register 1 */
|
55 |
|
|
#define W_PAR2 0xac /* write physical address register 2 */
|
56 |
|
|
#define W_PAR3 0xad /* write physical address register 3 */
|
57 |
|
|
#define W_PAR4 0xae /* write physical address register 4 */
|
58 |
|
|
#define W_PAR5 0xaf /* write physical address register 5 */
|
59 |
|
|
|
60 |
|
|
/* IDC 2 Command */
|
61 |
|
|
#define R_STS 0xc0 /* read status register */
|
62 |
|
|
#define R_CPR 0xc1 /* read current page register */
|
63 |
|
|
#define R_BPR 0xc2 /* read boundary page register */
|
64 |
|
|
#define R_TDR 0xc3 /* read time domain reflectometry reg */
|
65 |
|
|
|
66 |
|
|
/* STATUS Register */
|
67 |
|
|
#define EEDI 0x80 /* EEPM DO pin */
|
68 |
|
|
#define TXSUC 0x40 /* tx success */
|
69 |
|
|
#define T16 0x20 /* tx fail 16 times */
|
70 |
|
|
#define TS1 0x40 /* 0=Tx success, 1=T16 */
|
71 |
|
|
#define TS0 0x20 /* 0=Tx success, 1=T16 */
|
72 |
|
|
#define RXGOOD 0x10 /* rx a good packet */
|
73 |
|
|
#define RXCRC 0x08 /* rx a CRC error packet */
|
74 |
|
|
#define RXSHORT 0x04 /* rx a short packet */
|
75 |
|
|
#define COLS 0x02 /* coaxial collision status */
|
76 |
|
|
#define LNKS 0x01 /* UTP link status */
|
77 |
|
|
|
78 |
|
|
/* Command Register */
|
79 |
|
|
#define CLEAR 0x10 /* reset part of hardware */
|
80 |
|
|
#define NOPER 0x08 /* No Operation */
|
81 |
|
|
#define RNOP 0x08
|
82 |
|
|
#define RRA 0x06 /* After RR then auto-advance NPR & BPR(=NPR-1) */
|
83 |
|
|
#define RRN 0x04 /* Normal Remote Read mode */
|
84 |
|
|
#define RW1 0x02 /* Remote Write tx buffer 1 ( page 6 - 11 ) */
|
85 |
|
|
#define RW0 0x00 /* Remote Write tx buffer 0 ( page 0 - 5 ) */
|
86 |
|
|
#define TXEN 0x01 /* 0->1 tx enable */
|
87 |
|
|
|
88 |
|
|
/* System Configuration Register */
|
89 |
|
|
#define TESTON 0x80 /* test host data transfer reliability */
|
90 |
|
|
#define SLEEP 0x40 /* sleep mode */
|
91 |
|
|
#if 0
|
92 |
|
|
#define FASTMODE 0x04 /* fast mode for intel 82360SL fast mode */
|
93 |
|
|
#define BYTEMODE 0x02 /* byte mode */
|
94 |
|
|
#else
|
95 |
|
|
#define FASTMODE 0x20 /* fast mode for intel 82360SL fast mode */
|
96 |
|
|
#define BYTEMODE 0x10 /* byte mode */
|
97 |
|
|
#endif
|
98 |
|
|
#define NIBBLEMODE 0x00 /* nibble mode */
|
99 |
|
|
#define IRQINV 0x08 /* turn off IRQ line inverter */
|
100 |
|
|
#define IRQNML 0x00 /* turn on IRQ line inverter */
|
101 |
|
|
#define INTON 0x04
|
102 |
|
|
#define AUTOFFSET 0x02 /* auto shift address to TPR+12 */
|
103 |
|
|
#define AUTOTX 0x01 /* auto tx when leave RW mode */
|
104 |
|
|
|
105 |
|
|
/* Transceiver Configuration Register */
|
106 |
|
|
#define JABBER 0x80 /* generate jabber condition */
|
107 |
|
|
#define TXSUCINT 0x40 /* enable tx success interrupt */
|
108 |
|
|
#define T16INT 0x20 /* enable T16 interrupt */
|
109 |
|
|
#define RXERRPKT 0x10 /* accept CRC error or short packet */
|
110 |
|
|
#define EXTERNALB2 0x0C /* external loopback 2 */
|
111 |
|
|
#define EXTERNALB1 0x08 /* external loopback 1 */
|
112 |
|
|
#define INTERNALB 0x04 /* internal loopback */
|
113 |
|
|
#define NMLOPERATE 0x00 /* normal operation */
|
114 |
|
|
#define RXPBM 0x03 /* rx physical, broadcast, multicast */
|
115 |
|
|
#define RXPB 0x02 /* rx physical, broadcast */
|
116 |
|
|
#define RXALL 0x01 /* rx all packet */
|
117 |
|
|
#define RXOFF 0x00 /* rx disable */
|