diff options
Diffstat (limited to 'arch/mips/include/asm/octeon/cvmx-gpio-defs.h')
-rw-r--r-- | arch/mips/include/asm/octeon/cvmx-gpio-defs.h | 282 |
1 files changed, 274 insertions, 8 deletions
diff --git a/arch/mips/include/asm/octeon/cvmx-gpio-defs.h b/arch/mips/include/asm/octeon/cvmx-gpio-defs.h index 395564e8d1f0..4719fcfa8865 100644 --- a/arch/mips/include/asm/octeon/cvmx-gpio-defs.h +++ b/arch/mips/include/asm/octeon/cvmx-gpio-defs.h | |||
@@ -4,7 +4,7 @@ | |||
4 | * Contact: support@caviumnetworks.com | 4 | * Contact: support@caviumnetworks.com |
5 | * This file is part of the OCTEON SDK | 5 | * This file is part of the OCTEON SDK |
6 | * | 6 | * |
7 | * Copyright (c) 2003-2010 Cavium Networks | 7 | * Copyright (c) 2003-2012 Cavium Networks |
8 | * | 8 | * |
9 | * This file is free software; you can redistribute it and/or modify | 9 | * This file is free software; you can redistribute it and/or modify |
10 | * it under the terms of the GNU General Public License, Version 2, as | 10 | * it under the terms of the GNU General Public License, Version 2, as |
@@ -34,7 +34,10 @@ | |||
34 | #define CVMX_GPIO_CLK_QLMX(offset) (CVMX_ADD_IO_SEG(0x00010700000008E0ull) + ((offset) & 1) * 8) | 34 | #define CVMX_GPIO_CLK_QLMX(offset) (CVMX_ADD_IO_SEG(0x00010700000008E0ull) + ((offset) & 1) * 8) |
35 | #define CVMX_GPIO_DBG_ENA (CVMX_ADD_IO_SEG(0x00010700000008A0ull)) | 35 | #define CVMX_GPIO_DBG_ENA (CVMX_ADD_IO_SEG(0x00010700000008A0ull)) |
36 | #define CVMX_GPIO_INT_CLR (CVMX_ADD_IO_SEG(0x0001070000000898ull)) | 36 | #define CVMX_GPIO_INT_CLR (CVMX_ADD_IO_SEG(0x0001070000000898ull)) |
37 | #define CVMX_GPIO_MULTI_CAST (CVMX_ADD_IO_SEG(0x00010700000008B0ull)) | ||
38 | #define CVMX_GPIO_PIN_ENA (CVMX_ADD_IO_SEG(0x00010700000008B8ull)) | ||
37 | #define CVMX_GPIO_RX_DAT (CVMX_ADD_IO_SEG(0x0001070000000880ull)) | 39 | #define CVMX_GPIO_RX_DAT (CVMX_ADD_IO_SEG(0x0001070000000880ull)) |
40 | #define CVMX_GPIO_TIM_CTL (CVMX_ADD_IO_SEG(0x00010700000008A0ull)) | ||
38 | #define CVMX_GPIO_TX_CLR (CVMX_ADD_IO_SEG(0x0001070000000890ull)) | 41 | #define CVMX_GPIO_TX_CLR (CVMX_ADD_IO_SEG(0x0001070000000890ull)) |
39 | #define CVMX_GPIO_TX_SET (CVMX_ADD_IO_SEG(0x0001070000000888ull)) | 42 | #define CVMX_GPIO_TX_SET (CVMX_ADD_IO_SEG(0x0001070000000888ull)) |
40 | #define CVMX_GPIO_XBIT_CFGX(offset) (CVMX_ADD_IO_SEG(0x0001070000000900ull) + ((offset) & 31) * 8 - 8*16) | 43 | #define CVMX_GPIO_XBIT_CFGX(offset) (CVMX_ADD_IO_SEG(0x0001070000000900ull) + ((offset) & 31) * 8 - 8*16) |
@@ -42,6 +45,7 @@ | |||
42 | union cvmx_gpio_bit_cfgx { | 45 | union cvmx_gpio_bit_cfgx { |
43 | uint64_t u64; | 46 | uint64_t u64; |
44 | struct cvmx_gpio_bit_cfgx_s { | 47 | struct cvmx_gpio_bit_cfgx_s { |
48 | #ifdef __BIG_ENDIAN_BITFIELD | ||
45 | uint64_t reserved_17_63:47; | 49 | uint64_t reserved_17_63:47; |
46 | uint64_t synce_sel:2; | 50 | uint64_t synce_sel:2; |
47 | uint64_t clk_gen:1; | 51 | uint64_t clk_gen:1; |
@@ -52,8 +56,21 @@ union cvmx_gpio_bit_cfgx { | |||
52 | uint64_t int_en:1; | 56 | uint64_t int_en:1; |
53 | uint64_t rx_xor:1; | 57 | uint64_t rx_xor:1; |
54 | uint64_t tx_oe:1; | 58 | uint64_t tx_oe:1; |
59 | #else | ||
60 | uint64_t tx_oe:1; | ||
61 | uint64_t rx_xor:1; | ||
62 | uint64_t int_en:1; | ||
63 | uint64_t int_type:1; | ||
64 | uint64_t fil_cnt:4; | ||
65 | uint64_t fil_sel:4; | ||
66 | uint64_t clk_sel:2; | ||
67 | uint64_t clk_gen:1; | ||
68 | uint64_t synce_sel:2; | ||
69 | uint64_t reserved_17_63:47; | ||
70 | #endif | ||
55 | } s; | 71 | } s; |
56 | struct cvmx_gpio_bit_cfgx_cn30xx { | 72 | struct cvmx_gpio_bit_cfgx_cn30xx { |
73 | #ifdef __BIG_ENDIAN_BITFIELD | ||
57 | uint64_t reserved_12_63:52; | 74 | uint64_t reserved_12_63:52; |
58 | uint64_t fil_sel:4; | 75 | uint64_t fil_sel:4; |
59 | uint64_t fil_cnt:4; | 76 | uint64_t fil_cnt:4; |
@@ -61,12 +78,22 @@ union cvmx_gpio_bit_cfgx { | |||
61 | uint64_t int_en:1; | 78 | uint64_t int_en:1; |
62 | uint64_t rx_xor:1; | 79 | uint64_t rx_xor:1; |
63 | uint64_t tx_oe:1; | 80 | uint64_t tx_oe:1; |
81 | #else | ||
82 | uint64_t tx_oe:1; | ||
83 | uint64_t rx_xor:1; | ||
84 | uint64_t int_en:1; | ||
85 | uint64_t int_type:1; | ||
86 | uint64_t fil_cnt:4; | ||
87 | uint64_t fil_sel:4; | ||
88 | uint64_t reserved_12_63:52; | ||
89 | #endif | ||
64 | } cn30xx; | 90 | } cn30xx; |
65 | struct cvmx_gpio_bit_cfgx_cn30xx cn31xx; | 91 | struct cvmx_gpio_bit_cfgx_cn30xx cn31xx; |
66 | struct cvmx_gpio_bit_cfgx_cn30xx cn38xx; | 92 | struct cvmx_gpio_bit_cfgx_cn30xx cn38xx; |
67 | struct cvmx_gpio_bit_cfgx_cn30xx cn38xxp2; | 93 | struct cvmx_gpio_bit_cfgx_cn30xx cn38xxp2; |
68 | struct cvmx_gpio_bit_cfgx_cn30xx cn50xx; | 94 | struct cvmx_gpio_bit_cfgx_cn30xx cn50xx; |
69 | struct cvmx_gpio_bit_cfgx_cn52xx { | 95 | struct cvmx_gpio_bit_cfgx_cn52xx { |
96 | #ifdef __BIG_ENDIAN_BITFIELD | ||
70 | uint64_t reserved_15_63:49; | 97 | uint64_t reserved_15_63:49; |
71 | uint64_t clk_gen:1; | 98 | uint64_t clk_gen:1; |
72 | uint64_t clk_sel:2; | 99 | uint64_t clk_sel:2; |
@@ -76,22 +103,44 @@ union cvmx_gpio_bit_cfgx { | |||
76 | uint64_t int_en:1; | 103 | uint64_t int_en:1; |
77 | uint64_t rx_xor:1; | 104 | uint64_t rx_xor:1; |
78 | uint64_t tx_oe:1; | 105 | uint64_t tx_oe:1; |
106 | #else | ||
107 | uint64_t tx_oe:1; | ||
108 | uint64_t rx_xor:1; | ||
109 | uint64_t int_en:1; | ||
110 | uint64_t int_type:1; | ||
111 | uint64_t fil_cnt:4; | ||
112 | uint64_t fil_sel:4; | ||
113 | uint64_t clk_sel:2; | ||
114 | uint64_t clk_gen:1; | ||
115 | uint64_t reserved_15_63:49; | ||
116 | #endif | ||
79 | } cn52xx; | 117 | } cn52xx; |
80 | struct cvmx_gpio_bit_cfgx_cn52xx cn52xxp1; | 118 | struct cvmx_gpio_bit_cfgx_cn52xx cn52xxp1; |
81 | struct cvmx_gpio_bit_cfgx_cn52xx cn56xx; | 119 | struct cvmx_gpio_bit_cfgx_cn52xx cn56xx; |
82 | struct cvmx_gpio_bit_cfgx_cn52xx cn56xxp1; | 120 | struct cvmx_gpio_bit_cfgx_cn52xx cn56xxp1; |
83 | struct cvmx_gpio_bit_cfgx_cn30xx cn58xx; | 121 | struct cvmx_gpio_bit_cfgx_cn30xx cn58xx; |
84 | struct cvmx_gpio_bit_cfgx_cn30xx cn58xxp1; | 122 | struct cvmx_gpio_bit_cfgx_cn30xx cn58xxp1; |
123 | struct cvmx_gpio_bit_cfgx_s cn61xx; | ||
85 | struct cvmx_gpio_bit_cfgx_s cn63xx; | 124 | struct cvmx_gpio_bit_cfgx_s cn63xx; |
86 | struct cvmx_gpio_bit_cfgx_s cn63xxp1; | 125 | struct cvmx_gpio_bit_cfgx_s cn63xxp1; |
126 | struct cvmx_gpio_bit_cfgx_s cn66xx; | ||
127 | struct cvmx_gpio_bit_cfgx_s cn68xx; | ||
128 | struct cvmx_gpio_bit_cfgx_s cn68xxp1; | ||
129 | struct cvmx_gpio_bit_cfgx_s cnf71xx; | ||
87 | }; | 130 | }; |
88 | 131 | ||
89 | union cvmx_gpio_boot_ena { | 132 | union cvmx_gpio_boot_ena { |
90 | uint64_t u64; | 133 | uint64_t u64; |
91 | struct cvmx_gpio_boot_ena_s { | 134 | struct cvmx_gpio_boot_ena_s { |
135 | #ifdef __BIG_ENDIAN_BITFIELD | ||
92 | uint64_t reserved_12_63:52; | 136 | uint64_t reserved_12_63:52; |
93 | uint64_t boot_ena:4; | 137 | uint64_t boot_ena:4; |
94 | uint64_t reserved_0_7:8; | 138 | uint64_t reserved_0_7:8; |
139 | #else | ||
140 | uint64_t reserved_0_7:8; | ||
141 | uint64_t boot_ena:4; | ||
142 | uint64_t reserved_12_63:52; | ||
143 | #endif | ||
95 | } s; | 144 | } s; |
96 | struct cvmx_gpio_boot_ena_s cn30xx; | 145 | struct cvmx_gpio_boot_ena_s cn30xx; |
97 | struct cvmx_gpio_boot_ena_s cn31xx; | 146 | struct cvmx_gpio_boot_ena_s cn31xx; |
@@ -101,33 +150,87 @@ union cvmx_gpio_boot_ena { | |||
101 | union cvmx_gpio_clk_genx { | 150 | union cvmx_gpio_clk_genx { |
102 | uint64_t u64; | 151 | uint64_t u64; |
103 | struct cvmx_gpio_clk_genx_s { | 152 | struct cvmx_gpio_clk_genx_s { |
153 | #ifdef __BIG_ENDIAN_BITFIELD | ||
104 | uint64_t reserved_32_63:32; | 154 | uint64_t reserved_32_63:32; |
105 | uint64_t n:32; | 155 | uint64_t n:32; |
156 | #else | ||
157 | uint64_t n:32; | ||
158 | uint64_t reserved_32_63:32; | ||
159 | #endif | ||
106 | } s; | 160 | } s; |
107 | struct cvmx_gpio_clk_genx_s cn52xx; | 161 | struct cvmx_gpio_clk_genx_s cn52xx; |
108 | struct cvmx_gpio_clk_genx_s cn52xxp1; | 162 | struct cvmx_gpio_clk_genx_s cn52xxp1; |
109 | struct cvmx_gpio_clk_genx_s cn56xx; | 163 | struct cvmx_gpio_clk_genx_s cn56xx; |
110 | struct cvmx_gpio_clk_genx_s cn56xxp1; | 164 | struct cvmx_gpio_clk_genx_s cn56xxp1; |
165 | struct cvmx_gpio_clk_genx_s cn61xx; | ||
111 | struct cvmx_gpio_clk_genx_s cn63xx; | 166 | struct cvmx_gpio_clk_genx_s cn63xx; |
112 | struct cvmx_gpio_clk_genx_s cn63xxp1; | 167 | struct cvmx_gpio_clk_genx_s cn63xxp1; |
168 | struct cvmx_gpio_clk_genx_s cn66xx; | ||
169 | struct cvmx_gpio_clk_genx_s cn68xx; | ||
170 | struct cvmx_gpio_clk_genx_s cn68xxp1; | ||
171 | struct cvmx_gpio_clk_genx_s cnf71xx; | ||
113 | }; | 172 | }; |
114 | 173 | ||
115 | union cvmx_gpio_clk_qlmx { | 174 | union cvmx_gpio_clk_qlmx { |
116 | uint64_t u64; | 175 | uint64_t u64; |
117 | struct cvmx_gpio_clk_qlmx_s { | 176 | struct cvmx_gpio_clk_qlmx_s { |
118 | uint64_t reserved_3_63:61; | 177 | #ifdef __BIG_ENDIAN_BITFIELD |
178 | uint64_t reserved_11_63:53; | ||
179 | uint64_t qlm_sel:3; | ||
180 | uint64_t reserved_3_7:5; | ||
119 | uint64_t div:1; | 181 | uint64_t div:1; |
120 | uint64_t lane_sel:2; | 182 | uint64_t lane_sel:2; |
183 | #else | ||
184 | uint64_t lane_sel:2; | ||
185 | uint64_t div:1; | ||
186 | uint64_t reserved_3_7:5; | ||
187 | uint64_t qlm_sel:3; | ||
188 | uint64_t reserved_11_63:53; | ||
189 | #endif | ||
121 | } s; | 190 | } s; |
122 | struct cvmx_gpio_clk_qlmx_s cn63xx; | 191 | struct cvmx_gpio_clk_qlmx_cn61xx { |
123 | struct cvmx_gpio_clk_qlmx_s cn63xxp1; | 192 | #ifdef __BIG_ENDIAN_BITFIELD |
193 | uint64_t reserved_10_63:54; | ||
194 | uint64_t qlm_sel:2; | ||
195 | uint64_t reserved_3_7:5; | ||
196 | uint64_t div:1; | ||
197 | uint64_t lane_sel:2; | ||
198 | #else | ||
199 | uint64_t lane_sel:2; | ||
200 | uint64_t div:1; | ||
201 | uint64_t reserved_3_7:5; | ||
202 | uint64_t qlm_sel:2; | ||
203 | uint64_t reserved_10_63:54; | ||
204 | #endif | ||
205 | } cn61xx; | ||
206 | struct cvmx_gpio_clk_qlmx_cn63xx { | ||
207 | #ifdef __BIG_ENDIAN_BITFIELD | ||
208 | uint64_t reserved_3_63:61; | ||
209 | uint64_t div:1; | ||
210 | uint64_t lane_sel:2; | ||
211 | #else | ||
212 | uint64_t lane_sel:2; | ||
213 | uint64_t div:1; | ||
214 | uint64_t reserved_3_63:61; | ||
215 | #endif | ||
216 | } cn63xx; | ||
217 | struct cvmx_gpio_clk_qlmx_cn63xx cn63xxp1; | ||
218 | struct cvmx_gpio_clk_qlmx_cn61xx cn66xx; | ||
219 | struct cvmx_gpio_clk_qlmx_s cn68xx; | ||
220 | struct cvmx_gpio_clk_qlmx_s cn68xxp1; | ||
221 | struct cvmx_gpio_clk_qlmx_cn61xx cnf71xx; | ||
124 | }; | 222 | }; |
125 | 223 | ||
126 | union cvmx_gpio_dbg_ena { | 224 | union cvmx_gpio_dbg_ena { |
127 | uint64_t u64; | 225 | uint64_t u64; |
128 | struct cvmx_gpio_dbg_ena_s { | 226 | struct cvmx_gpio_dbg_ena_s { |
227 | #ifdef __BIG_ENDIAN_BITFIELD | ||
129 | uint64_t reserved_21_63:43; | 228 | uint64_t reserved_21_63:43; |
130 | uint64_t dbg_ena:21; | 229 | uint64_t dbg_ena:21; |
230 | #else | ||
231 | uint64_t dbg_ena:21; | ||
232 | uint64_t reserved_21_63:43; | ||
233 | #endif | ||
131 | } s; | 234 | } s; |
132 | struct cvmx_gpio_dbg_ena_s cn30xx; | 235 | struct cvmx_gpio_dbg_ena_s cn30xx; |
133 | struct cvmx_gpio_dbg_ena_s cn31xx; | 236 | struct cvmx_gpio_dbg_ena_s cn31xx; |
@@ -137,8 +240,13 @@ union cvmx_gpio_dbg_ena { | |||
137 | union cvmx_gpio_int_clr { | 240 | union cvmx_gpio_int_clr { |
138 | uint64_t u64; | 241 | uint64_t u64; |
139 | struct cvmx_gpio_int_clr_s { | 242 | struct cvmx_gpio_int_clr_s { |
243 | #ifdef __BIG_ENDIAN_BITFIELD | ||
140 | uint64_t reserved_16_63:48; | 244 | uint64_t reserved_16_63:48; |
141 | uint64_t type:16; | 245 | uint64_t type:16; |
246 | #else | ||
247 | uint64_t type:16; | ||
248 | uint64_t reserved_16_63:48; | ||
249 | #endif | ||
142 | } s; | 250 | } s; |
143 | struct cvmx_gpio_int_clr_s cn30xx; | 251 | struct cvmx_gpio_int_clr_s cn30xx; |
144 | struct cvmx_gpio_int_clr_s cn31xx; | 252 | struct cvmx_gpio_int_clr_s cn31xx; |
@@ -151,21 +259,69 @@ union cvmx_gpio_int_clr { | |||
151 | struct cvmx_gpio_int_clr_s cn56xxp1; | 259 | struct cvmx_gpio_int_clr_s cn56xxp1; |
152 | struct cvmx_gpio_int_clr_s cn58xx; | 260 | struct cvmx_gpio_int_clr_s cn58xx; |
153 | struct cvmx_gpio_int_clr_s cn58xxp1; | 261 | struct cvmx_gpio_int_clr_s cn58xxp1; |
262 | struct cvmx_gpio_int_clr_s cn61xx; | ||
154 | struct cvmx_gpio_int_clr_s cn63xx; | 263 | struct cvmx_gpio_int_clr_s cn63xx; |
155 | struct cvmx_gpio_int_clr_s cn63xxp1; | 264 | struct cvmx_gpio_int_clr_s cn63xxp1; |
265 | struct cvmx_gpio_int_clr_s cn66xx; | ||
266 | struct cvmx_gpio_int_clr_s cn68xx; | ||
267 | struct cvmx_gpio_int_clr_s cn68xxp1; | ||
268 | struct cvmx_gpio_int_clr_s cnf71xx; | ||
269 | }; | ||
270 | |||
271 | union cvmx_gpio_multi_cast { | ||
272 | uint64_t u64; | ||
273 | struct cvmx_gpio_multi_cast_s { | ||
274 | #ifdef __BIG_ENDIAN_BITFIELD | ||
275 | uint64_t reserved_1_63:63; | ||
276 | uint64_t en:1; | ||
277 | #else | ||
278 | uint64_t en:1; | ||
279 | uint64_t reserved_1_63:63; | ||
280 | #endif | ||
281 | } s; | ||
282 | struct cvmx_gpio_multi_cast_s cn61xx; | ||
283 | struct cvmx_gpio_multi_cast_s cnf71xx; | ||
284 | }; | ||
285 | |||
286 | union cvmx_gpio_pin_ena { | ||
287 | uint64_t u64; | ||
288 | struct cvmx_gpio_pin_ena_s { | ||
289 | #ifdef __BIG_ENDIAN_BITFIELD | ||
290 | uint64_t reserved_20_63:44; | ||
291 | uint64_t ena19:1; | ||
292 | uint64_t ena18:1; | ||
293 | uint64_t reserved_0_17:18; | ||
294 | #else | ||
295 | uint64_t reserved_0_17:18; | ||
296 | uint64_t ena18:1; | ||
297 | uint64_t ena19:1; | ||
298 | uint64_t reserved_20_63:44; | ||
299 | #endif | ||
300 | } s; | ||
301 | struct cvmx_gpio_pin_ena_s cn66xx; | ||
156 | }; | 302 | }; |
157 | 303 | ||
158 | union cvmx_gpio_rx_dat { | 304 | union cvmx_gpio_rx_dat { |
159 | uint64_t u64; | 305 | uint64_t u64; |
160 | struct cvmx_gpio_rx_dat_s { | 306 | struct cvmx_gpio_rx_dat_s { |
307 | #ifdef __BIG_ENDIAN_BITFIELD | ||
161 | uint64_t reserved_24_63:40; | 308 | uint64_t reserved_24_63:40; |
162 | uint64_t dat:24; | 309 | uint64_t dat:24; |
310 | #else | ||
311 | uint64_t dat:24; | ||
312 | uint64_t reserved_24_63:40; | ||
313 | #endif | ||
163 | } s; | 314 | } s; |
164 | struct cvmx_gpio_rx_dat_s cn30xx; | 315 | struct cvmx_gpio_rx_dat_s cn30xx; |
165 | struct cvmx_gpio_rx_dat_s cn31xx; | 316 | struct cvmx_gpio_rx_dat_s cn31xx; |
166 | struct cvmx_gpio_rx_dat_cn38xx { | 317 | struct cvmx_gpio_rx_dat_cn38xx { |
318 | #ifdef __BIG_ENDIAN_BITFIELD | ||
167 | uint64_t reserved_16_63:48; | 319 | uint64_t reserved_16_63:48; |
168 | uint64_t dat:16; | 320 | uint64_t dat:16; |
321 | #else | ||
322 | uint64_t dat:16; | ||
323 | uint64_t reserved_16_63:48; | ||
324 | #endif | ||
169 | } cn38xx; | 325 | } cn38xx; |
170 | struct cvmx_gpio_rx_dat_cn38xx cn38xxp2; | 326 | struct cvmx_gpio_rx_dat_cn38xx cn38xxp2; |
171 | struct cvmx_gpio_rx_dat_s cn50xx; | 327 | struct cvmx_gpio_rx_dat_s cn50xx; |
@@ -175,21 +331,59 @@ union cvmx_gpio_rx_dat { | |||
175 | struct cvmx_gpio_rx_dat_cn38xx cn56xxp1; | 331 | struct cvmx_gpio_rx_dat_cn38xx cn56xxp1; |
176 | struct cvmx_gpio_rx_dat_cn38xx cn58xx; | 332 | struct cvmx_gpio_rx_dat_cn38xx cn58xx; |
177 | struct cvmx_gpio_rx_dat_cn38xx cn58xxp1; | 333 | struct cvmx_gpio_rx_dat_cn38xx cn58xxp1; |
334 | struct cvmx_gpio_rx_dat_cn61xx { | ||
335 | #ifdef __BIG_ENDIAN_BITFIELD | ||
336 | uint64_t reserved_20_63:44; | ||
337 | uint64_t dat:20; | ||
338 | #else | ||
339 | uint64_t dat:20; | ||
340 | uint64_t reserved_20_63:44; | ||
341 | #endif | ||
342 | } cn61xx; | ||
178 | struct cvmx_gpio_rx_dat_cn38xx cn63xx; | 343 | struct cvmx_gpio_rx_dat_cn38xx cn63xx; |
179 | struct cvmx_gpio_rx_dat_cn38xx cn63xxp1; | 344 | struct cvmx_gpio_rx_dat_cn38xx cn63xxp1; |
345 | struct cvmx_gpio_rx_dat_cn61xx cn66xx; | ||
346 | struct cvmx_gpio_rx_dat_cn38xx cn68xx; | ||
347 | struct cvmx_gpio_rx_dat_cn38xx cn68xxp1; | ||
348 | struct cvmx_gpio_rx_dat_cn61xx cnf71xx; | ||
349 | }; | ||
350 | |||
351 | union cvmx_gpio_tim_ctl { | ||
352 | uint64_t u64; | ||
353 | struct cvmx_gpio_tim_ctl_s { | ||
354 | #ifdef __BIG_ENDIAN_BITFIELD | ||
355 | uint64_t reserved_4_63:60; | ||
356 | uint64_t sel:4; | ||
357 | #else | ||
358 | uint64_t sel:4; | ||
359 | uint64_t reserved_4_63:60; | ||
360 | #endif | ||
361 | } s; | ||
362 | struct cvmx_gpio_tim_ctl_s cn68xx; | ||
363 | struct cvmx_gpio_tim_ctl_s cn68xxp1; | ||
180 | }; | 364 | }; |
181 | 365 | ||
182 | union cvmx_gpio_tx_clr { | 366 | union cvmx_gpio_tx_clr { |
183 | uint64_t u64; | 367 | uint64_t u64; |
184 | struct cvmx_gpio_tx_clr_s { | 368 | struct cvmx_gpio_tx_clr_s { |
369 | #ifdef __BIG_ENDIAN_BITFIELD | ||
185 | uint64_t reserved_24_63:40; | 370 | uint64_t reserved_24_63:40; |
186 | uint64_t clr:24; | 371 | uint64_t clr:24; |
372 | #else | ||
373 | uint64_t clr:24; | ||
374 | uint64_t reserved_24_63:40; | ||
375 | #endif | ||
187 | } s; | 376 | } s; |
188 | struct cvmx_gpio_tx_clr_s cn30xx; | 377 | struct cvmx_gpio_tx_clr_s cn30xx; |
189 | struct cvmx_gpio_tx_clr_s cn31xx; | 378 | struct cvmx_gpio_tx_clr_s cn31xx; |
190 | struct cvmx_gpio_tx_clr_cn38xx { | 379 | struct cvmx_gpio_tx_clr_cn38xx { |
380 | #ifdef __BIG_ENDIAN_BITFIELD | ||
191 | uint64_t reserved_16_63:48; | 381 | uint64_t reserved_16_63:48; |
192 | uint64_t clr:16; | 382 | uint64_t clr:16; |
383 | #else | ||
384 | uint64_t clr:16; | ||
385 | uint64_t reserved_16_63:48; | ||
386 | #endif | ||
193 | } cn38xx; | 387 | } cn38xx; |
194 | struct cvmx_gpio_tx_clr_cn38xx cn38xxp2; | 388 | struct cvmx_gpio_tx_clr_cn38xx cn38xxp2; |
195 | struct cvmx_gpio_tx_clr_s cn50xx; | 389 | struct cvmx_gpio_tx_clr_s cn50xx; |
@@ -199,21 +393,44 @@ union cvmx_gpio_tx_clr { | |||
199 | struct cvmx_gpio_tx_clr_cn38xx cn56xxp1; | 393 | struct cvmx_gpio_tx_clr_cn38xx cn56xxp1; |
200 | struct cvmx_gpio_tx_clr_cn38xx cn58xx; | 394 | struct cvmx_gpio_tx_clr_cn38xx cn58xx; |
201 | struct cvmx_gpio_tx_clr_cn38xx cn58xxp1; | 395 | struct cvmx_gpio_tx_clr_cn38xx cn58xxp1; |
396 | struct cvmx_gpio_tx_clr_cn61xx { | ||
397 | #ifdef __BIG_ENDIAN_BITFIELD | ||
398 | uint64_t reserved_20_63:44; | ||
399 | uint64_t clr:20; | ||
400 | #else | ||
401 | uint64_t clr:20; | ||
402 | uint64_t reserved_20_63:44; | ||
403 | #endif | ||
404 | } cn61xx; | ||
202 | struct cvmx_gpio_tx_clr_cn38xx cn63xx; | 405 | struct cvmx_gpio_tx_clr_cn38xx cn63xx; |
203 | struct cvmx_gpio_tx_clr_cn38xx cn63xxp1; | 406 | struct cvmx_gpio_tx_clr_cn38xx cn63xxp1; |
407 | struct cvmx_gpio_tx_clr_cn61xx cn66xx; | ||
408 | struct cvmx_gpio_tx_clr_cn38xx cn68xx; | ||
409 | struct cvmx_gpio_tx_clr_cn38xx cn68xxp1; | ||
410 | struct cvmx_gpio_tx_clr_cn61xx cnf71xx; | ||
204 | }; | 411 | }; |
205 | 412 | ||
206 | union cvmx_gpio_tx_set { | 413 | union cvmx_gpio_tx_set { |
207 | uint64_t u64; | 414 | uint64_t u64; |
208 | struct cvmx_gpio_tx_set_s { | 415 | struct cvmx_gpio_tx_set_s { |
416 | #ifdef __BIG_ENDIAN_BITFIELD | ||
209 | uint64_t reserved_24_63:40; | 417 | uint64_t reserved_24_63:40; |
210 | uint64_t set:24; | 418 | uint64_t set:24; |
419 | #else | ||
420 | uint64_t set:24; | ||
421 | uint64_t reserved_24_63:40; | ||
422 | #endif | ||
211 | } s; | 423 | } s; |
212 | struct cvmx_gpio_tx_set_s cn30xx; | 424 | struct cvmx_gpio_tx_set_s cn30xx; |
213 | struct cvmx_gpio_tx_set_s cn31xx; | 425 | struct cvmx_gpio_tx_set_s cn31xx; |
214 | struct cvmx_gpio_tx_set_cn38xx { | 426 | struct cvmx_gpio_tx_set_cn38xx { |
427 | #ifdef __BIG_ENDIAN_BITFIELD | ||
215 | uint64_t reserved_16_63:48; | 428 | uint64_t reserved_16_63:48; |
216 | uint64_t set:16; | 429 | uint64_t set:16; |
430 | #else | ||
431 | uint64_t set:16; | ||
432 | uint64_t reserved_16_63:48; | ||
433 | #endif | ||
217 | } cn38xx; | 434 | } cn38xx; |
218 | struct cvmx_gpio_tx_set_cn38xx cn38xxp2; | 435 | struct cvmx_gpio_tx_set_cn38xx cn38xxp2; |
219 | struct cvmx_gpio_tx_set_s cn50xx; | 436 | struct cvmx_gpio_tx_set_s cn50xx; |
@@ -223,23 +440,72 @@ union cvmx_gpio_tx_set { | |||
223 | struct cvmx_gpio_tx_set_cn38xx cn56xxp1; | 440 | struct cvmx_gpio_tx_set_cn38xx cn56xxp1; |
224 | struct cvmx_gpio_tx_set_cn38xx cn58xx; | 441 | struct cvmx_gpio_tx_set_cn38xx cn58xx; |
225 | struct cvmx_gpio_tx_set_cn38xx cn58xxp1; | 442 | struct cvmx_gpio_tx_set_cn38xx cn58xxp1; |
443 | struct cvmx_gpio_tx_set_cn61xx { | ||
444 | #ifdef __BIG_ENDIAN_BITFIELD | ||
445 | uint64_t reserved_20_63:44; | ||
446 | uint64_t set:20; | ||
447 | #else | ||
448 | uint64_t set:20; | ||
449 | uint64_t reserved_20_63:44; | ||
450 | #endif | ||
451 | } cn61xx; | ||
226 | struct cvmx_gpio_tx_set_cn38xx cn63xx; | 452 | struct cvmx_gpio_tx_set_cn38xx cn63xx; |
227 | struct cvmx_gpio_tx_set_cn38xx cn63xxp1; | 453 | struct cvmx_gpio_tx_set_cn38xx cn63xxp1; |
454 | struct cvmx_gpio_tx_set_cn61xx cn66xx; | ||
455 | struct cvmx_gpio_tx_set_cn38xx cn68xx; | ||
456 | struct cvmx_gpio_tx_set_cn38xx cn68xxp1; | ||
457 | struct cvmx_gpio_tx_set_cn61xx cnf71xx; | ||
228 | }; | 458 | }; |
229 | 459 | ||
230 | union cvmx_gpio_xbit_cfgx { | 460 | union cvmx_gpio_xbit_cfgx { |
231 | uint64_t u64; | 461 | uint64_t u64; |
232 | struct cvmx_gpio_xbit_cfgx_s { | 462 | struct cvmx_gpio_xbit_cfgx_s { |
463 | #ifdef __BIG_ENDIAN_BITFIELD | ||
464 | uint64_t reserved_17_63:47; | ||
465 | uint64_t synce_sel:2; | ||
466 | uint64_t clk_gen:1; | ||
467 | uint64_t clk_sel:2; | ||
468 | uint64_t fil_sel:4; | ||
469 | uint64_t fil_cnt:4; | ||
470 | uint64_t int_type:1; | ||
471 | uint64_t int_en:1; | ||
472 | uint64_t rx_xor:1; | ||
473 | uint64_t tx_oe:1; | ||
474 | #else | ||
475 | uint64_t tx_oe:1; | ||
476 | uint64_t rx_xor:1; | ||
477 | uint64_t int_en:1; | ||
478 | uint64_t int_type:1; | ||
479 | uint64_t fil_cnt:4; | ||
480 | uint64_t fil_sel:4; | ||
481 | uint64_t clk_sel:2; | ||
482 | uint64_t clk_gen:1; | ||
483 | uint64_t synce_sel:2; | ||
484 | uint64_t reserved_17_63:47; | ||
485 | #endif | ||
486 | } s; | ||
487 | struct cvmx_gpio_xbit_cfgx_cn30xx { | ||
488 | #ifdef __BIG_ENDIAN_BITFIELD | ||
233 | uint64_t reserved_12_63:52; | 489 | uint64_t reserved_12_63:52; |
234 | uint64_t fil_sel:4; | 490 | uint64_t fil_sel:4; |
235 | uint64_t fil_cnt:4; | 491 | uint64_t fil_cnt:4; |
236 | uint64_t reserved_2_3:2; | 492 | uint64_t reserved_2_3:2; |
237 | uint64_t rx_xor:1; | 493 | uint64_t rx_xor:1; |
238 | uint64_t tx_oe:1; | 494 | uint64_t tx_oe:1; |
239 | } s; | 495 | #else |
240 | struct cvmx_gpio_xbit_cfgx_s cn30xx; | 496 | uint64_t tx_oe:1; |
241 | struct cvmx_gpio_xbit_cfgx_s cn31xx; | 497 | uint64_t rx_xor:1; |
242 | struct cvmx_gpio_xbit_cfgx_s cn50xx; | 498 | uint64_t reserved_2_3:2; |
499 | uint64_t fil_cnt:4; | ||
500 | uint64_t fil_sel:4; | ||
501 | uint64_t reserved_12_63:52; | ||
502 | #endif | ||
503 | } cn30xx; | ||
504 | struct cvmx_gpio_xbit_cfgx_cn30xx cn31xx; | ||
505 | struct cvmx_gpio_xbit_cfgx_cn30xx cn50xx; | ||
506 | struct cvmx_gpio_xbit_cfgx_s cn61xx; | ||
507 | struct cvmx_gpio_xbit_cfgx_s cn66xx; | ||
508 | struct cvmx_gpio_xbit_cfgx_s cnf71xx; | ||
243 | }; | 509 | }; |
244 | 510 | ||
245 | #endif | 511 | #endif |