summaryrefslogtreecommitdiffstats
path: root/private/ntos/ndis/madge/driver/head_def/ftk_pnp.h
blob: 319a0c15d0ec2aa793edd1cb759ae5f0c01a62e8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
/****************************************************************************/
/****************************************************************************/
/*                                                                          */
/*      THE MADGE ADAPTER CARD DEFINITIONS (Plug aNd Play (PNP) CARDS)      */
/*      ==============================================================      */
/*                                                                          */
/*      FTK_PNP.H : Part of the FASTMAC TOOL-KIT (FTK)                      */
/*                                                                          */
/*      Copyright (c) Madge Networks Ltd. 1991-1994                         */
/*      Developed by AC                                                     */
/*      CONFIDENTIAL                                                        */
/*                                                                          */
/*                                                                          */
/****************************************************************************/
/*                                                                          */
/* This header file contains the definitions for programming Madge PNP      */
/* adapter cards.  These adapter cards have a couple of control  registers, */
/* in addition to the SIF registers.  ALL bits in ALL control registers are */
/* defined by Madge Networks Ltd                                            */
/*                                                                          */
/****************************************************************************/

/****************************************************************************/
/*                                                                          */
/* VERSION_NUMBER of FTK to which this FTK_PNP.H belongs :                  */
/*                                                                          */

#define FTK_VERSION_NUMBER_FTK_PNP_H 221


/****************************************************************************/
/*                                                                          */
/* Values : PNP REGISTER MAP                                                */
/*                                                                          */
/* The Madge Smart 16 Ringnode uses the following register layout.          */
/* N.B. The SIF registers are mapped linearly, with no overlaying.          */
/*                                                                          */

#define PNP_IO_RANGE                     32

#define PNP_CONTROL_REGISTER_1            3
#define PNP_ID_REGISTER                   8

#define PNP_FIRST_SIF_REGISTER           16


/****************************************************************************/
/*                                                                          */
/* Values : PNP CONFIGURATION REGISTERS                                     */
/*                                                                          */
/* These are the bit definitions for the PnP configuration registers.       */
/*                                                                          */

#define PNP_CONFIG_ADDRESS_REGISTER       1
#define PNP_CONFIG_DATA_REGISTER          2

#define PNP_VENDOR_CONFIG_BYTE           ((BYTE) 0xf0)

#define PNP_VENDOR_CONFIG_IRQ            ((BYTE )0x70)
#define PNP_VENDOR_CONFIG_4MBITS         ((BYTE) 0x80)
#define PNP_VENDOR_CONFIG_RSVALID        ((BYTE) 0x02)
#define PNP_VENDOR_CONFIG_PXTAL          ((BYTE) 0x01)


/****************************************************************************/
/*                                                                          */
/* Values : PNP CONTROL_REGISTER_1                                          */
/*                                                                          */
/* These are the bit definitions for control register 1 on Smart 16 cards.  */
/*                                                                          */
/* NB. The bit definitions are mostly the same as MC CONTROL_REGISTER_1.    */
/*                                                                          */

#define PNP_CTRL1_NSRESET      ((BYTE) 0x80)  /* SIF Reset signal */
#define PNP_CTRL1_CHRDY_ACTIVE ((BYTE) 0x20) /* Active channel ready. */


/****************************************************************************/
/*                                                                          */
/* This defines the bits used to set the RING SPEED for PNP cards.          */
/*                                                                          */
/* The bit is SET/CLEARED in SIFACL via adapter->nselout_bits just before   */
/* taking the card out of the RESET state.                                  */
/*                                                                          */
/* NSELOUT1 is use to control the ring speed                                */
/* NSELOUT0 should ALWAYS be left alone.                                    */
/*                                                                          */

#define PNP_RING_SPEED_4  1
#define PNP_RING_SPEED_16 0

/*
*                               
* Various definitions used to talk to EEPROM.
*
*/
#define PNP_CON_REG_OFFSET  4
#define PNP_EEDO            0x0002
#define PNP_EEDEN           0x0004
#define PNP_SSK             0x0001
#define PNP_DELAY_CNT       16
#define PNP_WAIT_CNT        1000
#define PNP_WRITE_CMD       0x00a0
#define PNP_READ_CMD        0x00a1

/*
*   Useful locations in the EEPROM
*/
#define PNP_HWARE_FEATURES1     0xEB
#define PNP_HWARE_FEATURES3     0xED
#define PNP_HWARE_PNP_FLAGS     0xEE
             
/*
*                               
* This defines the bits in HWARE_FEATURES1 which give the DRAM size.
*
*/

#define PNP_DRAM_SIZE_MASK  0x3E

/*
*                               
* This defines the bits in HWARE_FEATURES3 which give the chip type.
*
*/

#define PNP_C30_MASK  0x40
#define PNP_C30       PNP_C30_MASK  


/*
* This defines the bits in HWARE_PNP_FLAGS.
*/

#define PNP_ACTIVE_FLOAT_CHRDY  0x02

/*                                                                          */
/*                                                                          */
/************** End of FTK_PNP.H file ***************************************/
/*                                                                          */
/*                                                                          */