ath6kl: Remove dead code with CONFIG_AR6002_REV1_FORCE_HOST
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / drivers / staging / ath6kl / include / common / AR6002 / hw4.0 / hw / si_reg.h
blob2cd2e3cadbbc516055690e47235a34f2216978c3
1 // ------------------------------------------------------------------
2 // Copyright (c) 2004-2010 Atheros Corporation. All rights reserved.
3 //
4 //
5 // Permission to use, copy, modify, and/or distribute this software for any
6 // purpose with or without fee is hereby granted, provided that the above
7 // copyright notice and this permission notice appear in all copies.
8 //
9 // THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10 // WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11 // MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12 // ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13 // WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18 // ------------------------------------------------------------------
19 //===================================================================
20 // Author(s): ="Atheros"
21 //===================================================================
24 #ifndef _SI_REG_REG_H_
25 #define _SI_REG_REG_H_
27 #define SI_CONFIG_ADDRESS 0x00000000
28 #define SI_CONFIG_OFFSET 0x00000000
29 #define SI_CONFIG_ERR_INT_MSB 19
30 #define SI_CONFIG_ERR_INT_LSB 19
31 #define SI_CONFIG_ERR_INT_MASK 0x00080000
32 #define SI_CONFIG_ERR_INT_GET(x) (((x) & SI_CONFIG_ERR_INT_MASK) >> SI_CONFIG_ERR_INT_LSB)
33 #define SI_CONFIG_ERR_INT_SET(x) (((x) << SI_CONFIG_ERR_INT_LSB) & SI_CONFIG_ERR_INT_MASK)
34 #define SI_CONFIG_BIDIR_OD_DATA_MSB 18
35 #define SI_CONFIG_BIDIR_OD_DATA_LSB 18
36 #define SI_CONFIG_BIDIR_OD_DATA_MASK 0x00040000
37 #define SI_CONFIG_BIDIR_OD_DATA_GET(x) (((x) & SI_CONFIG_BIDIR_OD_DATA_MASK) >> SI_CONFIG_BIDIR_OD_DATA_LSB)
38 #define SI_CONFIG_BIDIR_OD_DATA_SET(x) (((x) << SI_CONFIG_BIDIR_OD_DATA_LSB) & SI_CONFIG_BIDIR_OD_DATA_MASK)
39 #define SI_CONFIG_I2C_MSB 16
40 #define SI_CONFIG_I2C_LSB 16
41 #define SI_CONFIG_I2C_MASK 0x00010000
42 #define SI_CONFIG_I2C_GET(x) (((x) & SI_CONFIG_I2C_MASK) >> SI_CONFIG_I2C_LSB)
43 #define SI_CONFIG_I2C_SET(x) (((x) << SI_CONFIG_I2C_LSB) & SI_CONFIG_I2C_MASK)
44 #define SI_CONFIG_POS_SAMPLE_MSB 7
45 #define SI_CONFIG_POS_SAMPLE_LSB 7
46 #define SI_CONFIG_POS_SAMPLE_MASK 0x00000080
47 #define SI_CONFIG_POS_SAMPLE_GET(x) (((x) & SI_CONFIG_POS_SAMPLE_MASK) >> SI_CONFIG_POS_SAMPLE_LSB)
48 #define SI_CONFIG_POS_SAMPLE_SET(x) (((x) << SI_CONFIG_POS_SAMPLE_LSB) & SI_CONFIG_POS_SAMPLE_MASK)
49 #define SI_CONFIG_POS_DRIVE_MSB 6
50 #define SI_CONFIG_POS_DRIVE_LSB 6
51 #define SI_CONFIG_POS_DRIVE_MASK 0x00000040
52 #define SI_CONFIG_POS_DRIVE_GET(x) (((x) & SI_CONFIG_POS_DRIVE_MASK) >> SI_CONFIG_POS_DRIVE_LSB)
53 #define SI_CONFIG_POS_DRIVE_SET(x) (((x) << SI_CONFIG_POS_DRIVE_LSB) & SI_CONFIG_POS_DRIVE_MASK)
54 #define SI_CONFIG_INACTIVE_DATA_MSB 5
55 #define SI_CONFIG_INACTIVE_DATA_LSB 5
56 #define SI_CONFIG_INACTIVE_DATA_MASK 0x00000020
57 #define SI_CONFIG_INACTIVE_DATA_GET(x) (((x) & SI_CONFIG_INACTIVE_DATA_MASK) >> SI_CONFIG_INACTIVE_DATA_LSB)
58 #define SI_CONFIG_INACTIVE_DATA_SET(x) (((x) << SI_CONFIG_INACTIVE_DATA_LSB) & SI_CONFIG_INACTIVE_DATA_MASK)
59 #define SI_CONFIG_INACTIVE_CLK_MSB 4
60 #define SI_CONFIG_INACTIVE_CLK_LSB 4
61 #define SI_CONFIG_INACTIVE_CLK_MASK 0x00000010
62 #define SI_CONFIG_INACTIVE_CLK_GET(x) (((x) & SI_CONFIG_INACTIVE_CLK_MASK) >> SI_CONFIG_INACTIVE_CLK_LSB)
63 #define SI_CONFIG_INACTIVE_CLK_SET(x) (((x) << SI_CONFIG_INACTIVE_CLK_LSB) & SI_CONFIG_INACTIVE_CLK_MASK)
64 #define SI_CONFIG_DIVIDER_MSB 3
65 #define SI_CONFIG_DIVIDER_LSB 0
66 #define SI_CONFIG_DIVIDER_MASK 0x0000000f
67 #define SI_CONFIG_DIVIDER_GET(x) (((x) & SI_CONFIG_DIVIDER_MASK) >> SI_CONFIG_DIVIDER_LSB)
68 #define SI_CONFIG_DIVIDER_SET(x) (((x) << SI_CONFIG_DIVIDER_LSB) & SI_CONFIG_DIVIDER_MASK)
70 #define SI_CS_ADDRESS 0x00000004
71 #define SI_CS_OFFSET 0x00000004
72 #define SI_CS_BIT_CNT_IN_LAST_BYTE_MSB 13
73 #define SI_CS_BIT_CNT_IN_LAST_BYTE_LSB 11
74 #define SI_CS_BIT_CNT_IN_LAST_BYTE_MASK 0x00003800
75 #define SI_CS_BIT_CNT_IN_LAST_BYTE_GET(x) (((x) & SI_CS_BIT_CNT_IN_LAST_BYTE_MASK) >> SI_CS_BIT_CNT_IN_LAST_BYTE_LSB)
76 #define SI_CS_BIT_CNT_IN_LAST_BYTE_SET(x) (((x) << SI_CS_BIT_CNT_IN_LAST_BYTE_LSB) & SI_CS_BIT_CNT_IN_LAST_BYTE_MASK)
77 #define SI_CS_DONE_ERR_MSB 10
78 #define SI_CS_DONE_ERR_LSB 10
79 #define SI_CS_DONE_ERR_MASK 0x00000400
80 #define SI_CS_DONE_ERR_GET(x) (((x) & SI_CS_DONE_ERR_MASK) >> SI_CS_DONE_ERR_LSB)
81 #define SI_CS_DONE_ERR_SET(x) (((x) << SI_CS_DONE_ERR_LSB) & SI_CS_DONE_ERR_MASK)
82 #define SI_CS_DONE_INT_MSB 9
83 #define SI_CS_DONE_INT_LSB 9
84 #define SI_CS_DONE_INT_MASK 0x00000200
85 #define SI_CS_DONE_INT_GET(x) (((x) & SI_CS_DONE_INT_MASK) >> SI_CS_DONE_INT_LSB)
86 #define SI_CS_DONE_INT_SET(x) (((x) << SI_CS_DONE_INT_LSB) & SI_CS_DONE_INT_MASK)
87 #define SI_CS_START_MSB 8
88 #define SI_CS_START_LSB 8
89 #define SI_CS_START_MASK 0x00000100
90 #define SI_CS_START_GET(x) (((x) & SI_CS_START_MASK) >> SI_CS_START_LSB)
91 #define SI_CS_START_SET(x) (((x) << SI_CS_START_LSB) & SI_CS_START_MASK)
92 #define SI_CS_RX_CNT_MSB 7
93 #define SI_CS_RX_CNT_LSB 4
94 #define SI_CS_RX_CNT_MASK 0x000000f0
95 #define SI_CS_RX_CNT_GET(x) (((x) & SI_CS_RX_CNT_MASK) >> SI_CS_RX_CNT_LSB)
96 #define SI_CS_RX_CNT_SET(x) (((x) << SI_CS_RX_CNT_LSB) & SI_CS_RX_CNT_MASK)
97 #define SI_CS_TX_CNT_MSB 3
98 #define SI_CS_TX_CNT_LSB 0
99 #define SI_CS_TX_CNT_MASK 0x0000000f
100 #define SI_CS_TX_CNT_GET(x) (((x) & SI_CS_TX_CNT_MASK) >> SI_CS_TX_CNT_LSB)
101 #define SI_CS_TX_CNT_SET(x) (((x) << SI_CS_TX_CNT_LSB) & SI_CS_TX_CNT_MASK)
103 #define SI_TX_DATA0_ADDRESS 0x00000008
104 #define SI_TX_DATA0_OFFSET 0x00000008
105 #define SI_TX_DATA0_DATA3_MSB 31
106 #define SI_TX_DATA0_DATA3_LSB 24
107 #define SI_TX_DATA0_DATA3_MASK 0xff000000
108 #define SI_TX_DATA0_DATA3_GET(x) (((x) & SI_TX_DATA0_DATA3_MASK) >> SI_TX_DATA0_DATA3_LSB)
109 #define SI_TX_DATA0_DATA3_SET(x) (((x) << SI_TX_DATA0_DATA3_LSB) & SI_TX_DATA0_DATA3_MASK)
110 #define SI_TX_DATA0_DATA2_MSB 23
111 #define SI_TX_DATA0_DATA2_LSB 16
112 #define SI_TX_DATA0_DATA2_MASK 0x00ff0000
113 #define SI_TX_DATA0_DATA2_GET(x) (((x) & SI_TX_DATA0_DATA2_MASK) >> SI_TX_DATA0_DATA2_LSB)
114 #define SI_TX_DATA0_DATA2_SET(x) (((x) << SI_TX_DATA0_DATA2_LSB) & SI_TX_DATA0_DATA2_MASK)
115 #define SI_TX_DATA0_DATA1_MSB 15
116 #define SI_TX_DATA0_DATA1_LSB 8
117 #define SI_TX_DATA0_DATA1_MASK 0x0000ff00
118 #define SI_TX_DATA0_DATA1_GET(x) (((x) & SI_TX_DATA0_DATA1_MASK) >> SI_TX_DATA0_DATA1_LSB)
119 #define SI_TX_DATA0_DATA1_SET(x) (((x) << SI_TX_DATA0_DATA1_LSB) & SI_TX_DATA0_DATA1_MASK)
120 #define SI_TX_DATA0_DATA0_MSB 7
121 #define SI_TX_DATA0_DATA0_LSB 0
122 #define SI_TX_DATA0_DATA0_MASK 0x000000ff
123 #define SI_TX_DATA0_DATA0_GET(x) (((x) & SI_TX_DATA0_DATA0_MASK) >> SI_TX_DATA0_DATA0_LSB)
124 #define SI_TX_DATA0_DATA0_SET(x) (((x) << SI_TX_DATA0_DATA0_LSB) & SI_TX_DATA0_DATA0_MASK)
126 #define SI_TX_DATA1_ADDRESS 0x0000000c
127 #define SI_TX_DATA1_OFFSET 0x0000000c
128 #define SI_TX_DATA1_DATA7_MSB 31
129 #define SI_TX_DATA1_DATA7_LSB 24
130 #define SI_TX_DATA1_DATA7_MASK 0xff000000
131 #define SI_TX_DATA1_DATA7_GET(x) (((x) & SI_TX_DATA1_DATA7_MASK) >> SI_TX_DATA1_DATA7_LSB)
132 #define SI_TX_DATA1_DATA7_SET(x) (((x) << SI_TX_DATA1_DATA7_LSB) & SI_TX_DATA1_DATA7_MASK)
133 #define SI_TX_DATA1_DATA6_MSB 23
134 #define SI_TX_DATA1_DATA6_LSB 16
135 #define SI_TX_DATA1_DATA6_MASK 0x00ff0000
136 #define SI_TX_DATA1_DATA6_GET(x) (((x) & SI_TX_DATA1_DATA6_MASK) >> SI_TX_DATA1_DATA6_LSB)
137 #define SI_TX_DATA1_DATA6_SET(x) (((x) << SI_TX_DATA1_DATA6_LSB) & SI_TX_DATA1_DATA6_MASK)
138 #define SI_TX_DATA1_DATA5_MSB 15
139 #define SI_TX_DATA1_DATA5_LSB 8
140 #define SI_TX_DATA1_DATA5_MASK 0x0000ff00
141 #define SI_TX_DATA1_DATA5_GET(x) (((x) & SI_TX_DATA1_DATA5_MASK) >> SI_TX_DATA1_DATA5_LSB)
142 #define SI_TX_DATA1_DATA5_SET(x) (((x) << SI_TX_DATA1_DATA5_LSB) & SI_TX_DATA1_DATA5_MASK)
143 #define SI_TX_DATA1_DATA4_MSB 7
144 #define SI_TX_DATA1_DATA4_LSB 0
145 #define SI_TX_DATA1_DATA4_MASK 0x000000ff
146 #define SI_TX_DATA1_DATA4_GET(x) (((x) & SI_TX_DATA1_DATA4_MASK) >> SI_TX_DATA1_DATA4_LSB)
147 #define SI_TX_DATA1_DATA4_SET(x) (((x) << SI_TX_DATA1_DATA4_LSB) & SI_TX_DATA1_DATA4_MASK)
149 #define SI_RX_DATA0_ADDRESS 0x00000010
150 #define SI_RX_DATA0_OFFSET 0x00000010
151 #define SI_RX_DATA0_DATA3_MSB 31
152 #define SI_RX_DATA0_DATA3_LSB 24
153 #define SI_RX_DATA0_DATA3_MASK 0xff000000
154 #define SI_RX_DATA0_DATA3_GET(x) (((x) & SI_RX_DATA0_DATA3_MASK) >> SI_RX_DATA0_DATA3_LSB)
155 #define SI_RX_DATA0_DATA3_SET(x) (((x) << SI_RX_DATA0_DATA3_LSB) & SI_RX_DATA0_DATA3_MASK)
156 #define SI_RX_DATA0_DATA2_MSB 23
157 #define SI_RX_DATA0_DATA2_LSB 16
158 #define SI_RX_DATA0_DATA2_MASK 0x00ff0000
159 #define SI_RX_DATA0_DATA2_GET(x) (((x) & SI_RX_DATA0_DATA2_MASK) >> SI_RX_DATA0_DATA2_LSB)
160 #define SI_RX_DATA0_DATA2_SET(x) (((x) << SI_RX_DATA0_DATA2_LSB) & SI_RX_DATA0_DATA2_MASK)
161 #define SI_RX_DATA0_DATA1_MSB 15
162 #define SI_RX_DATA0_DATA1_LSB 8
163 #define SI_RX_DATA0_DATA1_MASK 0x0000ff00
164 #define SI_RX_DATA0_DATA1_GET(x) (((x) & SI_RX_DATA0_DATA1_MASK) >> SI_RX_DATA0_DATA1_LSB)
165 #define SI_RX_DATA0_DATA1_SET(x) (((x) << SI_RX_DATA0_DATA1_LSB) & SI_RX_DATA0_DATA1_MASK)
166 #define SI_RX_DATA0_DATA0_MSB 7
167 #define SI_RX_DATA0_DATA0_LSB 0
168 #define SI_RX_DATA0_DATA0_MASK 0x000000ff
169 #define SI_RX_DATA0_DATA0_GET(x) (((x) & SI_RX_DATA0_DATA0_MASK) >> SI_RX_DATA0_DATA0_LSB)
170 #define SI_RX_DATA0_DATA0_SET(x) (((x) << SI_RX_DATA0_DATA0_LSB) & SI_RX_DATA0_DATA0_MASK)
172 #define SI_RX_DATA1_ADDRESS 0x00000014
173 #define SI_RX_DATA1_OFFSET 0x00000014
174 #define SI_RX_DATA1_DATA7_MSB 31
175 #define SI_RX_DATA1_DATA7_LSB 24
176 #define SI_RX_DATA1_DATA7_MASK 0xff000000
177 #define SI_RX_DATA1_DATA7_GET(x) (((x) & SI_RX_DATA1_DATA7_MASK) >> SI_RX_DATA1_DATA7_LSB)
178 #define SI_RX_DATA1_DATA7_SET(x) (((x) << SI_RX_DATA1_DATA7_LSB) & SI_RX_DATA1_DATA7_MASK)
179 #define SI_RX_DATA1_DATA6_MSB 23
180 #define SI_RX_DATA1_DATA6_LSB 16
181 #define SI_RX_DATA1_DATA6_MASK 0x00ff0000
182 #define SI_RX_DATA1_DATA6_GET(x) (((x) & SI_RX_DATA1_DATA6_MASK) >> SI_RX_DATA1_DATA6_LSB)
183 #define SI_RX_DATA1_DATA6_SET(x) (((x) << SI_RX_DATA1_DATA6_LSB) & SI_RX_DATA1_DATA6_MASK)
184 #define SI_RX_DATA1_DATA5_MSB 15
185 #define SI_RX_DATA1_DATA5_LSB 8
186 #define SI_RX_DATA1_DATA5_MASK 0x0000ff00
187 #define SI_RX_DATA1_DATA5_GET(x) (((x) & SI_RX_DATA1_DATA5_MASK) >> SI_RX_DATA1_DATA5_LSB)
188 #define SI_RX_DATA1_DATA5_SET(x) (((x) << SI_RX_DATA1_DATA5_LSB) & SI_RX_DATA1_DATA5_MASK)
189 #define SI_RX_DATA1_DATA4_MSB 7
190 #define SI_RX_DATA1_DATA4_LSB 0
191 #define SI_RX_DATA1_DATA4_MASK 0x000000ff
192 #define SI_RX_DATA1_DATA4_GET(x) (((x) & SI_RX_DATA1_DATA4_MASK) >> SI_RX_DATA1_DATA4_LSB)
193 #define SI_RX_DATA1_DATA4_SET(x) (((x) << SI_RX_DATA1_DATA4_LSB) & SI_RX_DATA1_DATA4_MASK)
196 #ifndef __ASSEMBLER__
198 typedef struct si_reg_reg_s {
199 volatile unsigned int si_config;
200 volatile unsigned int si_cs;
201 volatile unsigned int si_tx_data0;
202 volatile unsigned int si_tx_data1;
203 volatile unsigned int si_rx_data0;
204 volatile unsigned int si_rx_data1;
205 } si_reg_reg_t;
207 #endif /* __ASSEMBLER__ */
209 #endif /* _SI_REG_H_ */