1 /***********************license start***************
2 * Author: Cavium Networks
4 * Contact: support@caviumnetworks.com
5 * This file is part of the OCTEON SDK
7 * Copyright (c) 2003-2012 Cavium Networks
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
11 * published by the Free Software Foundation.
13 * This file is distributed in the hope that it will be useful, but
14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
15 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
16 * NONINFRINGEMENT. See the GNU General Public License for more
19 * You should have received a copy of the GNU General Public License
20 * along with this file; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22 * or visit http://www.gnu.org/licenses/.
24 * This file may also be available under a different license from Cavium.
25 * Contact Cavium Networks for more information
26 ***********************license end**************************************/
28 #ifndef __CVMX_PCSX_DEFS_H__
29 #define __CVMX_PCSX_DEFS_H__
31 static inline uint64_t CVMX_PCSX_ANX_ADV_REG(unsigned long offset
, unsigned long block_id
)
33 switch (cvmx_get_octeon_family()) {
34 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
35 return CVMX_ADD_IO_SEG(0x00011800B0001010ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
36 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
37 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
38 return CVMX_ADD_IO_SEG(0x00011800B0001010ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
39 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
40 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
41 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
42 return CVMX_ADD_IO_SEG(0x00011800B0001010ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
43 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
44 return CVMX_ADD_IO_SEG(0x00011800B0001010ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
46 return CVMX_ADD_IO_SEG(0x00011800B0001010ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
49 static inline uint64_t CVMX_PCSX_ANX_EXT_ST_REG(unsigned long offset
, unsigned long block_id
)
51 switch (cvmx_get_octeon_family()) {
52 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
53 return CVMX_ADD_IO_SEG(0x00011800B0001028ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
54 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
55 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
56 return CVMX_ADD_IO_SEG(0x00011800B0001028ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
57 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
58 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
59 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
60 return CVMX_ADD_IO_SEG(0x00011800B0001028ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
61 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
62 return CVMX_ADD_IO_SEG(0x00011800B0001028ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
64 return CVMX_ADD_IO_SEG(0x00011800B0001028ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
67 static inline uint64_t CVMX_PCSX_ANX_LP_ABIL_REG(unsigned long offset
, unsigned long block_id
)
69 switch (cvmx_get_octeon_family()) {
70 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
71 return CVMX_ADD_IO_SEG(0x00011800B0001018ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
72 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
73 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
74 return CVMX_ADD_IO_SEG(0x00011800B0001018ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
75 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
76 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
77 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
78 return CVMX_ADD_IO_SEG(0x00011800B0001018ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
79 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
80 return CVMX_ADD_IO_SEG(0x00011800B0001018ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
82 return CVMX_ADD_IO_SEG(0x00011800B0001018ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
85 static inline uint64_t CVMX_PCSX_ANX_RESULTS_REG(unsigned long offset
, unsigned long block_id
)
87 switch (cvmx_get_octeon_family()) {
88 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
89 return CVMX_ADD_IO_SEG(0x00011800B0001020ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
90 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
91 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
92 return CVMX_ADD_IO_SEG(0x00011800B0001020ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
93 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
94 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
95 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
96 return CVMX_ADD_IO_SEG(0x00011800B0001020ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
97 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
98 return CVMX_ADD_IO_SEG(0x00011800B0001020ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
100 return CVMX_ADD_IO_SEG(0x00011800B0001020ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
103 static inline uint64_t CVMX_PCSX_INTX_EN_REG(unsigned long offset
, unsigned long block_id
)
105 switch (cvmx_get_octeon_family()) {
106 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
107 return CVMX_ADD_IO_SEG(0x00011800B0001088ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
108 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
109 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
110 return CVMX_ADD_IO_SEG(0x00011800B0001088ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
111 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
112 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
113 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
114 return CVMX_ADD_IO_SEG(0x00011800B0001088ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
115 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
116 return CVMX_ADD_IO_SEG(0x00011800B0001088ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
118 return CVMX_ADD_IO_SEG(0x00011800B0001088ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
121 static inline uint64_t CVMX_PCSX_INTX_REG(unsigned long offset
, unsigned long block_id
)
123 switch (cvmx_get_octeon_family()) {
124 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
125 return CVMX_ADD_IO_SEG(0x00011800B0001080ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
126 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
127 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
128 return CVMX_ADD_IO_SEG(0x00011800B0001080ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
129 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
130 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
131 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
132 return CVMX_ADD_IO_SEG(0x00011800B0001080ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
133 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
134 return CVMX_ADD_IO_SEG(0x00011800B0001080ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
136 return CVMX_ADD_IO_SEG(0x00011800B0001080ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
139 static inline uint64_t CVMX_PCSX_LINKX_TIMER_COUNT_REG(unsigned long offset
, unsigned long block_id
)
141 switch (cvmx_get_octeon_family()) {
142 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
143 return CVMX_ADD_IO_SEG(0x00011800B0001040ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
144 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
145 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
146 return CVMX_ADD_IO_SEG(0x00011800B0001040ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
147 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
148 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
149 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
150 return CVMX_ADD_IO_SEG(0x00011800B0001040ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
151 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
152 return CVMX_ADD_IO_SEG(0x00011800B0001040ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
154 return CVMX_ADD_IO_SEG(0x00011800B0001040ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
157 static inline uint64_t CVMX_PCSX_LOG_ANLX_REG(unsigned long offset
, unsigned long block_id
)
159 switch (cvmx_get_octeon_family()) {
160 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
161 return CVMX_ADD_IO_SEG(0x00011800B0001090ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
162 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
163 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
164 return CVMX_ADD_IO_SEG(0x00011800B0001090ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
165 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
166 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
167 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
168 return CVMX_ADD_IO_SEG(0x00011800B0001090ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
169 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
170 return CVMX_ADD_IO_SEG(0x00011800B0001090ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
172 return CVMX_ADD_IO_SEG(0x00011800B0001090ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
175 static inline uint64_t CVMX_PCSX_MISCX_CTL_REG(unsigned long offset
, unsigned long block_id
)
177 switch (cvmx_get_octeon_family()) {
178 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
179 return CVMX_ADD_IO_SEG(0x00011800B0001078ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
180 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
181 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
182 return CVMX_ADD_IO_SEG(0x00011800B0001078ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
183 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
184 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
185 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
186 return CVMX_ADD_IO_SEG(0x00011800B0001078ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
187 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
188 return CVMX_ADD_IO_SEG(0x00011800B0001078ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
190 return CVMX_ADD_IO_SEG(0x00011800B0001078ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
193 static inline uint64_t CVMX_PCSX_MRX_CONTROL_REG(unsigned long offset
, unsigned long block_id
)
195 switch (cvmx_get_octeon_family()) {
196 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
197 return CVMX_ADD_IO_SEG(0x00011800B0001000ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
198 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
199 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
200 return CVMX_ADD_IO_SEG(0x00011800B0001000ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
201 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
202 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
203 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
204 return CVMX_ADD_IO_SEG(0x00011800B0001000ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
205 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
206 return CVMX_ADD_IO_SEG(0x00011800B0001000ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
208 return CVMX_ADD_IO_SEG(0x00011800B0001000ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
211 static inline uint64_t CVMX_PCSX_MRX_STATUS_REG(unsigned long offset
, unsigned long block_id
)
213 switch (cvmx_get_octeon_family()) {
214 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
215 return CVMX_ADD_IO_SEG(0x00011800B0001008ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
216 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
217 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
218 return CVMX_ADD_IO_SEG(0x00011800B0001008ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
219 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
220 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
221 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
222 return CVMX_ADD_IO_SEG(0x00011800B0001008ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
223 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
224 return CVMX_ADD_IO_SEG(0x00011800B0001008ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
226 return CVMX_ADD_IO_SEG(0x00011800B0001008ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
229 static inline uint64_t CVMX_PCSX_RXX_STATES_REG(unsigned long offset
, unsigned long block_id
)
231 switch (cvmx_get_octeon_family()) {
232 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
233 return CVMX_ADD_IO_SEG(0x00011800B0001058ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
234 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
235 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
236 return CVMX_ADD_IO_SEG(0x00011800B0001058ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
237 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
238 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
239 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
240 return CVMX_ADD_IO_SEG(0x00011800B0001058ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
241 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
242 return CVMX_ADD_IO_SEG(0x00011800B0001058ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
244 return CVMX_ADD_IO_SEG(0x00011800B0001058ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
247 static inline uint64_t CVMX_PCSX_RXX_SYNC_REG(unsigned long offset
, unsigned long block_id
)
249 switch (cvmx_get_octeon_family()) {
250 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
251 return CVMX_ADD_IO_SEG(0x00011800B0001050ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
252 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
253 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
254 return CVMX_ADD_IO_SEG(0x00011800B0001050ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
255 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
256 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
257 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
258 return CVMX_ADD_IO_SEG(0x00011800B0001050ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
259 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
260 return CVMX_ADD_IO_SEG(0x00011800B0001050ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
262 return CVMX_ADD_IO_SEG(0x00011800B0001050ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
265 static inline uint64_t CVMX_PCSX_SGMX_AN_ADV_REG(unsigned long offset
, unsigned long block_id
)
267 switch (cvmx_get_octeon_family()) {
268 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
269 return CVMX_ADD_IO_SEG(0x00011800B0001068ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
270 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
271 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
272 return CVMX_ADD_IO_SEG(0x00011800B0001068ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
273 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
274 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
275 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
276 return CVMX_ADD_IO_SEG(0x00011800B0001068ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
277 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
278 return CVMX_ADD_IO_SEG(0x00011800B0001068ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
280 return CVMX_ADD_IO_SEG(0x00011800B0001068ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
283 static inline uint64_t CVMX_PCSX_SGMX_LP_ADV_REG(unsigned long offset
, unsigned long block_id
)
285 switch (cvmx_get_octeon_family()) {
286 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
287 return CVMX_ADD_IO_SEG(0x00011800B0001070ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
288 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
289 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
290 return CVMX_ADD_IO_SEG(0x00011800B0001070ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
291 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
292 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
293 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
294 return CVMX_ADD_IO_SEG(0x00011800B0001070ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
295 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
296 return CVMX_ADD_IO_SEG(0x00011800B0001070ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
298 return CVMX_ADD_IO_SEG(0x00011800B0001070ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
301 static inline uint64_t CVMX_PCSX_TXX_STATES_REG(unsigned long offset
, unsigned long block_id
)
303 switch (cvmx_get_octeon_family()) {
304 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
305 return CVMX_ADD_IO_SEG(0x00011800B0001060ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
306 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
307 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
308 return CVMX_ADD_IO_SEG(0x00011800B0001060ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
309 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
310 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
311 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
312 return CVMX_ADD_IO_SEG(0x00011800B0001060ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
313 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
314 return CVMX_ADD_IO_SEG(0x00011800B0001060ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
316 return CVMX_ADD_IO_SEG(0x00011800B0001060ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
319 static inline uint64_t CVMX_PCSX_TX_RXX_POLARITY_REG(unsigned long offset
, unsigned long block_id
)
321 switch (cvmx_get_octeon_family()) {
322 case OCTEON_CNF71XX
& OCTEON_FAMILY_MASK
:
323 return CVMX_ADD_IO_SEG(0x00011800B0001048ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
324 case OCTEON_CN63XX
& OCTEON_FAMILY_MASK
:
325 case OCTEON_CN52XX
& OCTEON_FAMILY_MASK
:
326 return CVMX_ADD_IO_SEG(0x00011800B0001048ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
327 case OCTEON_CN56XX
& OCTEON_FAMILY_MASK
:
328 case OCTEON_CN66XX
& OCTEON_FAMILY_MASK
:
329 case OCTEON_CN61XX
& OCTEON_FAMILY_MASK
:
330 return CVMX_ADD_IO_SEG(0x00011800B0001048ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
331 case OCTEON_CN68XX
& OCTEON_FAMILY_MASK
:
332 return CVMX_ADD_IO_SEG(0x00011800B0001048ull
) + ((offset
) + (block_id
) * 0x4000ull
) * 1024;
334 return CVMX_ADD_IO_SEG(0x00011800B0001048ull
) + ((offset
) + (block_id
) * 0x20000ull
) * 1024;
337 union cvmx_pcsx_anx_adv_reg
{
339 struct cvmx_pcsx_anx_adv_reg_s
{
340 #ifdef __BIG_ENDIAN_BITFIELD
341 uint64_t reserved_16_63
:48;
343 uint64_t reserved_14_14
:1;
345 uint64_t reserved_9_11
:3;
349 uint64_t reserved_0_4
:5;
351 uint64_t reserved_0_4
:5;
355 uint64_t reserved_9_11
:3;
357 uint64_t reserved_14_14
:1;
359 uint64_t reserved_16_63
:48;
362 struct cvmx_pcsx_anx_adv_reg_s cn52xx
;
363 struct cvmx_pcsx_anx_adv_reg_s cn52xxp1
;
364 struct cvmx_pcsx_anx_adv_reg_s cn56xx
;
365 struct cvmx_pcsx_anx_adv_reg_s cn56xxp1
;
366 struct cvmx_pcsx_anx_adv_reg_s cn61xx
;
367 struct cvmx_pcsx_anx_adv_reg_s cn63xx
;
368 struct cvmx_pcsx_anx_adv_reg_s cn63xxp1
;
369 struct cvmx_pcsx_anx_adv_reg_s cn66xx
;
370 struct cvmx_pcsx_anx_adv_reg_s cn68xx
;
371 struct cvmx_pcsx_anx_adv_reg_s cn68xxp1
;
372 struct cvmx_pcsx_anx_adv_reg_s cnf71xx
;
375 union cvmx_pcsx_anx_ext_st_reg
{
377 struct cvmx_pcsx_anx_ext_st_reg_s
{
378 #ifdef __BIG_ENDIAN_BITFIELD
379 uint64_t reserved_16_63
:48;
384 uint64_t reserved_0_11
:12;
386 uint64_t reserved_0_11
:12;
391 uint64_t reserved_16_63
:48;
394 struct cvmx_pcsx_anx_ext_st_reg_s cn52xx
;
395 struct cvmx_pcsx_anx_ext_st_reg_s cn52xxp1
;
396 struct cvmx_pcsx_anx_ext_st_reg_s cn56xx
;
397 struct cvmx_pcsx_anx_ext_st_reg_s cn56xxp1
;
398 struct cvmx_pcsx_anx_ext_st_reg_s cn61xx
;
399 struct cvmx_pcsx_anx_ext_st_reg_s cn63xx
;
400 struct cvmx_pcsx_anx_ext_st_reg_s cn63xxp1
;
401 struct cvmx_pcsx_anx_ext_st_reg_s cn66xx
;
402 struct cvmx_pcsx_anx_ext_st_reg_s cn68xx
;
403 struct cvmx_pcsx_anx_ext_st_reg_s cn68xxp1
;
404 struct cvmx_pcsx_anx_ext_st_reg_s cnf71xx
;
407 union cvmx_pcsx_anx_lp_abil_reg
{
409 struct cvmx_pcsx_anx_lp_abil_reg_s
{
410 #ifdef __BIG_ENDIAN_BITFIELD
411 uint64_t reserved_16_63
:48;
415 uint64_t reserved_9_11
:3;
419 uint64_t reserved_0_4
:5;
421 uint64_t reserved_0_4
:5;
425 uint64_t reserved_9_11
:3;
429 uint64_t reserved_16_63
:48;
432 struct cvmx_pcsx_anx_lp_abil_reg_s cn52xx
;
433 struct cvmx_pcsx_anx_lp_abil_reg_s cn52xxp1
;
434 struct cvmx_pcsx_anx_lp_abil_reg_s cn56xx
;
435 struct cvmx_pcsx_anx_lp_abil_reg_s cn56xxp1
;
436 struct cvmx_pcsx_anx_lp_abil_reg_s cn61xx
;
437 struct cvmx_pcsx_anx_lp_abil_reg_s cn63xx
;
438 struct cvmx_pcsx_anx_lp_abil_reg_s cn63xxp1
;
439 struct cvmx_pcsx_anx_lp_abil_reg_s cn66xx
;
440 struct cvmx_pcsx_anx_lp_abil_reg_s cn68xx
;
441 struct cvmx_pcsx_anx_lp_abil_reg_s cn68xxp1
;
442 struct cvmx_pcsx_anx_lp_abil_reg_s cnf71xx
;
445 union cvmx_pcsx_anx_results_reg
{
447 struct cvmx_pcsx_anx_results_reg_s
{
448 #ifdef __BIG_ENDIAN_BITFIELD
449 uint64_t reserved_7_63
:57;
461 uint64_t reserved_7_63
:57;
464 struct cvmx_pcsx_anx_results_reg_s cn52xx
;
465 struct cvmx_pcsx_anx_results_reg_s cn52xxp1
;
466 struct cvmx_pcsx_anx_results_reg_s cn56xx
;
467 struct cvmx_pcsx_anx_results_reg_s cn56xxp1
;
468 struct cvmx_pcsx_anx_results_reg_s cn61xx
;
469 struct cvmx_pcsx_anx_results_reg_s cn63xx
;
470 struct cvmx_pcsx_anx_results_reg_s cn63xxp1
;
471 struct cvmx_pcsx_anx_results_reg_s cn66xx
;
472 struct cvmx_pcsx_anx_results_reg_s cn68xx
;
473 struct cvmx_pcsx_anx_results_reg_s cn68xxp1
;
474 struct cvmx_pcsx_anx_results_reg_s cnf71xx
;
477 union cvmx_pcsx_intx_en_reg
{
479 struct cvmx_pcsx_intx_en_reg_s
{
480 #ifdef __BIG_ENDIAN_BITFIELD
481 uint64_t reserved_13_63
:51;
482 uint64_t dbg_sync_en
:1;
484 uint64_t sync_bad_en
:1;
485 uint64_t an_bad_en
:1;
486 uint64_t rxlock_en
:1;
490 uint64_t txfifo_en
:1;
491 uint64_t txfifu_en
:1;
492 uint64_t an_err_en
:1;
494 uint64_t lnkspd_en
:1;
496 uint64_t lnkspd_en
:1;
498 uint64_t an_err_en
:1;
499 uint64_t txfifu_en
:1;
500 uint64_t txfifo_en
:1;
504 uint64_t rxlock_en
:1;
505 uint64_t an_bad_en
:1;
506 uint64_t sync_bad_en
:1;
508 uint64_t dbg_sync_en
:1;
509 uint64_t reserved_13_63
:51;
512 struct cvmx_pcsx_intx_en_reg_cn52xx
{
513 #ifdef __BIG_ENDIAN_BITFIELD
514 uint64_t reserved_12_63
:52;
516 uint64_t sync_bad_en
:1;
517 uint64_t an_bad_en
:1;
518 uint64_t rxlock_en
:1;
522 uint64_t txfifo_en
:1;
523 uint64_t txfifu_en
:1;
524 uint64_t an_err_en
:1;
526 uint64_t lnkspd_en
:1;
528 uint64_t lnkspd_en
:1;
530 uint64_t an_err_en
:1;
531 uint64_t txfifu_en
:1;
532 uint64_t txfifo_en
:1;
536 uint64_t rxlock_en
:1;
537 uint64_t an_bad_en
:1;
538 uint64_t sync_bad_en
:1;
540 uint64_t reserved_12_63
:52;
543 struct cvmx_pcsx_intx_en_reg_cn52xx cn52xxp1
;
544 struct cvmx_pcsx_intx_en_reg_cn52xx cn56xx
;
545 struct cvmx_pcsx_intx_en_reg_cn52xx cn56xxp1
;
546 struct cvmx_pcsx_intx_en_reg_s cn61xx
;
547 struct cvmx_pcsx_intx_en_reg_s cn63xx
;
548 struct cvmx_pcsx_intx_en_reg_s cn63xxp1
;
549 struct cvmx_pcsx_intx_en_reg_s cn66xx
;
550 struct cvmx_pcsx_intx_en_reg_s cn68xx
;
551 struct cvmx_pcsx_intx_en_reg_s cn68xxp1
;
552 struct cvmx_pcsx_intx_en_reg_s cnf71xx
;
555 union cvmx_pcsx_intx_reg
{
557 struct cvmx_pcsx_intx_reg_s
{
558 #ifdef __BIG_ENDIAN_BITFIELD
559 uint64_t reserved_13_63
:51;
587 uint64_t reserved_13_63
:51;
590 struct cvmx_pcsx_intx_reg_cn52xx
{
591 #ifdef __BIG_ENDIAN_BITFIELD
592 uint64_t reserved_12_63
:52;
618 uint64_t reserved_12_63
:52;
621 struct cvmx_pcsx_intx_reg_cn52xx cn52xxp1
;
622 struct cvmx_pcsx_intx_reg_cn52xx cn56xx
;
623 struct cvmx_pcsx_intx_reg_cn52xx cn56xxp1
;
624 struct cvmx_pcsx_intx_reg_s cn61xx
;
625 struct cvmx_pcsx_intx_reg_s cn63xx
;
626 struct cvmx_pcsx_intx_reg_s cn63xxp1
;
627 struct cvmx_pcsx_intx_reg_s cn66xx
;
628 struct cvmx_pcsx_intx_reg_s cn68xx
;
629 struct cvmx_pcsx_intx_reg_s cn68xxp1
;
630 struct cvmx_pcsx_intx_reg_s cnf71xx
;
633 union cvmx_pcsx_linkx_timer_count_reg
{
635 struct cvmx_pcsx_linkx_timer_count_reg_s
{
636 #ifdef __BIG_ENDIAN_BITFIELD
637 uint64_t reserved_16_63
:48;
641 uint64_t reserved_16_63
:48;
644 struct cvmx_pcsx_linkx_timer_count_reg_s cn52xx
;
645 struct cvmx_pcsx_linkx_timer_count_reg_s cn52xxp1
;
646 struct cvmx_pcsx_linkx_timer_count_reg_s cn56xx
;
647 struct cvmx_pcsx_linkx_timer_count_reg_s cn56xxp1
;
648 struct cvmx_pcsx_linkx_timer_count_reg_s cn61xx
;
649 struct cvmx_pcsx_linkx_timer_count_reg_s cn63xx
;
650 struct cvmx_pcsx_linkx_timer_count_reg_s cn63xxp1
;
651 struct cvmx_pcsx_linkx_timer_count_reg_s cn66xx
;
652 struct cvmx_pcsx_linkx_timer_count_reg_s cn68xx
;
653 struct cvmx_pcsx_linkx_timer_count_reg_s cn68xxp1
;
654 struct cvmx_pcsx_linkx_timer_count_reg_s cnf71xx
;
657 union cvmx_pcsx_log_anlx_reg
{
659 struct cvmx_pcsx_log_anlx_reg_s
{
660 #ifdef __BIG_ENDIAN_BITFIELD
661 uint64_t reserved_4_63
:60;
662 uint64_t lafifovfl
:1;
668 uint64_t lafifovfl
:1;
669 uint64_t reserved_4_63
:60;
672 struct cvmx_pcsx_log_anlx_reg_s cn52xx
;
673 struct cvmx_pcsx_log_anlx_reg_s cn52xxp1
;
674 struct cvmx_pcsx_log_anlx_reg_s cn56xx
;
675 struct cvmx_pcsx_log_anlx_reg_s cn56xxp1
;
676 struct cvmx_pcsx_log_anlx_reg_s cn61xx
;
677 struct cvmx_pcsx_log_anlx_reg_s cn63xx
;
678 struct cvmx_pcsx_log_anlx_reg_s cn63xxp1
;
679 struct cvmx_pcsx_log_anlx_reg_s cn66xx
;
680 struct cvmx_pcsx_log_anlx_reg_s cn68xx
;
681 struct cvmx_pcsx_log_anlx_reg_s cn68xxp1
;
682 struct cvmx_pcsx_log_anlx_reg_s cnf71xx
;
685 union cvmx_pcsx_miscx_ctl_reg
{
687 struct cvmx_pcsx_miscx_ctl_reg_s
{
688 #ifdef __BIG_ENDIAN_BITFIELD
689 uint64_t reserved_13_63
:51;
705 uint64_t reserved_13_63
:51;
708 struct cvmx_pcsx_miscx_ctl_reg_s cn52xx
;
709 struct cvmx_pcsx_miscx_ctl_reg_s cn52xxp1
;
710 struct cvmx_pcsx_miscx_ctl_reg_s cn56xx
;
711 struct cvmx_pcsx_miscx_ctl_reg_s cn56xxp1
;
712 struct cvmx_pcsx_miscx_ctl_reg_s cn61xx
;
713 struct cvmx_pcsx_miscx_ctl_reg_s cn63xx
;
714 struct cvmx_pcsx_miscx_ctl_reg_s cn63xxp1
;
715 struct cvmx_pcsx_miscx_ctl_reg_s cn66xx
;
716 struct cvmx_pcsx_miscx_ctl_reg_s cn68xx
;
717 struct cvmx_pcsx_miscx_ctl_reg_s cn68xxp1
;
718 struct cvmx_pcsx_miscx_ctl_reg_s cnf71xx
;
721 union cvmx_pcsx_mrx_control_reg
{
723 struct cvmx_pcsx_mrx_control_reg_s
{
724 #ifdef __BIG_ENDIAN_BITFIELD
725 uint64_t reserved_16_63
:48;
731 uint64_t reserved_10_10
:1;
737 uint64_t reserved_0_4
:5;
739 uint64_t reserved_0_4
:5;
745 uint64_t reserved_10_10
:1;
751 uint64_t reserved_16_63
:48;
754 struct cvmx_pcsx_mrx_control_reg_s cn52xx
;
755 struct cvmx_pcsx_mrx_control_reg_s cn52xxp1
;
756 struct cvmx_pcsx_mrx_control_reg_s cn56xx
;
757 struct cvmx_pcsx_mrx_control_reg_s cn56xxp1
;
758 struct cvmx_pcsx_mrx_control_reg_s cn61xx
;
759 struct cvmx_pcsx_mrx_control_reg_s cn63xx
;
760 struct cvmx_pcsx_mrx_control_reg_s cn63xxp1
;
761 struct cvmx_pcsx_mrx_control_reg_s cn66xx
;
762 struct cvmx_pcsx_mrx_control_reg_s cn68xx
;
763 struct cvmx_pcsx_mrx_control_reg_s cn68xxp1
;
764 struct cvmx_pcsx_mrx_control_reg_s cnf71xx
;
767 union cvmx_pcsx_mrx_status_reg
{
769 struct cvmx_pcsx_mrx_status_reg_s
{
770 #ifdef __BIG_ENDIAN_BITFIELD
771 uint64_t reserved_16_63
:48;
780 uint64_t reserved_7_7
:1;
786 uint64_t reserved_1_1
:1;
790 uint64_t reserved_1_1
:1;
796 uint64_t reserved_7_7
:1;
805 uint64_t reserved_16_63
:48;
808 struct cvmx_pcsx_mrx_status_reg_s cn52xx
;
809 struct cvmx_pcsx_mrx_status_reg_s cn52xxp1
;
810 struct cvmx_pcsx_mrx_status_reg_s cn56xx
;
811 struct cvmx_pcsx_mrx_status_reg_s cn56xxp1
;
812 struct cvmx_pcsx_mrx_status_reg_s cn61xx
;
813 struct cvmx_pcsx_mrx_status_reg_s cn63xx
;
814 struct cvmx_pcsx_mrx_status_reg_s cn63xxp1
;
815 struct cvmx_pcsx_mrx_status_reg_s cn66xx
;
816 struct cvmx_pcsx_mrx_status_reg_s cn68xx
;
817 struct cvmx_pcsx_mrx_status_reg_s cn68xxp1
;
818 struct cvmx_pcsx_mrx_status_reg_s cnf71xx
;
821 union cvmx_pcsx_rxx_states_reg
{
823 struct cvmx_pcsx_rxx_states_reg_s
{
824 #ifdef __BIG_ENDIAN_BITFIELD
825 uint64_t reserved_16_63
:48;
839 uint64_t reserved_16_63
:48;
842 struct cvmx_pcsx_rxx_states_reg_s cn52xx
;
843 struct cvmx_pcsx_rxx_states_reg_s cn52xxp1
;
844 struct cvmx_pcsx_rxx_states_reg_s cn56xx
;
845 struct cvmx_pcsx_rxx_states_reg_s cn56xxp1
;
846 struct cvmx_pcsx_rxx_states_reg_s cn61xx
;
847 struct cvmx_pcsx_rxx_states_reg_s cn63xx
;
848 struct cvmx_pcsx_rxx_states_reg_s cn63xxp1
;
849 struct cvmx_pcsx_rxx_states_reg_s cn66xx
;
850 struct cvmx_pcsx_rxx_states_reg_s cn68xx
;
851 struct cvmx_pcsx_rxx_states_reg_s cn68xxp1
;
852 struct cvmx_pcsx_rxx_states_reg_s cnf71xx
;
855 union cvmx_pcsx_rxx_sync_reg
{
857 struct cvmx_pcsx_rxx_sync_reg_s
{
858 #ifdef __BIG_ENDIAN_BITFIELD
859 uint64_t reserved_2_63
:62;
865 uint64_t reserved_2_63
:62;
868 struct cvmx_pcsx_rxx_sync_reg_s cn52xx
;
869 struct cvmx_pcsx_rxx_sync_reg_s cn52xxp1
;
870 struct cvmx_pcsx_rxx_sync_reg_s cn56xx
;
871 struct cvmx_pcsx_rxx_sync_reg_s cn56xxp1
;
872 struct cvmx_pcsx_rxx_sync_reg_s cn61xx
;
873 struct cvmx_pcsx_rxx_sync_reg_s cn63xx
;
874 struct cvmx_pcsx_rxx_sync_reg_s cn63xxp1
;
875 struct cvmx_pcsx_rxx_sync_reg_s cn66xx
;
876 struct cvmx_pcsx_rxx_sync_reg_s cn68xx
;
877 struct cvmx_pcsx_rxx_sync_reg_s cn68xxp1
;
878 struct cvmx_pcsx_rxx_sync_reg_s cnf71xx
;
881 union cvmx_pcsx_sgmx_an_adv_reg
{
883 struct cvmx_pcsx_sgmx_an_adv_reg_s
{
884 #ifdef __BIG_ENDIAN_BITFIELD
885 uint64_t reserved_16_63
:48;
888 uint64_t reserved_13_13
:1;
891 uint64_t reserved_1_9
:9;
895 uint64_t reserved_1_9
:9;
898 uint64_t reserved_13_13
:1;
901 uint64_t reserved_16_63
:48;
904 struct cvmx_pcsx_sgmx_an_adv_reg_s cn52xx
;
905 struct cvmx_pcsx_sgmx_an_adv_reg_s cn52xxp1
;
906 struct cvmx_pcsx_sgmx_an_adv_reg_s cn56xx
;
907 struct cvmx_pcsx_sgmx_an_adv_reg_s cn56xxp1
;
908 struct cvmx_pcsx_sgmx_an_adv_reg_s cn61xx
;
909 struct cvmx_pcsx_sgmx_an_adv_reg_s cn63xx
;
910 struct cvmx_pcsx_sgmx_an_adv_reg_s cn63xxp1
;
911 struct cvmx_pcsx_sgmx_an_adv_reg_s cn66xx
;
912 struct cvmx_pcsx_sgmx_an_adv_reg_s cn68xx
;
913 struct cvmx_pcsx_sgmx_an_adv_reg_s cn68xxp1
;
914 struct cvmx_pcsx_sgmx_an_adv_reg_s cnf71xx
;
917 union cvmx_pcsx_sgmx_lp_adv_reg
{
919 struct cvmx_pcsx_sgmx_lp_adv_reg_s
{
920 #ifdef __BIG_ENDIAN_BITFIELD
921 uint64_t reserved_16_63
:48;
923 uint64_t reserved_13_14
:2;
926 uint64_t reserved_1_9
:9;
930 uint64_t reserved_1_9
:9;
933 uint64_t reserved_13_14
:2;
935 uint64_t reserved_16_63
:48;
938 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn52xx
;
939 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn52xxp1
;
940 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn56xx
;
941 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn56xxp1
;
942 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn61xx
;
943 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn63xx
;
944 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn63xxp1
;
945 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn66xx
;
946 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn68xx
;
947 struct cvmx_pcsx_sgmx_lp_adv_reg_s cn68xxp1
;
948 struct cvmx_pcsx_sgmx_lp_adv_reg_s cnf71xx
;
951 union cvmx_pcsx_txx_states_reg
{
953 struct cvmx_pcsx_txx_states_reg_s
{
954 #ifdef __BIG_ENDIAN_BITFIELD
955 uint64_t reserved_7_63
:57;
963 uint64_t reserved_7_63
:57;
966 struct cvmx_pcsx_txx_states_reg_s cn52xx
;
967 struct cvmx_pcsx_txx_states_reg_s cn52xxp1
;
968 struct cvmx_pcsx_txx_states_reg_s cn56xx
;
969 struct cvmx_pcsx_txx_states_reg_s cn56xxp1
;
970 struct cvmx_pcsx_txx_states_reg_s cn61xx
;
971 struct cvmx_pcsx_txx_states_reg_s cn63xx
;
972 struct cvmx_pcsx_txx_states_reg_s cn63xxp1
;
973 struct cvmx_pcsx_txx_states_reg_s cn66xx
;
974 struct cvmx_pcsx_txx_states_reg_s cn68xx
;
975 struct cvmx_pcsx_txx_states_reg_s cn68xxp1
;
976 struct cvmx_pcsx_txx_states_reg_s cnf71xx
;
979 union cvmx_pcsx_tx_rxx_polarity_reg
{
981 struct cvmx_pcsx_tx_rxx_polarity_reg_s
{
982 #ifdef __BIG_ENDIAN_BITFIELD
983 uint64_t reserved_4_63
:60;
993 uint64_t reserved_4_63
:60;
996 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn52xx
;
997 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn52xxp1
;
998 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn56xx
;
999 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn56xxp1
;
1000 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn61xx
;
1001 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn63xx
;
1002 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn63xxp1
;
1003 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn66xx
;
1004 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn68xx
;
1005 struct cvmx_pcsx_tx_rxx_polarity_reg_s cn68xxp1
;
1006 struct cvmx_pcsx_tx_rxx_polarity_reg_s cnf71xx
;