diff options
Diffstat (limited to 'drivers/staging/crystalhd')
-rw-r--r-- | drivers/staging/crystalhd/Kconfig | 6 | ||||
-rw-r--r-- | drivers/staging/crystalhd/Makefile | 6 | ||||
-rw-r--r-- | drivers/staging/crystalhd/TODO | 16 | ||||
-rw-r--r-- | drivers/staging/crystalhd/bc_dts_defs.h | 498 | ||||
-rw-r--r-- | drivers/staging/crystalhd/bc_dts_glob_lnx.h | 299 | ||||
-rw-r--r-- | drivers/staging/crystalhd/bc_dts_types.h | 115 | ||||
-rw-r--r-- | drivers/staging/crystalhd/bcm_70012_regs.h | 12299 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_cmds.c | 1058 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_cmds.h | 88 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_fw_if.h | 369 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_hw.c | 2395 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_hw.h | 398 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_lnx.c | 780 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_lnx.h | 95 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_misc.c | 1029 | ||||
-rw-r--r-- | drivers/staging/crystalhd/crystalhd_misc.h | 229 |
16 files changed, 19680 insertions, 0 deletions
diff --git a/drivers/staging/crystalhd/Kconfig b/drivers/staging/crystalhd/Kconfig new file mode 100644 index 00000000000..56b414bca1a --- /dev/null +++ b/drivers/staging/crystalhd/Kconfig | |||
@@ -0,0 +1,6 @@ | |||
1 | config CRYSTALHD | ||
2 | tristate "Broadcom Crystal HD video decoder support" | ||
3 | depends on PCI | ||
4 | default n | ||
5 | help | ||
6 | Support for the Broadcom Crystal HD video decoder chipset | ||
diff --git a/drivers/staging/crystalhd/Makefile b/drivers/staging/crystalhd/Makefile new file mode 100644 index 00000000000..e2af0ce2e79 --- /dev/null +++ b/drivers/staging/crystalhd/Makefile | |||
@@ -0,0 +1,6 @@ | |||
1 | obj-$(CONFIG_CRYSTALHD) += crystalhd.o | ||
2 | |||
3 | crystalhd-objs := crystalhd_cmds.o \ | ||
4 | crystalhd_hw.o \ | ||
5 | crystalhd_lnx.o \ | ||
6 | crystalhd_misc.o | ||
diff --git a/drivers/staging/crystalhd/TODO b/drivers/staging/crystalhd/TODO new file mode 100644 index 00000000000..69be5d0cb80 --- /dev/null +++ b/drivers/staging/crystalhd/TODO | |||
@@ -0,0 +1,16 @@ | |||
1 | - Testing | ||
2 | - Cleanup return codes | ||
3 | - Cleanup typedefs | ||
4 | - Cleanup all WIN* references | ||
5 | - Allocate an Accelerator device class specific Major number, | ||
6 | since we don't have any other open sourced accelerators, it is the only | ||
7 | one in that category for now. | ||
8 | A somewhat similar device is the DXR2/3 | ||
9 | |||
10 | Please send patches to: | ||
11 | Greg Kroah-Hartman <greg@kroah.com> | ||
12 | Naren Sankar <nsankar@broadcom.com> | ||
13 | Jarod Wilson <jarod@wilsonet.com> | ||
14 | Scott Davilla <davilla@4pi.com> | ||
15 | Manu Abraham <abraham.manu@gmail.com> | ||
16 | |||
diff --git a/drivers/staging/crystalhd/bc_dts_defs.h b/drivers/staging/crystalhd/bc_dts_defs.h new file mode 100644 index 00000000000..c34cc07127b --- /dev/null +++ b/drivers/staging/crystalhd/bc_dts_defs.h | |||
@@ -0,0 +1,498 @@ | |||
1 | /******************************************************************** | ||
2 | * Copyright(c) 2006-2009 Broadcom Corporation. | ||
3 | * | ||
4 | * Name: bc_dts_defs.h | ||
5 | * | ||
6 | * Description: Common definitions for all components. Only types | ||
7 | * is allowed to be included from this file. | ||
8 | * | ||
9 | * AU | ||
10 | * | ||
11 | * HISTORY: | ||
12 | * | ||
13 | ******************************************************************** | ||
14 | * This header is free software: you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU Lesser General Public License as published | ||
16 | * by the Free Software Foundation, either version 2.1 of the License. | ||
17 | * | ||
18 | * This header is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU Lesser General Public License for more details. | ||
22 | * You should have received a copy of the GNU Lesser General Public License | ||
23 | * along with this header. If not, see <http://www.gnu.org/licenses/>. | ||
24 | *******************************************************************/ | ||
25 | |||
26 | #ifndef _BC_DTS_DEFS_H_ | ||
27 | #define _BC_DTS_DEFS_H_ | ||
28 | |||
29 | #include "bc_dts_types.h" | ||
30 | |||
31 | /* BIT Mask */ | ||
32 | #define BC_BIT(_x) (1 << (_x)) | ||
33 | |||
34 | typedef enum _BC_STATUS { | ||
35 | BC_STS_SUCCESS = 0, | ||
36 | BC_STS_INV_ARG = 1, | ||
37 | BC_STS_BUSY = 2, | ||
38 | BC_STS_NOT_IMPL = 3, | ||
39 | BC_STS_PGM_QUIT = 4, | ||
40 | BC_STS_NO_ACCESS = 5, | ||
41 | BC_STS_INSUFF_RES = 6, | ||
42 | BC_STS_IO_ERROR = 7, | ||
43 | BC_STS_NO_DATA = 8, | ||
44 | BC_STS_VER_MISMATCH = 9, | ||
45 | BC_STS_TIMEOUT = 10, | ||
46 | BC_STS_FW_CMD_ERR = 11, | ||
47 | BC_STS_DEC_NOT_OPEN = 12, | ||
48 | BC_STS_ERR_USAGE = 13, | ||
49 | BC_STS_IO_USER_ABORT = 14, | ||
50 | BC_STS_IO_XFR_ERROR = 15, | ||
51 | BC_STS_DEC_NOT_STARTED = 16, | ||
52 | BC_STS_FWHEX_NOT_FOUND = 17, | ||
53 | BC_STS_FMT_CHANGE = 18, | ||
54 | BC_STS_HIF_ACCESS = 19, | ||
55 | BC_STS_CMD_CANCELLED = 20, | ||
56 | BC_STS_FW_AUTH_FAILED = 21, | ||
57 | BC_STS_BOOTLOADER_FAILED = 22, | ||
58 | BC_STS_CERT_VERIFY_ERROR = 23, | ||
59 | BC_STS_DEC_EXIST_OPEN = 24, | ||
60 | BC_STS_PENDING = 25, | ||
61 | BC_STS_CLK_NOCHG = 26, | ||
62 | |||
63 | /* Must be the last one.*/ | ||
64 | BC_STS_ERROR = -1 | ||
65 | } BC_STATUS; | ||
66 | |||
67 | /*------------------------------------------------------* | ||
68 | * Registry Key Definitions * | ||
69 | *------------------------------------------------------*/ | ||
70 | #define BC_REG_KEY_MAIN_PATH "Software\\Broadcom\\MediaPC\\70010" | ||
71 | #define BC_REG_KEY_FWPATH "FirmwareFilePath" | ||
72 | #define BC_REG_KEY_SEC_OPT "DbgOptions" | ||
73 | |||
74 | /* | ||
75 | * Options: | ||
76 | * | ||
77 | * b[5] = Enable RSA KEY in EEPROM Support | ||
78 | * b[6] = Enable Old PIB scheme. (0 = Use PIB with video scheme) | ||
79 | * | ||
80 | * b[12] = Enable send message to NotifyIcon | ||
81 | * | ||
82 | */ | ||
83 | |||
84 | typedef enum _BC_SW_OPTIONS { | ||
85 | BC_OPT_DOSER_OUT_ENCRYPT = BC_BIT(3), | ||
86 | BC_OPT_LINK_OUT_ENCRYPT = BC_BIT(29), | ||
87 | } BC_SW_OPTIONS; | ||
88 | |||
89 | typedef struct _BC_REG_CONFIG{ | ||
90 | uint32_t DbgOptions; | ||
91 | } BC_REG_CONFIG; | ||
92 | |||
93 | #if defined(__KERNEL__) || defined(__LINUX_USER__) | ||
94 | #else | ||
95 | /* Align data structures */ | ||
96 | #define ALIGN(x) __declspec(align(x)) | ||
97 | #endif | ||
98 | |||
99 | /* mode | ||
100 | * b[0]..b[7] = _DtsDeviceOpenMode | ||
101 | * b[8] = Load new FW | ||
102 | * b[9] = Load file play back FW | ||
103 | * b[10] = Disk format (0 for HD DVD and 1 for BLU ray) | ||
104 | * b[11]-b[15] = default output resolution | ||
105 | * b[16] = Skip TX CPB Buffer Check | ||
106 | * b[17] = Adaptive Output Encrypt/Scramble Scheme | ||
107 | * b[18]-b[31] = reserved for future use | ||
108 | */ | ||
109 | |||
110 | /* To allow multiple apps to open the device. */ | ||
111 | enum _DtsDeviceOpenMode { | ||
112 | DTS_PLAYBACK_MODE = 0, | ||
113 | DTS_DIAG_MODE, | ||
114 | DTS_MONITOR_MODE, | ||
115 | DTS_HWINIT_MODE | ||
116 | }; | ||
117 | |||
118 | /* To enable the filter to selectively enable/disable fixes or erratas */ | ||
119 | enum _DtsDeviceFixMode { | ||
120 | DTS_LOAD_NEW_FW = BC_BIT(8), | ||
121 | DTS_LOAD_FILE_PLAY_FW = BC_BIT(9), | ||
122 | DTS_DISK_FMT_BD = BC_BIT(10), | ||
123 | /* b[11]-b[15] : Default output resolution */ | ||
124 | DTS_SKIP_TX_CHK_CPB = BC_BIT(16), | ||
125 | DTS_ADAPTIVE_OUTPUT_PER = BC_BIT(17), | ||
126 | DTS_INTELLIMAP = BC_BIT(18), | ||
127 | /* b[19]-b[21] : select clock frequency */ | ||
128 | DTS_PLAYBACK_DROP_RPT_MODE = BC_BIT(22) | ||
129 | }; | ||
130 | |||
131 | #define DTS_DFLT_RESOLUTION(x) (x<<11) | ||
132 | |||
133 | #define DTS_DFLT_CLOCK(x) (x<<19) | ||
134 | |||
135 | /* F/W File Version corresponding to S/W Releases */ | ||
136 | enum _FW_FILE_VER { | ||
137 | /* S/W release: 02.04.02 F/W release 2.12.2.0 */ | ||
138 | BC_FW_VER_020402 = ((12<<16) | (2<<8) | (0)) | ||
139 | }; | ||
140 | |||
141 | /*------------------------------------------------------* | ||
142 | * Stream Types for DtsOpenDecoder() * | ||
143 | *------------------------------------------------------*/ | ||
144 | enum _DtsOpenDecStreamTypes { | ||
145 | BC_STREAM_TYPE_ES = 0, | ||
146 | BC_STREAM_TYPE_PES = 1, | ||
147 | BC_STREAM_TYPE_TS = 2, | ||
148 | BC_STREAM_TYPE_ES_TSTAMP = 6, | ||
149 | }; | ||
150 | |||
151 | /*------------------------------------------------------* | ||
152 | * Video Algorithms for DtsSetVideoParams() * | ||
153 | *------------------------------------------------------*/ | ||
154 | enum _DtsSetVideoParamsAlgo { | ||
155 | BC_VID_ALGO_H264 = 0, | ||
156 | BC_VID_ALGO_MPEG2 = 1, | ||
157 | BC_VID_ALGO_VC1 = 4, | ||
158 | BC_VID_ALGO_VC1MP = 7, | ||
159 | }; | ||
160 | |||
161 | /*------------------------------------------------------* | ||
162 | * MPEG Extension to the PPB * | ||
163 | *------------------------------------------------------*/ | ||
164 | #define BC_MPEG_VALID_PANSCAN (1) | ||
165 | |||
166 | typedef struct _BC_PIB_EXT_MPEG { | ||
167 | uint32_t valid; | ||
168 | /* Always valid, defaults to picture size if no | ||
169 | * sequence display extension in the stream. */ | ||
170 | uint32_t display_horizontal_size; | ||
171 | uint32_t display_vertical_size; | ||
172 | |||
173 | /* MPEG_VALID_PANSCAN | ||
174 | * Offsets are a copy values from the MPEG stream. */ | ||
175 | uint32_t offset_count; | ||
176 | int32_t horizontal_offset[3]; | ||
177 | int32_t vertical_offset[3]; | ||
178 | |||
179 | } BC_PIB_EXT_MPEG; | ||
180 | |||
181 | /*------------------------------------------------------* | ||
182 | * H.264 Extension to the PPB * | ||
183 | *------------------------------------------------------*/ | ||
184 | /* Bit definitions for 'other.h264.valid' field */ | ||
185 | #define H264_VALID_PANSCAN (1) | ||
186 | #define H264_VALID_SPS_CROP (2) | ||
187 | #define H264_VALID_VUI (4) | ||
188 | |||
189 | typedef struct _BC_PIB_EXT_H264 { | ||
190 | /* 'valid' specifies which fields (or sets of | ||
191 | * fields) below are valid. If the corresponding | ||
192 | * bit in 'valid' is NOT set then that field(s) | ||
193 | * is (are) not initialized. */ | ||
194 | uint32_t valid; | ||
195 | |||
196 | /* H264_VALID_PANSCAN */ | ||
197 | uint32_t pan_scan_count; | ||
198 | int32_t pan_scan_left[3]; | ||
199 | int32_t pan_scan_right[3]; | ||
200 | int32_t pan_scan_top[3]; | ||
201 | int32_t pan_scan_bottom[3]; | ||
202 | |||
203 | /* H264_VALID_SPS_CROP */ | ||
204 | int32_t sps_crop_left; | ||
205 | int32_t sps_crop_right; | ||
206 | int32_t sps_crop_top; | ||
207 | int32_t sps_crop_bottom; | ||
208 | |||
209 | /* H264_VALID_VUI */ | ||
210 | uint32_t chroma_top; | ||
211 | uint32_t chroma_bottom; | ||
212 | |||
213 | } BC_PIB_EXT_H264; | ||
214 | |||
215 | /*------------------------------------------------------* | ||
216 | * VC1 Extension to the PPB * | ||
217 | *------------------------------------------------------*/ | ||
218 | #define VC1_VALID_PANSCAN (1) | ||
219 | |||
220 | typedef struct _BC_PIB_EXT_VC1 { | ||
221 | uint32_t valid; | ||
222 | |||
223 | /* Always valid, defaults to picture size if no | ||
224 | * sequence display extension in the stream. */ | ||
225 | uint32_t display_horizontal_size; | ||
226 | uint32_t display_vertical_size; | ||
227 | |||
228 | /* VC1 pan scan windows */ | ||
229 | uint32_t num_panscan_windows; | ||
230 | int32_t ps_horiz_offset[4]; | ||
231 | int32_t ps_vert_offset[4]; | ||
232 | int32_t ps_width[4]; | ||
233 | int32_t ps_height[4]; | ||
234 | |||
235 | } BC_PIB_EXT_VC1; | ||
236 | |||
237 | |||
238 | /*------------------------------------------------------* | ||
239 | * Picture Information Block * | ||
240 | *------------------------------------------------------*/ | ||
241 | #if defined(_WIN32) || defined(_WIN64) || defined(__LINUX_USER__) | ||
242 | /* Values for 'pulldown' field. '0' means no pulldown information | ||
243 | * was present for this picture. */ | ||
244 | enum { | ||
245 | vdecNoPulldownInfo = 0, | ||
246 | vdecTop = 1, | ||
247 | vdecBottom = 2, | ||
248 | vdecTopBottom = 3, | ||
249 | vdecBottomTop = 4, | ||
250 | vdecTopBottomTop = 5, | ||
251 | vdecBottomTopBottom = 6, | ||
252 | vdecFrame_X2 = 7, | ||
253 | vdecFrame_X3 = 8, | ||
254 | vdecFrame_X1 = 9, | ||
255 | vdecFrame_X4 = 10, | ||
256 | }; | ||
257 | |||
258 | /* Values for the 'frame_rate' field. */ | ||
259 | enum { | ||
260 | vdecFrameRateUnknown = 0, | ||
261 | vdecFrameRate23_97, | ||
262 | vdecFrameRate24, | ||
263 | vdecFrameRate25, | ||
264 | vdecFrameRate29_97, | ||
265 | vdecFrameRate30, | ||
266 | vdecFrameRate50, | ||
267 | vdecFrameRate59_94, | ||
268 | vdecFrameRate60, | ||
269 | }; | ||
270 | |||
271 | /* Values for the 'aspect_ratio' field. */ | ||
272 | enum { | ||
273 | vdecAspectRatioUnknown = 0, | ||
274 | vdecAspectRatioSquare, | ||
275 | vdecAspectRatio12_11, | ||
276 | vdecAspectRatio10_11, | ||
277 | vdecAspectRatio16_11, | ||
278 | vdecAspectRatio40_33, | ||
279 | vdecAspectRatio24_11, | ||
280 | vdecAspectRatio20_11, | ||
281 | vdecAspectRatio32_11, | ||
282 | vdecAspectRatio80_33, | ||
283 | vdecAspectRatio18_11, | ||
284 | vdecAspectRatio15_11, | ||
285 | vdecAspectRatio64_33, | ||
286 | vdecAspectRatio160_99, | ||
287 | vdecAspectRatio4_3, | ||
288 | vdecAspectRatio16_9, | ||
289 | vdecAspectRatio221_1, | ||
290 | vdecAspectRatioOther = 255, | ||
291 | }; | ||
292 | |||
293 | /* Values for the 'colour_primaries' field. */ | ||
294 | enum { | ||
295 | vdecColourPrimariesUnknown = 0, | ||
296 | vdecColourPrimariesBT709, | ||
297 | vdecColourPrimariesUnspecified, | ||
298 | vdecColourPrimariesReserved, | ||
299 | vdecColourPrimariesBT470_2M = 4, | ||
300 | vdecColourPrimariesBT470_2BG, | ||
301 | vdecColourPrimariesSMPTE170M, | ||
302 | vdecColourPrimariesSMPTE240M, | ||
303 | vdecColourPrimariesGenericFilm, | ||
304 | }; | ||
305 | |||
306 | enum { | ||
307 | vdecRESOLUTION_CUSTOM = 0x00000000, /* custom */ | ||
308 | vdecRESOLUTION_480i = 0x00000001, /* 480i */ | ||
309 | vdecRESOLUTION_1080i = 0x00000002, /* 1080i (1920x1080, 60i) */ | ||
310 | vdecRESOLUTION_NTSC = 0x00000003, /* NTSC (720x483, 60i) */ | ||
311 | vdecRESOLUTION_480p = 0x00000004, /* 480p (720x480, 60p) */ | ||
312 | vdecRESOLUTION_720p = 0x00000005, /* 720p (1280x720, 60p) */ | ||
313 | vdecRESOLUTION_PAL1 = 0x00000006, /* PAL_1 (720x576, 50i) */ | ||
314 | vdecRESOLUTION_1080i25 = 0x00000007, /* 1080i25 (1920x1080, 50i) */ | ||
315 | vdecRESOLUTION_720p50 = 0x00000008, /* 720p50 (1280x720, 50p) */ | ||
316 | vdecRESOLUTION_576p = 0x00000009, /* 576p (720x576, 50p) */ | ||
317 | vdecRESOLUTION_1080i29_97 = 0x0000000A, /* 1080i (1920x1080, 59.94i) */ | ||
318 | vdecRESOLUTION_720p59_94 = 0x0000000B, /* 720p (1280x720, 59.94p) */ | ||
319 | vdecRESOLUTION_SD_DVD = 0x0000000C, /* SD DVD (720x483, 60i) */ | ||
320 | vdecRESOLUTION_480p656 = 0x0000000D, /* 480p (720x480, 60p), output bus width 8 bit, clock 74.25MHz */ | ||
321 | vdecRESOLUTION_1080p23_976 = 0x0000000E, /* 1080p23_976 (1920x1080, 23.976p) */ | ||
322 | vdecRESOLUTION_720p23_976 = 0x0000000F, /* 720p23_976 (1280x720p, 23.976p) */ | ||
323 | vdecRESOLUTION_240p29_97 = 0x00000010, /* 240p (1440x240, 29.97p ) */ | ||
324 | vdecRESOLUTION_240p30 = 0x00000011, /* 240p (1440x240, 30p) */ | ||
325 | vdecRESOLUTION_288p25 = 0x00000012, /* 288p (1440x288p, 25p) */ | ||
326 | vdecRESOLUTION_1080p29_97 = 0x00000013, /* 1080p29_97 (1920x1080, 29.97p) */ | ||
327 | vdecRESOLUTION_1080p30 = 0x00000014, /* 1080p30 (1920x1080, 30p) */ | ||
328 | vdecRESOLUTION_1080p24 = 0x00000015, /* 1080p24 (1920x1080, 24p) */ | ||
329 | vdecRESOLUTION_1080p25 = 0x00000016, /* 1080p25 (1920x1080, 25p) */ | ||
330 | vdecRESOLUTION_720p24 = 0x00000017, /* 720p24 (1280x720, 25p) */ | ||
331 | vdecRESOLUTION_720p29_97 = 0x00000018, /* 720p29.97 (1280x720, 29.97p) */ | ||
332 | vdecRESOLUTION_480p23_976 = 0x00000019, /* 480p23.976 (720*480, 23.976) */ | ||
333 | vdecRESOLUTION_480p29_97 = 0x0000001A, /* 480p29.976 (720*480, 29.97p) */ | ||
334 | vdecRESOLUTION_576p25 = 0x0000001B, /* 576p25 (720*576, 25p) */ | ||
335 | /* For Zero Frame Rate */ | ||
336 | vdecRESOLUTION_480p0 = 0x0000001C, /* 480p (720x480, 0p) */ | ||
337 | vdecRESOLUTION_480i0 = 0x0000001D, /* 480i (720x480, 0i) */ | ||
338 | vdecRESOLUTION_576p0 = 0x0000001E, /* 576p (720x576, 0p) */ | ||
339 | vdecRESOLUTION_720p0 = 0x0000001F, /* 720p (1280x720, 0p) */ | ||
340 | vdecRESOLUTION_1080p0 = 0x00000020, /* 1080p (1920x1080, 0p) */ | ||
341 | vdecRESOLUTION_1080i0 = 0x00000021, /* 1080i (1920x1080, 0i) */ | ||
342 | }; | ||
343 | |||
344 | /* Bit definitions for 'flags' field */ | ||
345 | #define VDEC_FLAG_EOS (0x0004) | ||
346 | |||
347 | #define VDEC_FLAG_FRAME (0x0000) | ||
348 | #define VDEC_FLAG_FIELDPAIR (0x0008) | ||
349 | #define VDEC_FLAG_TOPFIELD (0x0010) | ||
350 | #define VDEC_FLAG_BOTTOMFIELD (0x0018) | ||
351 | |||
352 | #define VDEC_FLAG_PROGRESSIVE_SRC (0x0000) | ||
353 | #define VDEC_FLAG_INTERLACED_SRC (0x0020) | ||
354 | #define VDEC_FLAG_UNKNOWN_SRC (0x0040) | ||
355 | |||
356 | #define VDEC_FLAG_BOTTOM_FIRST (0x0080) | ||
357 | #define VDEC_FLAG_LAST_PICTURE (0x0100) | ||
358 | |||
359 | #define VDEC_FLAG_PICTURE_META_DATA_PRESENT (0x40000) | ||
360 | |||
361 | #endif /* _WIN32 || _WIN64 */ | ||
362 | |||
363 | enum _BC_OUTPUT_FORMAT { | ||
364 | MODE420 = 0x0, | ||
365 | MODE422_YUY2 = 0x1, | ||
366 | MODE422_UYVY = 0x2, | ||
367 | }; | ||
368 | |||
369 | typedef struct _BC_PIC_INFO_BLOCK { | ||
370 | /* Common fields. */ | ||
371 | uint64_t timeStamp; /* Timestamp */ | ||
372 | uint32_t picture_number; /* Ordinal display number */ | ||
373 | uint32_t width; /* pixels */ | ||
374 | uint32_t height; /* pixels */ | ||
375 | uint32_t chroma_format; /* 0x420, 0x422 or 0x444 */ | ||
376 | uint32_t pulldown; | ||
377 | uint32_t flags; | ||
378 | uint32_t frame_rate; | ||
379 | uint32_t aspect_ratio; | ||
380 | uint32_t colour_primaries; | ||
381 | uint32_t picture_meta_payload; | ||
382 | uint32_t sess_num; | ||
383 | uint32_t ycom; | ||
384 | uint32_t custom_aspect_ratio_width_height; | ||
385 | uint32_t n_drop; /* number of non-reference frames remaining to be dropped */ | ||
386 | |||
387 | /* Protocol-specific extensions. */ | ||
388 | union { | ||
389 | BC_PIB_EXT_H264 h264; | ||
390 | BC_PIB_EXT_MPEG mpeg; | ||
391 | BC_PIB_EXT_VC1 vc1; | ||
392 | } other; | ||
393 | |||
394 | } BC_PIC_INFO_BLOCK, *PBC_PIC_INFO_BLOCK; | ||
395 | |||
396 | /*------------------------------------------------------* | ||
397 | * ProcOut Info * | ||
398 | *------------------------------------------------------*/ | ||
399 | /* Optional flags for ProcOut Interface.*/ | ||
400 | enum _POUT_OPTIONAL_IN_FLAGS_{ | ||
401 | /* Flags from App to Device */ | ||
402 | BC_POUT_FLAGS_YV12 = 0x01, /* Copy Data in YV12 format */ | ||
403 | BC_POUT_FLAGS_STRIDE = 0x02, /* Stride size is valid. */ | ||
404 | BC_POUT_FLAGS_SIZE = 0x04, /* Take size information from Application */ | ||
405 | BC_POUT_FLAGS_INTERLACED = 0x08, /* copy only half the bytes */ | ||
406 | BC_POUT_FLAGS_INTERLEAVED = 0x10, /* interleaved frame */ | ||
407 | |||
408 | /* Flags from Device to APP */ | ||
409 | BC_POUT_FLAGS_FMT_CHANGE = 0x10000, /* Data is not VALID when this flag is set */ | ||
410 | BC_POUT_FLAGS_PIB_VALID = 0x20000, /* PIB Information valid */ | ||
411 | BC_POUT_FLAGS_ENCRYPTED = 0x40000, /* Data is encrypted. */ | ||
412 | BC_POUT_FLAGS_FLD_BOT = 0x80000, /* Bottom Field data */ | ||
413 | }; | ||
414 | |||
415 | #if defined(__KERNEL__) || defined(__LINUX_USER__) | ||
416 | typedef BC_STATUS(*dts_pout_callback)(void *shnd, uint32_t width, uint32_t height, uint32_t stride, void *pOut); | ||
417 | #else | ||
418 | typedef BC_STATUS(*dts_pout_callback)(void *shnd, uint32_t width, uint32_t height, uint32_t stride, struct _BC_DTS_PROC_OUT *pOut); | ||
419 | #endif | ||
420 | |||
421 | /* Line 21 Closed Caption */ | ||
422 | /* User Data */ | ||
423 | #define MAX_UD_SIZE 1792 /* 1920 - 128 */ | ||
424 | |||
425 | typedef struct _BC_DTS_PROC_OUT { | ||
426 | uint8_t *Ybuff; /* Caller Supplied buffer for Y data */ | ||
427 | uint32_t YbuffSz; /* Caller Supplied Y buffer size */ | ||
428 | uint32_t YBuffDoneSz; /* Transferred Y datasize */ | ||
429 | |||
430 | uint8_t *UVbuff; /* Caller Supplied buffer for UV data */ | ||
431 | uint32_t UVbuffSz; /* Caller Supplied UV buffer size */ | ||
432 | uint32_t UVBuffDoneSz; /* Transferred UV data size */ | ||
433 | |||
434 | uint32_t StrideSz; /* Caller supplied Stride Size */ | ||
435 | uint32_t PoutFlags; /* Call IN Flags */ | ||
436 | |||
437 | uint32_t discCnt; /* Picture discontinuity count */ | ||
438 | |||
439 | BC_PIC_INFO_BLOCK PicInfo; /* Picture Information Block Data */ | ||
440 | |||
441 | /* Line 21 Closed Caption */ | ||
442 | /* User Data */ | ||
443 | uint32_t UserDataSz; | ||
444 | uint8_t UserData[MAX_UD_SIZE]; | ||
445 | |||
446 | void *hnd; | ||
447 | dts_pout_callback AppCallBack; | ||
448 | uint8_t DropFrames; | ||
449 | uint8_t b422Mode; /* Picture output Mode */ | ||
450 | uint8_t bPibEnc; /* PIB encrypted */ | ||
451 | uint8_t bRevertScramble; | ||
452 | |||
453 | } BC_DTS_PROC_OUT; | ||
454 | |||
455 | typedef struct _BC_DTS_STATUS { | ||
456 | uint8_t ReadyListCount; /* Number of frames in ready list (reported by driver) */ | ||
457 | uint8_t FreeListCount; /* Number of frame buffers free. (reported by driver) */ | ||
458 | uint8_t PowerStateChange; /* Number of active state power transitions (reported by driver) */ | ||
459 | uint8_t reserved_[1]; | ||
460 | |||
461 | uint32_t FramesDropped; /* Number of frames dropped. (reported by DIL) */ | ||
462 | uint32_t FramesCaptured; /* Number of frames captured. (reported by DIL) */ | ||
463 | uint32_t FramesRepeated; /* Number of frames repeated. (reported by DIL) */ | ||
464 | |||
465 | uint32_t InputCount; /* Times compressed video has been sent to the HW. | ||
466 | * i.e. Successful DtsProcInput() calls (reported by DIL) */ | ||
467 | uint64_t InputTotalSize; /* Amount of compressed video that has been sent to the HW. | ||
468 | * (reported by DIL) */ | ||
469 | uint32_t InputBusyCount; /* Times compressed video has attempted to be sent to the HW | ||
470 | * but the input FIFO was full. (reported by DIL) */ | ||
471 | |||
472 | uint32_t PIBMissCount; /* Amount of times a PIB is invalid. (reported by DIL) */ | ||
473 | |||
474 | uint32_t cpbEmptySize; /* supported only for H.264, specifically changed for | ||
475 | * Adobe. Report size of CPB buffer available. | ||
476 | * Reported by DIL */ | ||
477 | uint64_t NextTimeStamp; /* TimeStamp of the next picture that will be returned | ||
478 | * by a call to ProcOutput. Added for Adobe. Reported | ||
479 | * back from the driver */ | ||
480 | uint8_t reserved__[16]; | ||
481 | |||
482 | } BC_DTS_STATUS; | ||
483 | |||
484 | #define BC_SWAP32(_v) \ | ||
485 | ((((_v) & 0xFF000000)>>24)| \ | ||
486 | (((_v) & 0x00FF0000)>>8)| \ | ||
487 | (((_v) & 0x0000FF00)<<8)| \ | ||
488 | (((_v) & 0x000000FF)<<24)) | ||
489 | |||
490 | #define WM_AGENT_TRAYICON_DECODER_OPEN 10001 | ||
491 | #define WM_AGENT_TRAYICON_DECODER_CLOSE 10002 | ||
492 | #define WM_AGENT_TRAYICON_DECODER_START 10003 | ||
493 | #define WM_AGENT_TRAYICON_DECODER_STOP 10004 | ||
494 | #define WM_AGENT_TRAYICON_DECODER_RUN 10005 | ||
495 | #define WM_AGENT_TRAYICON_DECODER_PAUSE 10006 | ||
496 | |||
497 | |||
498 | #endif /* _BC_DTS_DEFS_H_ */ | ||
diff --git a/drivers/staging/crystalhd/bc_dts_glob_lnx.h b/drivers/staging/crystalhd/bc_dts_glob_lnx.h new file mode 100644 index 00000000000..b3125e3e037 --- /dev/null +++ b/drivers/staging/crystalhd/bc_dts_glob_lnx.h | |||
@@ -0,0 +1,299 @@ | |||
1 | /******************************************************************** | ||
2 | * Copyright(c) 2006-2009 Broadcom Corporation. | ||
3 | * | ||
4 | * Name: bc_dts_glob_lnx.h | ||
5 | * | ||
6 | * Description: Wrapper to Windows dts_glob.h for Link-Linux usage. | ||
7 | * The idea is to define additional Linux related defs | ||
8 | * in this file to avoid changes to existing Windows | ||
9 | * glob file. | ||
10 | * | ||
11 | * AU | ||
12 | * | ||
13 | * HISTORY: | ||
14 | * | ||
15 | ******************************************************************** | ||
16 | * This header is free software: you can redistribute it and/or modify | ||
17 | * it under the terms of the GNU Lesser General Public License as published | ||
18 | * by the Free Software Foundation, either version 2.1 of the License. | ||
19 | * | ||
20 | * This header is distributed in the hope that it will be useful, | ||
21 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
22 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
23 | * GNU Lesser General Public License for more details. | ||
24 | * You should have received a copy of the GNU Lesser General Public License | ||
25 | * along with this header. If not, see <http://www.gnu.org/licenses/>. | ||
26 | *******************************************************************/ | ||
27 | |||
28 | #ifndef _BC_DTS_GLOB_LNX_H_ | ||
29 | #define _BC_DTS_GLOB_LNX_H_ | ||
30 | |||
31 | #ifdef __LINUX_USER__ | ||
32 | #include <stdio.h> | ||
33 | #include <stdlib.h> | ||
34 | #include <unistd.h> | ||
35 | #include <fcntl.h> | ||
36 | #include <ctype.h> | ||
37 | #include <string.h> | ||
38 | #include <errno.h> | ||
39 | #include <netdb.h> | ||
40 | #include <sys/time.h> | ||
41 | #include <time.h> | ||
42 | #include <arpa/inet.h> | ||
43 | #include <asm/param.h> | ||
44 | #include <linux/ioctl.h> | ||
45 | #include <sys/select.h> | ||
46 | |||
47 | #define DRVIFLIB_INT_API | ||
48 | |||
49 | #endif | ||
50 | |||
51 | #include "bc_dts_defs.h" | ||
52 | #include "bcm_70012_regs.h" /* Link Register defs */ | ||
53 | |||
54 | #define CRYSTALHD_API_NAME "crystalhd" | ||
55 | #define CRYSTALHD_API_DEV_NAME "/dev/crystalhd" | ||
56 | |||
57 | /* | ||
58 | * These are SW stack tunable parameters shared | ||
59 | * between the driver and the application. | ||
60 | */ | ||
61 | enum _BC_DTS_GLOBALS { | ||
62 | BC_MAX_FW_CMD_BUFF_SZ = 0x40, /* FW passthrough cmd/rsp buffer size */ | ||
63 | PCI_CFG_SIZE = 256, /* PCI config size buffer */ | ||
64 | BC_IOCTL_DATA_POOL_SIZE = 8, /* BC_IOCTL_DATA Pool size */ | ||
65 | BC_LINK_MAX_OPENS = 3, /* Maximum simultaneous opens*/ | ||
66 | BC_LINK_MAX_SGLS = 1024, /* Maximum SG elements 4M/4K */ | ||
67 | BC_TX_LIST_CNT = 2, /* Max Tx DMA Rings */ | ||
68 | BC_RX_LIST_CNT = 8, /* Max Rx DMA Rings*/ | ||
69 | BC_PROC_OUTPUT_TIMEOUT = 3000, /* Milliseconds */ | ||
70 | BC_INFIFO_THRESHOLD = 0x10000, | ||
71 | }; | ||
72 | |||
73 | typedef struct _BC_CMD_REG_ACC { | ||
74 | uint32_t Offset; | ||
75 | uint32_t Value; | ||
76 | } BC_CMD_REG_ACC; | ||
77 | |||
78 | typedef struct _BC_CMD_DEV_MEM { | ||
79 | uint32_t StartOff; | ||
80 | uint32_t NumDwords; | ||
81 | uint32_t Rsrd; | ||
82 | } BC_CMD_DEV_MEM; | ||
83 | |||
84 | /* FW Passthrough command structure */ | ||
85 | enum _bc_fw_cmd_flags { | ||
86 | BC_FW_CMD_FLAGS_NONE = 0, | ||
87 | BC_FW_CMD_PIB_QS = 0x01, | ||
88 | }; | ||
89 | |||
90 | typedef struct _BC_FW_CMD { | ||
91 | uint32_t cmd[BC_MAX_FW_CMD_BUFF_SZ]; | ||
92 | uint32_t rsp[BC_MAX_FW_CMD_BUFF_SZ]; | ||
93 | uint32_t flags; | ||
94 | uint32_t add_data; | ||
95 | } BC_FW_CMD, *PBC_FW_CMD; | ||
96 | |||
97 | typedef struct _BC_HW_TYPE { | ||
98 | uint16_t PciDevId; | ||
99 | uint16_t PciVenId; | ||
100 | uint8_t HwRev; | ||
101 | uint8_t Align[3]; | ||
102 | } BC_HW_TYPE; | ||
103 | |||
104 | typedef struct _BC_PCI_CFG { | ||
105 | uint32_t Size; | ||
106 | uint32_t Offset; | ||
107 | uint8_t pci_cfg_space[PCI_CFG_SIZE]; | ||
108 | } BC_PCI_CFG; | ||
109 | |||
110 | typedef struct _BC_VERSION_INFO_ { | ||
111 | uint8_t DriverMajor; | ||
112 | uint8_t DriverMinor; | ||
113 | uint16_t DriverRevision; | ||
114 | } BC_VERSION_INFO; | ||
115 | |||
116 | typedef struct _BC_START_RX_CAP_ { | ||
117 | uint32_t Rsrd; | ||
118 | uint32_t StartDeliveryThsh; | ||
119 | uint32_t PauseThsh; | ||
120 | uint32_t ResumeThsh; | ||
121 | } BC_START_RX_CAP; | ||
122 | |||
123 | typedef struct _BC_FLUSH_RX_CAP_ { | ||
124 | uint32_t Rsrd; | ||
125 | uint32_t bDiscardOnly; | ||
126 | } BC_FLUSH_RX_CAP; | ||
127 | |||
128 | typedef struct _BC_DTS_STATS { | ||
129 | uint8_t drvRLL; | ||
130 | uint8_t drvFLL; | ||
131 | uint8_t eosDetected; | ||
132 | uint8_t pwr_state_change; | ||
133 | |||
134 | /* Stats from App */ | ||
135 | uint32_t opFrameDropped; | ||
136 | uint32_t opFrameCaptured; | ||
137 | uint32_t ipSampleCnt; | ||
138 | uint64_t ipTotalSize; | ||
139 | uint32_t reptdFrames; | ||
140 | uint32_t pauseCount; | ||
141 | uint32_t pibMisses; | ||
142 | uint32_t discCounter; | ||
143 | |||
144 | /* Stats from Driver */ | ||
145 | uint32_t TxFifoBsyCnt; | ||
146 | uint32_t intCount; | ||
147 | uint32_t DrvIgnIntrCnt; | ||
148 | uint32_t DrvTotalFrmDropped; | ||
149 | uint32_t DrvTotalHWErrs; | ||
150 | uint32_t DrvTotalPIBFlushCnt; | ||
151 | uint32_t DrvTotalFrmCaptured; | ||
152 | uint32_t DrvPIBMisses; | ||
153 | uint32_t DrvPauseTime; | ||
154 | uint32_t DrvRepeatedFrms; | ||
155 | uint32_t res1[13]; | ||
156 | |||
157 | } BC_DTS_STATS; | ||
158 | |||
159 | typedef struct _BC_PROC_INPUT_ { | ||
160 | uint8_t *pDmaBuff; | ||
161 | uint32_t BuffSz; | ||
162 | uint8_t Mapped; | ||
163 | uint8_t Encrypted; | ||
164 | uint8_t Rsrd[2]; | ||
165 | uint32_t DramOffset; /* For debug use only */ | ||
166 | } BC_PROC_INPUT, *PBC_PROC_INPUT; | ||
167 | |||
168 | typedef struct _BC_DEC_YUV_BUFFS { | ||
169 | uint32_t b422Mode; | ||
170 | uint8_t *YuvBuff; | ||
171 | uint32_t YuvBuffSz; | ||
172 | uint32_t UVbuffOffset; | ||
173 | uint32_t YBuffDoneSz; | ||
174 | uint32_t UVBuffDoneSz; | ||
175 | uint32_t RefCnt; | ||
176 | } BC_DEC_YUV_BUFFS; | ||
177 | |||
178 | enum _DECOUT_COMPLETION_FLAGS{ | ||
179 | COMP_FLAG_NO_INFO = 0x00, | ||
180 | COMP_FLAG_FMT_CHANGE = 0x01, | ||
181 | COMP_FLAG_PIB_VALID = 0x02, | ||
182 | COMP_FLAG_DATA_VALID = 0x04, | ||
183 | COMP_FLAG_DATA_ENC = 0x08, | ||
184 | COMP_FLAG_DATA_BOT = 0x10, | ||
185 | }; | ||
186 | |||
187 | typedef struct _BC_DEC_OUT_BUFF{ | ||
188 | BC_DEC_YUV_BUFFS OutPutBuffs; | ||
189 | BC_PIC_INFO_BLOCK PibInfo; | ||
190 | uint32_t Flags; | ||
191 | uint32_t BadFrCnt; | ||
192 | } BC_DEC_OUT_BUFF; | ||
193 | |||
194 | typedef struct _BC_NOTIFY_MODE { | ||
195 | uint32_t Mode; | ||
196 | uint32_t Rsvr[3]; | ||
197 | } BC_NOTIFY_MODE; | ||
198 | |||
199 | typedef struct _BC_CLOCK { | ||
200 | uint32_t clk; | ||
201 | uint32_t Rsvr[3]; | ||
202 | } BC_CLOCK; | ||
203 | |||
204 | typedef struct _BC_IOCTL_DATA { | ||
205 | BC_STATUS RetSts; | ||
206 | uint32_t IoctlDataSz; | ||
207 | uint32_t Timeout; | ||
208 | union { | ||
209 | BC_CMD_REG_ACC regAcc; | ||
210 | BC_CMD_DEV_MEM devMem; | ||
211 | BC_FW_CMD fwCmd; | ||
212 | BC_HW_TYPE hwType; | ||
213 | BC_PCI_CFG pciCfg; | ||
214 | BC_VERSION_INFO VerInfo; | ||
215 | BC_PROC_INPUT ProcInput; | ||
216 | BC_DEC_YUV_BUFFS RxBuffs; | ||
217 | BC_DEC_OUT_BUFF DecOutData; | ||
218 | BC_START_RX_CAP RxCap; | ||
219 | BC_FLUSH_RX_CAP FlushRxCap; | ||
220 | BC_DTS_STATS drvStat; | ||
221 | BC_NOTIFY_MODE NotifyMode; | ||
222 | BC_CLOCK clockValue; | ||
223 | } u; | ||
224 | struct _BC_IOCTL_DATA *next; | ||
225 | } BC_IOCTL_DATA; | ||
226 | |||
227 | typedef enum _BC_DRV_CMD{ | ||
228 | DRV_CMD_VERSION = 0, /* Get SW version */ | ||
229 | DRV_CMD_GET_HWTYPE, /* Get HW version and type Dozer/Tank */ | ||
230 | DRV_CMD_REG_RD, /* Read Device Register */ | ||
231 | DRV_CMD_REG_WR, /* Write Device Register */ | ||
232 | DRV_CMD_FPGA_RD, /* Read FPGA Register */ | ||
233 | DRV_CMD_FPGA_WR, /* Wrtie FPGA Reister */ | ||
234 | DRV_CMD_MEM_RD, /* Read Device Memory */ | ||
235 | DRV_CMD_MEM_WR, /* Write Device Memory */ | ||
236 | DRV_CMD_RD_PCI_CFG, /* Read PCI Config Space */ | ||
237 | DRV_CMD_WR_PCI_CFG, /* Write the PCI Configuration Space*/ | ||
238 | DRV_CMD_FW_DOWNLOAD, /* Download Firmware */ | ||
239 | DRV_ISSUE_FW_CMD, /* Issue FW Cmd (pass through mode) */ | ||
240 | DRV_CMD_PROC_INPUT, /* Process Input Sample */ | ||
241 | DRV_CMD_ADD_RXBUFFS, /* Add Rx side buffers to driver pool */ | ||
242 | DRV_CMD_FETCH_RXBUFF, /* Get Rx DMAed buffer */ | ||
243 | DRV_CMD_START_RX_CAP, /* Start Rx Buffer Capture */ | ||
244 | DRV_CMD_FLUSH_RX_CAP, /* Stop the capture for now...we will enhance this later*/ | ||
245 | DRV_CMD_GET_DRV_STAT, /* Get Driver Internal Statistics */ | ||
246 | DRV_CMD_RST_DRV_STAT, /* Reset Driver Internal Statistics */ | ||
247 | DRV_CMD_NOTIFY_MODE, /* Notify the Mode to driver in which the application is Operating*/ | ||
248 | DRV_CMD_CHANGE_CLOCK, /* Change the core clock to either save power or improve performance */ | ||
249 | |||
250 | /* MUST be the last one.. */ | ||
251 | DRV_CMD_END, /* End of the List.. */ | ||
252 | } BC_DRV_CMD; | ||
253 | |||
254 | #define BC_IOC_BASE 'b' | ||
255 | #define BC_IOC_VOID _IOC_NONE | ||
256 | #define BC_IOC_IOWR(nr, type) _IOWR(BC_IOC_BASE, nr, type) | ||
257 | #define BC_IOCTL_MB BC_IOCTL_DATA | ||
258 | |||
259 | #define BCM_IOC_GET_VERSION BC_IOC_IOWR(DRV_CMD_VERSION, BC_IOCTL_MB) | ||
260 | #define BCM_IOC_GET_HWTYPE BC_IOC_IOWR(DRV_CMD_GET_HWTYPE, BC_IOCTL_MB) | ||
261 | #define BCM_IOC_REG_RD BC_IOC_IOWR(DRV_CMD_REG_RD, BC_IOCTL_MB) | ||
262 | #define BCM_IOC_REG_WR BC_IOC_IOWR(DRV_CMD_REG_WR, BC_IOCTL_MB) | ||
263 | #define BCM_IOC_MEM_RD BC_IOC_IOWR(DRV_CMD_MEM_RD, BC_IOCTL_MB) | ||
264 | #define BCM_IOC_MEM_WR BC_IOC_IOWR(DRV_CMD_MEM_WR, BC_IOCTL_MB) | ||
265 | #define BCM_IOC_FPGA_RD BC_IOC_IOWR(DRV_CMD_FPGA_RD, BC_IOCTL_MB) | ||
266 | #define BCM_IOC_FPGA_WR BC_IOC_IOWR(DRV_CMD_FPGA_WR, BC_IOCTL_MB) | ||
267 | #define BCM_IOC_RD_PCI_CFG BC_IOC_IOWR(DRV_CMD_RD_PCI_CFG, BC_IOCTL_MB) | ||
268 | #define BCM_IOC_WR_PCI_CFG BC_IOC_IOWR(DRV_CMD_WR_PCI_CFG, BC_IOCTL_MB) | ||
269 | #define BCM_IOC_PROC_INPUT BC_IOC_IOWR(DRV_CMD_PROC_INPUT, BC_IOCTL_MB) | ||
270 | #define BCM_IOC_ADD_RXBUFFS BC_IOC_IOWR(DRV_CMD_ADD_RXBUFFS, BC_IOCTL_MB) | ||
271 | #define BCM_IOC_FETCH_RXBUFF BC_IOC_IOWR(DRV_CMD_FETCH_RXBUFF, BC_IOCTL_MB) | ||
272 | #define BCM_IOC_FW_CMD BC_IOC_IOWR(DRV_ISSUE_FW_CMD, BC_IOCTL_MB) | ||
273 | #define BCM_IOC_START_RX_CAP BC_IOC_IOWR(DRV_CMD_START_RX_CAP, BC_IOCTL_MB) | ||
274 | #define BCM_IOC_FLUSH_RX_CAP BC_IOC_IOWR(DRV_CMD_FLUSH_RX_CAP, BC_IOCTL_MB) | ||
275 | #define BCM_IOC_GET_DRV_STAT BC_IOC_IOWR(DRV_CMD_GET_DRV_STAT, BC_IOCTL_MB) | ||
276 | #define BCM_IOC_RST_DRV_STAT BC_IOC_IOWR(DRV_CMD_RST_DRV_STAT, BC_IOCTL_MB) | ||
277 | #define BCM_IOC_NOTIFY_MODE BC_IOC_IOWR(DRV_CMD_NOTIFY_MODE, BC_IOCTL_MB) | ||
278 | #define BCM_IOC_FW_DOWNLOAD BC_IOC_IOWR(DRV_CMD_FW_DOWNLOAD, BC_IOCTL_MB) | ||
279 | #define BCM_IOC_CHG_CLK BC_IOC_IOWR(DRV_CMD_CHANGE_CLOCK, BC_IOCTL_MB) | ||
280 | #define BCM_IOC_END BC_IOC_VOID | ||
281 | |||
282 | /* Wrapper for main IOCTL data */ | ||
283 | typedef struct _crystalhd_ioctl_data { | ||
284 | BC_IOCTL_DATA udata; /* IOCTL from App..*/ | ||
285 | uint32_t u_id; /* Driver specific user ID */ | ||
286 | uint32_t cmd; /* Cmd ID for driver's use. */ | ||
287 | void *add_cdata; /* Additional command specific data..*/ | ||
288 | uint32_t add_cdata_sz; /* Additional command specific data size */ | ||
289 | struct _crystalhd_ioctl_data *next; /* List/Fifo management */ | ||
290 | } crystalhd_ioctl_data; | ||
291 | |||
292 | |||
293 | enum _crystalhd_kmod_ver{ | ||
294 | crystalhd_kmod_major = 0, | ||
295 | crystalhd_kmod_minor = 9, | ||
296 | crystalhd_kmod_rev = 27, | ||
297 | }; | ||
298 | |||
299 | #endif | ||
diff --git a/drivers/staging/crystalhd/bc_dts_types.h b/drivers/staging/crystalhd/bc_dts_types.h new file mode 100644 index 00000000000..e073d7450c1 --- /dev/null +++ b/drivers/staging/crystalhd/bc_dts_types.h | |||
@@ -0,0 +1,115 @@ | |||
1 | /******************************************************************** | ||
2 | * Copyright(c) 2006-2009 Broadcom Corporation. | ||
3 | * | ||
4 | * Name: bc_dts_types.h | ||
5 | * | ||
6 | * Description: Data types | ||
7 | * | ||
8 | * AU | ||
9 | * | ||
10 | * HISTORY: | ||
11 | * | ||
12 | ******************************************************************** | ||
13 | * This header is free software: you can redistribute it and/or modify | ||
14 | * it under the terms of the GNU Lesser General Public License as published | ||
15 | * by the Free Software Foundation, either version 2.1 of the License. | ||
16 | * | ||
17 | * This header is distributed in the hope that it will be useful, | ||
18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
20 | * GNU Lesser General Public License for more details. | ||
21 | * You should have received a copy of the GNU Lesser General Public License | ||
22 | * along with this header. If not, see <http://www.gnu.org/licenses/>. | ||
23 | *******************************************************************/ | ||
24 | |||
25 | #ifndef _BC_DTS_TYPES_H_ | ||
26 | #define _BC_DTS_TYPES_H_ | ||
27 | |||
28 | #if defined(_WIN64) || defined(_WIN32) | ||
29 | typedef uint32_t U32; | ||
30 | typedef int32_t S32; | ||
31 | typedef uint16_t U16; | ||
32 | typedef int16_t S16; | ||
33 | typedef unsigned char U8; | ||
34 | typedef char S8; | ||
35 | #endif | ||
36 | |||
37 | #ifndef PVOID | ||
38 | typedef void *PVOID; | ||
39 | #endif | ||
40 | |||
41 | #ifndef BOOL | ||
42 | typedef int BOOL; | ||
43 | #endif | ||
44 | |||
45 | #ifdef WIN32 | ||
46 | typedef unsigned __int64 U64; | ||
47 | #elif defined(_WIN64) | ||
48 | typedef uint64_t U64; | ||
49 | #endif | ||
50 | |||
51 | #ifdef _WIN64 | ||
52 | #if !(defined(POINTER_32)) | ||
53 | #define POINTER_32 __ptr32 | ||
54 | #endif | ||
55 | #else /* _WIN32 */ | ||
56 | #define POINTER_32 | ||
57 | #endif | ||
58 | |||
59 | #if defined(__KERNEL__) || defined(__LINUX_USER__) | ||
60 | |||
61 | #ifdef __LINUX_USER__ /* Don't include these for KERNEL */ | ||
62 | typedef uint32_t ULONG; | ||
63 | typedef int32_t LONG; | ||
64 | typedef void *HANDLE; | ||
65 | typedef void VOID; | ||
66 | typedef void *LPVOID; | ||
67 | typedef uint32_t DWORD; | ||
68 | typedef uint32_t UINT32; | ||
69 | typedef uint32_t *LPDWORD; | ||
70 | typedef unsigned char *PUCHAR; | ||
71 | |||
72 | #ifndef TRUE | ||
73 | #define TRUE 1 | ||
74 | #endif | ||
75 | |||
76 | #ifndef FALSE | ||
77 | #define FALSE 0 | ||
78 | #endif | ||
79 | |||
80 | #define TEXT | ||
81 | |||
82 | #else | ||
83 | |||
84 | /* For Kernel usage.. */ | ||
85 | typedef bool bc_bool_t; | ||
86 | #endif | ||
87 | |||
88 | #else | ||
89 | |||
90 | #ifndef uint64_t | ||
91 | typedef struct _uint64_t { | ||
92 | uint32_t low_dw; | ||
93 | uint32_t hi_dw; | ||
94 | } uint64_t; | ||
95 | #endif | ||
96 | |||
97 | #ifndef int32_t | ||
98 | typedef signed long int32_t; | ||
99 | #endif | ||
100 | |||
101 | #ifndef uint32_t | ||
102 | typedef unsigned long uint32_t; | ||
103 | #endif | ||
104 | |||
105 | #ifndef uint16_t | ||
106 | typedef unsigned short uint16_t; | ||
107 | #endif | ||
108 | |||
109 | #ifndef uint8_t | ||
110 | typedef unsigned char uint8_t; | ||
111 | #endif | ||
112 | #endif | ||
113 | |||
114 | #endif | ||
115 | |||
diff --git a/drivers/staging/crystalhd/bcm_70012_regs.h b/drivers/staging/crystalhd/bcm_70012_regs.h new file mode 100644 index 00000000000..b3b25576964 --- /dev/null +++ b/drivers/staging/crystalhd/bcm_70012_regs.h | |||
@@ -0,0 +1,12299 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 1999-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: bcm_70012_regs.h | ||
5 | * | ||
6 | * Description: BCM70012 registers | ||
7 | * | ||
8 | ******************************************************************** | ||
9 | * This header is free software: you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU Lesser General Public License as published | ||
11 | * by the Free Software Foundation, either version 2.1 of the License. | ||
12 | * | ||
13 | * This header is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU Lesser General Public License for more details. | ||
17 | * You should have received a copy of the GNU Lesser General Public License | ||
18 | * along with this header. If not, see <http://www.gnu.org/licenses/>. | ||
19 | ***************************************************************************/ | ||
20 | |||
21 | #ifndef MACFILE_H__ | ||
22 | #define MACFILE_H__ | ||
23 | |||
24 | /** | ||
25 | * m = memory, c = core, r = register, f = field, d = data. | ||
26 | */ | ||
27 | #if !defined(GET_FIELD) && !defined(SET_FIELD) | ||
28 | #define BRCM_ALIGN(c,r,f) c##_##r##_##f##_ALIGN | ||
29 | #define BRCM_BITS(c,r,f) c##_##r##_##f##_BITS | ||
30 | #define BRCM_MASK(c,r,f) c##_##r##_##f##_MASK | ||
31 | #define BRCM_SHIFT(c,r,f) c##_##r##_##f##_SHIFT | ||
32 | |||
33 | #define GET_FIELD(m,c,r,f) \ | ||
34 | ((((m) & BRCM_MASK(c,r,f)) >> BRCM_SHIFT(c,r,f)) << BRCM_ALIGN(c,r,f)) | ||
35 | |||
36 | #define SET_FIELD(m,c,r,f,d) \ | ||
37 | ((m) = (((m) & ~BRCM_MASK(c,r,f)) | ((((d) >> BRCM_ALIGN(c,r,f)) << \ | ||
38 | BRCM_SHIFT(c,r,f)) & BRCM_MASK(c,r,f))) \ | ||
39 | ) | ||
40 | |||
41 | #define SET_TYPE_FIELD(m,c,r,f,d) SET_FIELD(m,c,r,f,c##_##d) | ||
42 | #define SET_NAME_FIELD(m,c,r,f,d) SET_FIELD(m,c,r,f,c##_##r##_##f##_##d) | ||
43 | #define SET_VALUE_FIELD(m,c,r,f,d) SET_FIELD(m,c,r,f,d) | ||
44 | |||
45 | #endif /* GET & SET */ | ||
46 | |||
47 | /**************************************************************************** | ||
48 | * Core Enums. | ||
49 | ***************************************************************************/ | ||
50 | /**************************************************************************** | ||
51 | * Enums: AES_RGR_BRIDGE_RESET_CTRL | ||
52 | ***************************************************************************/ | ||
53 | #define AES_RGR_BRIDGE_RESET_CTRL_DEASSERT 0 | ||
54 | #define AES_RGR_BRIDGE_RESET_CTRL_ASSERT 1 | ||
55 | |||
56 | /**************************************************************************** | ||
57 | * Enums: CCE_RGR_BRIDGE_RESET_CTRL | ||
58 | ***************************************************************************/ | ||
59 | #define CCE_RGR_BRIDGE_RESET_CTRL_DEASSERT 0 | ||
60 | #define CCE_RGR_BRIDGE_RESET_CTRL_ASSERT 1 | ||
61 | |||
62 | /**************************************************************************** | ||
63 | * Enums: DBU_RGR_BRIDGE_RESET_CTRL | ||
64 | ***************************************************************************/ | ||
65 | #define DBU_RGR_BRIDGE_RESET_CTRL_DEASSERT 0 | ||
66 | #define DBU_RGR_BRIDGE_RESET_CTRL_ASSERT 1 | ||
67 | |||
68 | /**************************************************************************** | ||
69 | * Enums: DCI_RGR_BRIDGE_RESET_CTRL | ||
70 | ***************************************************************************/ | ||
71 | #define DCI_RGR_BRIDGE_RESET_CTRL_DEASSERT 0 | ||
72 | #define DCI_RGR_BRIDGE_RESET_CTRL_ASSERT 1 | ||
73 | |||
74 | /**************************************************************************** | ||
75 | * Enums: GISB_ARBITER_DEASSERT_ASSERT | ||
76 | ***************************************************************************/ | ||
77 | #define GISB_ARBITER_DEASSERT_ASSERT_DEASSERT 0 | ||
78 | #define GISB_ARBITER_DEASSERT_ASSERT_ASSERT 1 | ||
79 | |||
80 | /**************************************************************************** | ||
81 | * Enums: GISB_ARBITER_UNMASK_MASK | ||
82 | ***************************************************************************/ | ||
83 | #define GISB_ARBITER_UNMASK_MASK_UNMASK 0 | ||
84 | #define GISB_ARBITER_UNMASK_MASK_MASK 1 | ||
85 | |||
86 | /**************************************************************************** | ||
87 | * Enums: GISB_ARBITER_DISABLE_ENABLE | ||
88 | ***************************************************************************/ | ||
89 | #define GISB_ARBITER_DISABLE_ENABLE_DISABLE 0 | ||
90 | #define GISB_ARBITER_DISABLE_ENABLE_ENABLE 1 | ||
91 | |||
92 | /**************************************************************************** | ||
93 | * Enums: I2C_GR_BRIDGE_RESET_CTRL | ||
94 | ***************************************************************************/ | ||
95 | #define I2C_GR_BRIDGE_RESET_CTRL_DEASSERT 0 | ||
96 | #define I2C_GR_BRIDGE_RESET_CTRL_ASSERT 1 | ||
97 | |||
98 | /**************************************************************************** | ||
99 | * Enums: MISC_GR_BRIDGE_RESET_CTRL | ||
100 | ***************************************************************************/ | ||
101 | #define MISC_GR_BRIDGE_RESET_CTRL_DEASSERT 0 | ||
102 | #define MISC_GR_BRIDGE_RESET_CTRL_ASSERT 1 | ||
103 | |||
104 | /**************************************************************************** | ||
105 | * Enums: OTP_GR_BRIDGE_RESET_CTRL | ||
106 | ***************************************************************************/ | ||
107 | #define OTP_GR_BRIDGE_RESET_CTRL_DEASSERT 0 | ||
108 | #define OTP_GR_BRIDGE_RESET_CTRL_ASSERT 1 | ||
109 | |||
110 | /**************************************************************************** | ||
111 | * BCM70012_TGT_TOP_PCIE_CFG | ||
112 | ***************************************************************************/ | ||
113 | #define PCIE_CFG_DEVICE_VENDOR_ID 0x00000000 /* DEVICE_VENDOR_ID Register */ | ||
114 | #define PCIE_CFG_STATUS_COMMAND 0x00000004 /* STATUS_COMMAND Register */ | ||
115 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID 0x00000008 /* PCI_CLASSCODE_AND_REVISION_ID Register */ | ||
116 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE 0x0000000c /* BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE Register */ | ||
117 | #define PCIE_CFG_BASE_ADDRESS_1 0x00000010 /* BASE_ADDRESS_1 Register */ | ||
118 | #define PCIE_CFG_BASE_ADDRESS_2 0x00000014 /* BASE_ADDRESS_2 Register */ | ||
119 | #define PCIE_CFG_BASE_ADDRESS_3 0x00000018 /* BASE_ADDRESS_3 Register */ | ||
120 | #define PCIE_CFG_BASE_ADDRESS_4 0x0000001c /* BASE_ADDRESS_4 Register */ | ||
121 | #define PCIE_CFG_CARDBUS_CIS_POINTER 0x00000028 /* CARDBUS_CIS_POINTER Register */ | ||
122 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID 0x0000002c /* SUBSYSTEM_DEVICE_VENDOR_ID Register */ | ||
123 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS 0x00000030 /* EXPANSION_ROM_BASE_ADDRESS Register */ | ||
124 | #define PCIE_CFG_CAPABILITIES_POINTER 0x00000034 /* CAPABILITIES_POINTER Register */ | ||
125 | #define PCIE_CFG_INTERRUPT 0x0000003c /* INTERRUPT Register */ | ||
126 | #define PCIE_CFG_VPD_CAPABILITIES 0x00000040 /* VPD_CAPABILITIES Register */ | ||
127 | #define PCIE_CFG_VPD_DATA 0x00000044 /* VPD_DATA Register */ | ||
128 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY 0x00000048 /* POWER_MANAGEMENT_CAPABILITY Register */ | ||
129 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS 0x0000004c /* POWER_MANAGEMENT_CONTROL_STATUS Register */ | ||
130 | #define PCIE_CFG_MSI_CAPABILITY_HEADER 0x00000050 /* MSI_CAPABILITY_HEADER Register */ | ||
131 | #define PCIE_CFG_MSI_LOWER_ADDRESS 0x00000054 /* MSI_LOWER_ADDRESS Register */ | ||
132 | #define PCIE_CFG_MSI_UPPER_ADDRESS_REGISTER 0x00000058 /* MSI_UPPER_ADDRESS_REGISTER Register */ | ||
133 | #define PCIE_CFG_MSI_DATA 0x0000005c /* MSI_DATA Register */ | ||
134 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER 0x00000060 /* BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER Register */ | ||
135 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES 0x00000064 /* RESET_COUNTERS_INITIAL_VALUES Register */ | ||
136 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL 0x00000068 /* MISCELLANEOUS_HOST_CONTROL Register */ | ||
137 | #define PCIE_CFG_SPARE 0x0000006c /* SPARE Register */ | ||
138 | #define PCIE_CFG_PCI_STATE 0x00000070 /* PCI_STATE Register */ | ||
139 | #define PCIE_CFG_CLOCK_CONTROL 0x00000074 /* CLOCK_CONTROL Register */ | ||
140 | #define PCIE_CFG_REGISTER_BASE 0x00000078 /* REGISTER_BASE Register */ | ||
141 | #define PCIE_CFG_MEMORY_BASE 0x0000007c /* MEMORY_BASE Register */ | ||
142 | #define PCIE_CFG_REGISTER_DATA 0x00000080 /* REGISTER_DATA Register */ | ||
143 | #define PCIE_CFG_MEMORY_DATA 0x00000084 /* MEMORY_DATA Register */ | ||
144 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE 0x00000088 /* EXPANSION_ROM_BAR_SIZE Register */ | ||
145 | #define PCIE_CFG_EXPANSION_ROM_ADDRESS 0x0000008c /* EXPANSION_ROM_ADDRESS Register */ | ||
146 | #define PCIE_CFG_EXPANSION_ROM_DATA 0x00000090 /* EXPANSION_ROM_DATA Register */ | ||
147 | #define PCIE_CFG_VPD_INTERFACE 0x00000094 /* VPD_INTERFACE Register */ | ||
148 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER 0x00000098 /* UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER Register */ | ||
149 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER 0x0000009c /* UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER Register */ | ||
150 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER 0x000000a0 /* UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER Register */ | ||
151 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER 0x000000a4 /* UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER Register */ | ||
152 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER 0x000000a8 /* UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER Register */ | ||
153 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER 0x000000ac /* UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER Register */ | ||
154 | #define PCIE_CFG_INT_MAILBOX_UPPER 0x000000b0 /* INT_MAILBOX_UPPER Register */ | ||
155 | #define PCIE_CFG_INT_MAILBOX_LOWER 0x000000b4 /* INT_MAILBOX_LOWER Register */ | ||
156 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION 0x000000bc /* PRODUCT_ID_AND_ASIC_REVISION Register */ | ||
157 | #define PCIE_CFG_FUNCTION_EVENT 0x000000c0 /* FUNCTION_EVENT Register */ | ||
158 | #define PCIE_CFG_FUNCTION_EVENT_MASK 0x000000c4 /* FUNCTION_EVENT_MASK Register */ | ||
159 | #define PCIE_CFG_FUNCTION_PRESENT 0x000000c8 /* FUNCTION_PRESENT Register */ | ||
160 | #define PCIE_CFG_PCIE_CAPABILITIES 0x000000cc /* PCIE_CAPABILITIES Register */ | ||
161 | #define PCIE_CFG_DEVICE_CAPABILITIES 0x000000d0 /* DEVICE_CAPABILITIES Register */ | ||
162 | #define PCIE_CFG_DEVICE_STATUS_CONTROL 0x000000d4 /* DEVICE_STATUS_CONTROL Register */ | ||
163 | #define PCIE_CFG_LINK_CAPABILITY 0x000000d8 /* LINK_CAPABILITY Register */ | ||
164 | #define PCIE_CFG_LINK_STATUS_CONTROL 0x000000dc /* LINK_STATUS_CONTROL Register */ | ||
165 | #define PCIE_CFG_DEVICE_CAPABILITIES_2 0x000000f0 /* DEVICE_CAPABILITIES_2 Register */ | ||
166 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2 0x000000f4 /* DEVICE_STATUS_CONTROL_2 Register */ | ||
167 | #define PCIE_CFG_LINK_CAPABILITIES_2 0x000000f8 /* LINK_CAPABILITIES_2 Register */ | ||
168 | #define PCIE_CFG_LINK_STATUS_CONTROL_2 0x000000fc /* LINK_STATUS_CONTROL_2 Register */ | ||
169 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER 0x00000100 /* ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER Register */ | ||
170 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS 0x00000104 /* UNCORRECTABLE_ERROR_STATUS Register */ | ||
171 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK 0x00000108 /* UNCORRECTABLE_ERROR_MASK Register */ | ||
172 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY 0x0000010c /* UNCORRECTABLE_ERROR_SEVERITY Register */ | ||
173 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS 0x00000110 /* CORRECTABLE_ERROR_STATUS Register */ | ||
174 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK 0x00000114 /* CORRECTABLE_ERROR_MASK Register */ | ||
175 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL 0x00000118 /* ADVANCED_ERROR_CAPABILITIES_AND_CONTROL Register */ | ||
176 | #define PCIE_CFG_HEADER_LOG_1 0x0000011c /* HEADER_LOG_1 Register */ | ||
177 | #define PCIE_CFG_HEADER_LOG_2 0x00000120 /* HEADER_LOG_2 Register */ | ||
178 | #define PCIE_CFG_HEADER_LOG_3 0x00000124 /* HEADER_LOG_3 Register */ | ||
179 | #define PCIE_CFG_HEADER_LOG_4 0x00000128 /* HEADER_LOG_4 Register */ | ||
180 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER 0x0000013c /* VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER Register */ | ||
181 | #define PCIE_CFG_PORT_VC_CAPABILITY 0x00000140 /* PORT_VC_CAPABILITY Register */ | ||
182 | #define PCIE_CFG_PORT_VC_CAPABILITY_2 0x00000144 /* PORT_VC_CAPABILITY_2 Register */ | ||
183 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL 0x00000148 /* PORT_VC_STATUS_CONTROL Register */ | ||
184 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY 0x0000014c /* VC_RESOURCE_CAPABILITY Register */ | ||
185 | #define PCIE_CFG_VC_RESOURCE_CONTROL 0x00000150 /* VC_RESOURCE_CONTROL Register */ | ||
186 | #define PCIE_CFG_VC_RESOURCE_STATUS 0x00000154 /* VC_RESOURCE_STATUS Register */ | ||
187 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER 0x00000160 /* DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER Register */ | ||
188 | #define PCIE_CFG_DEVICE_SERIAL_NO_LOWER_DW 0x00000164 /* DEVICE_SERIAL_NO_LOWER_DW Register */ | ||
189 | #define PCIE_CFG_DEVICE_SERIAL_NO_UPPER_DW 0x00000168 /* DEVICE_SERIAL_NO_UPPER_DW Register */ | ||
190 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER 0x0000016c /* POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER Register */ | ||
191 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT 0x00000170 /* POWER_BUDGETING_DATA_SELECT Register */ | ||
192 | #define PCIE_CFG_POWER_BUDGETING_DATA 0x00000174 /* POWER_BUDGETING_DATA Register */ | ||
193 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY 0x00000178 /* POWER_BUDGETING_CAPABILITY Register */ | ||
194 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1 0x0000017c /* FIRMWARE_POWER_BUDGETING_2_1 Register */ | ||
195 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3 0x00000180 /* FIRMWARE_POWER_BUDGETING_4_3 Register */ | ||
196 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5 0x00000184 /* FIRMWARE_POWER_BUDGETING_6_5 Register */ | ||
197 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7 0x00000188 /* FIRMWARE_POWER_BUDGETING_8_7 Register */ | ||
198 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING 0x0000018c /* PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING Register */ | ||
199 | |||
200 | |||
201 | /**************************************************************************** | ||
202 | * BCM70012_TGT_TOP_PCIE_TL | ||
203 | ***************************************************************************/ | ||
204 | #define PCIE_TL_TL_CONTROL 0x00000400 /* TL_CONTROL Register */ | ||
205 | #define PCIE_TL_TRANSACTION_CONFIGURATION 0x00000404 /* TRANSACTION_CONFIGURATION Register */ | ||
206 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC 0x00000408 /* WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC Register */ | ||
207 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2 0x0000040c /* WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2 Register */ | ||
208 | #define PCIE_TL_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC 0x00000410 /* DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC Register */ | ||
209 | #define PCIE_TL_DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2 0x00000414 /* DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2 Register */ | ||
210 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC 0x00000418 /* DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC Register */ | ||
211 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC 0x0000041c /* DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC Register */ | ||
212 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC 0x00000420 /* READ_DMA_SPLIT_IDS_DIAGNOSTIC Register */ | ||
213 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC 0x00000424 /* READ_DMA_SPLIT_LENGTH_DIAGNOSTIC Register */ | ||
214 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC 0x0000043c /* XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC Register */ | ||
215 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC 0x00000458 /* DMA_COMPLETION_MISC__DIAGNOSTIC Register */ | ||
216 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC 0x0000045c /* SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC Register */ | ||
217 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC 0x00000460 /* SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC Register */ | ||
218 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC 0x00000464 /* SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC Register */ | ||
219 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO 0x00000468 /* TL_BUS_NO_DEV__NO__FUNC__NO Register */ | ||
220 | #define PCIE_TL_TL_DEBUG 0x0000046c /* TL_DEBUG Register */ | ||
221 | |||
222 | |||
223 | /**************************************************************************** | ||
224 | * BCM70012_TGT_TOP_PCIE_DLL | ||
225 | ***************************************************************************/ | ||
226 | #define PCIE_DLL_DATA_LINK_CONTROL 0x00000500 /* DATA_LINK_CONTROL Register */ | ||
227 | #define PCIE_DLL_DATA_LINK_STATUS 0x00000504 /* DATA_LINK_STATUS Register */ | ||
228 | #define PCIE_DLL_DATA_LINK_ATTENTION 0x00000508 /* DATA_LINK_ATTENTION Register */ | ||
229 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK 0x0000050c /* DATA_LINK_ATTENTION_MASK Register */ | ||
230 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG 0x00000510 /* NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG Register */ | ||
231 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG 0x00000514 /* ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG Register */ | ||
232 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG 0x00000518 /* PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG Register */ | ||
233 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG 0x0000051c /* RECEIVE_SEQUENCE_NUMBER_DEBUG Register */ | ||
234 | #define PCIE_DLL_DATA_LINK_REPLAY 0x00000520 /* DATA_LINK_REPLAY Register */ | ||
235 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT 0x00000524 /* DATA_LINK_ACK_TIMEOUT Register */ | ||
236 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD 0x00000528 /* POWER_MANAGEMENT_THRESHOLD Register */ | ||
237 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG 0x0000052c /* RETRY_BUFFER_WRITE_POINTER_DEBUG Register */ | ||
238 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG 0x00000530 /* RETRY_BUFFER_READ_POINTER_DEBUG Register */ | ||
239 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG 0x00000534 /* RETRY_BUFFER_PURGED_POINTER_DEBUG Register */ | ||
240 | #define PCIE_DLL_RETRY_BUFFER_READ_WRITE_DEBUG_PORT 0x00000538 /* RETRY_BUFFER_READ_WRITE_DEBUG_PORT Register */ | ||
241 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD 0x0000053c /* ERROR_COUNT_THRESHOLD Register */ | ||
242 | #define PCIE_DLL_TL_ERROR_COUNTER 0x00000540 /* TL_ERROR_COUNTER Register */ | ||
243 | #define PCIE_DLL_DLLP_ERROR_COUNTER 0x00000544 /* DLLP_ERROR_COUNTER Register */ | ||
244 | #define PCIE_DLL_NAK_RECEIVED_COUNTER 0x00000548 /* NAK_RECEIVED_COUNTER Register */ | ||
245 | #define PCIE_DLL_DATA_LINK_TEST 0x0000054c /* DATA_LINK_TEST Register */ | ||
246 | #define PCIE_DLL_PACKET_BIST 0x00000550 /* PACKET_BIST Register */ | ||
247 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL 0x00000554 /* LINK_PCIE_1_1_CONTROL Register */ | ||
248 | |||
249 | |||
250 | /**************************************************************************** | ||
251 | * BCM70012_TGT_TOP_PCIE_PHY | ||
252 | ***************************************************************************/ | ||
253 | #define PCIE_PHY_PHY_MODE 0x00000600 /* TYPE_PHY_MODE Register */ | ||
254 | #define PCIE_PHY_PHY_LINK_STATUS 0x00000604 /* TYPE_PHY_LINK_STATUS Register */ | ||
255 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL 0x00000608 /* TYPE_PHY_LINK_LTSSM_CONTROL Register */ | ||
256 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER 0x0000060c /* TYPE_PHY_LINK_TRAINING_LINK_NUMBER Register */ | ||
257 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER 0x00000610 /* TYPE_PHY_LINK_TRAINING_LANE_NUMBER Register */ | ||
258 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS 0x00000614 /* TYPE_PHY_LINK_TRAINING_N_FTS Register */ | ||
259 | #define PCIE_PHY_PHY_ATTENTION 0x00000618 /* TYPE_PHY_ATTENTION Register */ | ||
260 | #define PCIE_PHY_PHY_ATTENTION_MASK 0x0000061c /* TYPE_PHY_ATTENTION_MASK Register */ | ||
261 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER 0x00000620 /* TYPE_PHY_RECEIVE_ERROR_COUNTER Register */ | ||
262 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER 0x00000624 /* TYPE_PHY_RECEIVE_FRAMING_ERROR_COUNTER Register */ | ||
263 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD 0x00000628 /* TYPE_PHY_RECEIVE_ERROR_THRESHOLD Register */ | ||
264 | #define PCIE_PHY_PHY_TEST_CONTROL 0x0000062c /* TYPE_PHY_TEST_CONTROL Register */ | ||
265 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE 0x00000630 /* TYPE_PHY_SERDES_CONTROL_OVERRIDE Register */ | ||
266 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE 0x00000634 /* TYPE_PHY_TIMING_PARAMETER_OVERRIDE Register */ | ||
267 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES 0x00000638 /* TYPE_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES Register */ | ||
268 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES 0x0000063c /* TYPE_PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES Register */ | ||
269 | |||
270 | |||
271 | /**************************************************************************** | ||
272 | * BCM70012_TGT_TOP_INTR | ||
273 | ***************************************************************************/ | ||
274 | #define INTR_INTR_STATUS 0x00000700 /* Interrupt Status Register */ | ||
275 | #define INTR_INTR_SET 0x00000704 /* Interrupt Set Register */ | ||
276 | #define INTR_INTR_CLR_REG 0x00000708 /* Interrupt Clear Register */ | ||
277 | #define INTR_INTR_MSK_STS_REG 0x0000070c /* Interrupt Mask Status Register */ | ||
278 | #define INTR_INTR_MSK_SET_REG 0x00000710 /* Interrupt Mask Set Register */ | ||
279 | #define INTR_INTR_MSK_CLR_REG 0x00000714 /* Interrupt Mask Clear Register */ | ||
280 | #define INTR_EOI_CTRL 0x00000720 /* End of interrupt control register */ | ||
281 | |||
282 | |||
283 | /**************************************************************************** | ||
284 | * BCM70012_TGT_TOP_MDIO | ||
285 | ***************************************************************************/ | ||
286 | #define MDIO_CTRL0 0x00000730 /* PCIE Serdes MDIO Control Register 0 */ | ||
287 | #define MDIO_CTRL1 0x00000734 /* PCIE Serdes MDIO Control Register 1 */ | ||
288 | #define MDIO_CTRL2 0x00000738 /* PCIE Serdes MDIO Control Register 2 */ | ||
289 | |||
290 | |||
291 | /**************************************************************************** | ||
292 | * BCM70012_TGT_TOP_TGT_RGR_BRIDGE | ||
293 | ***************************************************************************/ | ||
294 | #define TGT_RGR_BRIDGE_REVISION 0x00000740 /* PCIE RGR Bridge Revision Register */ | ||
295 | #define TGT_RGR_BRIDGE_CTRL 0x00000744 /* RGR Bridge Control Register */ | ||
296 | #define TGT_RGR_BRIDGE_RBUS_TIMER 0x00000748 /* RGR Bridge RBUS Timer Register */ | ||
297 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0 0x0000074c /* RGR Bridge Spare Software Reset 0 Register */ | ||
298 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1 0x00000750 /* RGR Bridge Spare Software Reset 1 Register */ | ||
299 | |||
300 | |||
301 | /**************************************************************************** | ||
302 | * BCM70012_I2C_TOP_I2C | ||
303 | ***************************************************************************/ | ||
304 | #define I2C_CHIP_ADDRESS 0x00000800 /* I2C Chip Address And Read/Write Control */ | ||
305 | #define I2C_DATA_IN0 0x00000804 /* I2C Write Data Byte 0 */ | ||
306 | #define I2C_DATA_IN1 0x00000808 /* I2C Write Data Byte 1 */ | ||
307 | #define I2C_DATA_IN2 0x0000080c /* I2C Write Data Byte 2 */ | ||
308 | #define I2C_DATA_IN3 0x00000810 /* I2C Write Data Byte 3 */ | ||
309 | #define I2C_DATA_IN4 0x00000814 /* I2C Write Data Byte 4 */ | ||
310 | #define I2C_DATA_IN5 0x00000818 /* I2C Write Data Byte 5 */ | ||
311 | #define I2C_DATA_IN6 0x0000081c /* I2C Write Data Byte 6 */ | ||
312 | #define I2C_DATA_IN7 0x00000820 /* I2C Write Data Byte 7 */ | ||
313 | #define I2C_CNT_REG 0x00000824 /* I2C Transfer Count Register */ | ||
314 | #define I2C_CTL_REG 0x00000828 /* I2C Control Register */ | ||
315 | #define I2C_IIC_ENABLE 0x0000082c /* I2C Read/Write Enable And Interrupt */ | ||
316 | #define I2C_DATA_OUT0 0x00000830 /* I2C Read Data Byte 0 */ | ||
317 | #define I2C_DATA_OUT1 0x00000834 /* I2C Read Data Byte 1 */ | ||
318 | #define I2C_DATA_OUT2 0x00000838 /* I2C Read Data Byte 2 */ | ||
319 | #define I2C_DATA_OUT3 0x0000083c /* I2C Read Data Byte 3 */ | ||
320 | #define I2C_DATA_OUT4 0x00000840 /* I2C Read Data Byte 4 */ | ||
321 | #define I2C_DATA_OUT5 0x00000844 /* I2C Read Data Byte 5 */ | ||
322 | #define I2C_DATA_OUT6 0x00000848 /* I2C Read Data Byte 6 */ | ||
323 | #define I2C_DATA_OUT7 0x0000084c /* I2C Read Data Byte 7 */ | ||
324 | #define I2C_CTLHI_REG 0x00000850 /* I2C Control Register */ | ||
325 | #define I2C_SCL_PARAM 0x00000854 /* I2C SCL Parameter Register */ | ||
326 | |||
327 | |||
328 | /**************************************************************************** | ||
329 | * BCM70012_I2C_TOP_I2C_GR_BRIDGE | ||
330 | ***************************************************************************/ | ||
331 | #define I2C_GR_BRIDGE_REVISION 0x00000be0 /* GR Bridge Revision */ | ||
332 | #define I2C_GR_BRIDGE_CTRL 0x00000be4 /* GR Bridge Control Register */ | ||
333 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0 0x00000be8 /* GR Bridge Software Reset 0 Register */ | ||
334 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1 0x00000bec /* GR Bridge Software Reset 1 Register */ | ||
335 | |||
336 | |||
337 | /**************************************************************************** | ||
338 | * BCM70012_MISC_TOP_MISC1 | ||
339 | ***************************************************************************/ | ||
340 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0 0x00000c00 /* Tx DMA Descriptor List0 First Descriptor lower Address */ | ||
341 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST0 0x00000c04 /* Tx DMA Descriptor List0 First Descriptor Upper Address */ | ||
342 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1 0x00000c08 /* Tx DMA Descriptor List1 First Descriptor Lower Address */ | ||
343 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST1 0x00000c0c /* Tx DMA Descriptor List1 First Descriptor Upper Address */ | ||
344 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS 0x00000c10 /* Tx DMA Software Descriptor List Control and Status */ | ||
345 | #define MISC1_TX_DMA_ERROR_STATUS 0x00000c18 /* Tx DMA Engine Error Status */ | ||
346 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR 0x00000c1c /* Tx DMA List0 Current Descriptor Lower Address */ | ||
347 | #define MISC1_TX_DMA_LIST0_CUR_DESC_U_ADDR 0x00000c20 /* Tx DMA List0 Current Descriptor Upper Address */ | ||
348 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM 0x00000c24 /* Tx DMA List0 Current Descriptor Upper Address */ | ||
349 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR 0x00000c28 /* Tx DMA List1 Current Descriptor Lower Address */ | ||
350 | #define MISC1_TX_DMA_LIST1_CUR_DESC_U_ADDR 0x00000c2c /* Tx DMA List1 Current Descriptor Upper Address */ | ||
351 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM 0x00000c30 /* Tx DMA List1 Current Descriptor Upper Address */ | ||
352 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0 0x00000c34 /* Y Rx Descriptor List0 First Descriptor Lower Address */ | ||
353 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST0 0x00000c38 /* Y Rx Descriptor List0 First Descriptor Upper Address */ | ||
354 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1 0x00000c3c /* Y Rx Descriptor List1 First Descriptor Lower Address */ | ||
355 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST1 0x00000c40 /* Y Rx Descriptor List1 First Descriptor Upper Address */ | ||
356 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS 0x00000c44 /* Y Rx Software Descriptor List Control and Status */ | ||
357 | #define MISC1_Y_RX_ERROR_STATUS 0x00000c4c /* Y Rx Engine Error Status */ | ||
358 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR 0x00000c50 /* Y Rx List0 Current Descriptor Lower Address */ | ||
359 | #define MISC1_Y_RX_LIST0_CUR_DESC_U_ADDR 0x00000c54 /* Y Rx List0 Current Descriptor Upper Address */ | ||
360 | #define MISC1_Y_RX_LIST0_CUR_BYTE_CNT 0x00000c58 /* Y Rx List0 Current Descriptor Byte Count */ | ||
361 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR 0x00000c5c /* Y Rx List1 Current Descriptor Lower address */ | ||
362 | #define MISC1_Y_RX_LIST1_CUR_DESC_U_ADDR 0x00000c60 /* Y Rx List1 Current Descriptor Upper address */ | ||
363 | #define MISC1_Y_RX_LIST1_CUR_BYTE_CNT 0x00000c64 /* Y Rx List1 Current Descriptor Byte Count */ | ||
364 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0 0x00000c68 /* UV Rx Descriptor List0 First Descriptor lower Address */ | ||
365 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST0 0x00000c6c /* UV Rx Descriptor List0 First Descriptor Upper Address */ | ||
366 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1 0x00000c70 /* UV Rx Descriptor List1 First Descriptor Lower Address */ | ||
367 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST1 0x00000c74 /* UV Rx Descriptor List1 First Descriptor Upper Address */ | ||
368 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS 0x00000c78 /* UV Rx Software Descriptor List Control and Status */ | ||
369 | #define MISC1_UV_RX_ERROR_STATUS 0x00000c7c /* UV Rx Engine Error Status */ | ||
370 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR 0x00000c80 /* UV Rx List0 Current Descriptor Lower Address */ | ||
371 | #define MISC1_UV_RX_LIST0_CUR_DESC_U_ADDR 0x00000c84 /* UV Rx List0 Current Descriptor Upper Address */ | ||
372 | #define MISC1_UV_RX_LIST0_CUR_BYTE_CNT 0x00000c88 /* UV Rx List0 Current Descriptor Byte Count */ | ||
373 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR 0x00000c8c /* UV Rx List1 Current Descriptor Lower Address */ | ||
374 | #define MISC1_UV_RX_LIST1_CUR_DESC_U_ADDR 0x00000c90 /* UV Rx List1 Current Descriptor Upper Address */ | ||
375 | #define MISC1_UV_RX_LIST1_CUR_BYTE_CNT 0x00000c94 /* UV Rx List1 Current Descriptor Byte Count */ | ||
376 | #define MISC1_DMA_DEBUG_OPTIONS_REG 0x00000c98 /* DMA Debug Options Register */ | ||
377 | #define MISC1_READ_CHANNEL_ERROR_STATUS 0x00000c9c /* Read Channel Error Status */ | ||
378 | #define MISC1_PCIE_DMA_CTRL 0x00000ca0 /* PCIE DMA Control Register */ | ||
379 | |||
380 | |||
381 | /**************************************************************************** | ||
382 | * BCM70012_MISC_TOP_MISC2 | ||
383 | ***************************************************************************/ | ||
384 | #define MISC2_GLOBAL_CTRL 0x00000d00 /* Global Control Register */ | ||
385 | #define MISC2_INTERNAL_STATUS 0x00000d04 /* Internal Status Register */ | ||
386 | #define MISC2_INTERNAL_STATUS_MUX_CTRL 0x00000d08 /* Internal Debug Mux Control */ | ||
387 | #define MISC2_DEBUG_FIFO_LENGTH 0x00000d0c /* Debug FIFO Length */ | ||
388 | |||
389 | |||
390 | /**************************************************************************** | ||
391 | * BCM70012_MISC_TOP_MISC3 | ||
392 | ***************************************************************************/ | ||
393 | #define MISC3_RESET_CTRL 0x00000e00 /* Reset Control Register */ | ||
394 | #define MISC3_BIST_CTRL 0x00000e04 /* BIST Control Register */ | ||
395 | #define MISC3_BIST_STATUS 0x00000e08 /* BIST Status Register */ | ||
396 | #define MISC3_RX_CHECKSUM 0x00000e0c /* Receive Checksum */ | ||
397 | #define MISC3_TX_CHECKSUM 0x00000e10 /* Transmit Checksum */ | ||
398 | #define MISC3_ECO_CTRL_CORE 0x00000e14 /* ECO Core Reset Control Register */ | ||
399 | #define MISC3_CSI_TEST_CTRL 0x00000e18 /* CSI Test Control Register */ | ||
400 | #define MISC3_HD_DVI_TEST_CTRL 0x00000e1c /* HD DVI Test Control Register */ | ||
401 | |||
402 | |||
403 | /**************************************************************************** | ||
404 | * BCM70012_MISC_TOP_MISC_PERST | ||
405 | ***************************************************************************/ | ||
406 | #define MISC_PERST_ECO_CTRL_PERST 0x00000e80 /* ECO PCIE Reset Control Register */ | ||
407 | #define MISC_PERST_DECODER_CTRL 0x00000e84 /* Decoder Control Register */ | ||
408 | #define MISC_PERST_CCE_STATUS 0x00000e88 /* Config Copy Engine Status */ | ||
409 | #define MISC_PERST_PCIE_DEBUG 0x00000e8c /* PCIE Debug Control Register */ | ||
410 | #define MISC_PERST_PCIE_DEBUG_STATUS 0x00000e90 /* PCIE Debug Status Register */ | ||
411 | #define MISC_PERST_VREG_CTRL 0x00000e94 /* Voltage Regulator Control Register */ | ||
412 | #define MISC_PERST_MEM_CTRL 0x00000e98 /* Memory Control Register */ | ||
413 | #define MISC_PERST_CLOCK_CTRL 0x00000e9c /* Clock Control Register */ | ||
414 | |||
415 | |||
416 | /**************************************************************************** | ||
417 | * BCM70012_MISC_TOP_GISB_ARBITER | ||
418 | ***************************************************************************/ | ||
419 | #define GISB_ARBITER_REVISION 0x00000f00 /* GISB ARBITER REVISION */ | ||
420 | #define GISB_ARBITER_SCRATCH 0x00000f04 /* GISB ARBITER Scratch Register */ | ||
421 | #define GISB_ARBITER_REQ_MASK 0x00000f08 /* GISB ARBITER Master Request Mask Register */ | ||
422 | #define GISB_ARBITER_TIMER 0x00000f0c /* GISB ARBITER Timer Value Register */ | ||
423 | #define GISB_ARBITER_BP_CTRL 0x00000f10 /* GISB ARBITER Breakpoint Control Register */ | ||
424 | #define GISB_ARBITER_BP_CAP_CLR 0x00000f14 /* GISB ARBITER Breakpoint Capture Clear Register */ | ||
425 | #define GISB_ARBITER_BP_START_ADDR_0 0x00000f18 /* GISB ARBITER Breakpoint Start Address 0 Register */ | ||
426 | #define GISB_ARBITER_BP_END_ADDR_0 0x00000f1c /* GISB ARBITER Breakpoint End Address 0 Register */ | ||
427 | #define GISB_ARBITER_BP_READ_0 0x00000f20 /* GISB ARBITER Breakpoint Master Read Control 0 Register */ | ||
428 | #define GISB_ARBITER_BP_WRITE_0 0x00000f24 /* GISB ARBITER Breakpoint Master Write Control 0 Register */ | ||
429 | #define GISB_ARBITER_BP_ENABLE_0 0x00000f28 /* GISB ARBITER Breakpoint Enable 0 Register */ | ||
430 | #define GISB_ARBITER_BP_START_ADDR_1 0x00000f2c /* GISB ARBITER Breakpoint Start Address 1 Register */ | ||
431 | #define GISB_ARBITER_BP_END_ADDR_1 0x00000f30 /* GISB ARBITER Breakpoint End Address 1 Register */ | ||
432 | #define GISB_ARBITER_BP_READ_1 0x00000f34 /* GISB ARBITER Breakpoint Master Read Control 1 Register */ | ||
433 | #define GISB_ARBITER_BP_WRITE_1 0x00000f38 /* GISB ARBITER Breakpoint Master Write Control 1 Register */ | ||
434 | #define GISB_ARBITER_BP_ENABLE_1 0x00000f3c /* GISB ARBITER Breakpoint Enable 1 Register */ | ||
435 | #define GISB_ARBITER_BP_START_ADDR_2 0x00000f40 /* GISB ARBITER Breakpoint Start Address 2 Register */ | ||
436 | #define GISB_ARBITER_BP_END_ADDR_2 0x00000f44 /* GISB ARBITER Breakpoint End Address 2 Register */ | ||
437 | #define GISB_ARBITER_BP_READ_2 0x00000f48 /* GISB ARBITER Breakpoint Master Read Control 2 Register */ | ||
438 | #define GISB_ARBITER_BP_WRITE_2 0x00000f4c /* GISB ARBITER Breakpoint Master Write Control 2 Register */ | ||
439 | #define GISB_ARBITER_BP_ENABLE_2 0x00000f50 /* GISB ARBITER Breakpoint Enable 2 Register */ | ||
440 | #define GISB_ARBITER_BP_START_ADDR_3 0x00000f54 /* GISB ARBITER Breakpoint Start Address 3 Register */ | ||
441 | #define GISB_ARBITER_BP_END_ADDR_3 0x00000f58 /* GISB ARBITER Breakpoint End Address 3 Register */ | ||
442 | #define GISB_ARBITER_BP_READ_3 0x00000f5c /* GISB ARBITER Breakpoint Master Read Control 3 Register */ | ||
443 | #define GISB_ARBITER_BP_WRITE_3 0x00000f60 /* GISB ARBITER Breakpoint Master Write Control 3 Register */ | ||
444 | #define GISB_ARBITER_BP_ENABLE_3 0x00000f64 /* GISB ARBITER Breakpoint Enable 3 Register */ | ||
445 | #define GISB_ARBITER_BP_START_ADDR_4 0x00000f68 /* GISB ARBITER Breakpoint Start Address 4 Register */ | ||
446 | #define GISB_ARBITER_BP_END_ADDR_4 0x00000f6c /* GISB ARBITER Breakpoint End Address 4 Register */ | ||
447 | #define GISB_ARBITER_BP_READ_4 0x00000f70 /* GISB ARBITER Breakpoint Master Read Control 4 Register */ | ||
448 | #define GISB_ARBITER_BP_WRITE_4 0x00000f74 /* GISB ARBITER Breakpoint Master Write Control 4 Register */ | ||
449 | #define GISB_ARBITER_BP_ENABLE_4 0x00000f78 /* GISB ARBITER Breakpoint Enable 4 Register */ | ||
450 | #define GISB_ARBITER_BP_START_ADDR_5 0x00000f7c /* GISB ARBITER Breakpoint Start Address 5 Register */ | ||
451 | #define GISB_ARBITER_BP_END_ADDR_5 0x00000f80 /* GISB ARBITER Breakpoint End Address 5 Register */ | ||
452 | #define GISB_ARBITER_BP_READ_5 0x00000f84 /* GISB ARBITER Breakpoint Master Read Control 5 Register */ | ||
453 | #define GISB_ARBITER_BP_WRITE_5 0x00000f88 /* GISB ARBITER Breakpoint Master Write Control 5 Register */ | ||
454 | #define GISB_ARBITER_BP_ENABLE_5 0x00000f8c /* GISB ARBITER Breakpoint Enable 5 Register */ | ||
455 | #define GISB_ARBITER_BP_START_ADDR_6 0x00000f90 /* GISB ARBITER Breakpoint Start Address 6 Register */ | ||
456 | #define GISB_ARBITER_BP_END_ADDR_6 0x00000f94 /* GISB ARBITER Breakpoint End Address 6 Register */ | ||
457 | #define GISB_ARBITER_BP_READ_6 0x00000f98 /* GISB ARBITER Breakpoint Master Read Control 6 Register */ | ||
458 | #define GISB_ARBITER_BP_WRITE_6 0x00000f9c /* GISB ARBITER Breakpoint Master Write Control 6 Register */ | ||
459 | #define GISB_ARBITER_BP_ENABLE_6 0x00000fa0 /* GISB ARBITER Breakpoint Enable 6 Register */ | ||
460 | #define GISB_ARBITER_BP_START_ADDR_7 0x00000fa4 /* GISB ARBITER Breakpoint Start Address 7 Register */ | ||
461 | #define GISB_ARBITER_BP_END_ADDR_7 0x00000fa8 /* GISB ARBITER Breakpoint End Address 7 Register */ | ||
462 | #define GISB_ARBITER_BP_READ_7 0x00000fac /* GISB ARBITER Breakpoint Master Read Control 7 Register */ | ||
463 | #define GISB_ARBITER_BP_WRITE_7 0x00000fb0 /* GISB ARBITER Breakpoint Master Write Control 7 Register */ | ||
464 | #define GISB_ARBITER_BP_ENABLE_7 0x00000fb4 /* GISB ARBITER Breakpoint Enable 7 Register */ | ||
465 | #define GISB_ARBITER_BP_CAP_ADDR 0x00000fb8 /* GISB ARBITER Breakpoint Capture Address Register */ | ||
466 | #define GISB_ARBITER_BP_CAP_DATA 0x00000fbc /* GISB ARBITER Breakpoint Capture Data Register */ | ||
467 | #define GISB_ARBITER_BP_CAP_STATUS 0x00000fc0 /* GISB ARBITER Breakpoint Capture Status Register */ | ||
468 | #define GISB_ARBITER_BP_CAP_MASTER 0x00000fc4 /* GISB ARBITER Breakpoint Capture GISB MASTER Register */ | ||
469 | #define GISB_ARBITER_ERR_CAP_CLR 0x00000fc8 /* GISB ARBITER Error Capture Clear Register */ | ||
470 | #define GISB_ARBITER_ERR_CAP_ADDR 0x00000fcc /* GISB ARBITER Error Capture Address Register */ | ||
471 | #define GISB_ARBITER_ERR_CAP_DATA 0x00000fd0 /* GISB ARBITER Error Capture Data Register */ | ||
472 | #define GISB_ARBITER_ERR_CAP_STATUS 0x00000fd4 /* GISB ARBITER Error Capture Status Register */ | ||
473 | #define GISB_ARBITER_ERR_CAP_MASTER 0x00000fd8 /* GISB ARBITER Error Capture GISB MASTER Register */ | ||
474 | |||
475 | |||
476 | /**************************************************************************** | ||
477 | * BCM70012_MISC_TOP_MISC_GR_BRIDGE | ||
478 | ***************************************************************************/ | ||
479 | #define MISC_GR_BRIDGE_REVISION 0x00000fe0 /* GR Bridge Revision */ | ||
480 | #define MISC_GR_BRIDGE_CTRL 0x00000fe4 /* GR Bridge Control Register */ | ||
481 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0 0x00000fe8 /* GR Bridge Software Reset 0 Register */ | ||
482 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1 0x00000fec /* GR Bridge Software Reset 1 Register */ | ||
483 | |||
484 | |||
485 | /**************************************************************************** | ||
486 | * BCM70012_DBU_TOP_DBU | ||
487 | ***************************************************************************/ | ||
488 | #define DBU_DBU_CMD 0x00001000 /* DBU (Debug UART) command register */ | ||
489 | #define DBU_DBU_STATUS 0x00001004 /* DBU (Debug UART) status register */ | ||
490 | #define DBU_DBU_CONFIG 0x00001008 /* DBU (Debug UART) configuration register */ | ||
491 | #define DBU_DBU_TIMING 0x0000100c /* DBU (Debug UART) timing register */ | ||
492 | #define DBU_DBU_RXDATA 0x00001010 /* DBU (Debug UART) recieve data register */ | ||
493 | #define DBU_DBU_TXDATA 0x00001014 /* DBU (Debug UART) transmit data register */ | ||
494 | |||
495 | |||
496 | /**************************************************************************** | ||
497 | * BCM70012_DBU_TOP_DBU_RGR_BRIDGE | ||
498 | ***************************************************************************/ | ||
499 | #define DBU_RGR_BRIDGE_REVISION 0x000013e0 /* RGR Bridge Revision */ | ||
500 | #define DBU_RGR_BRIDGE_CTRL 0x000013e4 /* RGR Bridge Control Register */ | ||
501 | #define DBU_RGR_BRIDGE_RBUS_TIMER 0x000013e8 /* RGR Bridge RBUS Timer Register */ | ||
502 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0 0x000013ec /* RGR Bridge Software Reset 0 Register */ | ||
503 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1 0x000013f0 /* RGR Bridge Software Reset 1 Register */ | ||
504 | |||
505 | |||
506 | /**************************************************************************** | ||
507 | * BCM70012_OTP_TOP_OTP | ||
508 | ***************************************************************************/ | ||
509 | #define OTP_CONFIG_INFO 0x00001400 /* OTP Configuration Register */ | ||
510 | #define OTP_CMD 0x00001404 /* OTP Command Register */ | ||
511 | #define OTP_STATUS 0x00001408 /* OTP Status Register */ | ||
512 | #define OTP_CONTENT_MISC 0x0000140c /* Content : Miscellaneous Register */ | ||
513 | #define OTP_CONTENT_AES_0 0x00001410 /* Content : AES Key 0 Register */ | ||
514 | #define OTP_CONTENT_AES_1 0x00001414 /* Content : AES Key 1 Register */ | ||
515 | #define OTP_CONTENT_AES_2 0x00001418 /* Content : AES Key 2 Register */ | ||
516 | #define OTP_CONTENT_AES_3 0x0000141c /* Content : AES Key 3 Register */ | ||
517 | #define OTP_CONTENT_SHA_0 0x00001420 /* Content : SHA Key 0 Register */ | ||
518 | #define OTP_CONTENT_SHA_1 0x00001424 /* Content : SHA Key 1 Register */ | ||
519 | #define OTP_CONTENT_SHA_2 0x00001428 /* Content : SHA Key 2 Register */ | ||
520 | #define OTP_CONTENT_SHA_3 0x0000142c /* Content : SHA Key 3 Register */ | ||
521 | #define OTP_CONTENT_SHA_4 0x00001430 /* Content : SHA Key 4 Register */ | ||
522 | #define OTP_CONTENT_SHA_5 0x00001434 /* Content : SHA Key 5 Register */ | ||
523 | #define OTP_CONTENT_SHA_6 0x00001438 /* Content : SHA Key 6 Register */ | ||
524 | #define OTP_CONTENT_SHA_7 0x0000143c /* Content : SHA Key 7 Register */ | ||
525 | #define OTP_CONTENT_CHECKSUM 0x00001440 /* Content : Checksum Register */ | ||
526 | #define OTP_PROG_CTRL 0x00001444 /* Programming Control Register */ | ||
527 | #define OTP_PROG_STATUS 0x00001448 /* Programming Status Register */ | ||
528 | #define OTP_PROG_PULSE 0x0000144c /* Program Pulse Width Register */ | ||
529 | #define OTP_VERIFY_PULSE 0x00001450 /* Verify Pulse Width Register */ | ||
530 | #define OTP_PROG_MASK 0x00001454 /* Program Mask Register */ | ||
531 | #define OTP_DATA_INPUT 0x00001458 /* Data Input Register */ | ||
532 | #define OTP_DATA_OUTPUT 0x0000145c /* Data Output Register */ | ||
533 | |||
534 | |||
535 | /**************************************************************************** | ||
536 | * BCM70012_OTP_TOP_OTP_GR_BRIDGE | ||
537 | ***************************************************************************/ | ||
538 | #define OTP_GR_BRIDGE_REVISION 0x000017e0 /* GR Bridge Revision */ | ||
539 | #define OTP_GR_BRIDGE_CTRL 0x000017e4 /* GR Bridge Control Register */ | ||
540 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0 0x000017e8 /* GR Bridge Software Reset 0 Register */ | ||
541 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1 0x000017ec /* GR Bridge Software Reset 1 Register */ | ||
542 | |||
543 | |||
544 | /**************************************************************************** | ||
545 | * BCM70012_AES_TOP_AES | ||
546 | ***************************************************************************/ | ||
547 | #define AES_CONFIG_INFO 0x00001800 /* AES Configuration Information Register */ | ||
548 | #define AES_CMD 0x00001804 /* AES Command Register */ | ||
549 | #define AES_STATUS 0x00001808 /* AES Status Register */ | ||
550 | #define AES_EEPROM_CONFIG 0x0000180c /* AES EEPROM Configuration Register */ | ||
551 | #define AES_EEPROM_DATA_0 0x00001810 /* AES EEPROM Data Register 0 */ | ||
552 | #define AES_EEPROM_DATA_1 0x00001814 /* AES EEPROM Data Register 1 */ | ||
553 | #define AES_EEPROM_DATA_2 0x00001818 /* AES EEPROM Data Register 2 */ | ||
554 | #define AES_EEPROM_DATA_3 0x0000181c /* AES EEPROM Data Register 3 */ | ||
555 | |||
556 | |||
557 | /**************************************************************************** | ||
558 | * BCM70012_AES_TOP_AES_RGR_BRIDGE | ||
559 | ***************************************************************************/ | ||
560 | #define AES_RGR_BRIDGE_REVISION 0x00001be0 /* RGR Bridge Revision */ | ||
561 | #define AES_RGR_BRIDGE_CTRL 0x00001be4 /* RGR Bridge Control Register */ | ||
562 | #define AES_RGR_BRIDGE_RBUS_TIMER 0x00001be8 /* RGR Bridge RBUS Timer Register */ | ||
563 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0 0x00001bec /* RGR Bridge Software Reset 0 Register */ | ||
564 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1 0x00001bf0 /* RGR Bridge Software Reset 1 Register */ | ||
565 | |||
566 | |||
567 | /**************************************************************************** | ||
568 | * BCM70012_DCI_TOP_DCI | ||
569 | ***************************************************************************/ | ||
570 | #define DCI_CMD 0x00001c00 /* DCI Command Register */ | ||
571 | #define DCI_STATUS 0x00001c04 /* DCI Status Register */ | ||
572 | #define DCI_DRAM_BASE_ADDR 0x00001c08 /* DRAM Base Address Register */ | ||
573 | #define DCI_FIRMWARE_ADDR 0x00001c0c /* Firmware Address Register */ | ||
574 | #define DCI_FIRMWARE_DATA 0x00001c10 /* Firmware Data Register */ | ||
575 | #define DCI_SIGNATURE_DATA_0 0x00001c14 /* Signature Data Register 0 */ | ||
576 | #define DCI_SIGNATURE_DATA_1 0x00001c18 /* Signature Data Register 1 */ | ||
577 | #define DCI_SIGNATURE_DATA_2 0x00001c1c /* Signature Data Register 2 */ | ||
578 | #define DCI_SIGNATURE_DATA_3 0x00001c20 /* Signature Data Register 3 */ | ||
579 | #define DCI_SIGNATURE_DATA_4 0x00001c24 /* Signature Data Register 4 */ | ||
580 | #define DCI_SIGNATURE_DATA_5 0x00001c28 /* Signature Data Register 5 */ | ||
581 | #define DCI_SIGNATURE_DATA_6 0x00001c2c /* Signature Data Register 6 */ | ||
582 | #define DCI_SIGNATURE_DATA_7 0x00001c30 /* Signature Data Register 7 */ | ||
583 | |||
584 | |||
585 | /**************************************************************************** | ||
586 | * BCM70012_DCI_TOP_DCI_RGR_BRIDGE | ||
587 | ***************************************************************************/ | ||
588 | #define DCI_RGR_BRIDGE_REVISION 0x00001fe0 /* RGR Bridge Revision */ | ||
589 | #define DCI_RGR_BRIDGE_CTRL 0x00001fe4 /* RGR Bridge Control Register */ | ||
590 | #define DCI_RGR_BRIDGE_RBUS_TIMER 0x00001fe8 /* RGR Bridge RBUS Timer Register */ | ||
591 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0 0x00001fec /* RGR Bridge Software Reset 0 Register */ | ||
592 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1 0x00001ff0 /* RGR Bridge Software Reset 1 Register */ | ||
593 | |||
594 | |||
595 | /**************************************************************************** | ||
596 | * BCM70012_CCE_TOP_CCE_RGR_BRIDGE | ||
597 | ***************************************************************************/ | ||
598 | #define CCE_RGR_BRIDGE_REVISION 0x000023e0 /* RGR Bridge Revision */ | ||
599 | #define CCE_RGR_BRIDGE_CTRL 0x000023e4 /* RGR Bridge Control Register */ | ||
600 | #define CCE_RGR_BRIDGE_RBUS_TIMER 0x000023e8 /* RGR Bridge RBUS Timer Register */ | ||
601 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0 0x000023ec /* RGR Bridge Software Reset 0 Register */ | ||
602 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1 0x000023f0 /* RGR Bridge Software Reset 1 Register */ | ||
603 | |||
604 | |||
605 | /**************************************************************************** | ||
606 | * BCM70012_TGT_TOP_PCIE_CFG | ||
607 | ***************************************************************************/ | ||
608 | /**************************************************************************** | ||
609 | * PCIE_CFG :: DEVICE_VENDOR_ID | ||
610 | ***************************************************************************/ | ||
611 | /* PCIE_CFG :: DEVICE_VENDOR_ID :: DEVICE_ID [31:16] */ | ||
612 | #define PCIE_CFG_DEVICE_VENDOR_ID_DEVICE_ID_MASK 0xffff0000 | ||
613 | #define PCIE_CFG_DEVICE_VENDOR_ID_DEVICE_ID_ALIGN 0 | ||
614 | #define PCIE_CFG_DEVICE_VENDOR_ID_DEVICE_ID_BITS 16 | ||
615 | #define PCIE_CFG_DEVICE_VENDOR_ID_DEVICE_ID_SHIFT 16 | ||
616 | |||
617 | /* PCIE_CFG :: DEVICE_VENDOR_ID :: VENDOR_ID [15:00] */ | ||
618 | #define PCIE_CFG_DEVICE_VENDOR_ID_VENDOR_ID_MASK 0x0000ffff | ||
619 | #define PCIE_CFG_DEVICE_VENDOR_ID_VENDOR_ID_ALIGN 0 | ||
620 | #define PCIE_CFG_DEVICE_VENDOR_ID_VENDOR_ID_BITS 16 | ||
621 | #define PCIE_CFG_DEVICE_VENDOR_ID_VENDOR_ID_SHIFT 0 | ||
622 | |||
623 | |||
624 | /**************************************************************************** | ||
625 | * PCIE_CFG :: STATUS_COMMAND | ||
626 | ***************************************************************************/ | ||
627 | /* PCIE_CFG :: STATUS_COMMAND :: DETECTED_PARITY_ERROR [31:31] */ | ||
628 | #define PCIE_CFG_STATUS_COMMAND_DETECTED_PARITY_ERROR_MASK 0x80000000 | ||
629 | #define PCIE_CFG_STATUS_COMMAND_DETECTED_PARITY_ERROR_ALIGN 0 | ||
630 | #define PCIE_CFG_STATUS_COMMAND_DETECTED_PARITY_ERROR_BITS 1 | ||
631 | #define PCIE_CFG_STATUS_COMMAND_DETECTED_PARITY_ERROR_SHIFT 31 | ||
632 | |||
633 | /* PCIE_CFG :: STATUS_COMMAND :: SIGNALED_SYSTEM_ERROR [30:30] */ | ||
634 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_SYSTEM_ERROR_MASK 0x40000000 | ||
635 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_SYSTEM_ERROR_ALIGN 0 | ||
636 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_SYSTEM_ERROR_BITS 1 | ||
637 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_SYSTEM_ERROR_SHIFT 30 | ||
638 | |||
639 | /* PCIE_CFG :: STATUS_COMMAND :: RECEIVED_MASTER_ABORT [29:29] */ | ||
640 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_MASTER_ABORT_MASK 0x20000000 | ||
641 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_MASTER_ABORT_ALIGN 0 | ||
642 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_MASTER_ABORT_BITS 1 | ||
643 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_MASTER_ABORT_SHIFT 29 | ||
644 | |||
645 | /* PCIE_CFG :: STATUS_COMMAND :: RECEIVED_TARGET_ABORT [28:28] */ | ||
646 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_TARGET_ABORT_MASK 0x10000000 | ||
647 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_TARGET_ABORT_ALIGN 0 | ||
648 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_TARGET_ABORT_BITS 1 | ||
649 | #define PCIE_CFG_STATUS_COMMAND_RECEIVED_TARGET_ABORT_SHIFT 28 | ||
650 | |||
651 | /* PCIE_CFG :: STATUS_COMMAND :: SIGNALED_TARGET_ABORT [27:27] */ | ||
652 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_TARGET_ABORT_MASK 0x08000000 | ||
653 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_TARGET_ABORT_ALIGN 0 | ||
654 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_TARGET_ABORT_BITS 1 | ||
655 | #define PCIE_CFG_STATUS_COMMAND_SIGNALED_TARGET_ABORT_SHIFT 27 | ||
656 | |||
657 | /* PCIE_CFG :: STATUS_COMMAND :: DEVSEL_TIMING [26:25] */ | ||
658 | #define PCIE_CFG_STATUS_COMMAND_DEVSEL_TIMING_MASK 0x06000000 | ||
659 | #define PCIE_CFG_STATUS_COMMAND_DEVSEL_TIMING_ALIGN 0 | ||
660 | #define PCIE_CFG_STATUS_COMMAND_DEVSEL_TIMING_BITS 2 | ||
661 | #define PCIE_CFG_STATUS_COMMAND_DEVSEL_TIMING_SHIFT 25 | ||
662 | |||
663 | /* PCIE_CFG :: STATUS_COMMAND :: MASTER_DATA_PARITY_ERROR [24:24] */ | ||
664 | #define PCIE_CFG_STATUS_COMMAND_MASTER_DATA_PARITY_ERROR_MASK 0x01000000 | ||
665 | #define PCIE_CFG_STATUS_COMMAND_MASTER_DATA_PARITY_ERROR_ALIGN 0 | ||
666 | #define PCIE_CFG_STATUS_COMMAND_MASTER_DATA_PARITY_ERROR_BITS 1 | ||
667 | #define PCIE_CFG_STATUS_COMMAND_MASTER_DATA_PARITY_ERROR_SHIFT 24 | ||
668 | |||
669 | /* PCIE_CFG :: STATUS_COMMAND :: FAST_BACK_TO_BACK_CAPABLE [23:23] */ | ||
670 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_CAPABLE_MASK 0x00800000 | ||
671 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_CAPABLE_ALIGN 0 | ||
672 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_CAPABLE_BITS 1 | ||
673 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_CAPABLE_SHIFT 23 | ||
674 | |||
675 | /* PCIE_CFG :: STATUS_COMMAND :: RESERVED_0 [22:22] */ | ||
676 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_0_MASK 0x00400000 | ||
677 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_0_ALIGN 0 | ||
678 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_0_BITS 1 | ||
679 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_0_SHIFT 22 | ||
680 | |||
681 | /* PCIE_CFG :: STATUS_COMMAND :: CAPABLE_66MHZ [21:21] */ | ||
682 | #define PCIE_CFG_STATUS_COMMAND_CAPABLE_66MHZ_MASK 0x00200000 | ||
683 | #define PCIE_CFG_STATUS_COMMAND_CAPABLE_66MHZ_ALIGN 0 | ||
684 | #define PCIE_CFG_STATUS_COMMAND_CAPABLE_66MHZ_BITS 1 | ||
685 | #define PCIE_CFG_STATUS_COMMAND_CAPABLE_66MHZ_SHIFT 21 | ||
686 | |||
687 | /* PCIE_CFG :: STATUS_COMMAND :: CAPABILITIES_LIST [20:20] */ | ||
688 | #define PCIE_CFG_STATUS_COMMAND_CAPABILITIES_LIST_MASK 0x00100000 | ||
689 | #define PCIE_CFG_STATUS_COMMAND_CAPABILITIES_LIST_ALIGN 0 | ||
690 | #define PCIE_CFG_STATUS_COMMAND_CAPABILITIES_LIST_BITS 1 | ||
691 | #define PCIE_CFG_STATUS_COMMAND_CAPABILITIES_LIST_SHIFT 20 | ||
692 | |||
693 | /* PCIE_CFG :: STATUS_COMMAND :: INTERRUPT_STATUS [19:19] */ | ||
694 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_STATUS_MASK 0x00080000 | ||
695 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_STATUS_ALIGN 0 | ||
696 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_STATUS_BITS 1 | ||
697 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_STATUS_SHIFT 19 | ||
698 | |||
699 | /* PCIE_CFG :: STATUS_COMMAND :: RESERVED_1 [18:16] */ | ||
700 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_1_MASK 0x00070000 | ||
701 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_1_ALIGN 0 | ||
702 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_1_BITS 3 | ||
703 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_1_SHIFT 16 | ||
704 | |||
705 | /* PCIE_CFG :: STATUS_COMMAND :: RESERVED_2 [15:11] */ | ||
706 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_2_MASK 0x0000f800 | ||
707 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_2_ALIGN 0 | ||
708 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_2_BITS 5 | ||
709 | #define PCIE_CFG_STATUS_COMMAND_RESERVED_2_SHIFT 11 | ||
710 | |||
711 | /* PCIE_CFG :: STATUS_COMMAND :: INTERRUPT_DISABLE [10:10] */ | ||
712 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_DISABLE_MASK 0x00000400 | ||
713 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_DISABLE_ALIGN 0 | ||
714 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_DISABLE_BITS 1 | ||
715 | #define PCIE_CFG_STATUS_COMMAND_INTERRUPT_DISABLE_SHIFT 10 | ||
716 | |||
717 | /* PCIE_CFG :: STATUS_COMMAND :: FAST_BACK_TO_BACK_ENABLE [09:09] */ | ||
718 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_ENABLE_MASK 0x00000200 | ||
719 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_ENABLE_ALIGN 0 | ||
720 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_ENABLE_BITS 1 | ||
721 | #define PCIE_CFG_STATUS_COMMAND_FAST_BACK_TO_BACK_ENABLE_SHIFT 9 | ||
722 | |||
723 | /* PCIE_CFG :: STATUS_COMMAND :: SYSTEM_ERROR_ENABLE [08:08] */ | ||
724 | #define PCIE_CFG_STATUS_COMMAND_SYSTEM_ERROR_ENABLE_MASK 0x00000100 | ||
725 | #define PCIE_CFG_STATUS_COMMAND_SYSTEM_ERROR_ENABLE_ALIGN 0 | ||
726 | #define PCIE_CFG_STATUS_COMMAND_SYSTEM_ERROR_ENABLE_BITS 1 | ||
727 | #define PCIE_CFG_STATUS_COMMAND_SYSTEM_ERROR_ENABLE_SHIFT 8 | ||
728 | |||
729 | /* PCIE_CFG :: STATUS_COMMAND :: STEPPING_CONTROL [07:07] */ | ||
730 | #define PCIE_CFG_STATUS_COMMAND_STEPPING_CONTROL_MASK 0x00000080 | ||
731 | #define PCIE_CFG_STATUS_COMMAND_STEPPING_CONTROL_ALIGN 0 | ||
732 | #define PCIE_CFG_STATUS_COMMAND_STEPPING_CONTROL_BITS 1 | ||
733 | #define PCIE_CFG_STATUS_COMMAND_STEPPING_CONTROL_SHIFT 7 | ||
734 | |||
735 | /* PCIE_CFG :: STATUS_COMMAND :: PARITY_ERROR_ENABLE [06:06] */ | ||
736 | #define PCIE_CFG_STATUS_COMMAND_PARITY_ERROR_ENABLE_MASK 0x00000040 | ||
737 | #define PCIE_CFG_STATUS_COMMAND_PARITY_ERROR_ENABLE_ALIGN 0 | ||
738 | #define PCIE_CFG_STATUS_COMMAND_PARITY_ERROR_ENABLE_BITS 1 | ||
739 | #define PCIE_CFG_STATUS_COMMAND_PARITY_ERROR_ENABLE_SHIFT 6 | ||
740 | |||
741 | /* PCIE_CFG :: STATUS_COMMAND :: VGA_PALETTE_SNOOP [05:05] */ | ||
742 | #define PCIE_CFG_STATUS_COMMAND_VGA_PALETTE_SNOOP_MASK 0x00000020 | ||
743 | #define PCIE_CFG_STATUS_COMMAND_VGA_PALETTE_SNOOP_ALIGN 0 | ||
744 | #define PCIE_CFG_STATUS_COMMAND_VGA_PALETTE_SNOOP_BITS 1 | ||
745 | #define PCIE_CFG_STATUS_COMMAND_VGA_PALETTE_SNOOP_SHIFT 5 | ||
746 | |||
747 | /* PCIE_CFG :: STATUS_COMMAND :: MEMORY_WRITE_AND_INVALIDATE [04:04] */ | ||
748 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_WRITE_AND_INVALIDATE_MASK 0x00000010 | ||
749 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_WRITE_AND_INVALIDATE_ALIGN 0 | ||
750 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_WRITE_AND_INVALIDATE_BITS 1 | ||
751 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_WRITE_AND_INVALIDATE_SHIFT 4 | ||
752 | |||
753 | /* PCIE_CFG :: STATUS_COMMAND :: SPECIAL_CYCLES [03:03] */ | ||
754 | #define PCIE_CFG_STATUS_COMMAND_SPECIAL_CYCLES_MASK 0x00000008 | ||
755 | #define PCIE_CFG_STATUS_COMMAND_SPECIAL_CYCLES_ALIGN 0 | ||
756 | #define PCIE_CFG_STATUS_COMMAND_SPECIAL_CYCLES_BITS 1 | ||
757 | #define PCIE_CFG_STATUS_COMMAND_SPECIAL_CYCLES_SHIFT 3 | ||
758 | |||
759 | /* PCIE_CFG :: STATUS_COMMAND :: BUS_MASTER [02:02] */ | ||
760 | #define PCIE_CFG_STATUS_COMMAND_BUS_MASTER_MASK 0x00000004 | ||
761 | #define PCIE_CFG_STATUS_COMMAND_BUS_MASTER_ALIGN 0 | ||
762 | #define PCIE_CFG_STATUS_COMMAND_BUS_MASTER_BITS 1 | ||
763 | #define PCIE_CFG_STATUS_COMMAND_BUS_MASTER_SHIFT 2 | ||
764 | |||
765 | /* PCIE_CFG :: STATUS_COMMAND :: MEMORY_SPACE [01:01] */ | ||
766 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_SPACE_MASK 0x00000002 | ||
767 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_SPACE_ALIGN 0 | ||
768 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_SPACE_BITS 1 | ||
769 | #define PCIE_CFG_STATUS_COMMAND_MEMORY_SPACE_SHIFT 1 | ||
770 | |||
771 | /* PCIE_CFG :: STATUS_COMMAND :: I_O_SPACE [00:00] */ | ||
772 | #define PCIE_CFG_STATUS_COMMAND_I_O_SPACE_MASK 0x00000001 | ||
773 | #define PCIE_CFG_STATUS_COMMAND_I_O_SPACE_ALIGN 0 | ||
774 | #define PCIE_CFG_STATUS_COMMAND_I_O_SPACE_BITS 1 | ||
775 | #define PCIE_CFG_STATUS_COMMAND_I_O_SPACE_SHIFT 0 | ||
776 | |||
777 | |||
778 | /**************************************************************************** | ||
779 | * PCIE_CFG :: PCI_CLASSCODE_AND_REVISION_ID | ||
780 | ***************************************************************************/ | ||
781 | /* PCIE_CFG :: PCI_CLASSCODE_AND_REVISION_ID :: PCI_CLASSCODE [31:08] */ | ||
782 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_PCI_CLASSCODE_MASK 0xffffff00 | ||
783 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_PCI_CLASSCODE_ALIGN 0 | ||
784 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_PCI_CLASSCODE_BITS 24 | ||
785 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_PCI_CLASSCODE_SHIFT 8 | ||
786 | |||
787 | /* PCIE_CFG :: PCI_CLASSCODE_AND_REVISION_ID :: REVISION_ID [07:00] */ | ||
788 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_REVISION_ID_MASK 0x000000ff | ||
789 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_REVISION_ID_ALIGN 0 | ||
790 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_REVISION_ID_BITS 8 | ||
791 | #define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID_REVISION_ID_SHIFT 0 | ||
792 | |||
793 | |||
794 | /**************************************************************************** | ||
795 | * PCIE_CFG :: BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE | ||
796 | ***************************************************************************/ | ||
797 | /* PCIE_CFG :: BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE :: BIST [31:24] */ | ||
798 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_BIST_MASK 0xff000000 | ||
799 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_BIST_ALIGN 0 | ||
800 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_BIST_BITS 8 | ||
801 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_BIST_SHIFT 24 | ||
802 | |||
803 | /* PCIE_CFG :: BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE :: HEADER_TYPE [23:16] */ | ||
804 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_HEADER_TYPE_MASK 0x00ff0000 | ||
805 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_HEADER_TYPE_ALIGN 0 | ||
806 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_HEADER_TYPE_BITS 8 | ||
807 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_HEADER_TYPE_SHIFT 16 | ||
808 | |||
809 | /* PCIE_CFG :: BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE :: LATENCY_TIMER [15:08] */ | ||
810 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_LATENCY_TIMER_MASK 0x0000ff00 | ||
811 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_LATENCY_TIMER_ALIGN 0 | ||
812 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_LATENCY_TIMER_BITS 8 | ||
813 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_LATENCY_TIMER_SHIFT 8 | ||
814 | |||
815 | /* PCIE_CFG :: BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE :: CACHE_LINE_SIZE [07:00] */ | ||
816 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_CACHE_LINE_SIZE_MASK 0x000000ff | ||
817 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_CACHE_LINE_SIZE_ALIGN 0 | ||
818 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_CACHE_LINE_SIZE_BITS 8 | ||
819 | #define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE_CACHE_LINE_SIZE_SHIFT 0 | ||
820 | |||
821 | |||
822 | /**************************************************************************** | ||
823 | * PCIE_CFG :: BASE_ADDRESS_1 | ||
824 | ***************************************************************************/ | ||
825 | /* PCIE_CFG :: BASE_ADDRESS_1 :: BASE_ADDRESS [31:16] */ | ||
826 | #define PCIE_CFG_BASE_ADDRESS_1_BASE_ADDRESS_MASK 0xffff0000 | ||
827 | #define PCIE_CFG_BASE_ADDRESS_1_BASE_ADDRESS_ALIGN 0 | ||
828 | #define PCIE_CFG_BASE_ADDRESS_1_BASE_ADDRESS_BITS 16 | ||
829 | #define PCIE_CFG_BASE_ADDRESS_1_BASE_ADDRESS_SHIFT 16 | ||
830 | |||
831 | /* PCIE_CFG :: BASE_ADDRESS_1 :: RESERVED_0 [15:04] */ | ||
832 | #define PCIE_CFG_BASE_ADDRESS_1_RESERVED_0_MASK 0x0000fff0 | ||
833 | #define PCIE_CFG_BASE_ADDRESS_1_RESERVED_0_ALIGN 0 | ||
834 | #define PCIE_CFG_BASE_ADDRESS_1_RESERVED_0_BITS 12 | ||
835 | #define PCIE_CFG_BASE_ADDRESS_1_RESERVED_0_SHIFT 4 | ||
836 | |||
837 | /* PCIE_CFG :: BASE_ADDRESS_1 :: PREFETCHABLE [03:03] */ | ||
838 | #define PCIE_CFG_BASE_ADDRESS_1_PREFETCHABLE_MASK 0x00000008 | ||
839 | #define PCIE_CFG_BASE_ADDRESS_1_PREFETCHABLE_ALIGN 0 | ||
840 | #define PCIE_CFG_BASE_ADDRESS_1_PREFETCHABLE_BITS 1 | ||
841 | #define PCIE_CFG_BASE_ADDRESS_1_PREFETCHABLE_SHIFT 3 | ||
842 | |||
843 | /* PCIE_CFG :: BASE_ADDRESS_1 :: TYPE [02:01] */ | ||
844 | #define PCIE_CFG_BASE_ADDRESS_1_TYPE_MASK 0x00000006 | ||
845 | #define PCIE_CFG_BASE_ADDRESS_1_TYPE_ALIGN 0 | ||
846 | #define PCIE_CFG_BASE_ADDRESS_1_TYPE_BITS 2 | ||
847 | #define PCIE_CFG_BASE_ADDRESS_1_TYPE_SHIFT 1 | ||
848 | |||
849 | /* PCIE_CFG :: BASE_ADDRESS_1 :: MEMORY_SPACE_INDICATOR [00:00] */ | ||
850 | #define PCIE_CFG_BASE_ADDRESS_1_MEMORY_SPACE_INDICATOR_MASK 0x00000001 | ||
851 | #define PCIE_CFG_BASE_ADDRESS_1_MEMORY_SPACE_INDICATOR_ALIGN 0 | ||
852 | #define PCIE_CFG_BASE_ADDRESS_1_MEMORY_SPACE_INDICATOR_BITS 1 | ||
853 | #define PCIE_CFG_BASE_ADDRESS_1_MEMORY_SPACE_INDICATOR_SHIFT 0 | ||
854 | |||
855 | |||
856 | /**************************************************************************** | ||
857 | * PCIE_CFG :: BASE_ADDRESS_2 | ||
858 | ***************************************************************************/ | ||
859 | /* PCIE_CFG :: BASE_ADDRESS_2 :: EXTENDED_BASE_ADDRESS [31:00] */ | ||
860 | #define PCIE_CFG_BASE_ADDRESS_2_EXTENDED_BASE_ADDRESS_MASK 0xffffffff | ||
861 | #define PCIE_CFG_BASE_ADDRESS_2_EXTENDED_BASE_ADDRESS_ALIGN 0 | ||
862 | #define PCIE_CFG_BASE_ADDRESS_2_EXTENDED_BASE_ADDRESS_BITS 32 | ||
863 | #define PCIE_CFG_BASE_ADDRESS_2_EXTENDED_BASE_ADDRESS_SHIFT 0 | ||
864 | |||
865 | |||
866 | /**************************************************************************** | ||
867 | * PCIE_CFG :: BASE_ADDRESS_3 | ||
868 | ***************************************************************************/ | ||
869 | /* PCIE_CFG :: BASE_ADDRESS_3 :: BASE_ADDRESS_2 [31:22] */ | ||
870 | #define PCIE_CFG_BASE_ADDRESS_3_BASE_ADDRESS_2_MASK 0xffc00000 | ||
871 | #define PCIE_CFG_BASE_ADDRESS_3_BASE_ADDRESS_2_ALIGN 0 | ||
872 | #define PCIE_CFG_BASE_ADDRESS_3_BASE_ADDRESS_2_BITS 10 | ||
873 | #define PCIE_CFG_BASE_ADDRESS_3_BASE_ADDRESS_2_SHIFT 22 | ||
874 | |||
875 | /* PCIE_CFG :: BASE_ADDRESS_3 :: RESERVED_0 [21:04] */ | ||
876 | #define PCIE_CFG_BASE_ADDRESS_3_RESERVED_0_MASK 0x003ffff0 | ||
877 | #define PCIE_CFG_BASE_ADDRESS_3_RESERVED_0_ALIGN 0 | ||
878 | #define PCIE_CFG_BASE_ADDRESS_3_RESERVED_0_BITS 18 | ||
879 | #define PCIE_CFG_BASE_ADDRESS_3_RESERVED_0_SHIFT 4 | ||
880 | |||
881 | /* PCIE_CFG :: BASE_ADDRESS_3 :: PREFETCHABLE [03:03] */ | ||
882 | #define PCIE_CFG_BASE_ADDRESS_3_PREFETCHABLE_MASK 0x00000008 | ||
883 | #define PCIE_CFG_BASE_ADDRESS_3_PREFETCHABLE_ALIGN 0 | ||
884 | #define PCIE_CFG_BASE_ADDRESS_3_PREFETCHABLE_BITS 1 | ||
885 | #define PCIE_CFG_BASE_ADDRESS_3_PREFETCHABLE_SHIFT 3 | ||
886 | |||
887 | /* PCIE_CFG :: BASE_ADDRESS_3 :: TYPE [02:01] */ | ||
888 | #define PCIE_CFG_BASE_ADDRESS_3_TYPE_MASK 0x00000006 | ||
889 | #define PCIE_CFG_BASE_ADDRESS_3_TYPE_ALIGN 0 | ||
890 | #define PCIE_CFG_BASE_ADDRESS_3_TYPE_BITS 2 | ||
891 | #define PCIE_CFG_BASE_ADDRESS_3_TYPE_SHIFT 1 | ||
892 | |||
893 | /* PCIE_CFG :: BASE_ADDRESS_3 :: MEMORY_SPACE_INDICATOR [00:00] */ | ||
894 | #define PCIE_CFG_BASE_ADDRESS_3_MEMORY_SPACE_INDICATOR_MASK 0x00000001 | ||
895 | #define PCIE_CFG_BASE_ADDRESS_3_MEMORY_SPACE_INDICATOR_ALIGN 0 | ||
896 | #define PCIE_CFG_BASE_ADDRESS_3_MEMORY_SPACE_INDICATOR_BITS 1 | ||
897 | #define PCIE_CFG_BASE_ADDRESS_3_MEMORY_SPACE_INDICATOR_SHIFT 0 | ||
898 | |||
899 | |||
900 | /**************************************************************************** | ||
901 | * PCIE_CFG :: BASE_ADDRESS_4 | ||
902 | ***************************************************************************/ | ||
903 | /* PCIE_CFG :: BASE_ADDRESS_4 :: EXTENDED_BASE_ADDRESS_2 [31:00] */ | ||
904 | #define PCIE_CFG_BASE_ADDRESS_4_EXTENDED_BASE_ADDRESS_2_MASK 0xffffffff | ||
905 | #define PCIE_CFG_BASE_ADDRESS_4_EXTENDED_BASE_ADDRESS_2_ALIGN 0 | ||
906 | #define PCIE_CFG_BASE_ADDRESS_4_EXTENDED_BASE_ADDRESS_2_BITS 32 | ||
907 | #define PCIE_CFG_BASE_ADDRESS_4_EXTENDED_BASE_ADDRESS_2_SHIFT 0 | ||
908 | |||
909 | |||
910 | /**************************************************************************** | ||
911 | * PCIE_CFG :: CARDBUS_CIS_POINTER | ||
912 | ***************************************************************************/ | ||
913 | /* PCIE_CFG :: CARDBUS_CIS_POINTER :: CARDBUS_CIS_POINTER [31:00] */ | ||
914 | #define PCIE_CFG_CARDBUS_CIS_POINTER_CARDBUS_CIS_POINTER_MASK 0xffffffff | ||
915 | #define PCIE_CFG_CARDBUS_CIS_POINTER_CARDBUS_CIS_POINTER_ALIGN 0 | ||
916 | #define PCIE_CFG_CARDBUS_CIS_POINTER_CARDBUS_CIS_POINTER_BITS 32 | ||
917 | #define PCIE_CFG_CARDBUS_CIS_POINTER_CARDBUS_CIS_POINTER_SHIFT 0 | ||
918 | |||
919 | |||
920 | /**************************************************************************** | ||
921 | * PCIE_CFG :: SUBSYSTEM_DEVICE_VENDOR_ID | ||
922 | ***************************************************************************/ | ||
923 | /* PCIE_CFG :: SUBSYSTEM_DEVICE_VENDOR_ID :: SUBSYSTEM_DEVICE_ID [31:16] */ | ||
924 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_DEVICE_ID_MASK 0xffff0000 | ||
925 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_DEVICE_ID_ALIGN 0 | ||
926 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_DEVICE_ID_BITS 16 | ||
927 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_DEVICE_ID_SHIFT 16 | ||
928 | |||
929 | /* PCIE_CFG :: SUBSYSTEM_DEVICE_VENDOR_ID :: SUBSYSTEM_VENDOR_ID [15:00] */ | ||
930 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_VENDOR_ID_MASK 0x0000ffff | ||
931 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_VENDOR_ID_ALIGN 0 | ||
932 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_VENDOR_ID_BITS 16 | ||
933 | #define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID_SUBSYSTEM_VENDOR_ID_SHIFT 0 | ||
934 | |||
935 | |||
936 | /**************************************************************************** | ||
937 | * PCIE_CFG :: EXPANSION_ROM_BASE_ADDRESS | ||
938 | ***************************************************************************/ | ||
939 | /* PCIE_CFG :: EXPANSION_ROM_BASE_ADDRESS :: ROM_BASE_ADDRESS [31:16] */ | ||
940 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_BASE_ADDRESS_MASK 0xffff0000 | ||
941 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_BASE_ADDRESS_ALIGN 0 | ||
942 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_BASE_ADDRESS_BITS 16 | ||
943 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_BASE_ADDRESS_SHIFT 16 | ||
944 | |||
945 | /* PCIE_CFG :: EXPANSION_ROM_BASE_ADDRESS :: ROM_SIZE_INDICATION [15:11] */ | ||
946 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_SIZE_INDICATION_MASK 0x0000f800 | ||
947 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_SIZE_INDICATION_ALIGN 0 | ||
948 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_SIZE_INDICATION_BITS 5 | ||
949 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_ROM_SIZE_INDICATION_SHIFT 11 | ||
950 | |||
951 | /* PCIE_CFG :: EXPANSION_ROM_BASE_ADDRESS :: RESERVED_0 [10:01] */ | ||
952 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_RESERVED_0_MASK 0x000007fe | ||
953 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_RESERVED_0_ALIGN 0 | ||
954 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_RESERVED_0_BITS 10 | ||
955 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_RESERVED_0_SHIFT 1 | ||
956 | |||
957 | /* PCIE_CFG :: EXPANSION_ROM_BASE_ADDRESS :: EXPANSION_ROM_ENABLE [00:00] */ | ||
958 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_EXPANSION_ROM_ENABLE_MASK 0x00000001 | ||
959 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_EXPANSION_ROM_ENABLE_ALIGN 0 | ||
960 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_EXPANSION_ROM_ENABLE_BITS 1 | ||
961 | #define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS_EXPANSION_ROM_ENABLE_SHIFT 0 | ||
962 | |||
963 | |||
964 | /**************************************************************************** | ||
965 | * PCIE_CFG :: CAPABILITIES_POINTER | ||
966 | ***************************************************************************/ | ||
967 | /* PCIE_CFG :: CAPABILITIES_POINTER :: CAPABILITIES_POINTER [31:00] */ | ||
968 | #define PCIE_CFG_CAPABILITIES_POINTER_CAPABILITIES_POINTER_MASK 0xffffffff | ||
969 | #define PCIE_CFG_CAPABILITIES_POINTER_CAPABILITIES_POINTER_ALIGN 0 | ||
970 | #define PCIE_CFG_CAPABILITIES_POINTER_CAPABILITIES_POINTER_BITS 32 | ||
971 | #define PCIE_CFG_CAPABILITIES_POINTER_CAPABILITIES_POINTER_SHIFT 0 | ||
972 | |||
973 | |||
974 | /**************************************************************************** | ||
975 | * PCIE_CFG :: INTERRUPT | ||
976 | ***************************************************************************/ | ||
977 | /* PCIE_CFG :: INTERRUPT :: RESERVED_0 [31:16] */ | ||
978 | #define PCIE_CFG_INTERRUPT_RESERVED_0_MASK 0xffff0000 | ||
979 | #define PCIE_CFG_INTERRUPT_RESERVED_0_ALIGN 0 | ||
980 | #define PCIE_CFG_INTERRUPT_RESERVED_0_BITS 16 | ||
981 | #define PCIE_CFG_INTERRUPT_RESERVED_0_SHIFT 16 | ||
982 | |||
983 | /* PCIE_CFG :: INTERRUPT :: INTERRUPT_PIN [15:08] */ | ||
984 | #define PCIE_CFG_INTERRUPT_INTERRUPT_PIN_MASK 0x0000ff00 | ||
985 | #define PCIE_CFG_INTERRUPT_INTERRUPT_PIN_ALIGN 0 | ||
986 | #define PCIE_CFG_INTERRUPT_INTERRUPT_PIN_BITS 8 | ||
987 | #define PCIE_CFG_INTERRUPT_INTERRUPT_PIN_SHIFT 8 | ||
988 | |||
989 | /* PCIE_CFG :: INTERRUPT :: INTERRUPT_LINE [07:00] */ | ||
990 | #define PCIE_CFG_INTERRUPT_INTERRUPT_LINE_MASK 0x000000ff | ||
991 | #define PCIE_CFG_INTERRUPT_INTERRUPT_LINE_ALIGN 0 | ||
992 | #define PCIE_CFG_INTERRUPT_INTERRUPT_LINE_BITS 8 | ||
993 | #define PCIE_CFG_INTERRUPT_INTERRUPT_LINE_SHIFT 0 | ||
994 | |||
995 | |||
996 | /**************************************************************************** | ||
997 | * PCIE_CFG :: VPD_CAPABILITIES | ||
998 | ***************************************************************************/ | ||
999 | /* PCIE_CFG :: VPD_CAPABILITIES :: RESERVED_0 [31:00] */ | ||
1000 | #define PCIE_CFG_VPD_CAPABILITIES_RESERVED_0_MASK 0xffffffff | ||
1001 | #define PCIE_CFG_VPD_CAPABILITIES_RESERVED_0_ALIGN 0 | ||
1002 | #define PCIE_CFG_VPD_CAPABILITIES_RESERVED_0_BITS 32 | ||
1003 | #define PCIE_CFG_VPD_CAPABILITIES_RESERVED_0_SHIFT 0 | ||
1004 | |||
1005 | |||
1006 | /**************************************************************************** | ||
1007 | * PCIE_CFG :: VPD_DATA | ||
1008 | ***************************************************************************/ | ||
1009 | /* PCIE_CFG :: VPD_DATA :: RESERVED_0 [31:00] */ | ||
1010 | #define PCIE_CFG_VPD_DATA_RESERVED_0_MASK 0xffffffff | ||
1011 | #define PCIE_CFG_VPD_DATA_RESERVED_0_ALIGN 0 | ||
1012 | #define PCIE_CFG_VPD_DATA_RESERVED_0_BITS 32 | ||
1013 | #define PCIE_CFG_VPD_DATA_RESERVED_0_SHIFT 0 | ||
1014 | |||
1015 | |||
1016 | /**************************************************************************** | ||
1017 | * PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY | ||
1018 | ***************************************************************************/ | ||
1019 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: PME_SUPPORT [31:27] */ | ||
1020 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_SUPPORT_MASK 0xf8000000 | ||
1021 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_SUPPORT_ALIGN 0 | ||
1022 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_SUPPORT_BITS 5 | ||
1023 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_SUPPORT_SHIFT 27 | ||
1024 | |||
1025 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: D2_SUPPORT [26:26] */ | ||
1026 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D2_SUPPORT_MASK 0x04000000 | ||
1027 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D2_SUPPORT_ALIGN 0 | ||
1028 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D2_SUPPORT_BITS 1 | ||
1029 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D2_SUPPORT_SHIFT 26 | ||
1030 | |||
1031 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: D1_SUPPORT [25:25] */ | ||
1032 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D1_SUPPORT_MASK 0x02000000 | ||
1033 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D1_SUPPORT_ALIGN 0 | ||
1034 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D1_SUPPORT_BITS 1 | ||
1035 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_D1_SUPPORT_SHIFT 25 | ||
1036 | |||
1037 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: AUX_CURRENT [24:22] */ | ||
1038 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_AUX_CURRENT_MASK 0x01c00000 | ||
1039 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_AUX_CURRENT_ALIGN 0 | ||
1040 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_AUX_CURRENT_BITS 3 | ||
1041 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_AUX_CURRENT_SHIFT 22 | ||
1042 | |||
1043 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: DSI [21:21] */ | ||
1044 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_DSI_MASK 0x00200000 | ||
1045 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_DSI_ALIGN 0 | ||
1046 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_DSI_BITS 1 | ||
1047 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_DSI_SHIFT 21 | ||
1048 | |||
1049 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: RESERVED_0 [20:20] */ | ||
1050 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_RESERVED_0_MASK 0x00100000 | ||
1051 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_RESERVED_0_ALIGN 0 | ||
1052 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_RESERVED_0_BITS 1 | ||
1053 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_RESERVED_0_SHIFT 20 | ||
1054 | |||
1055 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: PME_CLOCK [19:19] */ | ||
1056 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_CLOCK_MASK 0x00080000 | ||
1057 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_CLOCK_ALIGN 0 | ||
1058 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_CLOCK_BITS 1 | ||
1059 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_PME_CLOCK_SHIFT 19 | ||
1060 | |||
1061 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: VERSION [18:16] */ | ||
1062 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_VERSION_MASK 0x00070000 | ||
1063 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_VERSION_ALIGN 0 | ||
1064 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_VERSION_BITS 3 | ||
1065 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_VERSION_SHIFT 16 | ||
1066 | |||
1067 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: NEXT_POINTER [15:08] */ | ||
1068 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_NEXT_POINTER_MASK 0x0000ff00 | ||
1069 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_NEXT_POINTER_ALIGN 0 | ||
1070 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_NEXT_POINTER_BITS 8 | ||
1071 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_NEXT_POINTER_SHIFT 8 | ||
1072 | |||
1073 | /* PCIE_CFG :: POWER_MANAGEMENT_CAPABILITY :: CAPABILITY_ID [07:00] */ | ||
1074 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_CAPABILITY_ID_MASK 0x000000ff | ||
1075 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_CAPABILITY_ID_ALIGN 0 | ||
1076 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_CAPABILITY_ID_BITS 8 | ||
1077 | #define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY_CAPABILITY_ID_SHIFT 0 | ||
1078 | |||
1079 | |||
1080 | /**************************************************************************** | ||
1081 | * PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS | ||
1082 | ***************************************************************************/ | ||
1083 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: PM_DATA [31:24] */ | ||
1084 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PM_DATA_MASK 0xff000000 | ||
1085 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PM_DATA_ALIGN 0 | ||
1086 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PM_DATA_BITS 8 | ||
1087 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PM_DATA_SHIFT 24 | ||
1088 | |||
1089 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: RESERVED_0 [23:16] */ | ||
1090 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_0_MASK 0x00ff0000 | ||
1091 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_0_ALIGN 0 | ||
1092 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_0_BITS 8 | ||
1093 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_0_SHIFT 16 | ||
1094 | |||
1095 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: PME_STATUS [15:15] */ | ||
1096 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_STATUS_MASK 0x00008000 | ||
1097 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_STATUS_ALIGN 0 | ||
1098 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_STATUS_BITS 1 | ||
1099 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_STATUS_SHIFT 15 | ||
1100 | |||
1101 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: DATA_SCALE [14:13] */ | ||
1102 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SCALE_MASK 0x00006000 | ||
1103 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SCALE_ALIGN 0 | ||
1104 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SCALE_BITS 2 | ||
1105 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SCALE_SHIFT 13 | ||
1106 | |||
1107 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: DATA_SELECT [12:09] */ | ||
1108 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SELECT_MASK 0x00001e00 | ||
1109 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SELECT_ALIGN 0 | ||
1110 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SELECT_BITS 4 | ||
1111 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_DATA_SELECT_SHIFT 9 | ||
1112 | |||
1113 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: PME_ENABLE [08:08] */ | ||
1114 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_ENABLE_MASK 0x00000100 | ||
1115 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_ENABLE_ALIGN 0 | ||
1116 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_ENABLE_BITS 1 | ||
1117 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_PME_ENABLE_SHIFT 8 | ||
1118 | |||
1119 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: RESERVED_1 [07:04] */ | ||
1120 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_1_MASK 0x000000f0 | ||
1121 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_1_ALIGN 0 | ||
1122 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_1_BITS 4 | ||
1123 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_1_SHIFT 4 | ||
1124 | |||
1125 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: NO_SOFT_RESET [03:03] */ | ||
1126 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_NO_SOFT_RESET_MASK 0x00000008 | ||
1127 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_NO_SOFT_RESET_ALIGN 0 | ||
1128 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_NO_SOFT_RESET_BITS 1 | ||
1129 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_NO_SOFT_RESET_SHIFT 3 | ||
1130 | |||
1131 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: RESERVED_2 [02:02] */ | ||
1132 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_2_MASK 0x00000004 | ||
1133 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_2_ALIGN 0 | ||
1134 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_2_BITS 1 | ||
1135 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_RESERVED_2_SHIFT 2 | ||
1136 | |||
1137 | /* PCIE_CFG :: POWER_MANAGEMENT_CONTROL_STATUS :: POWER_STATE [01:00] */ | ||
1138 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_POWER_STATE_MASK 0x00000003 | ||
1139 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_POWER_STATE_ALIGN 0 | ||
1140 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_POWER_STATE_BITS 2 | ||
1141 | #define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS_POWER_STATE_SHIFT 0 | ||
1142 | |||
1143 | |||
1144 | /**************************************************************************** | ||
1145 | * PCIE_CFG :: MSI_CAPABILITY_HEADER | ||
1146 | ***************************************************************************/ | ||
1147 | /* PCIE_CFG :: MSI_CAPABILITY_HEADER :: MSI_CONTROL [31:24] */ | ||
1148 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_CONTROL_MASK 0xff000000 | ||
1149 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_CONTROL_ALIGN 0 | ||
1150 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_CONTROL_BITS 8 | ||
1151 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_CONTROL_SHIFT 24 | ||
1152 | |||
1153 | /* PCIE_CFG :: MSI_CAPABILITY_HEADER :: ADDRESS_CAPABLE_64_BIT [23:23] */ | ||
1154 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_ADDRESS_CAPABLE_64_BIT_MASK 0x00800000 | ||
1155 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_ADDRESS_CAPABLE_64_BIT_ALIGN 0 | ||
1156 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_ADDRESS_CAPABLE_64_BIT_BITS 1 | ||
1157 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_ADDRESS_CAPABLE_64_BIT_SHIFT 23 | ||
1158 | |||
1159 | /* PCIE_CFG :: MSI_CAPABILITY_HEADER :: MULTIPLE_MESSAGE_ENABLE [22:20] */ | ||
1160 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_ENABLE_MASK 0x00700000 | ||
1161 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_ENABLE_ALIGN 0 | ||
1162 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_ENABLE_BITS 3 | ||
1163 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_ENABLE_SHIFT 20 | ||
1164 | |||
1165 | /* PCIE_CFG :: MSI_CAPABILITY_HEADER :: MULTIPLE_MESSAGE_CAPABLE [19:17] */ | ||
1166 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_CAPABLE_MASK 0x000e0000 | ||
1167 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_CAPABLE_ALIGN 0 | ||
1168 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_CAPABLE_BITS 3 | ||
1169 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MULTIPLE_MESSAGE_CAPABLE_SHIFT 17 | ||
1170 | |||
1171 | /* PCIE_CFG :: MSI_CAPABILITY_HEADER :: MSI_ENABLE [16:16] */ | ||
1172 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_ENABLE_MASK 0x00010000 | ||
1173 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_ENABLE_ALIGN 0 | ||
1174 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_ENABLE_BITS 1 | ||
1175 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_MSI_ENABLE_SHIFT 16 | ||
1176 | |||
1177 | /* PCIE_CFG :: MSI_CAPABILITY_HEADER :: NEXT_POINTER [15:08] */ | ||
1178 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_NEXT_POINTER_MASK 0x0000ff00 | ||
1179 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_NEXT_POINTER_ALIGN 0 | ||
1180 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_NEXT_POINTER_BITS 8 | ||
1181 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_NEXT_POINTER_SHIFT 8 | ||
1182 | |||
1183 | /* PCIE_CFG :: MSI_CAPABILITY_HEADER :: CAPABILITY_ID [07:00] */ | ||
1184 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_CAPABILITY_ID_MASK 0x000000ff | ||
1185 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_CAPABILITY_ID_ALIGN 0 | ||
1186 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_CAPABILITY_ID_BITS 8 | ||
1187 | #define PCIE_CFG_MSI_CAPABILITY_HEADER_CAPABILITY_ID_SHIFT 0 | ||
1188 | |||
1189 | |||
1190 | /**************************************************************************** | ||
1191 | * PCIE_CFG :: MSI_LOWER_ADDRESS | ||
1192 | ***************************************************************************/ | ||
1193 | /* PCIE_CFG :: MSI_LOWER_ADDRESS :: MSI_LOWER_ADDRESS [31:02] */ | ||
1194 | #define PCIE_CFG_MSI_LOWER_ADDRESS_MSI_LOWER_ADDRESS_MASK 0xfffffffc | ||
1195 | #define PCIE_CFG_MSI_LOWER_ADDRESS_MSI_LOWER_ADDRESS_ALIGN 0 | ||
1196 | #define PCIE_CFG_MSI_LOWER_ADDRESS_MSI_LOWER_ADDRESS_BITS 30 | ||
1197 | #define PCIE_CFG_MSI_LOWER_ADDRESS_MSI_LOWER_ADDRESS_SHIFT 2 | ||
1198 | |||
1199 | /* PCIE_CFG :: MSI_LOWER_ADDRESS :: RESERVED_0 [01:00] */ | ||
1200 | #define PCIE_CFG_MSI_LOWER_ADDRESS_RESERVED_0_MASK 0x00000003 | ||
1201 | #define PCIE_CFG_MSI_LOWER_ADDRESS_RESERVED_0_ALIGN 0 | ||
1202 | #define PCIE_CFG_MSI_LOWER_ADDRESS_RESERVED_0_BITS 2 | ||
1203 | #define PCIE_CFG_MSI_LOWER_ADDRESS_RESERVED_0_SHIFT 0 | ||
1204 | |||
1205 | |||
1206 | /**************************************************************************** | ||
1207 | * PCIE_CFG :: MSI_UPPER_ADDRESS_REGISTER | ||
1208 | ***************************************************************************/ | ||
1209 | /* PCIE_CFG :: MSI_UPPER_ADDRESS_REGISTER :: MSI_UPPER_ADDRESS [31:00] */ | ||
1210 | #define PCIE_CFG_MSI_UPPER_ADDRESS_REGISTER_MSI_UPPER_ADDRESS_MASK 0xffffffff | ||
1211 | #define PCIE_CFG_MSI_UPPER_ADDRESS_REGISTER_MSI_UPPER_ADDRESS_ALIGN 0 | ||
1212 | #define PCIE_CFG_MSI_UPPER_ADDRESS_REGISTER_MSI_UPPER_ADDRESS_BITS 32 | ||
1213 | #define PCIE_CFG_MSI_UPPER_ADDRESS_REGISTER_MSI_UPPER_ADDRESS_SHIFT 0 | ||
1214 | |||
1215 | |||
1216 | /**************************************************************************** | ||
1217 | * PCIE_CFG :: MSI_DATA | ||
1218 | ***************************************************************************/ | ||
1219 | /* PCIE_CFG :: MSI_DATA :: RESERVED_0 [31:16] */ | ||
1220 | #define PCIE_CFG_MSI_DATA_RESERVED_0_MASK 0xffff0000 | ||
1221 | #define PCIE_CFG_MSI_DATA_RESERVED_0_ALIGN 0 | ||
1222 | #define PCIE_CFG_MSI_DATA_RESERVED_0_BITS 16 | ||
1223 | #define PCIE_CFG_MSI_DATA_RESERVED_0_SHIFT 16 | ||
1224 | |||
1225 | /* PCIE_CFG :: MSI_DATA :: MSI_DATA [15:00] */ | ||
1226 | #define PCIE_CFG_MSI_DATA_MSI_DATA_MASK 0x0000ffff | ||
1227 | #define PCIE_CFG_MSI_DATA_MSI_DATA_ALIGN 0 | ||
1228 | #define PCIE_CFG_MSI_DATA_MSI_DATA_BITS 16 | ||
1229 | #define PCIE_CFG_MSI_DATA_MSI_DATA_SHIFT 0 | ||
1230 | |||
1231 | |||
1232 | /**************************************************************************** | ||
1233 | * PCIE_CFG :: BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER | ||
1234 | ***************************************************************************/ | ||
1235 | /* PCIE_CFG :: BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER :: RESERVED_0 [31:24] */ | ||
1236 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_RESERVED_0_MASK 0xff000000 | ||
1237 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_RESERVED_0_ALIGN 0 | ||
1238 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_RESERVED_0_BITS 8 | ||
1239 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_RESERVED_0_SHIFT 24 | ||
1240 | |||
1241 | /* PCIE_CFG :: BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER :: VENDOR_SPECIFIC_CAPABILITY_LENGTH [23:16] */ | ||
1242 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_VENDOR_SPECIFIC_CAPABILITY_LENGTH_MASK 0x00ff0000 | ||
1243 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_VENDOR_SPECIFIC_CAPABILITY_LENGTH_ALIGN 0 | ||
1244 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_VENDOR_SPECIFIC_CAPABILITY_LENGTH_BITS 8 | ||
1245 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_VENDOR_SPECIFIC_CAPABILITY_LENGTH_SHIFT 16 | ||
1246 | |||
1247 | /* PCIE_CFG :: BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER :: NEXT_POINTER [15:08] */ | ||
1248 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_NEXT_POINTER_MASK 0x0000ff00 | ||
1249 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_NEXT_POINTER_ALIGN 0 | ||
1250 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_NEXT_POINTER_BITS 8 | ||
1251 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_NEXT_POINTER_SHIFT 8 | ||
1252 | |||
1253 | /* PCIE_CFG :: BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER :: CAPABILITY_ID [07:00] */ | ||
1254 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_CAPABILITY_ID_MASK 0x000000ff | ||
1255 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_CAPABILITY_ID_ALIGN 0 | ||
1256 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_CAPABILITY_ID_BITS 8 | ||
1257 | #define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER_CAPABILITY_ID_SHIFT 0 | ||
1258 | |||
1259 | |||
1260 | /**************************************************************************** | ||
1261 | * PCIE_CFG :: RESET_COUNTERS_INITIAL_VALUES | ||
1262 | ***************************************************************************/ | ||
1263 | /* PCIE_CFG :: RESET_COUNTERS_INITIAL_VALUES :: POR_RESET_COUNTER [31:28] */ | ||
1264 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_POR_RESET_COUNTER_MASK 0xf0000000 | ||
1265 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_POR_RESET_COUNTER_ALIGN 0 | ||
1266 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_POR_RESET_COUNTER_BITS 4 | ||
1267 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_POR_RESET_COUNTER_SHIFT 28 | ||
1268 | |||
1269 | /* PCIE_CFG :: RESET_COUNTERS_INITIAL_VALUES :: HOT_RESET_COUNTER [27:24] */ | ||
1270 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_HOT_RESET_COUNTER_MASK 0x0f000000 | ||
1271 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_HOT_RESET_COUNTER_ALIGN 0 | ||
1272 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_HOT_RESET_COUNTER_BITS 4 | ||
1273 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_HOT_RESET_COUNTER_SHIFT 24 | ||
1274 | |||
1275 | /* PCIE_CFG :: RESET_COUNTERS_INITIAL_VALUES :: GRC_RESET_COUNTER [23:16] */ | ||
1276 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_GRC_RESET_COUNTER_MASK 0x00ff0000 | ||
1277 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_GRC_RESET_COUNTER_ALIGN 0 | ||
1278 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_GRC_RESET_COUNTER_BITS 8 | ||
1279 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_GRC_RESET_COUNTER_SHIFT 16 | ||
1280 | |||
1281 | /* PCIE_CFG :: RESET_COUNTERS_INITIAL_VALUES :: PERST_RESET_COUNTER [15:08] */ | ||
1282 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_PERST_RESET_COUNTER_MASK 0x0000ff00 | ||
1283 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_PERST_RESET_COUNTER_ALIGN 0 | ||
1284 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_PERST_RESET_COUNTER_BITS 8 | ||
1285 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_PERST_RESET_COUNTER_SHIFT 8 | ||
1286 | |||
1287 | /* PCIE_CFG :: RESET_COUNTERS_INITIAL_VALUES :: LINKDOWN_RESET_COUNTER [07:00] */ | ||
1288 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_LINKDOWN_RESET_COUNTER_MASK 0x000000ff | ||
1289 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_LINKDOWN_RESET_COUNTER_ALIGN 0 | ||
1290 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_LINKDOWN_RESET_COUNTER_BITS 8 | ||
1291 | #define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES_LINKDOWN_RESET_COUNTER_SHIFT 0 | ||
1292 | |||
1293 | |||
1294 | /**************************************************************************** | ||
1295 | * PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL | ||
1296 | ***************************************************************************/ | ||
1297 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: PRODUCT_ID [31:24] */ | ||
1298 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_PRODUCT_ID_MASK 0xff000000 | ||
1299 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_PRODUCT_ID_ALIGN 0 | ||
1300 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_PRODUCT_ID_BITS 8 | ||
1301 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_PRODUCT_ID_SHIFT 24 | ||
1302 | |||
1303 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ASIC_REVISION_ID [23:16] */ | ||
1304 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ASIC_REVISION_ID_MASK 0x00ff0000 | ||
1305 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ASIC_REVISION_ID_ALIGN 0 | ||
1306 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ASIC_REVISION_ID_BITS 8 | ||
1307 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ASIC_REVISION_ID_SHIFT 16 | ||
1308 | |||
1309 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_TLP_MINOR_ERROR_TOLERANCE [15:15] */ | ||
1310 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TLP_MINOR_ERROR_TOLERANCE_MASK 0x00008000 | ||
1311 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TLP_MINOR_ERROR_TOLERANCE_ALIGN 0 | ||
1312 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TLP_MINOR_ERROR_TOLERANCE_BITS 1 | ||
1313 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TLP_MINOR_ERROR_TOLERANCE_SHIFT 15 | ||
1314 | |||
1315 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: LOG_HEADER_OVERFLOW [14:14] */ | ||
1316 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_LOG_HEADER_OVERFLOW_MASK 0x00004000 | ||
1317 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_LOG_HEADER_OVERFLOW_ALIGN 0 | ||
1318 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_LOG_HEADER_OVERFLOW_BITS 1 | ||
1319 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_LOG_HEADER_OVERFLOW_SHIFT 14 | ||
1320 | |||
1321 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: BOUNDARY_CHECK [13:13] */ | ||
1322 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BOUNDARY_CHECK_MASK 0x00002000 | ||
1323 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BOUNDARY_CHECK_ALIGN 0 | ||
1324 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BOUNDARY_CHECK_BITS 1 | ||
1325 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BOUNDARY_CHECK_SHIFT 13 | ||
1326 | |||
1327 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: BYTE_ENABLE_RULE_CHECK [12:12] */ | ||
1328 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BYTE_ENABLE_RULE_CHECK_MASK 0x00001000 | ||
1329 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BYTE_ENABLE_RULE_CHECK_ALIGN 0 | ||
1330 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BYTE_ENABLE_RULE_CHECK_BITS 1 | ||
1331 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_BYTE_ENABLE_RULE_CHECK_SHIFT 12 | ||
1332 | |||
1333 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: INTERRUPT_CHECK [11:11] */ | ||
1334 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_INTERRUPT_CHECK_MASK 0x00000800 | ||
1335 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_INTERRUPT_CHECK_ALIGN 0 | ||
1336 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_INTERRUPT_CHECK_BITS 1 | ||
1337 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_INTERRUPT_CHECK_SHIFT 11 | ||
1338 | |||
1339 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: RCB_CHECK [10:10] */ | ||
1340 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_RCB_CHECK_MASK 0x00000400 | ||
1341 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_RCB_CHECK_ALIGN 0 | ||
1342 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_RCB_CHECK_BITS 1 | ||
1343 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_RCB_CHECK_SHIFT 10 | ||
1344 | |||
1345 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_TAGGED_STATUS_MODE [09:09] */ | ||
1346 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TAGGED_STATUS_MODE_MASK 0x00000200 | ||
1347 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TAGGED_STATUS_MODE_ALIGN 0 | ||
1348 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TAGGED_STATUS_MODE_BITS 1 | ||
1349 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_TAGGED_STATUS_MODE_SHIFT 9 | ||
1350 | |||
1351 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: MASK_INTERRUPT_MODE [08:08] */ | ||
1352 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_MODE_MASK 0x00000100 | ||
1353 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_MODE_ALIGN 0 | ||
1354 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_MODE_BITS 1 | ||
1355 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_MODE_SHIFT 8 | ||
1356 | |||
1357 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_INDIRECT_ACCESS [07:07] */ | ||
1358 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_INDIRECT_ACCESS_MASK 0x00000080 | ||
1359 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_INDIRECT_ACCESS_ALIGN 0 | ||
1360 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_INDIRECT_ACCESS_BITS 1 | ||
1361 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_INDIRECT_ACCESS_SHIFT 7 | ||
1362 | |||
1363 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_REGISTER_WORD_SWAP [06:06] */ | ||
1364 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_REGISTER_WORD_SWAP_MASK 0x00000040 | ||
1365 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_REGISTER_WORD_SWAP_ALIGN 0 | ||
1366 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_REGISTER_WORD_SWAP_BITS 1 | ||
1367 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_REGISTER_WORD_SWAP_SHIFT 6 | ||
1368 | |||
1369 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_CLOCK_CONTROL_REGISTER_READ_WRITE_CAPABILITY [05:05] */ | ||
1370 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_CLOCK_CONTROL_REGISTER_READ_WRITE_CAPABILITY_MASK 0x00000020 | ||
1371 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_CLOCK_CONTROL_REGISTER_READ_WRITE_CAPABILITY_ALIGN 0 | ||
1372 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_CLOCK_CONTROL_REGISTER_READ_WRITE_CAPABILITY_BITS 1 | ||
1373 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_CLOCK_CONTROL_REGISTER_READ_WRITE_CAPABILITY_SHIFT 5 | ||
1374 | |||
1375 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_PCI_STATE_REGISTER_READ_WRITE_CAPABILITY [04:04] */ | ||
1376 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_PCI_STATE_REGISTER_READ_WRITE_CAPABILITY_MASK 0x00000010 | ||
1377 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_PCI_STATE_REGISTER_READ_WRITE_CAPABILITY_ALIGN 0 | ||
1378 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_PCI_STATE_REGISTER_READ_WRITE_CAPABILITY_BITS 1 | ||
1379 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_PCI_STATE_REGISTER_READ_WRITE_CAPABILITY_SHIFT 4 | ||
1380 | |||
1381 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_ENDIAN_WORD_SWAP [03:03] */ | ||
1382 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_WORD_SWAP_MASK 0x00000008 | ||
1383 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_WORD_SWAP_ALIGN 0 | ||
1384 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_WORD_SWAP_BITS 1 | ||
1385 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_WORD_SWAP_SHIFT 3 | ||
1386 | |||
1387 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: ENABLE_ENDIAN_BYTE_SWAP [02:02] */ | ||
1388 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_BYTE_SWAP_MASK 0x00000004 | ||
1389 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_BYTE_SWAP_ALIGN 0 | ||
1390 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_BYTE_SWAP_BITS 1 | ||
1391 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_ENABLE_ENDIAN_BYTE_SWAP_SHIFT 2 | ||
1392 | |||
1393 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: MASK_INTERRUPT [01:01] */ | ||
1394 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_MASK 0x00000002 | ||
1395 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_ALIGN 0 | ||
1396 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_BITS 1 | ||
1397 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_MASK_INTERRUPT_SHIFT 1 | ||
1398 | |||
1399 | /* PCIE_CFG :: MISCELLANEOUS_HOST_CONTROL :: CLEAR_INTERRUPT [00:00] */ | ||
1400 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_CLEAR_INTERRUPT_MASK 0x00000001 | ||
1401 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_CLEAR_INTERRUPT_ALIGN 0 | ||
1402 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_CLEAR_INTERRUPT_BITS 1 | ||
1403 | #define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL_CLEAR_INTERRUPT_SHIFT 0 | ||
1404 | |||
1405 | |||
1406 | /**************************************************************************** | ||
1407 | * PCIE_CFG :: SPARE | ||
1408 | ***************************************************************************/ | ||
1409 | /* PCIE_CFG :: SPARE :: UNUSED_0 [31:16] */ | ||
1410 | #define PCIE_CFG_SPARE_UNUSED_0_MASK 0xffff0000 | ||
1411 | #define PCIE_CFG_SPARE_UNUSED_0_ALIGN 0 | ||
1412 | #define PCIE_CFG_SPARE_UNUSED_0_BITS 16 | ||
1413 | #define PCIE_CFG_SPARE_UNUSED_0_SHIFT 16 | ||
1414 | |||
1415 | /* PCIE_CFG :: SPARE :: RESERVED_0 [15:15] */ | ||
1416 | #define PCIE_CFG_SPARE_RESERVED_0_MASK 0x00008000 | ||
1417 | #define PCIE_CFG_SPARE_RESERVED_0_ALIGN 0 | ||
1418 | #define PCIE_CFG_SPARE_RESERVED_0_BITS 1 | ||
1419 | #define PCIE_CFG_SPARE_RESERVED_0_SHIFT 15 | ||
1420 | |||
1421 | /* PCIE_CFG :: SPARE :: UNUSED_1 [14:02] */ | ||
1422 | #define PCIE_CFG_SPARE_UNUSED_1_MASK 0x00007ffc | ||
1423 | #define PCIE_CFG_SPARE_UNUSED_1_ALIGN 0 | ||
1424 | #define PCIE_CFG_SPARE_UNUSED_1_BITS 13 | ||
1425 | #define PCIE_CFG_SPARE_UNUSED_1_SHIFT 2 | ||
1426 | |||
1427 | /* PCIE_CFG :: SPARE :: BAR2_TARGET_WORD_SWAP [01:01] */ | ||
1428 | #define PCIE_CFG_SPARE_BAR2_TARGET_WORD_SWAP_MASK 0x00000002 | ||
1429 | #define PCIE_CFG_SPARE_BAR2_TARGET_WORD_SWAP_ALIGN 0 | ||
1430 | #define PCIE_CFG_SPARE_BAR2_TARGET_WORD_SWAP_BITS 1 | ||
1431 | #define PCIE_CFG_SPARE_BAR2_TARGET_WORD_SWAP_SHIFT 1 | ||
1432 | |||
1433 | /* PCIE_CFG :: SPARE :: BAR2_TARGET_BYTE_SWAP [00:00] */ | ||
1434 | #define PCIE_CFG_SPARE_BAR2_TARGET_BYTE_SWAP_MASK 0x00000001 | ||
1435 | #define PCIE_CFG_SPARE_BAR2_TARGET_BYTE_SWAP_ALIGN 0 | ||
1436 | #define PCIE_CFG_SPARE_BAR2_TARGET_BYTE_SWAP_BITS 1 | ||
1437 | #define PCIE_CFG_SPARE_BAR2_TARGET_BYTE_SWAP_SHIFT 0 | ||
1438 | |||
1439 | |||
1440 | /**************************************************************************** | ||
1441 | * PCIE_CFG :: PCI_STATE | ||
1442 | ***************************************************************************/ | ||
1443 | /* PCIE_CFG :: PCI_STATE :: RESERVED_0 [31:16] */ | ||
1444 | #define PCIE_CFG_PCI_STATE_RESERVED_0_MASK 0xffff0000 | ||
1445 | #define PCIE_CFG_PCI_STATE_RESERVED_0_ALIGN 0 | ||
1446 | #define PCIE_CFG_PCI_STATE_RESERVED_0_BITS 16 | ||
1447 | #define PCIE_CFG_PCI_STATE_RESERVED_0_SHIFT 16 | ||
1448 | |||
1449 | /* PCIE_CFG :: PCI_STATE :: CONFIG_RETRY [15:15] */ | ||
1450 | #define PCIE_CFG_PCI_STATE_CONFIG_RETRY_MASK 0x00008000 | ||
1451 | #define PCIE_CFG_PCI_STATE_CONFIG_RETRY_ALIGN 0 | ||
1452 | #define PCIE_CFG_PCI_STATE_CONFIG_RETRY_BITS 1 | ||
1453 | #define PCIE_CFG_PCI_STATE_CONFIG_RETRY_SHIFT 15 | ||
1454 | |||
1455 | /* PCIE_CFG :: PCI_STATE :: RESERVED_1 [14:12] */ | ||
1456 | #define PCIE_CFG_PCI_STATE_RESERVED_1_MASK 0x00007000 | ||
1457 | #define PCIE_CFG_PCI_STATE_RESERVED_1_ALIGN 0 | ||
1458 | #define PCIE_CFG_PCI_STATE_RESERVED_1_BITS 3 | ||
1459 | #define PCIE_CFG_PCI_STATE_RESERVED_1_SHIFT 12 | ||
1460 | |||
1461 | /* PCIE_CFG :: PCI_STATE :: MAX_PCI_TARGET_RETRY [11:09] */ | ||
1462 | #define PCIE_CFG_PCI_STATE_MAX_PCI_TARGET_RETRY_MASK 0x00000e00 | ||
1463 | #define PCIE_CFG_PCI_STATE_MAX_PCI_TARGET_RETRY_ALIGN 0 | ||
1464 | #define PCIE_CFG_PCI_STATE_MAX_PCI_TARGET_RETRY_BITS 3 | ||
1465 | #define PCIE_CFG_PCI_STATE_MAX_PCI_TARGET_RETRY_SHIFT 9 | ||
1466 | |||
1467 | /* PCIE_CFG :: PCI_STATE :: FLAT_VIEW [08:08] */ | ||
1468 | #define PCIE_CFG_PCI_STATE_FLAT_VIEW_MASK 0x00000100 | ||
1469 | #define PCIE_CFG_PCI_STATE_FLAT_VIEW_ALIGN 0 | ||
1470 | #define PCIE_CFG_PCI_STATE_FLAT_VIEW_BITS 1 | ||
1471 | #define PCIE_CFG_PCI_STATE_FLAT_VIEW_SHIFT 8 | ||
1472 | |||
1473 | /* PCIE_CFG :: PCI_STATE :: VPD_AVAILABLE [07:07] */ | ||
1474 | #define PCIE_CFG_PCI_STATE_VPD_AVAILABLE_MASK 0x00000080 | ||
1475 | #define PCIE_CFG_PCI_STATE_VPD_AVAILABLE_ALIGN 0 | ||
1476 | #define PCIE_CFG_PCI_STATE_VPD_AVAILABLE_BITS 1 | ||
1477 | #define PCIE_CFG_PCI_STATE_VPD_AVAILABLE_SHIFT 7 | ||
1478 | |||
1479 | /* PCIE_CFG :: PCI_STATE :: PCI_EXPANSION_ROM_RETRY [06:06] */ | ||
1480 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_RETRY_MASK 0x00000040 | ||
1481 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_RETRY_ALIGN 0 | ||
1482 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_RETRY_BITS 1 | ||
1483 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_RETRY_SHIFT 6 | ||
1484 | |||
1485 | /* PCIE_CFG :: PCI_STATE :: PCI_EXPANSION_ROM_DESIRED [05:05] */ | ||
1486 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_DESIRED_MASK 0x00000020 | ||
1487 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_DESIRED_ALIGN 0 | ||
1488 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_DESIRED_BITS 1 | ||
1489 | #define PCIE_CFG_PCI_STATE_PCI_EXPANSION_ROM_DESIRED_SHIFT 5 | ||
1490 | |||
1491 | /* PCIE_CFG :: PCI_STATE :: RESERVED_2 [04:00] */ | ||
1492 | #define PCIE_CFG_PCI_STATE_RESERVED_2_MASK 0x0000001f | ||
1493 | #define PCIE_CFG_PCI_STATE_RESERVED_2_ALIGN 0 | ||
1494 | #define PCIE_CFG_PCI_STATE_RESERVED_2_BITS 5 | ||
1495 | #define PCIE_CFG_PCI_STATE_RESERVED_2_SHIFT 0 | ||
1496 | |||
1497 | |||
1498 | /**************************************************************************** | ||
1499 | * PCIE_CFG :: CLOCK_CONTROL | ||
1500 | ***************************************************************************/ | ||
1501 | /* PCIE_CFG :: CLOCK_CONTROL :: PL_CLOCK_DISABLE [31:31] */ | ||
1502 | #define PCIE_CFG_CLOCK_CONTROL_PL_CLOCK_DISABLE_MASK 0x80000000 | ||
1503 | #define PCIE_CFG_CLOCK_CONTROL_PL_CLOCK_DISABLE_ALIGN 0 | ||
1504 | #define PCIE_CFG_CLOCK_CONTROL_PL_CLOCK_DISABLE_BITS 1 | ||
1505 | #define PCIE_CFG_CLOCK_CONTROL_PL_CLOCK_DISABLE_SHIFT 31 | ||
1506 | |||
1507 | /* PCIE_CFG :: CLOCK_CONTROL :: DLL_CLOCK_DISABLE [30:30] */ | ||
1508 | #define PCIE_CFG_CLOCK_CONTROL_DLL_CLOCK_DISABLE_MASK 0x40000000 | ||
1509 | #define PCIE_CFG_CLOCK_CONTROL_DLL_CLOCK_DISABLE_ALIGN 0 | ||
1510 | #define PCIE_CFG_CLOCK_CONTROL_DLL_CLOCK_DISABLE_BITS 1 | ||
1511 | #define PCIE_CFG_CLOCK_CONTROL_DLL_CLOCK_DISABLE_SHIFT 30 | ||
1512 | |||
1513 | /* PCIE_CFG :: CLOCK_CONTROL :: TL_CLOCK_DISABLE [29:29] */ | ||
1514 | #define PCIE_CFG_CLOCK_CONTROL_TL_CLOCK_DISABLE_MASK 0x20000000 | ||
1515 | #define PCIE_CFG_CLOCK_CONTROL_TL_CLOCK_DISABLE_ALIGN 0 | ||
1516 | #define PCIE_CFG_CLOCK_CONTROL_TL_CLOCK_DISABLE_BITS 1 | ||
1517 | #define PCIE_CFG_CLOCK_CONTROL_TL_CLOCK_DISABLE_SHIFT 29 | ||
1518 | |||
1519 | /* PCIE_CFG :: CLOCK_CONTROL :: PCI_EXPRESS_CLOCK_TO_CORE_CLOCK [28:28] */ | ||
1520 | #define PCIE_CFG_CLOCK_CONTROL_PCI_EXPRESS_CLOCK_TO_CORE_CLOCK_MASK 0x10000000 | ||
1521 | #define PCIE_CFG_CLOCK_CONTROL_PCI_EXPRESS_CLOCK_TO_CORE_CLOCK_ALIGN 0 | ||
1522 | #define PCIE_CFG_CLOCK_CONTROL_PCI_EXPRESS_CLOCK_TO_CORE_CLOCK_BITS 1 | ||
1523 | #define PCIE_CFG_CLOCK_CONTROL_PCI_EXPRESS_CLOCK_TO_CORE_CLOCK_SHIFT 28 | ||
1524 | |||
1525 | /* PCIE_CFG :: CLOCK_CONTROL :: UNUSED_0 [27:21] */ | ||
1526 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_0_MASK 0x0fe00000 | ||
1527 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_0_ALIGN 0 | ||
1528 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_0_BITS 7 | ||
1529 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_0_SHIFT 21 | ||
1530 | |||
1531 | /* PCIE_CFG :: CLOCK_CONTROL :: SELECT_FINAL_ALT_CLOCK_SOURCE [20:20] */ | ||
1532 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_FINAL_ALT_CLOCK_SOURCE_MASK 0x00100000 | ||
1533 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_FINAL_ALT_CLOCK_SOURCE_ALIGN 0 | ||
1534 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_FINAL_ALT_CLOCK_SOURCE_BITS 1 | ||
1535 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_FINAL_ALT_CLOCK_SOURCE_SHIFT 20 | ||
1536 | |||
1537 | /* PCIE_CFG :: CLOCK_CONTROL :: UNUSED_1 [19:13] */ | ||
1538 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_1_MASK 0x000fe000 | ||
1539 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_1_ALIGN 0 | ||
1540 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_1_BITS 7 | ||
1541 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_1_SHIFT 13 | ||
1542 | |||
1543 | /* PCIE_CFG :: CLOCK_CONTROL :: SELECT_ALT_CLOCK [12:12] */ | ||
1544 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_ALT_CLOCK_MASK 0x00001000 | ||
1545 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_ALT_CLOCK_ALIGN 0 | ||
1546 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_ALT_CLOCK_BITS 1 | ||
1547 | #define PCIE_CFG_CLOCK_CONTROL_SELECT_ALT_CLOCK_SHIFT 12 | ||
1548 | |||
1549 | /* PCIE_CFG :: CLOCK_CONTROL :: UNUSED_2 [11:08] */ | ||
1550 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_2_MASK 0x00000f00 | ||
1551 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_2_ALIGN 0 | ||
1552 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_2_BITS 4 | ||
1553 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_2_SHIFT 8 | ||
1554 | |||
1555 | /* PCIE_CFG :: CLOCK_CONTROL :: UNUSED_3 [07:00] */ | ||
1556 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_3_MASK 0x000000ff | ||
1557 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_3_ALIGN 0 | ||
1558 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_3_BITS 8 | ||
1559 | #define PCIE_CFG_CLOCK_CONTROL_UNUSED_3_SHIFT 0 | ||
1560 | |||
1561 | |||
1562 | /**************************************************************************** | ||
1563 | * PCIE_CFG :: REGISTER_BASE | ||
1564 | ***************************************************************************/ | ||
1565 | /* PCIE_CFG :: REGISTER_BASE :: RESERVED_0 [31:18] */ | ||
1566 | #define PCIE_CFG_REGISTER_BASE_RESERVED_0_MASK 0xfffc0000 | ||
1567 | #define PCIE_CFG_REGISTER_BASE_RESERVED_0_ALIGN 0 | ||
1568 | #define PCIE_CFG_REGISTER_BASE_RESERVED_0_BITS 14 | ||
1569 | #define PCIE_CFG_REGISTER_BASE_RESERVED_0_SHIFT 18 | ||
1570 | |||
1571 | /* PCIE_CFG :: REGISTER_BASE :: REGISTER_BASE_REGISTER [17:02] */ | ||
1572 | #define PCIE_CFG_REGISTER_BASE_REGISTER_BASE_REGISTER_MASK 0x0003fffc | ||
1573 | #define PCIE_CFG_REGISTER_BASE_REGISTER_BASE_REGISTER_ALIGN 0 | ||
1574 | #define PCIE_CFG_REGISTER_BASE_REGISTER_BASE_REGISTER_BITS 16 | ||
1575 | #define PCIE_CFG_REGISTER_BASE_REGISTER_BASE_REGISTER_SHIFT 2 | ||
1576 | |||
1577 | /* PCIE_CFG :: REGISTER_BASE :: RESERVED_1 [01:00] */ | ||
1578 | #define PCIE_CFG_REGISTER_BASE_RESERVED_1_MASK 0x00000003 | ||
1579 | #define PCIE_CFG_REGISTER_BASE_RESERVED_1_ALIGN 0 | ||
1580 | #define PCIE_CFG_REGISTER_BASE_RESERVED_1_BITS 2 | ||
1581 | #define PCIE_CFG_REGISTER_BASE_RESERVED_1_SHIFT 0 | ||
1582 | |||
1583 | |||
1584 | /**************************************************************************** | ||
1585 | * PCIE_CFG :: MEMORY_BASE | ||
1586 | ***************************************************************************/ | ||
1587 | /* PCIE_CFG :: MEMORY_BASE :: RESERVED_0 [31:24] */ | ||
1588 | #define PCIE_CFG_MEMORY_BASE_RESERVED_0_MASK 0xff000000 | ||
1589 | #define PCIE_CFG_MEMORY_BASE_RESERVED_0_ALIGN 0 | ||
1590 | #define PCIE_CFG_MEMORY_BASE_RESERVED_0_BITS 8 | ||
1591 | #define PCIE_CFG_MEMORY_BASE_RESERVED_0_SHIFT 24 | ||
1592 | |||
1593 | /* PCIE_CFG :: MEMORY_BASE :: MEMORY_BASE_REGISTER [23:02] */ | ||
1594 | #define PCIE_CFG_MEMORY_BASE_MEMORY_BASE_REGISTER_MASK 0x00fffffc | ||
1595 | #define PCIE_CFG_MEMORY_BASE_MEMORY_BASE_REGISTER_ALIGN 0 | ||
1596 | #define PCIE_CFG_MEMORY_BASE_MEMORY_BASE_REGISTER_BITS 22 | ||
1597 | #define PCIE_CFG_MEMORY_BASE_MEMORY_BASE_REGISTER_SHIFT 2 | ||
1598 | |||
1599 | /* PCIE_CFG :: MEMORY_BASE :: RESERVED_1 [01:00] */ | ||
1600 | #define PCIE_CFG_MEMORY_BASE_RESERVED_1_MASK 0x00000003 | ||
1601 | #define PCIE_CFG_MEMORY_BASE_RESERVED_1_ALIGN 0 | ||
1602 | #define PCIE_CFG_MEMORY_BASE_RESERVED_1_BITS 2 | ||
1603 | #define PCIE_CFG_MEMORY_BASE_RESERVED_1_SHIFT 0 | ||
1604 | |||
1605 | |||
1606 | /**************************************************************************** | ||
1607 | * PCIE_CFG :: REGISTER_DATA | ||
1608 | ***************************************************************************/ | ||
1609 | /* PCIE_CFG :: REGISTER_DATA :: REGISTER_DATA_REGISTER [31:00] */ | ||
1610 | #define PCIE_CFG_REGISTER_DATA_REGISTER_DATA_REGISTER_MASK 0xffffffff | ||
1611 | #define PCIE_CFG_REGISTER_DATA_REGISTER_DATA_REGISTER_ALIGN 0 | ||
1612 | #define PCIE_CFG_REGISTER_DATA_REGISTER_DATA_REGISTER_BITS 32 | ||
1613 | #define PCIE_CFG_REGISTER_DATA_REGISTER_DATA_REGISTER_SHIFT 0 | ||
1614 | |||
1615 | |||
1616 | /**************************************************************************** | ||
1617 | * PCIE_CFG :: MEMORY_DATA | ||
1618 | ***************************************************************************/ | ||
1619 | /* PCIE_CFG :: MEMORY_DATA :: MEMORY_DATA_REGISTER [31:00] */ | ||
1620 | #define PCIE_CFG_MEMORY_DATA_MEMORY_DATA_REGISTER_MASK 0xffffffff | ||
1621 | #define PCIE_CFG_MEMORY_DATA_MEMORY_DATA_REGISTER_ALIGN 0 | ||
1622 | #define PCIE_CFG_MEMORY_DATA_MEMORY_DATA_REGISTER_BITS 32 | ||
1623 | #define PCIE_CFG_MEMORY_DATA_MEMORY_DATA_REGISTER_SHIFT 0 | ||
1624 | |||
1625 | |||
1626 | /**************************************************************************** | ||
1627 | * PCIE_CFG :: EXPANSION_ROM_BAR_SIZE | ||
1628 | ***************************************************************************/ | ||
1629 | /* PCIE_CFG :: EXPANSION_ROM_BAR_SIZE :: RESERVED_0 [31:04] */ | ||
1630 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_RESERVED_0_MASK 0xfffffff0 | ||
1631 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_RESERVED_0_ALIGN 0 | ||
1632 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_RESERVED_0_BITS 28 | ||
1633 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_RESERVED_0_SHIFT 4 | ||
1634 | |||
1635 | /* PCIE_CFG :: EXPANSION_ROM_BAR_SIZE :: BAR_SIZE [03:00] */ | ||
1636 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_BAR_SIZE_MASK 0x0000000f | ||
1637 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_BAR_SIZE_ALIGN 0 | ||
1638 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_BAR_SIZE_BITS 4 | ||
1639 | #define PCIE_CFG_EXPANSION_ROM_BAR_SIZE_BAR_SIZE_SHIFT 0 | ||
1640 | |||
1641 | |||
1642 | /**************************************************************************** | ||
1643 | * PCIE_CFG :: EXPANSION_ROM_ADDRESS | ||
1644 | ***************************************************************************/ | ||
1645 | /* PCIE_CFG :: EXPANSION_ROM_ADDRESS :: ROM_CTL_ADDR [31:00] */ | ||
1646 | #define PCIE_CFG_EXPANSION_ROM_ADDRESS_ROM_CTL_ADDR_MASK 0xffffffff | ||
1647 | #define PCIE_CFG_EXPANSION_ROM_ADDRESS_ROM_CTL_ADDR_ALIGN 0 | ||
1648 | #define PCIE_CFG_EXPANSION_ROM_ADDRESS_ROM_CTL_ADDR_BITS 32 | ||
1649 | #define PCIE_CFG_EXPANSION_ROM_ADDRESS_ROM_CTL_ADDR_SHIFT 0 | ||
1650 | |||
1651 | |||
1652 | /**************************************************************************** | ||
1653 | * PCIE_CFG :: EXPANSION_ROM_DATA | ||
1654 | ***************************************************************************/ | ||
1655 | /* PCIE_CFG :: EXPANSION_ROM_DATA :: ROM_DATA [31:00] */ | ||
1656 | #define PCIE_CFG_EXPANSION_ROM_DATA_ROM_DATA_MASK 0xffffffff | ||
1657 | #define PCIE_CFG_EXPANSION_ROM_DATA_ROM_DATA_ALIGN 0 | ||
1658 | #define PCIE_CFG_EXPANSION_ROM_DATA_ROM_DATA_BITS 32 | ||
1659 | #define PCIE_CFG_EXPANSION_ROM_DATA_ROM_DATA_SHIFT 0 | ||
1660 | |||
1661 | |||
1662 | /**************************************************************************** | ||
1663 | * PCIE_CFG :: VPD_INTERFACE | ||
1664 | ***************************************************************************/ | ||
1665 | /* PCIE_CFG :: VPD_INTERFACE :: RESERVED_0 [31:01] */ | ||
1666 | #define PCIE_CFG_VPD_INTERFACE_RESERVED_0_MASK 0xfffffffe | ||
1667 | #define PCIE_CFG_VPD_INTERFACE_RESERVED_0_ALIGN 0 | ||
1668 | #define PCIE_CFG_VPD_INTERFACE_RESERVED_0_BITS 31 | ||
1669 | #define PCIE_CFG_VPD_INTERFACE_RESERVED_0_SHIFT 1 | ||
1670 | |||
1671 | /* PCIE_CFG :: VPD_INTERFACE :: VPD_REQUEST [00:00] */ | ||
1672 | #define PCIE_CFG_VPD_INTERFACE_VPD_REQUEST_MASK 0x00000001 | ||
1673 | #define PCIE_CFG_VPD_INTERFACE_VPD_REQUEST_ALIGN 0 | ||
1674 | #define PCIE_CFG_VPD_INTERFACE_VPD_REQUEST_BITS 1 | ||
1675 | #define PCIE_CFG_VPD_INTERFACE_VPD_REQUEST_SHIFT 0 | ||
1676 | |||
1677 | |||
1678 | /**************************************************************************** | ||
1679 | * PCIE_CFG :: UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER | ||
1680 | ***************************************************************************/ | ||
1681 | /* PCIE_CFG :: UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER :: UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX [31:00] */ | ||
1682 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_MASK 0xffffffff | ||
1683 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_ALIGN 0 | ||
1684 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_BITS 32 | ||
1685 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_SHIFT 0 | ||
1686 | |||
1687 | |||
1688 | /**************************************************************************** | ||
1689 | * PCIE_CFG :: UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER | ||
1690 | ***************************************************************************/ | ||
1691 | /* PCIE_CFG :: UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER :: UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX [31:00] */ | ||
1692 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_MASK 0xffffffff | ||
1693 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_ALIGN 0 | ||
1694 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_BITS 32 | ||
1695 | #define PCIE_CFG_UNDI_RECEIVE_BD_STANDARD_PRODUCER_RING_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_RECEIVE_BD_STANDARD_RING_PRODUCER_INDEX_SHIFT 0 | ||
1696 | |||
1697 | |||
1698 | /**************************************************************************** | ||
1699 | * PCIE_CFG :: UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER | ||
1700 | ***************************************************************************/ | ||
1701 | /* PCIE_CFG :: UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER :: UNDI_RECEIVE_RETURN_C_IDX [31:00] */ | ||
1702 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER_UNDI_RECEIVE_RETURN_C_IDX_MASK 0xffffffff | ||
1703 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER_UNDI_RECEIVE_RETURN_C_IDX_ALIGN 0 | ||
1704 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER_UNDI_RECEIVE_RETURN_C_IDX_BITS 32 | ||
1705 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER_UNDI_RECEIVE_RETURN_C_IDX_SHIFT 0 | ||
1706 | |||
1707 | |||
1708 | /**************************************************************************** | ||
1709 | * PCIE_CFG :: UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER | ||
1710 | ***************************************************************************/ | ||
1711 | /* PCIE_CFG :: UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER :: UNDI_RECEIVE_RETURN_C_IDX [31:00] */ | ||
1712 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER_UNDI_RECEIVE_RETURN_C_IDX_MASK 0xffffffff | ||
1713 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER_UNDI_RECEIVE_RETURN_C_IDX_ALIGN 0 | ||
1714 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER_UNDI_RECEIVE_RETURN_C_IDX_BITS 32 | ||
1715 | #define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER_UNDI_RECEIVE_RETURN_C_IDX_SHIFT 0 | ||
1716 | |||
1717 | |||
1718 | /**************************************************************************** | ||
1719 | * PCIE_CFG :: UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER | ||
1720 | ***************************************************************************/ | ||
1721 | /* PCIE_CFG :: UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER :: UNDI_SEND_BD_NIC_P_IDX [31:00] */ | ||
1722 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_SEND_BD_NIC_P_IDX_MASK 0xffffffff | ||
1723 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_SEND_BD_NIC_P_IDX_ALIGN 0 | ||
1724 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_SEND_BD_NIC_P_IDX_BITS 32 | ||
1725 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER_UNDI_SEND_BD_NIC_P_IDX_SHIFT 0 | ||
1726 | |||
1727 | |||
1728 | /**************************************************************************** | ||
1729 | * PCIE_CFG :: UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER | ||
1730 | ***************************************************************************/ | ||
1731 | /* PCIE_CFG :: UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER :: UNDI_SEND_BD_NIC_P_IDX [31:00] */ | ||
1732 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_SEND_BD_NIC_P_IDX_MASK 0xffffffff | ||
1733 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_SEND_BD_NIC_P_IDX_ALIGN 0 | ||
1734 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_SEND_BD_NIC_P_IDX_BITS 32 | ||
1735 | #define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER_UNDI_SEND_BD_NIC_P_IDX_SHIFT 0 | ||
1736 | |||
1737 | |||
1738 | /**************************************************************************** | ||
1739 | * PCIE_CFG :: INT_MAILBOX_UPPER | ||
1740 | ***************************************************************************/ | ||
1741 | /* PCIE_CFG :: INT_MAILBOX_UPPER :: INDIRECT_INTERRUPT_MAIL_BOX [31:00] */ | ||
1742 | #define PCIE_CFG_INT_MAILBOX_UPPER_INDIRECT_INTERRUPT_MAIL_BOX_MASK 0xffffffff | ||
1743 | #define PCIE_CFG_INT_MAILBOX_UPPER_INDIRECT_INTERRUPT_MAIL_BOX_ALIGN 0 | ||
1744 | #define PCIE_CFG_INT_MAILBOX_UPPER_INDIRECT_INTERRUPT_MAIL_BOX_BITS 32 | ||
1745 | #define PCIE_CFG_INT_MAILBOX_UPPER_INDIRECT_INTERRUPT_MAIL_BOX_SHIFT 0 | ||
1746 | |||
1747 | |||
1748 | /**************************************************************************** | ||
1749 | * PCIE_CFG :: INT_MAILBOX_LOWER | ||
1750 | ***************************************************************************/ | ||
1751 | /* PCIE_CFG :: INT_MAILBOX_LOWER :: INDIRECT_INTERRUPT_MAIL_BOX [31:00] */ | ||
1752 | #define PCIE_CFG_INT_MAILBOX_LOWER_INDIRECT_INTERRUPT_MAIL_BOX_MASK 0xffffffff | ||
1753 | #define PCIE_CFG_INT_MAILBOX_LOWER_INDIRECT_INTERRUPT_MAIL_BOX_ALIGN 0 | ||
1754 | #define PCIE_CFG_INT_MAILBOX_LOWER_INDIRECT_INTERRUPT_MAIL_BOX_BITS 32 | ||
1755 | #define PCIE_CFG_INT_MAILBOX_LOWER_INDIRECT_INTERRUPT_MAIL_BOX_SHIFT 0 | ||
1756 | |||
1757 | |||
1758 | /**************************************************************************** | ||
1759 | * PCIE_CFG :: PRODUCT_ID_AND_ASIC_REVISION | ||
1760 | ***************************************************************************/ | ||
1761 | /* PCIE_CFG :: PRODUCT_ID_AND_ASIC_REVISION :: RESERVED_0 [31:28] */ | ||
1762 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_RESERVED_0_MASK 0xf0000000 | ||
1763 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_RESERVED_0_ALIGN 0 | ||
1764 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_RESERVED_0_BITS 4 | ||
1765 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_RESERVED_0_SHIFT 28 | ||
1766 | |||
1767 | /* PCIE_CFG :: PRODUCT_ID_AND_ASIC_REVISION :: PRODUCT_ID [27:08] */ | ||
1768 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_PRODUCT_ID_MASK 0x0fffff00 | ||
1769 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_PRODUCT_ID_ALIGN 0 | ||
1770 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_PRODUCT_ID_BITS 20 | ||
1771 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_PRODUCT_ID_SHIFT 8 | ||
1772 | |||
1773 | /* PCIE_CFG :: PRODUCT_ID_AND_ASIC_REVISION :: ASIC_REVISION_ID [07:00] */ | ||
1774 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_ASIC_REVISION_ID_MASK 0x000000ff | ||
1775 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_ASIC_REVISION_ID_ALIGN 0 | ||
1776 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_ASIC_REVISION_ID_BITS 8 | ||
1777 | #define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION_ASIC_REVISION_ID_SHIFT 0 | ||
1778 | |||
1779 | |||
1780 | /**************************************************************************** | ||
1781 | * PCIE_CFG :: FUNCTION_EVENT | ||
1782 | ***************************************************************************/ | ||
1783 | /* PCIE_CFG :: FUNCTION_EVENT :: RESERVED_0 [31:16] */ | ||
1784 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_0_MASK 0xffff0000 | ||
1785 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_0_ALIGN 0 | ||
1786 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_0_BITS 16 | ||
1787 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_0_SHIFT 16 | ||
1788 | |||
1789 | /* PCIE_CFG :: FUNCTION_EVENT :: INTA_EVENT [15:15] */ | ||
1790 | #define PCIE_CFG_FUNCTION_EVENT_INTA_EVENT_MASK 0x00008000 | ||
1791 | #define PCIE_CFG_FUNCTION_EVENT_INTA_EVENT_ALIGN 0 | ||
1792 | #define PCIE_CFG_FUNCTION_EVENT_INTA_EVENT_BITS 1 | ||
1793 | #define PCIE_CFG_FUNCTION_EVENT_INTA_EVENT_SHIFT 15 | ||
1794 | |||
1795 | /* PCIE_CFG :: FUNCTION_EVENT :: RESERVED_1 [14:05] */ | ||
1796 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_1_MASK 0x00007fe0 | ||
1797 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_1_ALIGN 0 | ||
1798 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_1_BITS 10 | ||
1799 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_1_SHIFT 5 | ||
1800 | |||
1801 | /* PCIE_CFG :: FUNCTION_EVENT :: GWAKE_EVENT [04:04] */ | ||
1802 | #define PCIE_CFG_FUNCTION_EVENT_GWAKE_EVENT_MASK 0x00000010 | ||
1803 | #define PCIE_CFG_FUNCTION_EVENT_GWAKE_EVENT_ALIGN 0 | ||
1804 | #define PCIE_CFG_FUNCTION_EVENT_GWAKE_EVENT_BITS 1 | ||
1805 | #define PCIE_CFG_FUNCTION_EVENT_GWAKE_EVENT_SHIFT 4 | ||
1806 | |||
1807 | /* PCIE_CFG :: FUNCTION_EVENT :: RESERVED_2 [03:00] */ | ||
1808 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_2_MASK 0x0000000f | ||
1809 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_2_ALIGN 0 | ||
1810 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_2_BITS 4 | ||
1811 | #define PCIE_CFG_FUNCTION_EVENT_RESERVED_2_SHIFT 0 | ||
1812 | |||
1813 | |||
1814 | /**************************************************************************** | ||
1815 | * PCIE_CFG :: FUNCTION_EVENT_MASK | ||
1816 | ***************************************************************************/ | ||
1817 | /* PCIE_CFG :: FUNCTION_EVENT_MASK :: RESERVED_0 [31:16] */ | ||
1818 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_0_MASK 0xffff0000 | ||
1819 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_0_ALIGN 0 | ||
1820 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_0_BITS 16 | ||
1821 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_0_SHIFT 16 | ||
1822 | |||
1823 | /* PCIE_CFG :: FUNCTION_EVENT_MASK :: INTA_MASK [15:15] */ | ||
1824 | #define PCIE_CFG_FUNCTION_EVENT_MASK_INTA_MASK_MASK 0x00008000 | ||
1825 | #define PCIE_CFG_FUNCTION_EVENT_MASK_INTA_MASK_ALIGN 0 | ||
1826 | #define PCIE_CFG_FUNCTION_EVENT_MASK_INTA_MASK_BITS 1 | ||
1827 | #define PCIE_CFG_FUNCTION_EVENT_MASK_INTA_MASK_SHIFT 15 | ||
1828 | |||
1829 | /* PCIE_CFG :: FUNCTION_EVENT_MASK :: WAKE_UP_MASK [14:14] */ | ||
1830 | #define PCIE_CFG_FUNCTION_EVENT_MASK_WAKE_UP_MASK_MASK 0x00004000 | ||
1831 | #define PCIE_CFG_FUNCTION_EVENT_MASK_WAKE_UP_MASK_ALIGN 0 | ||
1832 | #define PCIE_CFG_FUNCTION_EVENT_MASK_WAKE_UP_MASK_BITS 1 | ||
1833 | #define PCIE_CFG_FUNCTION_EVENT_MASK_WAKE_UP_MASK_SHIFT 14 | ||
1834 | |||
1835 | /* PCIE_CFG :: FUNCTION_EVENT_MASK :: RESERVED_1 [13:05] */ | ||
1836 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_1_MASK 0x00003fe0 | ||
1837 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_1_ALIGN 0 | ||
1838 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_1_BITS 9 | ||
1839 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_1_SHIFT 5 | ||
1840 | |||
1841 | /* PCIE_CFG :: FUNCTION_EVENT_MASK :: GWAKE_MASK [04:04] */ | ||
1842 | #define PCIE_CFG_FUNCTION_EVENT_MASK_GWAKE_MASK_MASK 0x00000010 | ||
1843 | #define PCIE_CFG_FUNCTION_EVENT_MASK_GWAKE_MASK_ALIGN 0 | ||
1844 | #define PCIE_CFG_FUNCTION_EVENT_MASK_GWAKE_MASK_BITS 1 | ||
1845 | #define PCIE_CFG_FUNCTION_EVENT_MASK_GWAKE_MASK_SHIFT 4 | ||
1846 | |||
1847 | /* PCIE_CFG :: FUNCTION_EVENT_MASK :: RESERVED_2 [03:00] */ | ||
1848 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_2_MASK 0x0000000f | ||
1849 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_2_ALIGN 0 | ||
1850 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_2_BITS 4 | ||
1851 | #define PCIE_CFG_FUNCTION_EVENT_MASK_RESERVED_2_SHIFT 0 | ||
1852 | |||
1853 | |||
1854 | /**************************************************************************** | ||
1855 | * PCIE_CFG :: FUNCTION_PRESENT | ||
1856 | ***************************************************************************/ | ||
1857 | /* PCIE_CFG :: FUNCTION_PRESENT :: RESERVED_0 [31:16] */ | ||
1858 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_0_MASK 0xffff0000 | ||
1859 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_0_ALIGN 0 | ||
1860 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_0_BITS 16 | ||
1861 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_0_SHIFT 16 | ||
1862 | |||
1863 | /* PCIE_CFG :: FUNCTION_PRESENT :: INTA_STATUS [15:15] */ | ||
1864 | #define PCIE_CFG_FUNCTION_PRESENT_INTA_STATUS_MASK 0x00008000 | ||
1865 | #define PCIE_CFG_FUNCTION_PRESENT_INTA_STATUS_ALIGN 0 | ||
1866 | #define PCIE_CFG_FUNCTION_PRESENT_INTA_STATUS_BITS 1 | ||
1867 | #define PCIE_CFG_FUNCTION_PRESENT_INTA_STATUS_SHIFT 15 | ||
1868 | |||
1869 | /* PCIE_CFG :: FUNCTION_PRESENT :: RESERVED_1 [14:05] */ | ||
1870 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_1_MASK 0x00007fe0 | ||
1871 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_1_ALIGN 0 | ||
1872 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_1_BITS 10 | ||
1873 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_1_SHIFT 5 | ||
1874 | |||
1875 | /* PCIE_CFG :: FUNCTION_PRESENT :: PME_STATUS [04:04] */ | ||
1876 | #define PCIE_CFG_FUNCTION_PRESENT_PME_STATUS_MASK 0x00000010 | ||
1877 | #define PCIE_CFG_FUNCTION_PRESENT_PME_STATUS_ALIGN 0 | ||
1878 | #define PCIE_CFG_FUNCTION_PRESENT_PME_STATUS_BITS 1 | ||
1879 | #define PCIE_CFG_FUNCTION_PRESENT_PME_STATUS_SHIFT 4 | ||
1880 | |||
1881 | /* PCIE_CFG :: FUNCTION_PRESENT :: RESERVED_2 [03:00] */ | ||
1882 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_2_MASK 0x0000000f | ||
1883 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_2_ALIGN 0 | ||
1884 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_2_BITS 4 | ||
1885 | #define PCIE_CFG_FUNCTION_PRESENT_RESERVED_2_SHIFT 0 | ||
1886 | |||
1887 | |||
1888 | /**************************************************************************** | ||
1889 | * PCIE_CFG :: PCIE_CAPABILITIES | ||
1890 | ***************************************************************************/ | ||
1891 | /* PCIE_CFG :: PCIE_CAPABILITIES :: RESERVED_0 [31:30] */ | ||
1892 | #define PCIE_CFG_PCIE_CAPABILITIES_RESERVED_0_MASK 0xc0000000 | ||
1893 | #define PCIE_CFG_PCIE_CAPABILITIES_RESERVED_0_ALIGN 0 | ||
1894 | #define PCIE_CFG_PCIE_CAPABILITIES_RESERVED_0_BITS 2 | ||
1895 | #define PCIE_CFG_PCIE_CAPABILITIES_RESERVED_0_SHIFT 30 | ||
1896 | |||
1897 | /* PCIE_CFG :: PCIE_CAPABILITIES :: INTERRUPT_MESSAGE_NUMBER [29:25] */ | ||
1898 | #define PCIE_CFG_PCIE_CAPABILITIES_INTERRUPT_MESSAGE_NUMBER_MASK 0x3e000000 | ||
1899 | #define PCIE_CFG_PCIE_CAPABILITIES_INTERRUPT_MESSAGE_NUMBER_ALIGN 0 | ||
1900 | #define PCIE_CFG_PCIE_CAPABILITIES_INTERRUPT_MESSAGE_NUMBER_BITS 5 | ||
1901 | #define PCIE_CFG_PCIE_CAPABILITIES_INTERRUPT_MESSAGE_NUMBER_SHIFT 25 | ||
1902 | |||
1903 | /* PCIE_CFG :: PCIE_CAPABILITIES :: SLOT_IMPLEMENTED [24:24] */ | ||
1904 | #define PCIE_CFG_PCIE_CAPABILITIES_SLOT_IMPLEMENTED_MASK 0x01000000 | ||
1905 | #define PCIE_CFG_PCIE_CAPABILITIES_SLOT_IMPLEMENTED_ALIGN 0 | ||
1906 | #define PCIE_CFG_PCIE_CAPABILITIES_SLOT_IMPLEMENTED_BITS 1 | ||
1907 | #define PCIE_CFG_PCIE_CAPABILITIES_SLOT_IMPLEMENTED_SHIFT 24 | ||
1908 | |||
1909 | /* PCIE_CFG :: PCIE_CAPABILITIES :: DEVICE_PORT_TYPE [23:20] */ | ||
1910 | #define PCIE_CFG_PCIE_CAPABILITIES_DEVICE_PORT_TYPE_MASK 0x00f00000 | ||
1911 | #define PCIE_CFG_PCIE_CAPABILITIES_DEVICE_PORT_TYPE_ALIGN 0 | ||
1912 | #define PCIE_CFG_PCIE_CAPABILITIES_DEVICE_PORT_TYPE_BITS 4 | ||
1913 | #define PCIE_CFG_PCIE_CAPABILITIES_DEVICE_PORT_TYPE_SHIFT 20 | ||
1914 | |||
1915 | /* PCIE_CFG :: PCIE_CAPABILITIES :: CAPABILITY_VERSION [19:16] */ | ||
1916 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_VERSION_MASK 0x000f0000 | ||
1917 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_VERSION_ALIGN 0 | ||
1918 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_VERSION_BITS 4 | ||
1919 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_VERSION_SHIFT 16 | ||
1920 | |||
1921 | /* PCIE_CFG :: PCIE_CAPABILITIES :: NEXT_POINTER [15:08] */ | ||
1922 | #define PCIE_CFG_PCIE_CAPABILITIES_NEXT_POINTER_MASK 0x0000ff00 | ||
1923 | #define PCIE_CFG_PCIE_CAPABILITIES_NEXT_POINTER_ALIGN 0 | ||
1924 | #define PCIE_CFG_PCIE_CAPABILITIES_NEXT_POINTER_BITS 8 | ||
1925 | #define PCIE_CFG_PCIE_CAPABILITIES_NEXT_POINTER_SHIFT 8 | ||
1926 | |||
1927 | /* PCIE_CFG :: PCIE_CAPABILITIES :: CAPABILITY_ID [07:00] */ | ||
1928 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_ID_MASK 0x000000ff | ||
1929 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_ID_ALIGN 0 | ||
1930 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_ID_BITS 8 | ||
1931 | #define PCIE_CFG_PCIE_CAPABILITIES_CAPABILITY_ID_SHIFT 0 | ||
1932 | |||
1933 | |||
1934 | /**************************************************************************** | ||
1935 | * PCIE_CFG :: DEVICE_CAPABILITIES | ||
1936 | ***************************************************************************/ | ||
1937 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: RESERVED_0 [31:28] */ | ||
1938 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_0_MASK 0xf0000000 | ||
1939 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_0_ALIGN 0 | ||
1940 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_0_BITS 4 | ||
1941 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_0_SHIFT 28 | ||
1942 | |||
1943 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: CAPTURED_SLOT_POWER_LIMIT_SCALE [27:26] */ | ||
1944 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_SCALE_MASK 0x0c000000 | ||
1945 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_SCALE_ALIGN 0 | ||
1946 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_SCALE_BITS 2 | ||
1947 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_SCALE_SHIFT 26 | ||
1948 | |||
1949 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: CAPTURED_SLOT_POWER_LIMIT_VALUE [25:18] */ | ||
1950 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_VALUE_MASK 0x03fc0000 | ||
1951 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_VALUE_ALIGN 0 | ||
1952 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_VALUE_BITS 8 | ||
1953 | #define PCIE_CFG_DEVICE_CAPABILITIES_CAPTURED_SLOT_POWER_LIMIT_VALUE_SHIFT 18 | ||
1954 | |||
1955 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: RESERVED_1 [17:16] */ | ||
1956 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_1_MASK 0x00030000 | ||
1957 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_1_ALIGN 0 | ||
1958 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_1_BITS 2 | ||
1959 | #define PCIE_CFG_DEVICE_CAPABILITIES_RESERVED_1_SHIFT 16 | ||
1960 | |||
1961 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: ROLE_BASED_ERROR_SUPPORT [15:15] */ | ||
1962 | #define PCIE_CFG_DEVICE_CAPABILITIES_ROLE_BASED_ERROR_SUPPORT_MASK 0x00008000 | ||
1963 | #define PCIE_CFG_DEVICE_CAPABILITIES_ROLE_BASED_ERROR_SUPPORT_ALIGN 0 | ||
1964 | #define PCIE_CFG_DEVICE_CAPABILITIES_ROLE_BASED_ERROR_SUPPORT_BITS 1 | ||
1965 | #define PCIE_CFG_DEVICE_CAPABILITIES_ROLE_BASED_ERROR_SUPPORT_SHIFT 15 | ||
1966 | |||
1967 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: POWER_INDICATOR_PRESENT [14:14] */ | ||
1968 | #define PCIE_CFG_DEVICE_CAPABILITIES_POWER_INDICATOR_PRESENT_MASK 0x00004000 | ||
1969 | #define PCIE_CFG_DEVICE_CAPABILITIES_POWER_INDICATOR_PRESENT_ALIGN 0 | ||
1970 | #define PCIE_CFG_DEVICE_CAPABILITIES_POWER_INDICATOR_PRESENT_BITS 1 | ||
1971 | #define PCIE_CFG_DEVICE_CAPABILITIES_POWER_INDICATOR_PRESENT_SHIFT 14 | ||
1972 | |||
1973 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: ATTENTION_INDICATOR_PRESENT [13:13] */ | ||
1974 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_INDICATOR_PRESENT_MASK 0x00002000 | ||
1975 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_INDICATOR_PRESENT_ALIGN 0 | ||
1976 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_INDICATOR_PRESENT_BITS 1 | ||
1977 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_INDICATOR_PRESENT_SHIFT 13 | ||
1978 | |||
1979 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: ATTENTION_BUTTON_PRESENT [12:12] */ | ||
1980 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_BUTTON_PRESENT_MASK 0x00001000 | ||
1981 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_BUTTON_PRESENT_ALIGN 0 | ||
1982 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_BUTTON_PRESENT_BITS 1 | ||
1983 | #define PCIE_CFG_DEVICE_CAPABILITIES_ATTENTION_BUTTON_PRESENT_SHIFT 12 | ||
1984 | |||
1985 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: ENDPOINT_L1_ACCEPTABLE_LATENCY [11:09] */ | ||
1986 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L1_ACCEPTABLE_LATENCY_MASK 0x00000e00 | ||
1987 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L1_ACCEPTABLE_LATENCY_ALIGN 0 | ||
1988 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L1_ACCEPTABLE_LATENCY_BITS 3 | ||
1989 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L1_ACCEPTABLE_LATENCY_SHIFT 9 | ||
1990 | |||
1991 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: ENDPOINT_L0S_ACCEPTABLE_LATENCY [08:06] */ | ||
1992 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L0S_ACCEPTABLE_LATENCY_MASK 0x000001c0 | ||
1993 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L0S_ACCEPTABLE_LATENCY_ALIGN 0 | ||
1994 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L0S_ACCEPTABLE_LATENCY_BITS 3 | ||
1995 | #define PCIE_CFG_DEVICE_CAPABILITIES_ENDPOINT_L0S_ACCEPTABLE_LATENCY_SHIFT 6 | ||
1996 | |||
1997 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: EXTENDED_TAG_FIELD_SUPPORTED [05:05] */ | ||
1998 | #define PCIE_CFG_DEVICE_CAPABILITIES_EXTENDED_TAG_FIELD_SUPPORTED_MASK 0x00000020 | ||
1999 | #define PCIE_CFG_DEVICE_CAPABILITIES_EXTENDED_TAG_FIELD_SUPPORTED_ALIGN 0 | ||
2000 | #define PCIE_CFG_DEVICE_CAPABILITIES_EXTENDED_TAG_FIELD_SUPPORTED_BITS 1 | ||
2001 | #define PCIE_CFG_DEVICE_CAPABILITIES_EXTENDED_TAG_FIELD_SUPPORTED_SHIFT 5 | ||
2002 | |||
2003 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: PHANTOM_FUNCTIONS_SUPPORTED [04:03] */ | ||
2004 | #define PCIE_CFG_DEVICE_CAPABILITIES_PHANTOM_FUNCTIONS_SUPPORTED_MASK 0x00000018 | ||
2005 | #define PCIE_CFG_DEVICE_CAPABILITIES_PHANTOM_FUNCTIONS_SUPPORTED_ALIGN 0 | ||
2006 | #define PCIE_CFG_DEVICE_CAPABILITIES_PHANTOM_FUNCTIONS_SUPPORTED_BITS 2 | ||
2007 | #define PCIE_CFG_DEVICE_CAPABILITIES_PHANTOM_FUNCTIONS_SUPPORTED_SHIFT 3 | ||
2008 | |||
2009 | /* PCIE_CFG :: DEVICE_CAPABILITIES :: MAX_PAYLOAD_SIZE_SUPPORTED [02:00] */ | ||
2010 | #define PCIE_CFG_DEVICE_CAPABILITIES_MAX_PAYLOAD_SIZE_SUPPORTED_MASK 0x00000007 | ||
2011 | #define PCIE_CFG_DEVICE_CAPABILITIES_MAX_PAYLOAD_SIZE_SUPPORTED_ALIGN 0 | ||
2012 | #define PCIE_CFG_DEVICE_CAPABILITIES_MAX_PAYLOAD_SIZE_SUPPORTED_BITS 3 | ||
2013 | #define PCIE_CFG_DEVICE_CAPABILITIES_MAX_PAYLOAD_SIZE_SUPPORTED_SHIFT 0 | ||
2014 | |||
2015 | |||
2016 | /**************************************************************************** | ||
2017 | * PCIE_CFG :: DEVICE_STATUS_CONTROL | ||
2018 | ***************************************************************************/ | ||
2019 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: RESERVED_0 [31:22] */ | ||
2020 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_0_MASK 0xffc00000 | ||
2021 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_0_ALIGN 0 | ||
2022 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_0_BITS 10 | ||
2023 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_0_SHIFT 22 | ||
2024 | |||
2025 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: TRANSACTION_PENDING [21:21] */ | ||
2026 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_TRANSACTION_PENDING_MASK 0x00200000 | ||
2027 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_TRANSACTION_PENDING_ALIGN 0 | ||
2028 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_TRANSACTION_PENDING_BITS 1 | ||
2029 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_TRANSACTION_PENDING_SHIFT 21 | ||
2030 | |||
2031 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: AUX_POWER_DETECTED [20:20] */ | ||
2032 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_DETECTED_MASK 0x00100000 | ||
2033 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_DETECTED_ALIGN 0 | ||
2034 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_DETECTED_BITS 1 | ||
2035 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_DETECTED_SHIFT 20 | ||
2036 | |||
2037 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: UNSUPPORTED_REQUEST_DETECTED [19:19] */ | ||
2038 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_DETECTED_MASK 0x00080000 | ||
2039 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_DETECTED_ALIGN 0 | ||
2040 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_DETECTED_BITS 1 | ||
2041 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_DETECTED_SHIFT 19 | ||
2042 | |||
2043 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: FATAL_ERROR_DETECTED [18:18] */ | ||
2044 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_DETECTED_MASK 0x00040000 | ||
2045 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_DETECTED_ALIGN 0 | ||
2046 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_DETECTED_BITS 1 | ||
2047 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_DETECTED_SHIFT 18 | ||
2048 | |||
2049 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: NON_FATAL_ERROR_DETECTED [17:17] */ | ||
2050 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_DETECTED_MASK 0x00020000 | ||
2051 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_DETECTED_ALIGN 0 | ||
2052 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_DETECTED_BITS 1 | ||
2053 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_DETECTED_SHIFT 17 | ||
2054 | |||
2055 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: CORRECTABLE_ERROR_DETECTED [16:16] */ | ||
2056 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_DETECTED_MASK 0x00010000 | ||
2057 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_DETECTED_ALIGN 0 | ||
2058 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_DETECTED_BITS 1 | ||
2059 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_DETECTED_SHIFT 16 | ||
2060 | |||
2061 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: RESERVED_1 [15:15] */ | ||
2062 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_1_MASK 0x00008000 | ||
2063 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_1_ALIGN 0 | ||
2064 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_1_BITS 1 | ||
2065 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_RESERVED_1_SHIFT 15 | ||
2066 | |||
2067 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: MAX_READ_REQUEST_SIZE [14:12] */ | ||
2068 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_READ_REQUEST_SIZE_MASK 0x00007000 | ||
2069 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_READ_REQUEST_SIZE_ALIGN 0 | ||
2070 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_READ_REQUEST_SIZE_BITS 3 | ||
2071 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_READ_REQUEST_SIZE_SHIFT 12 | ||
2072 | |||
2073 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: ENABLE_NO_SNOOP [11:11] */ | ||
2074 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLE_NO_SNOOP_MASK 0x00000800 | ||
2075 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLE_NO_SNOOP_ALIGN 0 | ||
2076 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLE_NO_SNOOP_BITS 1 | ||
2077 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLE_NO_SNOOP_SHIFT 11 | ||
2078 | |||
2079 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: AUX_POWER_PM_ENABLE [10:10] */ | ||
2080 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_PM_ENABLE_MASK 0x00000400 | ||
2081 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_PM_ENABLE_ALIGN 0 | ||
2082 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_PM_ENABLE_BITS 1 | ||
2083 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_AUX_POWER_PM_ENABLE_SHIFT 10 | ||
2084 | |||
2085 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: PHANTOM_FUNCTIONS_ENABLE [09:09] */ | ||
2086 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_PHANTOM_FUNCTIONS_ENABLE_MASK 0x00000200 | ||
2087 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_PHANTOM_FUNCTIONS_ENABLE_ALIGN 0 | ||
2088 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_PHANTOM_FUNCTIONS_ENABLE_BITS 1 | ||
2089 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_PHANTOM_FUNCTIONS_ENABLE_SHIFT 9 | ||
2090 | |||
2091 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: EXTENDED_TAG_FIELD_ENABLE [08:08] */ | ||
2092 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_EXTENDED_TAG_FIELD_ENABLE_MASK 0x00000100 | ||
2093 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_EXTENDED_TAG_FIELD_ENABLE_ALIGN 0 | ||
2094 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_EXTENDED_TAG_FIELD_ENABLE_BITS 1 | ||
2095 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_EXTENDED_TAG_FIELD_ENABLE_SHIFT 8 | ||
2096 | |||
2097 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: MAX_PAYLOAD_SIZE [07:05] */ | ||
2098 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_PAYLOAD_SIZE_MASK 0x000000e0 | ||
2099 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_PAYLOAD_SIZE_ALIGN 0 | ||
2100 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_PAYLOAD_SIZE_BITS 3 | ||
2101 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_MAX_PAYLOAD_SIZE_SHIFT 5 | ||
2102 | |||
2103 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: ENABLED_RELAXED_ORDERING [04:04] */ | ||
2104 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLED_RELAXED_ORDERING_MASK 0x00000010 | ||
2105 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLED_RELAXED_ORDERING_ALIGN 0 | ||
2106 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLED_RELAXED_ORDERING_BITS 1 | ||
2107 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_ENABLED_RELAXED_ORDERING_SHIFT 4 | ||
2108 | |||
2109 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: UNSUPPORTED_REQUEST_REPORTING_ENABLE [03:03] */ | ||
2110 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_REPORTING_ENABLE_MASK 0x00000008 | ||
2111 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_REPORTING_ENABLE_ALIGN 0 | ||
2112 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_REPORTING_ENABLE_BITS 1 | ||
2113 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_UNSUPPORTED_REQUEST_REPORTING_ENABLE_SHIFT 3 | ||
2114 | |||
2115 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: FATAL_ERROR_REPORTING_ENABLED [02:02] */ | ||
2116 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_REPORTING_ENABLED_MASK 0x00000004 | ||
2117 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_REPORTING_ENABLED_ALIGN 0 | ||
2118 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_REPORTING_ENABLED_BITS 1 | ||
2119 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_FATAL_ERROR_REPORTING_ENABLED_SHIFT 2 | ||
2120 | |||
2121 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: NON_FATAL_ERROR_REPORTING_ENABLED [01:01] */ | ||
2122 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_REPORTING_ENABLED_MASK 0x00000002 | ||
2123 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_REPORTING_ENABLED_ALIGN 0 | ||
2124 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_REPORTING_ENABLED_BITS 1 | ||
2125 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_NON_FATAL_ERROR_REPORTING_ENABLED_SHIFT 1 | ||
2126 | |||
2127 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL :: CORRECTABLE_ERROR_REPORTING_ENABLED [00:00] */ | ||
2128 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_REPORTING_ENABLED_MASK 0x00000001 | ||
2129 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_REPORTING_ENABLED_ALIGN 0 | ||
2130 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_REPORTING_ENABLED_BITS 1 | ||
2131 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_CORRECTABLE_ERROR_REPORTING_ENABLED_SHIFT 0 | ||
2132 | |||
2133 | |||
2134 | /**************************************************************************** | ||
2135 | * PCIE_CFG :: LINK_CAPABILITY | ||
2136 | ***************************************************************************/ | ||
2137 | /* PCIE_CFG :: LINK_CAPABILITY :: PORT_NUMBER [31:24] */ | ||
2138 | #define PCIE_CFG_LINK_CAPABILITY_PORT_NUMBER_MASK 0xff000000 | ||
2139 | #define PCIE_CFG_LINK_CAPABILITY_PORT_NUMBER_ALIGN 0 | ||
2140 | #define PCIE_CFG_LINK_CAPABILITY_PORT_NUMBER_BITS 8 | ||
2141 | #define PCIE_CFG_LINK_CAPABILITY_PORT_NUMBER_SHIFT 24 | ||
2142 | |||
2143 | /* PCIE_CFG :: LINK_CAPABILITY :: RESERVED_0 [23:19] */ | ||
2144 | #define PCIE_CFG_LINK_CAPABILITY_RESERVED_0_MASK 0x00f80000 | ||
2145 | #define PCIE_CFG_LINK_CAPABILITY_RESERVED_0_ALIGN 0 | ||
2146 | #define PCIE_CFG_LINK_CAPABILITY_RESERVED_0_BITS 5 | ||
2147 | #define PCIE_CFG_LINK_CAPABILITY_RESERVED_0_SHIFT 19 | ||
2148 | |||
2149 | /* PCIE_CFG :: LINK_CAPABILITY :: CLOCK_POWER_MANAGEMENT [18:18] */ | ||
2150 | #define PCIE_CFG_LINK_CAPABILITY_CLOCK_POWER_MANAGEMENT_MASK 0x00040000 | ||
2151 | #define PCIE_CFG_LINK_CAPABILITY_CLOCK_POWER_MANAGEMENT_ALIGN 0 | ||
2152 | #define PCIE_CFG_LINK_CAPABILITY_CLOCK_POWER_MANAGEMENT_BITS 1 | ||
2153 | #define PCIE_CFG_LINK_CAPABILITY_CLOCK_POWER_MANAGEMENT_SHIFT 18 | ||
2154 | |||
2155 | /* PCIE_CFG :: LINK_CAPABILITY :: L1_EXIT_LATENCY [17:15] */ | ||
2156 | #define PCIE_CFG_LINK_CAPABILITY_L1_EXIT_LATENCY_MASK 0x00038000 | ||
2157 | #define PCIE_CFG_LINK_CAPABILITY_L1_EXIT_LATENCY_ALIGN 0 | ||
2158 | #define PCIE_CFG_LINK_CAPABILITY_L1_EXIT_LATENCY_BITS 3 | ||
2159 | #define PCIE_CFG_LINK_CAPABILITY_L1_EXIT_LATENCY_SHIFT 15 | ||
2160 | |||
2161 | /* PCIE_CFG :: LINK_CAPABILITY :: L0S_EXIT_LATENCY [14:12] */ | ||
2162 | #define PCIE_CFG_LINK_CAPABILITY_L0S_EXIT_LATENCY_MASK 0x00007000 | ||
2163 | #define PCIE_CFG_LINK_CAPABILITY_L0S_EXIT_LATENCY_ALIGN 0 | ||
2164 | #define PCIE_CFG_LINK_CAPABILITY_L0S_EXIT_LATENCY_BITS 3 | ||
2165 | #define PCIE_CFG_LINK_CAPABILITY_L0S_EXIT_LATENCY_SHIFT 12 | ||
2166 | |||
2167 | /* PCIE_CFG :: LINK_CAPABILITY :: ACTIVE_STATE_POWER_MANAGEMENT_SUPPORT [11:10] */ | ||
2168 | #define PCIE_CFG_LINK_CAPABILITY_ACTIVE_STATE_POWER_MANAGEMENT_SUPPORT_MASK 0x00000c00 | ||
2169 | #define PCIE_CFG_LINK_CAPABILITY_ACTIVE_STATE_POWER_MANAGEMENT_SUPPORT_ALIGN 0 | ||
2170 | #define PCIE_CFG_LINK_CAPABILITY_ACTIVE_STATE_POWER_MANAGEMENT_SUPPORT_BITS 2 | ||
2171 | #define PCIE_CFG_LINK_CAPABILITY_ACTIVE_STATE_POWER_MANAGEMENT_SUPPORT_SHIFT 10 | ||
2172 | |||
2173 | /* PCIE_CFG :: LINK_CAPABILITY :: MAXIMUM_LINK_WIDTH [09:04] */ | ||
2174 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_WIDTH_MASK 0x000003f0 | ||
2175 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_WIDTH_ALIGN 0 | ||
2176 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_WIDTH_BITS 6 | ||
2177 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_WIDTH_SHIFT 4 | ||
2178 | |||
2179 | /* PCIE_CFG :: LINK_CAPABILITY :: MAXIMUM_LINK_SPEED [03:00] */ | ||
2180 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_SPEED_MASK 0x0000000f | ||
2181 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_SPEED_ALIGN 0 | ||
2182 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_SPEED_BITS 4 | ||
2183 | #define PCIE_CFG_LINK_CAPABILITY_MAXIMUM_LINK_SPEED_SHIFT 0 | ||
2184 | |||
2185 | |||
2186 | /**************************************************************************** | ||
2187 | * PCIE_CFG :: LINK_STATUS_CONTROL | ||
2188 | ***************************************************************************/ | ||
2189 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: RESERVED_0 [31:29] */ | ||
2190 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_0_MASK 0xe0000000 | ||
2191 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_0_ALIGN 0 | ||
2192 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_0_BITS 3 | ||
2193 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_0_SHIFT 29 | ||
2194 | |||
2195 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: SLOT_CLOCK_CONFIGURATION [28:28] */ | ||
2196 | #define PCIE_CFG_LINK_STATUS_CONTROL_SLOT_CLOCK_CONFIGURATION_MASK 0x10000000 | ||
2197 | #define PCIE_CFG_LINK_STATUS_CONTROL_SLOT_CLOCK_CONFIGURATION_ALIGN 0 | ||
2198 | #define PCIE_CFG_LINK_STATUS_CONTROL_SLOT_CLOCK_CONFIGURATION_BITS 1 | ||
2199 | #define PCIE_CFG_LINK_STATUS_CONTROL_SLOT_CLOCK_CONFIGURATION_SHIFT 28 | ||
2200 | |||
2201 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: RESERVED_1 [27:26] */ | ||
2202 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_1_MASK 0x0c000000 | ||
2203 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_1_ALIGN 0 | ||
2204 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_1_BITS 2 | ||
2205 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_1_SHIFT 26 | ||
2206 | |||
2207 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: NEGOTIATED_LINK_WIDTH [25:20] */ | ||
2208 | #define PCIE_CFG_LINK_STATUS_CONTROL_NEGOTIATED_LINK_WIDTH_MASK 0x03f00000 | ||
2209 | #define PCIE_CFG_LINK_STATUS_CONTROL_NEGOTIATED_LINK_WIDTH_ALIGN 0 | ||
2210 | #define PCIE_CFG_LINK_STATUS_CONTROL_NEGOTIATED_LINK_WIDTH_BITS 6 | ||
2211 | #define PCIE_CFG_LINK_STATUS_CONTROL_NEGOTIATED_LINK_WIDTH_SHIFT 20 | ||
2212 | |||
2213 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: LINK_SPEED [19:16] */ | ||
2214 | #define PCIE_CFG_LINK_STATUS_CONTROL_LINK_SPEED_MASK 0x000f0000 | ||
2215 | #define PCIE_CFG_LINK_STATUS_CONTROL_LINK_SPEED_ALIGN 0 | ||
2216 | #define PCIE_CFG_LINK_STATUS_CONTROL_LINK_SPEED_BITS 4 | ||
2217 | #define PCIE_CFG_LINK_STATUS_CONTROL_LINK_SPEED_SHIFT 16 | ||
2218 | |||
2219 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: RESERVED_2 [15:09] */ | ||
2220 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_2_MASK 0x0000fe00 | ||
2221 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_2_ALIGN 0 | ||
2222 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_2_BITS 7 | ||
2223 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_2_SHIFT 9 | ||
2224 | |||
2225 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: CLOCK_REQUEST_ENABLE [08:08] */ | ||
2226 | #define PCIE_CFG_LINK_STATUS_CONTROL_CLOCK_REQUEST_ENABLE_MASK 0x00000100 | ||
2227 | #define PCIE_CFG_LINK_STATUS_CONTROL_CLOCK_REQUEST_ENABLE_ALIGN 0 | ||
2228 | #define PCIE_CFG_LINK_STATUS_CONTROL_CLOCK_REQUEST_ENABLE_BITS 1 | ||
2229 | #define PCIE_CFG_LINK_STATUS_CONTROL_CLOCK_REQUEST_ENABLE_SHIFT 8 | ||
2230 | |||
2231 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: EXTENDED_SYNCH [07:07] */ | ||
2232 | #define PCIE_CFG_LINK_STATUS_CONTROL_EXTENDED_SYNCH_MASK 0x00000080 | ||
2233 | #define PCIE_CFG_LINK_STATUS_CONTROL_EXTENDED_SYNCH_ALIGN 0 | ||
2234 | #define PCIE_CFG_LINK_STATUS_CONTROL_EXTENDED_SYNCH_BITS 1 | ||
2235 | #define PCIE_CFG_LINK_STATUS_CONTROL_EXTENDED_SYNCH_SHIFT 7 | ||
2236 | |||
2237 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: COMMON_CLOCK_CONFIGURATION [06:06] */ | ||
2238 | #define PCIE_CFG_LINK_STATUS_CONTROL_COMMON_CLOCK_CONFIGURATION_MASK 0x00000040 | ||
2239 | #define PCIE_CFG_LINK_STATUS_CONTROL_COMMON_CLOCK_CONFIGURATION_ALIGN 0 | ||
2240 | #define PCIE_CFG_LINK_STATUS_CONTROL_COMMON_CLOCK_CONFIGURATION_BITS 1 | ||
2241 | #define PCIE_CFG_LINK_STATUS_CONTROL_COMMON_CLOCK_CONFIGURATION_SHIFT 6 | ||
2242 | |||
2243 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: RESERVED_3 [05:05] */ | ||
2244 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_3_MASK 0x00000020 | ||
2245 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_3_ALIGN 0 | ||
2246 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_3_BITS 1 | ||
2247 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_3_SHIFT 5 | ||
2248 | |||
2249 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: RESERVED_4 [04:04] */ | ||
2250 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_4_MASK 0x00000010 | ||
2251 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_4_ALIGN 0 | ||
2252 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_4_BITS 1 | ||
2253 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_4_SHIFT 4 | ||
2254 | |||
2255 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: READ_COMPLETION_BOUNDARY [03:03] */ | ||
2256 | #define PCIE_CFG_LINK_STATUS_CONTROL_READ_COMPLETION_BOUNDARY_MASK 0x00000008 | ||
2257 | #define PCIE_CFG_LINK_STATUS_CONTROL_READ_COMPLETION_BOUNDARY_ALIGN 0 | ||
2258 | #define PCIE_CFG_LINK_STATUS_CONTROL_READ_COMPLETION_BOUNDARY_BITS 1 | ||
2259 | #define PCIE_CFG_LINK_STATUS_CONTROL_READ_COMPLETION_BOUNDARY_SHIFT 3 | ||
2260 | |||
2261 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: RESERVED_5 [02:02] */ | ||
2262 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_5_MASK 0x00000004 | ||
2263 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_5_ALIGN 0 | ||
2264 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_5_BITS 1 | ||
2265 | #define PCIE_CFG_LINK_STATUS_CONTROL_RESERVED_5_SHIFT 2 | ||
2266 | |||
2267 | /* PCIE_CFG :: LINK_STATUS_CONTROL :: ACTIVE_STATE_POWER_MANAGEMENT_CONTROL [01:00] */ | ||
2268 | #define PCIE_CFG_LINK_STATUS_CONTROL_ACTIVE_STATE_POWER_MANAGEMENT_CONTROL_MASK 0x00000003 | ||
2269 | #define PCIE_CFG_LINK_STATUS_CONTROL_ACTIVE_STATE_POWER_MANAGEMENT_CONTROL_ALIGN 0 | ||
2270 | #define PCIE_CFG_LINK_STATUS_CONTROL_ACTIVE_STATE_POWER_MANAGEMENT_CONTROL_BITS 2 | ||
2271 | #define PCIE_CFG_LINK_STATUS_CONTROL_ACTIVE_STATE_POWER_MANAGEMENT_CONTROL_SHIFT 0 | ||
2272 | |||
2273 | |||
2274 | /**************************************************************************** | ||
2275 | * PCIE_CFG :: DEVICE_CAPABILITIES_2 | ||
2276 | ***************************************************************************/ | ||
2277 | /* PCIE_CFG :: DEVICE_CAPABILITIES_2 :: RESERVED_0 [31:05] */ | ||
2278 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_RESERVED_0_MASK 0xffffffe0 | ||
2279 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_RESERVED_0_ALIGN 0 | ||
2280 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_RESERVED_0_BITS 27 | ||
2281 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_RESERVED_0_SHIFT 5 | ||
2282 | |||
2283 | /* PCIE_CFG :: DEVICE_CAPABILITIES_2 :: CPL_DISABLE_SUPPORTED [04:04] */ | ||
2284 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_DISABLE_SUPPORTED_MASK 0x00000010 | ||
2285 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_DISABLE_SUPPORTED_ALIGN 0 | ||
2286 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_DISABLE_SUPPORTED_BITS 1 | ||
2287 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_DISABLE_SUPPORTED_SHIFT 4 | ||
2288 | |||
2289 | /* PCIE_CFG :: DEVICE_CAPABILITIES_2 :: CPL_TIMEOUT_RANGE_SUPPORTED [03:00] */ | ||
2290 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_TIMEOUT_RANGE_SUPPORTED_MASK 0x0000000f | ||
2291 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_TIMEOUT_RANGE_SUPPORTED_ALIGN 0 | ||
2292 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_TIMEOUT_RANGE_SUPPORTED_BITS 4 | ||
2293 | #define PCIE_CFG_DEVICE_CAPABILITIES_2_CPL_TIMEOUT_RANGE_SUPPORTED_SHIFT 0 | ||
2294 | |||
2295 | |||
2296 | /**************************************************************************** | ||
2297 | * PCIE_CFG :: DEVICE_STATUS_CONTROL_2 | ||
2298 | ***************************************************************************/ | ||
2299 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL_2 :: RESERVED_0 [31:05] */ | ||
2300 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_RESERVED_0_MASK 0xffffffe0 | ||
2301 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_RESERVED_0_ALIGN 0 | ||
2302 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_RESERVED_0_BITS 27 | ||
2303 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_RESERVED_0_SHIFT 5 | ||
2304 | |||
2305 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL_2 :: CPL_TIMEOUT_DISABLE [04:04] */ | ||
2306 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_DISABLE_MASK 0x00000010 | ||
2307 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_DISABLE_ALIGN 0 | ||
2308 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_DISABLE_BITS 1 | ||
2309 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_DISABLE_SHIFT 4 | ||
2310 | |||
2311 | /* PCIE_CFG :: DEVICE_STATUS_CONTROL_2 :: CPL_TIMEOUT_VALUE [03:00] */ | ||
2312 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_VALUE_MASK 0x0000000f | ||
2313 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_VALUE_ALIGN 0 | ||
2314 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_VALUE_BITS 4 | ||
2315 | #define PCIE_CFG_DEVICE_STATUS_CONTROL_2_CPL_TIMEOUT_VALUE_SHIFT 0 | ||
2316 | |||
2317 | |||
2318 | /**************************************************************************** | ||
2319 | * PCIE_CFG :: LINK_CAPABILITIES_2 | ||
2320 | ***************************************************************************/ | ||
2321 | /* PCIE_CFG :: LINK_CAPABILITIES_2 :: RESERVED_0 [31:00] */ | ||
2322 | #define PCIE_CFG_LINK_CAPABILITIES_2_RESERVED_0_MASK 0xffffffff | ||
2323 | #define PCIE_CFG_LINK_CAPABILITIES_2_RESERVED_0_ALIGN 0 | ||
2324 | #define PCIE_CFG_LINK_CAPABILITIES_2_RESERVED_0_BITS 32 | ||
2325 | #define PCIE_CFG_LINK_CAPABILITIES_2_RESERVED_0_SHIFT 0 | ||
2326 | |||
2327 | |||
2328 | /**************************************************************************** | ||
2329 | * PCIE_CFG :: LINK_STATUS_CONTROL_2 | ||
2330 | ***************************************************************************/ | ||
2331 | /* PCIE_CFG :: LINK_STATUS_CONTROL_2 :: RESERVED_0 [31:00] */ | ||
2332 | #define PCIE_CFG_LINK_STATUS_CONTROL_2_RESERVED_0_MASK 0xffffffff | ||
2333 | #define PCIE_CFG_LINK_STATUS_CONTROL_2_RESERVED_0_ALIGN 0 | ||
2334 | #define PCIE_CFG_LINK_STATUS_CONTROL_2_RESERVED_0_BITS 32 | ||
2335 | #define PCIE_CFG_LINK_STATUS_CONTROL_2_RESERVED_0_SHIFT 0 | ||
2336 | |||
2337 | |||
2338 | /**************************************************************************** | ||
2339 | * PCIE_CFG :: ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER | ||
2340 | ***************************************************************************/ | ||
2341 | /* PCIE_CFG :: ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER :: NEXT_CAPABILITY_OFFSET [31:20] */ | ||
2342 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_MASK 0xfff00000 | ||
2343 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_ALIGN 0 | ||
2344 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_BITS 12 | ||
2345 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_SHIFT 20 | ||
2346 | |||
2347 | /* PCIE_CFG :: ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER :: CAPABILITY_VERSION [19:16] */ | ||
2348 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_MASK 0x000f0000 | ||
2349 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_ALIGN 0 | ||
2350 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_BITS 4 | ||
2351 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_SHIFT 16 | ||
2352 | |||
2353 | /* PCIE_CFG :: ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER :: PCIE_EXTENDED_CAPABILITY_ID [15:00] */ | ||
2354 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_MASK 0x0000ffff | ||
2355 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_ALIGN 0 | ||
2356 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_BITS 16 | ||
2357 | #define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_SHIFT 0 | ||
2358 | |||
2359 | |||
2360 | /**************************************************************************** | ||
2361 | * PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS | ||
2362 | ***************************************************************************/ | ||
2363 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: RESERVED_0 [31:21] */ | ||
2364 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_0_MASK 0xffe00000 | ||
2365 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_0_ALIGN 0 | ||
2366 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_0_BITS 11 | ||
2367 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_0_SHIFT 21 | ||
2368 | |||
2369 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: UNSUPPORTED_REQUEST_ERROR_STATUS [20:20] */ | ||
2370 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNSUPPORTED_REQUEST_ERROR_STATUS_MASK 0x00100000 | ||
2371 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNSUPPORTED_REQUEST_ERROR_STATUS_ALIGN 0 | ||
2372 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNSUPPORTED_REQUEST_ERROR_STATUS_BITS 1 | ||
2373 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNSUPPORTED_REQUEST_ERROR_STATUS_SHIFT 20 | ||
2374 | |||
2375 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: ECRC_ERROR_STATUS [19:19] */ | ||
2376 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_ECRC_ERROR_STATUS_MASK 0x00080000 | ||
2377 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_ECRC_ERROR_STATUS_ALIGN 0 | ||
2378 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_ECRC_ERROR_STATUS_BITS 1 | ||
2379 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_ECRC_ERROR_STATUS_SHIFT 19 | ||
2380 | |||
2381 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: MALFORMED_TLP_STATUS [18:18] */ | ||
2382 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_MALFORMED_TLP_STATUS_MASK 0x00040000 | ||
2383 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_MALFORMED_TLP_STATUS_ALIGN 0 | ||
2384 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_MALFORMED_TLP_STATUS_BITS 1 | ||
2385 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_MALFORMED_TLP_STATUS_SHIFT 18 | ||
2386 | |||
2387 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: RECEIVER_OVERFLOW_STATUS [17:17] */ | ||
2388 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RECEIVER_OVERFLOW_STATUS_MASK 0x00020000 | ||
2389 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RECEIVER_OVERFLOW_STATUS_ALIGN 0 | ||
2390 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RECEIVER_OVERFLOW_STATUS_BITS 1 | ||
2391 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RECEIVER_OVERFLOW_STATUS_SHIFT 17 | ||
2392 | |||
2393 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: UNEXPECTED_COMPLETION_STATUS [16:16] */ | ||
2394 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNEXPECTED_COMPLETION_STATUS_MASK 0x00010000 | ||
2395 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNEXPECTED_COMPLETION_STATUS_ALIGN 0 | ||
2396 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNEXPECTED_COMPLETION_STATUS_BITS 1 | ||
2397 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_UNEXPECTED_COMPLETION_STATUS_SHIFT 16 | ||
2398 | |||
2399 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: COMPLETER_ABORT_STATUS [15:15] */ | ||
2400 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETER_ABORT_STATUS_MASK 0x00008000 | ||
2401 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETER_ABORT_STATUS_ALIGN 0 | ||
2402 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETER_ABORT_STATUS_BITS 1 | ||
2403 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETER_ABORT_STATUS_SHIFT 15 | ||
2404 | |||
2405 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: COMPLETION_TIMEOUT_STATUS [14:14] */ | ||
2406 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETION_TIMEOUT_STATUS_MASK 0x00004000 | ||
2407 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETION_TIMEOUT_STATUS_ALIGN 0 | ||
2408 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETION_TIMEOUT_STATUS_BITS 1 | ||
2409 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_COMPLETION_TIMEOUT_STATUS_SHIFT 14 | ||
2410 | |||
2411 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: FLOW_CONTROL_PROTOCOL_ERROR_STATUS [13:13] */ | ||
2412 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_STATUS_MASK 0x00002000 | ||
2413 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_STATUS_ALIGN 0 | ||
2414 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_STATUS_BITS 1 | ||
2415 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_STATUS_SHIFT 13 | ||
2416 | |||
2417 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: POISONED_TLP_STATUS [12:12] */ | ||
2418 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_POISONED_TLP_STATUS_MASK 0x00001000 | ||
2419 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_POISONED_TLP_STATUS_ALIGN 0 | ||
2420 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_POISONED_TLP_STATUS_BITS 1 | ||
2421 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_POISONED_TLP_STATUS_SHIFT 12 | ||
2422 | |||
2423 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: RESERVED_1 [11:05] */ | ||
2424 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_1_MASK 0x00000fe0 | ||
2425 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_1_ALIGN 0 | ||
2426 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_1_BITS 7 | ||
2427 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_1_SHIFT 5 | ||
2428 | |||
2429 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: DATA_LINK_PROTOCOL_ERROR_STATUS [04:04] */ | ||
2430 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_DATA_LINK_PROTOCOL_ERROR_STATUS_MASK 0x00000010 | ||
2431 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_DATA_LINK_PROTOCOL_ERROR_STATUS_ALIGN 0 | ||
2432 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_DATA_LINK_PROTOCOL_ERROR_STATUS_BITS 1 | ||
2433 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_DATA_LINK_PROTOCOL_ERROR_STATUS_SHIFT 4 | ||
2434 | |||
2435 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: RESERVED_2 [03:01] */ | ||
2436 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_2_MASK 0x0000000e | ||
2437 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_2_ALIGN 0 | ||
2438 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_2_BITS 3 | ||
2439 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_RESERVED_2_SHIFT 1 | ||
2440 | |||
2441 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_STATUS :: TRAINING_ERROR_STATUS [00:00] */ | ||
2442 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_TRAINING_ERROR_STATUS_MASK 0x00000001 | ||
2443 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_TRAINING_ERROR_STATUS_ALIGN 0 | ||
2444 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_TRAINING_ERROR_STATUS_BITS 1 | ||
2445 | #define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS_TRAINING_ERROR_STATUS_SHIFT 0 | ||
2446 | |||
2447 | |||
2448 | /**************************************************************************** | ||
2449 | * PCIE_CFG :: UNCORRECTABLE_ERROR_MASK | ||
2450 | ***************************************************************************/ | ||
2451 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: RESERVED_0 [31:21] */ | ||
2452 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_0_MASK 0xffe00000 | ||
2453 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_0_ALIGN 0 | ||
2454 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_0_BITS 11 | ||
2455 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_0_SHIFT 21 | ||
2456 | |||
2457 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: UNSUPPORTED_REQUEST_ERROR_MASK [20:20] */ | ||
2458 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNSUPPORTED_REQUEST_ERROR_MASK_MASK 0x00100000 | ||
2459 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNSUPPORTED_REQUEST_ERROR_MASK_ALIGN 0 | ||
2460 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNSUPPORTED_REQUEST_ERROR_MASK_BITS 1 | ||
2461 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNSUPPORTED_REQUEST_ERROR_MASK_SHIFT 20 | ||
2462 | |||
2463 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: ECRC_ERROR_MASK [19:19] */ | ||
2464 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_ECRC_ERROR_MASK_MASK 0x00080000 | ||
2465 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_ECRC_ERROR_MASK_ALIGN 0 | ||
2466 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_ECRC_ERROR_MASK_BITS 1 | ||
2467 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_ECRC_ERROR_MASK_SHIFT 19 | ||
2468 | |||
2469 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: MALFORMED_TLP_MASK [18:18] */ | ||
2470 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_MALFORMED_TLP_MASK_MASK 0x00040000 | ||
2471 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_MALFORMED_TLP_MASK_ALIGN 0 | ||
2472 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_MALFORMED_TLP_MASK_BITS 1 | ||
2473 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_MALFORMED_TLP_MASK_SHIFT 18 | ||
2474 | |||
2475 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: RECEIVER_OVERFLOW_MASK [17:17] */ | ||
2476 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RECEIVER_OVERFLOW_MASK_MASK 0x00020000 | ||
2477 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RECEIVER_OVERFLOW_MASK_ALIGN 0 | ||
2478 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RECEIVER_OVERFLOW_MASK_BITS 1 | ||
2479 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RECEIVER_OVERFLOW_MASK_SHIFT 17 | ||
2480 | |||
2481 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: UNEXPECTED_COMPLETION_MASK [16:16] */ | ||
2482 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNEXPECTED_COMPLETION_MASK_MASK 0x00010000 | ||
2483 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNEXPECTED_COMPLETION_MASK_ALIGN 0 | ||
2484 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNEXPECTED_COMPLETION_MASK_BITS 1 | ||
2485 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_UNEXPECTED_COMPLETION_MASK_SHIFT 16 | ||
2486 | |||
2487 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: COMPLETER_ABORT_MASK [15:15] */ | ||
2488 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETER_ABORT_MASK_MASK 0x00008000 | ||
2489 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETER_ABORT_MASK_ALIGN 0 | ||
2490 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETER_ABORT_MASK_BITS 1 | ||
2491 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETER_ABORT_MASK_SHIFT 15 | ||
2492 | |||
2493 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: COMPLETION_TIMEOUT_MASK [14:14] */ | ||
2494 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETION_TIMEOUT_MASK_MASK 0x00004000 | ||
2495 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETION_TIMEOUT_MASK_ALIGN 0 | ||
2496 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETION_TIMEOUT_MASK_BITS 1 | ||
2497 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_COMPLETION_TIMEOUT_MASK_SHIFT 14 | ||
2498 | |||
2499 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: FLOW_CONTROL_PROTOCOL_ERROR_MASK [13:13] */ | ||
2500 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_FLOW_CONTROL_PROTOCOL_ERROR_MASK_MASK 0x00002000 | ||
2501 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_FLOW_CONTROL_PROTOCOL_ERROR_MASK_ALIGN 0 | ||
2502 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_FLOW_CONTROL_PROTOCOL_ERROR_MASK_BITS 1 | ||
2503 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_FLOW_CONTROL_PROTOCOL_ERROR_MASK_SHIFT 13 | ||
2504 | |||
2505 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: POISONED_TLP_MASK [12:12] */ | ||
2506 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_POISONED_TLP_MASK_MASK 0x00001000 | ||
2507 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_POISONED_TLP_MASK_ALIGN 0 | ||
2508 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_POISONED_TLP_MASK_BITS 1 | ||
2509 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_POISONED_TLP_MASK_SHIFT 12 | ||
2510 | |||
2511 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: RESERVED_1 [11:05] */ | ||
2512 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_1_MASK 0x00000fe0 | ||
2513 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_1_ALIGN 0 | ||
2514 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_1_BITS 7 | ||
2515 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_1_SHIFT 5 | ||
2516 | |||
2517 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: DATA_LINK_PROTOCOL_ERROR_MASK [04:04] */ | ||
2518 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_DATA_LINK_PROTOCOL_ERROR_MASK_MASK 0x00000010 | ||
2519 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_DATA_LINK_PROTOCOL_ERROR_MASK_ALIGN 0 | ||
2520 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_DATA_LINK_PROTOCOL_ERROR_MASK_BITS 1 | ||
2521 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_DATA_LINK_PROTOCOL_ERROR_MASK_SHIFT 4 | ||
2522 | |||
2523 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: RESERVED_2 [03:01] */ | ||
2524 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_2_MASK 0x0000000e | ||
2525 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_2_ALIGN 0 | ||
2526 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_2_BITS 3 | ||
2527 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_RESERVED_2_SHIFT 1 | ||
2528 | |||
2529 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_MASK :: TRAINING_ERROR_MASK [00:00] */ | ||
2530 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_TRAINING_ERROR_MASK_MASK 0x00000001 | ||
2531 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_TRAINING_ERROR_MASK_ALIGN 0 | ||
2532 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_TRAINING_ERROR_MASK_BITS 1 | ||
2533 | #define PCIE_CFG_UNCORRECTABLE_ERROR_MASK_TRAINING_ERROR_MASK_SHIFT 0 | ||
2534 | |||
2535 | |||
2536 | /**************************************************************************** | ||
2537 | * PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY | ||
2538 | ***************************************************************************/ | ||
2539 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: RESERVED_0 [31:21] */ | ||
2540 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_0_MASK 0xffe00000 | ||
2541 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_0_ALIGN 0 | ||
2542 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_0_BITS 11 | ||
2543 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_0_SHIFT 21 | ||
2544 | |||
2545 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: UNSUPPORTED_REQUEST_ERROR_SEVERITY [20:20] */ | ||
2546 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNSUPPORTED_REQUEST_ERROR_SEVERITY_MASK 0x00100000 | ||
2547 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNSUPPORTED_REQUEST_ERROR_SEVERITY_ALIGN 0 | ||
2548 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNSUPPORTED_REQUEST_ERROR_SEVERITY_BITS 1 | ||
2549 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNSUPPORTED_REQUEST_ERROR_SEVERITY_SHIFT 20 | ||
2550 | |||
2551 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: ECRC_ERROR_SEVERITY [19:19] */ | ||
2552 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_ECRC_ERROR_SEVERITY_MASK 0x00080000 | ||
2553 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_ECRC_ERROR_SEVERITY_ALIGN 0 | ||
2554 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_ECRC_ERROR_SEVERITY_BITS 1 | ||
2555 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_ECRC_ERROR_SEVERITY_SHIFT 19 | ||
2556 | |||
2557 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: MALFORMED_TLP_SEVERITY [18:18] */ | ||
2558 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_MALFORMED_TLP_SEVERITY_MASK 0x00040000 | ||
2559 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_MALFORMED_TLP_SEVERITY_ALIGN 0 | ||
2560 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_MALFORMED_TLP_SEVERITY_BITS 1 | ||
2561 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_MALFORMED_TLP_SEVERITY_SHIFT 18 | ||
2562 | |||
2563 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: RECEIVER_OVERFLOW_ERROR_SEVERITY [17:17] */ | ||
2564 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RECEIVER_OVERFLOW_ERROR_SEVERITY_MASK 0x00020000 | ||
2565 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RECEIVER_OVERFLOW_ERROR_SEVERITY_ALIGN 0 | ||
2566 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RECEIVER_OVERFLOW_ERROR_SEVERITY_BITS 1 | ||
2567 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RECEIVER_OVERFLOW_ERROR_SEVERITY_SHIFT 17 | ||
2568 | |||
2569 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: UNEXPECTED_COMPLETION_ERROR_SEVERITY [16:16] */ | ||
2570 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNEXPECTED_COMPLETION_ERROR_SEVERITY_MASK 0x00010000 | ||
2571 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNEXPECTED_COMPLETION_ERROR_SEVERITY_ALIGN 0 | ||
2572 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNEXPECTED_COMPLETION_ERROR_SEVERITY_BITS 1 | ||
2573 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_UNEXPECTED_COMPLETION_ERROR_SEVERITY_SHIFT 16 | ||
2574 | |||
2575 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: COMPLETER_ABORT_ERROR_SEVERITY [15:15] */ | ||
2576 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETER_ABORT_ERROR_SEVERITY_MASK 0x00008000 | ||
2577 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETER_ABORT_ERROR_SEVERITY_ALIGN 0 | ||
2578 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETER_ABORT_ERROR_SEVERITY_BITS 1 | ||
2579 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETER_ABORT_ERROR_SEVERITY_SHIFT 15 | ||
2580 | |||
2581 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: COMPLETION_TIMEOUT_ERROR_SEVERITY [14:14] */ | ||
2582 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETION_TIMEOUT_ERROR_SEVERITY_MASK 0x00004000 | ||
2583 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETION_TIMEOUT_ERROR_SEVERITY_ALIGN 0 | ||
2584 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETION_TIMEOUT_ERROR_SEVERITY_BITS 1 | ||
2585 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_COMPLETION_TIMEOUT_ERROR_SEVERITY_SHIFT 14 | ||
2586 | |||
2587 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: FLOW_CONTROL_PROTOCOL_ERROR_SEVERITY [13:13] */ | ||
2588 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_FLOW_CONTROL_PROTOCOL_ERROR_SEVERITY_MASK 0x00002000 | ||
2589 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_FLOW_CONTROL_PROTOCOL_ERROR_SEVERITY_ALIGN 0 | ||
2590 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_FLOW_CONTROL_PROTOCOL_ERROR_SEVERITY_BITS 1 | ||
2591 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_FLOW_CONTROL_PROTOCOL_ERROR_SEVERITY_SHIFT 13 | ||
2592 | |||
2593 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: POISONED_TLP_SEVERITY [12:12] */ | ||
2594 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_POISONED_TLP_SEVERITY_MASK 0x00001000 | ||
2595 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_POISONED_TLP_SEVERITY_ALIGN 0 | ||
2596 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_POISONED_TLP_SEVERITY_BITS 1 | ||
2597 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_POISONED_TLP_SEVERITY_SHIFT 12 | ||
2598 | |||
2599 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: RESERVED_1 [11:05] */ | ||
2600 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_1_MASK 0x00000fe0 | ||
2601 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_1_ALIGN 0 | ||
2602 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_1_BITS 7 | ||
2603 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_1_SHIFT 5 | ||
2604 | |||
2605 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: DATA_LINK_PROTOCOL_ERROR_SEVERITY [04:04] */ | ||
2606 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_DATA_LINK_PROTOCOL_ERROR_SEVERITY_MASK 0x00000010 | ||
2607 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_DATA_LINK_PROTOCOL_ERROR_SEVERITY_ALIGN 0 | ||
2608 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_DATA_LINK_PROTOCOL_ERROR_SEVERITY_BITS 1 | ||
2609 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_DATA_LINK_PROTOCOL_ERROR_SEVERITY_SHIFT 4 | ||
2610 | |||
2611 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: RESERVED_2 [03:01] */ | ||
2612 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_2_MASK 0x0000000e | ||
2613 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_2_ALIGN 0 | ||
2614 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_2_BITS 3 | ||
2615 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_RESERVED_2_SHIFT 1 | ||
2616 | |||
2617 | /* PCIE_CFG :: UNCORRECTABLE_ERROR_SEVERITY :: TRAINING_ERROR_SEVERITY [00:00] */ | ||
2618 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_TRAINING_ERROR_SEVERITY_MASK 0x00000001 | ||
2619 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_TRAINING_ERROR_SEVERITY_ALIGN 0 | ||
2620 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_TRAINING_ERROR_SEVERITY_BITS 1 | ||
2621 | #define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY_TRAINING_ERROR_SEVERITY_SHIFT 0 | ||
2622 | |||
2623 | |||
2624 | /**************************************************************************** | ||
2625 | * PCIE_CFG :: CORRECTABLE_ERROR_STATUS | ||
2626 | ***************************************************************************/ | ||
2627 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: RESERVED_0 [31:14] */ | ||
2628 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_0_MASK 0xffffc000 | ||
2629 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_0_ALIGN 0 | ||
2630 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_0_BITS 18 | ||
2631 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_0_SHIFT 14 | ||
2632 | |||
2633 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: ADVISORY_NON_FATAL_ERROR_STATUS [13:13] */ | ||
2634 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_ADVISORY_NON_FATAL_ERROR_STATUS_MASK 0x00002000 | ||
2635 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_ADVISORY_NON_FATAL_ERROR_STATUS_ALIGN 0 | ||
2636 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_ADVISORY_NON_FATAL_ERROR_STATUS_BITS 1 | ||
2637 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_ADVISORY_NON_FATAL_ERROR_STATUS_SHIFT 13 | ||
2638 | |||
2639 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: REPLAY_TIMER_TIMEOUT_STATUS [12:12] */ | ||
2640 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_TIMER_TIMEOUT_STATUS_MASK 0x00001000 | ||
2641 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_TIMER_TIMEOUT_STATUS_ALIGN 0 | ||
2642 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_TIMER_TIMEOUT_STATUS_BITS 1 | ||
2643 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_TIMER_TIMEOUT_STATUS_SHIFT 12 | ||
2644 | |||
2645 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: RESERVED_1 [11:09] */ | ||
2646 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_1_MASK 0x00000e00 | ||
2647 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_1_ALIGN 0 | ||
2648 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_1_BITS 3 | ||
2649 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_1_SHIFT 9 | ||
2650 | |||
2651 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: REPLAY_NUM_ROLLOVER_STATUS [08:08] */ | ||
2652 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_NUM_ROLLOVER_STATUS_MASK 0x00000100 | ||
2653 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_NUM_ROLLOVER_STATUS_ALIGN 0 | ||
2654 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_NUM_ROLLOVER_STATUS_BITS 1 | ||
2655 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_REPLAY_NUM_ROLLOVER_STATUS_SHIFT 8 | ||
2656 | |||
2657 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: BAD_DLLP_STATUS [07:07] */ | ||
2658 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_DLLP_STATUS_MASK 0x00000080 | ||
2659 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_DLLP_STATUS_ALIGN 0 | ||
2660 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_DLLP_STATUS_BITS 1 | ||
2661 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_DLLP_STATUS_SHIFT 7 | ||
2662 | |||
2663 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: BAD_TLP_STATUS [06:06] */ | ||
2664 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_TLP_STATUS_MASK 0x00000040 | ||
2665 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_TLP_STATUS_ALIGN 0 | ||
2666 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_TLP_STATUS_BITS 1 | ||
2667 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_BAD_TLP_STATUS_SHIFT 6 | ||
2668 | |||
2669 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: RESERVED_2 [05:01] */ | ||
2670 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_2_MASK 0x0000003e | ||
2671 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_2_ALIGN 0 | ||
2672 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_2_BITS 5 | ||
2673 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RESERVED_2_SHIFT 1 | ||
2674 | |||
2675 | /* PCIE_CFG :: CORRECTABLE_ERROR_STATUS :: RECEIVER_ERROR_STATUS [00:00] */ | ||
2676 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RECEIVER_ERROR_STATUS_MASK 0x00000001 | ||
2677 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RECEIVER_ERROR_STATUS_ALIGN 0 | ||
2678 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RECEIVER_ERROR_STATUS_BITS 1 | ||
2679 | #define PCIE_CFG_CORRECTABLE_ERROR_STATUS_RECEIVER_ERROR_STATUS_SHIFT 0 | ||
2680 | |||
2681 | |||
2682 | /**************************************************************************** | ||
2683 | * PCIE_CFG :: CORRECTABLE_ERROR_MASK | ||
2684 | ***************************************************************************/ | ||
2685 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: RESERVED_0 [31:14] */ | ||
2686 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_0_MASK 0xffffc000 | ||
2687 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_0_ALIGN 0 | ||
2688 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_0_BITS 18 | ||
2689 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_0_SHIFT 14 | ||
2690 | |||
2691 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: ADVISORY_NON_FATAL_ERROR_MASK [13:13] */ | ||
2692 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_ADVISORY_NON_FATAL_ERROR_MASK_MASK 0x00002000 | ||
2693 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_ADVISORY_NON_FATAL_ERROR_MASK_ALIGN 0 | ||
2694 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_ADVISORY_NON_FATAL_ERROR_MASK_BITS 1 | ||
2695 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_ADVISORY_NON_FATAL_ERROR_MASK_SHIFT 13 | ||
2696 | |||
2697 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: REPLAY_TIMER_TIMEOUT_MASK [12:12] */ | ||
2698 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_TIMER_TIMEOUT_MASK_MASK 0x00001000 | ||
2699 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_TIMER_TIMEOUT_MASK_ALIGN 0 | ||
2700 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_TIMER_TIMEOUT_MASK_BITS 1 | ||
2701 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_TIMER_TIMEOUT_MASK_SHIFT 12 | ||
2702 | |||
2703 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: RESERVED_1 [11:09] */ | ||
2704 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_1_MASK 0x00000e00 | ||
2705 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_1_ALIGN 0 | ||
2706 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_1_BITS 3 | ||
2707 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_1_SHIFT 9 | ||
2708 | |||
2709 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: REPLAY_NUM_ROLLOVER_MASK [08:08] */ | ||
2710 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_NUM_ROLLOVER_MASK_MASK 0x00000100 | ||
2711 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_NUM_ROLLOVER_MASK_ALIGN 0 | ||
2712 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_NUM_ROLLOVER_MASK_BITS 1 | ||
2713 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_REPLAY_NUM_ROLLOVER_MASK_SHIFT 8 | ||
2714 | |||
2715 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: BAD_DLLP_MASK [07:07] */ | ||
2716 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_DLLP_MASK_MASK 0x00000080 | ||
2717 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_DLLP_MASK_ALIGN 0 | ||
2718 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_DLLP_MASK_BITS 1 | ||
2719 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_DLLP_MASK_SHIFT 7 | ||
2720 | |||
2721 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: BAD_TLP_MASK [06:06] */ | ||
2722 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_TLP_MASK_MASK 0x00000040 | ||
2723 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_TLP_MASK_ALIGN 0 | ||
2724 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_TLP_MASK_BITS 1 | ||
2725 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_BAD_TLP_MASK_SHIFT 6 | ||
2726 | |||
2727 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: RESERVED_2 [05:01] */ | ||
2728 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_2_MASK 0x0000003e | ||
2729 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_2_ALIGN 0 | ||
2730 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_2_BITS 5 | ||
2731 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RESERVED_2_SHIFT 1 | ||
2732 | |||
2733 | /* PCIE_CFG :: CORRECTABLE_ERROR_MASK :: RECEIVER_ERROR_MASK [00:00] */ | ||
2734 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RECEIVER_ERROR_MASK_MASK 0x00000001 | ||
2735 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RECEIVER_ERROR_MASK_ALIGN 0 | ||
2736 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RECEIVER_ERROR_MASK_BITS 1 | ||
2737 | #define PCIE_CFG_CORRECTABLE_ERROR_MASK_RECEIVER_ERROR_MASK_SHIFT 0 | ||
2738 | |||
2739 | |||
2740 | /**************************************************************************** | ||
2741 | * PCIE_CFG :: ADVANCED_ERROR_CAPABILITIES_AND_CONTROL | ||
2742 | ***************************************************************************/ | ||
2743 | /* PCIE_CFG :: ADVANCED_ERROR_CAPABILITIES_AND_CONTROL :: RESERVED_0 [31:09] */ | ||
2744 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_RESERVED_0_MASK 0xfffffe00 | ||
2745 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_RESERVED_0_ALIGN 0 | ||
2746 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_RESERVED_0_BITS 23 | ||
2747 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_RESERVED_0_SHIFT 9 | ||
2748 | |||
2749 | /* PCIE_CFG :: ADVANCED_ERROR_CAPABILITIES_AND_CONTROL :: ECRC_CHECK_ENABLE [08:08] */ | ||
2750 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_ENABLE_MASK 0x00000100 | ||
2751 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_ENABLE_ALIGN 0 | ||
2752 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_ENABLE_BITS 1 | ||
2753 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_ENABLE_SHIFT 8 | ||
2754 | |||
2755 | /* PCIE_CFG :: ADVANCED_ERROR_CAPABILITIES_AND_CONTROL :: ECRC_CHECK_CAPABLE [07:07] */ | ||
2756 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_CAPABLE_MASK 0x00000080 | ||
2757 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_CAPABLE_ALIGN 0 | ||
2758 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_CAPABLE_BITS 1 | ||
2759 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_CHECK_CAPABLE_SHIFT 7 | ||
2760 | |||
2761 | /* PCIE_CFG :: ADVANCED_ERROR_CAPABILITIES_AND_CONTROL :: ECRC_GENERATION_ENABLE [06:06] */ | ||
2762 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_ENABLE_MASK 0x00000040 | ||
2763 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_ENABLE_ALIGN 0 | ||
2764 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_ENABLE_BITS 1 | ||
2765 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_ENABLE_SHIFT 6 | ||
2766 | |||
2767 | /* PCIE_CFG :: ADVANCED_ERROR_CAPABILITIES_AND_CONTROL :: ECRC_GENERATION_CAPABLE [05:05] */ | ||
2768 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_CAPABLE_MASK 0x00000020 | ||
2769 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_CAPABLE_ALIGN 0 | ||
2770 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_CAPABLE_BITS 1 | ||
2771 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_ECRC_GENERATION_CAPABLE_SHIFT 5 | ||
2772 | |||
2773 | /* PCIE_CFG :: ADVANCED_ERROR_CAPABILITIES_AND_CONTROL :: FIRST_ERROR_POINTER [04:00] */ | ||
2774 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_FIRST_ERROR_POINTER_MASK 0x0000001f | ||
2775 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_FIRST_ERROR_POINTER_ALIGN 0 | ||
2776 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_FIRST_ERROR_POINTER_BITS 5 | ||
2777 | #define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL_FIRST_ERROR_POINTER_SHIFT 0 | ||
2778 | |||
2779 | |||
2780 | /**************************************************************************** | ||
2781 | * PCIE_CFG :: HEADER_LOG_1 | ||
2782 | ***************************************************************************/ | ||
2783 | /* PCIE_CFG :: HEADER_LOG_1 :: HEADER_BYTE_0 [31:24] */ | ||
2784 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_0_MASK 0xff000000 | ||
2785 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_0_ALIGN 0 | ||
2786 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_0_BITS 8 | ||
2787 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_0_SHIFT 24 | ||
2788 | |||
2789 | /* PCIE_CFG :: HEADER_LOG_1 :: HEADER_BYTE_1 [23:16] */ | ||
2790 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_1_MASK 0x00ff0000 | ||
2791 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_1_ALIGN 0 | ||
2792 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_1_BITS 8 | ||
2793 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_1_SHIFT 16 | ||
2794 | |||
2795 | /* PCIE_CFG :: HEADER_LOG_1 :: HEADER_BYTE_2 [15:08] */ | ||
2796 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_2_MASK 0x0000ff00 | ||
2797 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_2_ALIGN 0 | ||
2798 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_2_BITS 8 | ||
2799 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_2_SHIFT 8 | ||
2800 | |||
2801 | /* PCIE_CFG :: HEADER_LOG_1 :: HEADER_BYTE_3 [07:00] */ | ||
2802 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_3_MASK 0x000000ff | ||
2803 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_3_ALIGN 0 | ||
2804 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_3_BITS 8 | ||
2805 | #define PCIE_CFG_HEADER_LOG_1_HEADER_BYTE_3_SHIFT 0 | ||
2806 | |||
2807 | |||
2808 | /**************************************************************************** | ||
2809 | * PCIE_CFG :: HEADER_LOG_2 | ||
2810 | ***************************************************************************/ | ||
2811 | /* PCIE_CFG :: HEADER_LOG_2 :: HEADER_BYTE_4 [31:24] */ | ||
2812 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_4_MASK 0xff000000 | ||
2813 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_4_ALIGN 0 | ||
2814 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_4_BITS 8 | ||
2815 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_4_SHIFT 24 | ||
2816 | |||
2817 | /* PCIE_CFG :: HEADER_LOG_2 :: HEADER_BYTE_5 [23:16] */ | ||
2818 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_5_MASK 0x00ff0000 | ||
2819 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_5_ALIGN 0 | ||
2820 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_5_BITS 8 | ||
2821 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_5_SHIFT 16 | ||
2822 | |||
2823 | /* PCIE_CFG :: HEADER_LOG_2 :: HEADER_BYTE_6 [15:08] */ | ||
2824 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_6_MASK 0x0000ff00 | ||
2825 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_6_ALIGN 0 | ||
2826 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_6_BITS 8 | ||
2827 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_6_SHIFT 8 | ||
2828 | |||
2829 | /* PCIE_CFG :: HEADER_LOG_2 :: HEADER_BYTE_7 [07:00] */ | ||
2830 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_7_MASK 0x000000ff | ||
2831 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_7_ALIGN 0 | ||
2832 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_7_BITS 8 | ||
2833 | #define PCIE_CFG_HEADER_LOG_2_HEADER_BYTE_7_SHIFT 0 | ||
2834 | |||
2835 | |||
2836 | /**************************************************************************** | ||
2837 | * PCIE_CFG :: HEADER_LOG_3 | ||
2838 | ***************************************************************************/ | ||
2839 | /* PCIE_CFG :: HEADER_LOG_3 :: HEADER_BYTE_8 [31:24] */ | ||
2840 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_8_MASK 0xff000000 | ||
2841 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_8_ALIGN 0 | ||
2842 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_8_BITS 8 | ||
2843 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_8_SHIFT 24 | ||
2844 | |||
2845 | /* PCIE_CFG :: HEADER_LOG_3 :: HEADER_BYTE_9 [23:16] */ | ||
2846 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_9_MASK 0x00ff0000 | ||
2847 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_9_ALIGN 0 | ||
2848 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_9_BITS 8 | ||
2849 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_9_SHIFT 16 | ||
2850 | |||
2851 | /* PCIE_CFG :: HEADER_LOG_3 :: HEADER_BYTE_10 [15:08] */ | ||
2852 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_10_MASK 0x0000ff00 | ||
2853 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_10_ALIGN 0 | ||
2854 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_10_BITS 8 | ||
2855 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_10_SHIFT 8 | ||
2856 | |||
2857 | /* PCIE_CFG :: HEADER_LOG_3 :: HEADER_BYTE_11 [07:00] */ | ||
2858 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_11_MASK 0x000000ff | ||
2859 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_11_ALIGN 0 | ||
2860 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_11_BITS 8 | ||
2861 | #define PCIE_CFG_HEADER_LOG_3_HEADER_BYTE_11_SHIFT 0 | ||
2862 | |||
2863 | |||
2864 | /**************************************************************************** | ||
2865 | * PCIE_CFG :: HEADER_LOG_4 | ||
2866 | ***************************************************************************/ | ||
2867 | /* PCIE_CFG :: HEADER_LOG_4 :: HEADER_BYTE_12 [31:24] */ | ||
2868 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_12_MASK 0xff000000 | ||
2869 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_12_ALIGN 0 | ||
2870 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_12_BITS 8 | ||
2871 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_12_SHIFT 24 | ||
2872 | |||
2873 | /* PCIE_CFG :: HEADER_LOG_4 :: HEADER_BYTE_13 [23:16] */ | ||
2874 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_13_MASK 0x00ff0000 | ||
2875 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_13_ALIGN 0 | ||
2876 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_13_BITS 8 | ||
2877 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_13_SHIFT 16 | ||
2878 | |||
2879 | /* PCIE_CFG :: HEADER_LOG_4 :: HEADER_BYTE_14 [15:08] */ | ||
2880 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_14_MASK 0x0000ff00 | ||
2881 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_14_ALIGN 0 | ||
2882 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_14_BITS 8 | ||
2883 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_14_SHIFT 8 | ||
2884 | |||
2885 | /* PCIE_CFG :: HEADER_LOG_4 :: HEADER_BYTE_15 [07:00] */ | ||
2886 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_15_MASK 0x000000ff | ||
2887 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_15_ALIGN 0 | ||
2888 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_15_BITS 8 | ||
2889 | #define PCIE_CFG_HEADER_LOG_4_HEADER_BYTE_15_SHIFT 0 | ||
2890 | |||
2891 | |||
2892 | /**************************************************************************** | ||
2893 | * PCIE_CFG :: VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER | ||
2894 | ***************************************************************************/ | ||
2895 | /* PCIE_CFG :: VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER :: NEXT_CAPABILITY_OFFSET [31:20] */ | ||
2896 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_MASK 0xfff00000 | ||
2897 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_ALIGN 0 | ||
2898 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_BITS 12 | ||
2899 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_SHIFT 20 | ||
2900 | |||
2901 | /* PCIE_CFG :: VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER :: CAPABILITY_VERSION [19:16] */ | ||
2902 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_MASK 0x000f0000 | ||
2903 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_ALIGN 0 | ||
2904 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_BITS 4 | ||
2905 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_SHIFT 16 | ||
2906 | |||
2907 | /* PCIE_CFG :: VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER :: PCIE_EXTENDED_CAPABILITY_ID [15:00] */ | ||
2908 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_MASK 0x0000ffff | ||
2909 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_ALIGN 0 | ||
2910 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_BITS 16 | ||
2911 | #define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_SHIFT 0 | ||
2912 | |||
2913 | |||
2914 | /**************************************************************************** | ||
2915 | * PCIE_CFG :: PORT_VC_CAPABILITY | ||
2916 | ***************************************************************************/ | ||
2917 | /* PCIE_CFG :: PORT_VC_CAPABILITY :: RESERVED_0 [31:12] */ | ||
2918 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_0_MASK 0xfffff000 | ||
2919 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_0_ALIGN 0 | ||
2920 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_0_BITS 20 | ||
2921 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_0_SHIFT 12 | ||
2922 | |||
2923 | /* PCIE_CFG :: PORT_VC_CAPABILITY :: PORT_ARBITRATION_TABLE_ENTRY_SIZE [11:10] */ | ||
2924 | #define PCIE_CFG_PORT_VC_CAPABILITY_PORT_ARBITRATION_TABLE_ENTRY_SIZE_MASK 0x00000c00 | ||
2925 | #define PCIE_CFG_PORT_VC_CAPABILITY_PORT_ARBITRATION_TABLE_ENTRY_SIZE_ALIGN 0 | ||
2926 | #define PCIE_CFG_PORT_VC_CAPABILITY_PORT_ARBITRATION_TABLE_ENTRY_SIZE_BITS 2 | ||
2927 | #define PCIE_CFG_PORT_VC_CAPABILITY_PORT_ARBITRATION_TABLE_ENTRY_SIZE_SHIFT 10 | ||
2928 | |||
2929 | /* PCIE_CFG :: PORT_VC_CAPABILITY :: REFERENCE_CLOCK [09:08] */ | ||
2930 | #define PCIE_CFG_PORT_VC_CAPABILITY_REFERENCE_CLOCK_MASK 0x00000300 | ||
2931 | #define PCIE_CFG_PORT_VC_CAPABILITY_REFERENCE_CLOCK_ALIGN 0 | ||
2932 | #define PCIE_CFG_PORT_VC_CAPABILITY_REFERENCE_CLOCK_BITS 2 | ||
2933 | #define PCIE_CFG_PORT_VC_CAPABILITY_REFERENCE_CLOCK_SHIFT 8 | ||
2934 | |||
2935 | /* PCIE_CFG :: PORT_VC_CAPABILITY :: RESERVED_1 [07:07] */ | ||
2936 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_1_MASK 0x00000080 | ||
2937 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_1_ALIGN 0 | ||
2938 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_1_BITS 1 | ||
2939 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_1_SHIFT 7 | ||
2940 | |||
2941 | /* PCIE_CFG :: PORT_VC_CAPABILITY :: LOW_PRIORITY_EXTENDED_VC_COUNT [06:04] */ | ||
2942 | #define PCIE_CFG_PORT_VC_CAPABILITY_LOW_PRIORITY_EXTENDED_VC_COUNT_MASK 0x00000070 | ||
2943 | #define PCIE_CFG_PORT_VC_CAPABILITY_LOW_PRIORITY_EXTENDED_VC_COUNT_ALIGN 0 | ||
2944 | #define PCIE_CFG_PORT_VC_CAPABILITY_LOW_PRIORITY_EXTENDED_VC_COUNT_BITS 3 | ||
2945 | #define PCIE_CFG_PORT_VC_CAPABILITY_LOW_PRIORITY_EXTENDED_VC_COUNT_SHIFT 4 | ||
2946 | |||
2947 | /* PCIE_CFG :: PORT_VC_CAPABILITY :: RESERVED_2 [03:03] */ | ||
2948 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_2_MASK 0x00000008 | ||
2949 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_2_ALIGN 0 | ||
2950 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_2_BITS 1 | ||
2951 | #define PCIE_CFG_PORT_VC_CAPABILITY_RESERVED_2_SHIFT 3 | ||
2952 | |||
2953 | /* PCIE_CFG :: PORT_VC_CAPABILITY :: EXTENDED_VC_COUNT [02:00] */ | ||
2954 | #define PCIE_CFG_PORT_VC_CAPABILITY_EXTENDED_VC_COUNT_MASK 0x00000007 | ||
2955 | #define PCIE_CFG_PORT_VC_CAPABILITY_EXTENDED_VC_COUNT_ALIGN 0 | ||
2956 | #define PCIE_CFG_PORT_VC_CAPABILITY_EXTENDED_VC_COUNT_BITS 3 | ||
2957 | #define PCIE_CFG_PORT_VC_CAPABILITY_EXTENDED_VC_COUNT_SHIFT 0 | ||
2958 | |||
2959 | |||
2960 | /**************************************************************************** | ||
2961 | * PCIE_CFG :: PORT_VC_CAPABILITY_2 | ||
2962 | ***************************************************************************/ | ||
2963 | /* PCIE_CFG :: PORT_VC_CAPABILITY_2 :: VC_ARBITRATION_TABLE_OFFSET [31:24] */ | ||
2964 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_TABLE_OFFSET_MASK 0xff000000 | ||
2965 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_TABLE_OFFSET_ALIGN 0 | ||
2966 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_TABLE_OFFSET_BITS 8 | ||
2967 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_TABLE_OFFSET_SHIFT 24 | ||
2968 | |||
2969 | /* PCIE_CFG :: PORT_VC_CAPABILITY_2 :: RESERVED_0 [23:08] */ | ||
2970 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_RESERVED_0_MASK 0x00ffff00 | ||
2971 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_RESERVED_0_ALIGN 0 | ||
2972 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_RESERVED_0_BITS 16 | ||
2973 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_RESERVED_0_SHIFT 8 | ||
2974 | |||
2975 | /* PCIE_CFG :: PORT_VC_CAPABILITY_2 :: VC_ARBITRATION_CAPABILITY [07:00] */ | ||
2976 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_CAPABILITY_MASK 0x000000ff | ||
2977 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_CAPABILITY_ALIGN 0 | ||
2978 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_CAPABILITY_BITS 8 | ||
2979 | #define PCIE_CFG_PORT_VC_CAPABILITY_2_VC_ARBITRATION_CAPABILITY_SHIFT 0 | ||
2980 | |||
2981 | |||
2982 | /**************************************************************************** | ||
2983 | * PCIE_CFG :: PORT_VC_STATUS_CONTROL | ||
2984 | ***************************************************************************/ | ||
2985 | /* PCIE_CFG :: PORT_VC_STATUS_CONTROL :: RESERVED_0 [31:17] */ | ||
2986 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_0_MASK 0xfffe0000 | ||
2987 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_0_ALIGN 0 | ||
2988 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_0_BITS 15 | ||
2989 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_0_SHIFT 17 | ||
2990 | |||
2991 | /* PCIE_CFG :: PORT_VC_STATUS_CONTROL :: VC_ARBITRATION_TABLE_STATUS [16:16] */ | ||
2992 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_TABLE_STATUS_MASK 0x00010000 | ||
2993 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_TABLE_STATUS_ALIGN 0 | ||
2994 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_TABLE_STATUS_BITS 1 | ||
2995 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_TABLE_STATUS_SHIFT 16 | ||
2996 | |||
2997 | /* PCIE_CFG :: PORT_VC_STATUS_CONTROL :: RESERVED_1 [15:04] */ | ||
2998 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_1_MASK 0x0000fff0 | ||
2999 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_1_ALIGN 0 | ||
3000 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_1_BITS 12 | ||
3001 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_RESERVED_1_SHIFT 4 | ||
3002 | |||
3003 | /* PCIE_CFG :: PORT_VC_STATUS_CONTROL :: VC_ARBITRATION_SELECT [03:01] */ | ||
3004 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_SELECT_MASK 0x0000000e | ||
3005 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_SELECT_ALIGN 0 | ||
3006 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_SELECT_BITS 3 | ||
3007 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_VC_ARBITRATION_SELECT_SHIFT 1 | ||
3008 | |||
3009 | /* PCIE_CFG :: PORT_VC_STATUS_CONTROL :: LOAD_VC_ARBITRATION_TABLE [00:00] */ | ||
3010 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_LOAD_VC_ARBITRATION_TABLE_MASK 0x00000001 | ||
3011 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_LOAD_VC_ARBITRATION_TABLE_ALIGN 0 | ||
3012 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_LOAD_VC_ARBITRATION_TABLE_BITS 1 | ||
3013 | #define PCIE_CFG_PORT_VC_STATUS_CONTROL_LOAD_VC_ARBITRATION_TABLE_SHIFT 0 | ||
3014 | |||
3015 | |||
3016 | /**************************************************************************** | ||
3017 | * PCIE_CFG :: VC_RESOURCE_CAPABILITY | ||
3018 | ***************************************************************************/ | ||
3019 | /* PCIE_CFG :: VC_RESOURCE_CAPABILITY :: PORT_ARBITRATION_TABLE_OFFSET [31:24] */ | ||
3020 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_TABLE_OFFSET_MASK 0xff000000 | ||
3021 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_TABLE_OFFSET_ALIGN 0 | ||
3022 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_TABLE_OFFSET_BITS 8 | ||
3023 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_TABLE_OFFSET_SHIFT 24 | ||
3024 | |||
3025 | /* PCIE_CFG :: VC_RESOURCE_CAPABILITY :: RESERVED_0 [23:23] */ | ||
3026 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_0_MASK 0x00800000 | ||
3027 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_0_ALIGN 0 | ||
3028 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_0_BITS 1 | ||
3029 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_0_SHIFT 23 | ||
3030 | |||
3031 | /* PCIE_CFG :: VC_RESOURCE_CAPABILITY :: MAXIMUM_TIME_SLOTS [22:16] */ | ||
3032 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_MAXIMUM_TIME_SLOTS_MASK 0x007f0000 | ||
3033 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_MAXIMUM_TIME_SLOTS_ALIGN 0 | ||
3034 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_MAXIMUM_TIME_SLOTS_BITS 7 | ||
3035 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_MAXIMUM_TIME_SLOTS_SHIFT 16 | ||
3036 | |||
3037 | /* PCIE_CFG :: VC_RESOURCE_CAPABILITY :: REJECT_SNOOP_TRANSACTIONS [15:15] */ | ||
3038 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_REJECT_SNOOP_TRANSACTIONS_MASK 0x00008000 | ||
3039 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_REJECT_SNOOP_TRANSACTIONS_ALIGN 0 | ||
3040 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_REJECT_SNOOP_TRANSACTIONS_BITS 1 | ||
3041 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_REJECT_SNOOP_TRANSACTIONS_SHIFT 15 | ||
3042 | |||
3043 | /* PCIE_CFG :: VC_RESOURCE_CAPABILITY :: ADVANCED_PACKET_SWITCHING [14:14] */ | ||
3044 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_ADVANCED_PACKET_SWITCHING_MASK 0x00004000 | ||
3045 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_ADVANCED_PACKET_SWITCHING_ALIGN 0 | ||
3046 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_ADVANCED_PACKET_SWITCHING_BITS 1 | ||
3047 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_ADVANCED_PACKET_SWITCHING_SHIFT 14 | ||
3048 | |||
3049 | /* PCIE_CFG :: VC_RESOURCE_CAPABILITY :: RESERVED_1 [13:08] */ | ||
3050 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_1_MASK 0x00003f00 | ||
3051 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_1_ALIGN 0 | ||
3052 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_1_BITS 6 | ||
3053 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_RESERVED_1_SHIFT 8 | ||
3054 | |||
3055 | /* PCIE_CFG :: VC_RESOURCE_CAPABILITY :: PORT_ARBITRATION_CAPABILITY [07:00] */ | ||
3056 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_CAPABILITY_MASK 0x000000ff | ||
3057 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_CAPABILITY_ALIGN 0 | ||
3058 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_CAPABILITY_BITS 8 | ||
3059 | #define PCIE_CFG_VC_RESOURCE_CAPABILITY_PORT_ARBITRATION_CAPABILITY_SHIFT 0 | ||
3060 | |||
3061 | |||
3062 | /**************************************************************************** | ||
3063 | * PCIE_CFG :: VC_RESOURCE_CONTROL | ||
3064 | ***************************************************************************/ | ||
3065 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: VC_ENABLE [31:31] */ | ||
3066 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ENABLE_MASK 0x80000000 | ||
3067 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ENABLE_ALIGN 0 | ||
3068 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ENABLE_BITS 1 | ||
3069 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ENABLE_SHIFT 31 | ||
3070 | |||
3071 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: RESERVED_0 [30:27] */ | ||
3072 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_0_MASK 0x78000000 | ||
3073 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_0_ALIGN 0 | ||
3074 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_0_BITS 4 | ||
3075 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_0_SHIFT 27 | ||
3076 | |||
3077 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: VC_ID [26:24] */ | ||
3078 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ID_MASK 0x07000000 | ||
3079 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ID_ALIGN 0 | ||
3080 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ID_BITS 3 | ||
3081 | #define PCIE_CFG_VC_RESOURCE_CONTROL_VC_ID_SHIFT 24 | ||
3082 | |||
3083 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: RESERVED_1 [23:20] */ | ||
3084 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_1_MASK 0x00f00000 | ||
3085 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_1_ALIGN 0 | ||
3086 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_1_BITS 4 | ||
3087 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_1_SHIFT 20 | ||
3088 | |||
3089 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: PORT_ARBITRATION_SELECT [19:17] */ | ||
3090 | #define PCIE_CFG_VC_RESOURCE_CONTROL_PORT_ARBITRATION_SELECT_MASK 0x000e0000 | ||
3091 | #define PCIE_CFG_VC_RESOURCE_CONTROL_PORT_ARBITRATION_SELECT_ALIGN 0 | ||
3092 | #define PCIE_CFG_VC_RESOURCE_CONTROL_PORT_ARBITRATION_SELECT_BITS 3 | ||
3093 | #define PCIE_CFG_VC_RESOURCE_CONTROL_PORT_ARBITRATION_SELECT_SHIFT 17 | ||
3094 | |||
3095 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: LOAD_PORT_ARBITRATION_TABLE [16:16] */ | ||
3096 | #define PCIE_CFG_VC_RESOURCE_CONTROL_LOAD_PORT_ARBITRATION_TABLE_MASK 0x00010000 | ||
3097 | #define PCIE_CFG_VC_RESOURCE_CONTROL_LOAD_PORT_ARBITRATION_TABLE_ALIGN 0 | ||
3098 | #define PCIE_CFG_VC_RESOURCE_CONTROL_LOAD_PORT_ARBITRATION_TABLE_BITS 1 | ||
3099 | #define PCIE_CFG_VC_RESOURCE_CONTROL_LOAD_PORT_ARBITRATION_TABLE_SHIFT 16 | ||
3100 | |||
3101 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: RESERVED_2 [15:08] */ | ||
3102 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_2_MASK 0x0000ff00 | ||
3103 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_2_ALIGN 0 | ||
3104 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_2_BITS 8 | ||
3105 | #define PCIE_CFG_VC_RESOURCE_CONTROL_RESERVED_2_SHIFT 8 | ||
3106 | |||
3107 | /* PCIE_CFG :: VC_RESOURCE_CONTROL :: TC_VC_MAP [07:00] */ | ||
3108 | #define PCIE_CFG_VC_RESOURCE_CONTROL_TC_VC_MAP_MASK 0x000000ff | ||
3109 | #define PCIE_CFG_VC_RESOURCE_CONTROL_TC_VC_MAP_ALIGN 0 | ||
3110 | #define PCIE_CFG_VC_RESOURCE_CONTROL_TC_VC_MAP_BITS 8 | ||
3111 | #define PCIE_CFG_VC_RESOURCE_CONTROL_TC_VC_MAP_SHIFT 0 | ||
3112 | |||
3113 | |||
3114 | /**************************************************************************** | ||
3115 | * PCIE_CFG :: VC_RESOURCE_STATUS | ||
3116 | ***************************************************************************/ | ||
3117 | /* PCIE_CFG :: VC_RESOURCE_STATUS :: RESERVED_0 [31:18] */ | ||
3118 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_0_MASK 0xfffc0000 | ||
3119 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_0_ALIGN 0 | ||
3120 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_0_BITS 14 | ||
3121 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_0_SHIFT 18 | ||
3122 | |||
3123 | /* PCIE_CFG :: VC_RESOURCE_STATUS :: VC_NEGOTIATION_PENDING [17:17] */ | ||
3124 | #define PCIE_CFG_VC_RESOURCE_STATUS_VC_NEGOTIATION_PENDING_MASK 0x00020000 | ||
3125 | #define PCIE_CFG_VC_RESOURCE_STATUS_VC_NEGOTIATION_PENDING_ALIGN 0 | ||
3126 | #define PCIE_CFG_VC_RESOURCE_STATUS_VC_NEGOTIATION_PENDING_BITS 1 | ||
3127 | #define PCIE_CFG_VC_RESOURCE_STATUS_VC_NEGOTIATION_PENDING_SHIFT 17 | ||
3128 | |||
3129 | /* PCIE_CFG :: VC_RESOURCE_STATUS :: PORT_ARBITRATION_TABLE_STATUS [16:16] */ | ||
3130 | #define PCIE_CFG_VC_RESOURCE_STATUS_PORT_ARBITRATION_TABLE_STATUS_MASK 0x00010000 | ||
3131 | #define PCIE_CFG_VC_RESOURCE_STATUS_PORT_ARBITRATION_TABLE_STATUS_ALIGN 0 | ||
3132 | #define PCIE_CFG_VC_RESOURCE_STATUS_PORT_ARBITRATION_TABLE_STATUS_BITS 1 | ||
3133 | #define PCIE_CFG_VC_RESOURCE_STATUS_PORT_ARBITRATION_TABLE_STATUS_SHIFT 16 | ||
3134 | |||
3135 | /* PCIE_CFG :: VC_RESOURCE_STATUS :: RESERVED_1 [15:00] */ | ||
3136 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_1_MASK 0x0000ffff | ||
3137 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_1_ALIGN 0 | ||
3138 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_1_BITS 16 | ||
3139 | #define PCIE_CFG_VC_RESOURCE_STATUS_RESERVED_1_SHIFT 0 | ||
3140 | |||
3141 | |||
3142 | /**************************************************************************** | ||
3143 | * PCIE_CFG :: DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER | ||
3144 | ***************************************************************************/ | ||
3145 | /* PCIE_CFG :: DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER :: NEXT_CAPABILITY_OFFSET [31:20] */ | ||
3146 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_MASK 0xfff00000 | ||
3147 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_ALIGN 0 | ||
3148 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_BITS 12 | ||
3149 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_SHIFT 20 | ||
3150 | |||
3151 | /* PCIE_CFG :: DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER :: CAPABILITY_VERSION [19:16] */ | ||
3152 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_MASK 0x000f0000 | ||
3153 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_ALIGN 0 | ||
3154 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_BITS 4 | ||
3155 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_SHIFT 16 | ||
3156 | |||
3157 | /* PCIE_CFG :: DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER :: PCIE_EXTENDED_CAPABILITY_ID [15:00] */ | ||
3158 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_MASK 0x0000ffff | ||
3159 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_ALIGN 0 | ||
3160 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_BITS 16 | ||
3161 | #define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_SHIFT 0 | ||
3162 | |||
3163 | |||
3164 | /**************************************************************************** | ||
3165 | * PCIE_CFG :: DEVICE_SERIAL_NO_LOWER_DW | ||
3166 | ***************************************************************************/ | ||
3167 | /* PCIE_CFG :: DEVICE_SERIAL_NO_LOWER_DW :: SERIAL_NO_LOWER [31:00] */ | ||
3168 | #define PCIE_CFG_DEVICE_SERIAL_NO_LOWER_DW_SERIAL_NO_LOWER_MASK 0xffffffff | ||
3169 | #define PCIE_CFG_DEVICE_SERIAL_NO_LOWER_DW_SERIAL_NO_LOWER_ALIGN 0 | ||
3170 | #define PCIE_CFG_DEVICE_SERIAL_NO_LOWER_DW_SERIAL_NO_LOWER_BITS 32 | ||
3171 | #define PCIE_CFG_DEVICE_SERIAL_NO_LOWER_DW_SERIAL_NO_LOWER_SHIFT 0 | ||
3172 | |||
3173 | |||
3174 | /**************************************************************************** | ||
3175 | * PCIE_CFG :: DEVICE_SERIAL_NO_UPPER_DW | ||
3176 | ***************************************************************************/ | ||
3177 | /* PCIE_CFG :: DEVICE_SERIAL_NO_UPPER_DW :: SERIAL_NO_UPPER [31:00] */ | ||
3178 | #define PCIE_CFG_DEVICE_SERIAL_NO_UPPER_DW_SERIAL_NO_UPPER_MASK 0xffffffff | ||
3179 | #define PCIE_CFG_DEVICE_SERIAL_NO_UPPER_DW_SERIAL_NO_UPPER_ALIGN 0 | ||
3180 | #define PCIE_CFG_DEVICE_SERIAL_NO_UPPER_DW_SERIAL_NO_UPPER_BITS 32 | ||
3181 | #define PCIE_CFG_DEVICE_SERIAL_NO_UPPER_DW_SERIAL_NO_UPPER_SHIFT 0 | ||
3182 | |||
3183 | |||
3184 | /**************************************************************************** | ||
3185 | * PCIE_CFG :: POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER | ||
3186 | ***************************************************************************/ | ||
3187 | /* PCIE_CFG :: POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER :: NEXT_CAPABILITY_OFFSET [31:20] */ | ||
3188 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_MASK 0xfff00000 | ||
3189 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_ALIGN 0 | ||
3190 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_BITS 12 | ||
3191 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_NEXT_CAPABILITY_OFFSET_SHIFT 20 | ||
3192 | |||
3193 | /* PCIE_CFG :: POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER :: CAPABILITY_VERSION [19:16] */ | ||
3194 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_MASK 0x000f0000 | ||
3195 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_ALIGN 0 | ||
3196 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_BITS 4 | ||
3197 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_CAPABILITY_VERSION_SHIFT 16 | ||
3198 | |||
3199 | /* PCIE_CFG :: POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER :: PCIE_EXTENDED_CAPABILITY_ID [15:00] */ | ||
3200 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_MASK 0x0000ffff | ||
3201 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_ALIGN 0 | ||
3202 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_BITS 16 | ||
3203 | #define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER_PCIE_EXTENDED_CAPABILITY_ID_SHIFT 0 | ||
3204 | |||
3205 | |||
3206 | /**************************************************************************** | ||
3207 | * PCIE_CFG :: POWER_BUDGETING_DATA_SELECT | ||
3208 | ***************************************************************************/ | ||
3209 | /* PCIE_CFG :: POWER_BUDGETING_DATA_SELECT :: RESERVED_0 [31:08] */ | ||
3210 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_RESERVED_0_MASK 0xffffff00 | ||
3211 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_RESERVED_0_ALIGN 0 | ||
3212 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_RESERVED_0_BITS 24 | ||
3213 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_RESERVED_0_SHIFT 8 | ||
3214 | |||
3215 | /* PCIE_CFG :: POWER_BUDGETING_DATA_SELECT :: DATA_SELECT [07:00] */ | ||
3216 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_DATA_SELECT_MASK 0x000000ff | ||
3217 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_DATA_SELECT_ALIGN 0 | ||
3218 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_DATA_SELECT_BITS 8 | ||
3219 | #define PCIE_CFG_POWER_BUDGETING_DATA_SELECT_DATA_SELECT_SHIFT 0 | ||
3220 | |||
3221 | |||
3222 | /**************************************************************************** | ||
3223 | * PCIE_CFG :: POWER_BUDGETING_DATA | ||
3224 | ***************************************************************************/ | ||
3225 | /* PCIE_CFG :: POWER_BUDGETING_DATA :: RESERVED_0 [31:21] */ | ||
3226 | #define PCIE_CFG_POWER_BUDGETING_DATA_RESERVED_0_MASK 0xffe00000 | ||
3227 | #define PCIE_CFG_POWER_BUDGETING_DATA_RESERVED_0_ALIGN 0 | ||
3228 | #define PCIE_CFG_POWER_BUDGETING_DATA_RESERVED_0_BITS 11 | ||
3229 | #define PCIE_CFG_POWER_BUDGETING_DATA_RESERVED_0_SHIFT 21 | ||
3230 | |||
3231 | /* PCIE_CFG :: POWER_BUDGETING_DATA :: POWER_RAIL [20:18] */ | ||
3232 | #define PCIE_CFG_POWER_BUDGETING_DATA_POWER_RAIL_MASK 0x001c0000 | ||
3233 | #define PCIE_CFG_POWER_BUDGETING_DATA_POWER_RAIL_ALIGN 0 | ||
3234 | #define PCIE_CFG_POWER_BUDGETING_DATA_POWER_RAIL_BITS 3 | ||
3235 | #define PCIE_CFG_POWER_BUDGETING_DATA_POWER_RAIL_SHIFT 18 | ||
3236 | |||
3237 | /* PCIE_CFG :: POWER_BUDGETING_DATA :: TYPE [17:15] */ | ||
3238 | #define PCIE_CFG_POWER_BUDGETING_DATA_TYPE_MASK 0x00038000 | ||
3239 | #define PCIE_CFG_POWER_BUDGETING_DATA_TYPE_ALIGN 0 | ||
3240 | #define PCIE_CFG_POWER_BUDGETING_DATA_TYPE_BITS 3 | ||
3241 | #define PCIE_CFG_POWER_BUDGETING_DATA_TYPE_SHIFT 15 | ||
3242 | |||
3243 | /* PCIE_CFG :: POWER_BUDGETING_DATA :: PM_STATE [14:13] */ | ||
3244 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_STATE_MASK 0x00006000 | ||
3245 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_STATE_ALIGN 0 | ||
3246 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_STATE_BITS 2 | ||
3247 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_STATE_SHIFT 13 | ||
3248 | |||
3249 | /* PCIE_CFG :: POWER_BUDGETING_DATA :: PM_SUB_STATE [12:10] */ | ||
3250 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_SUB_STATE_MASK 0x00001c00 | ||
3251 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_SUB_STATE_ALIGN 0 | ||
3252 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_SUB_STATE_BITS 3 | ||
3253 | #define PCIE_CFG_POWER_BUDGETING_DATA_PM_SUB_STATE_SHIFT 10 | ||
3254 | |||
3255 | /* PCIE_CFG :: POWER_BUDGETING_DATA :: DATA_SCALE [09:08] */ | ||
3256 | #define PCIE_CFG_POWER_BUDGETING_DATA_DATA_SCALE_MASK 0x00000300 | ||
3257 | #define PCIE_CFG_POWER_BUDGETING_DATA_DATA_SCALE_ALIGN 0 | ||
3258 | #define PCIE_CFG_POWER_BUDGETING_DATA_DATA_SCALE_BITS 2 | ||
3259 | #define PCIE_CFG_POWER_BUDGETING_DATA_DATA_SCALE_SHIFT 8 | ||
3260 | |||
3261 | /* PCIE_CFG :: POWER_BUDGETING_DATA :: BASE_POWER [07:00] */ | ||
3262 | #define PCIE_CFG_POWER_BUDGETING_DATA_BASE_POWER_MASK 0x000000ff | ||
3263 | #define PCIE_CFG_POWER_BUDGETING_DATA_BASE_POWER_ALIGN 0 | ||
3264 | #define PCIE_CFG_POWER_BUDGETING_DATA_BASE_POWER_BITS 8 | ||
3265 | #define PCIE_CFG_POWER_BUDGETING_DATA_BASE_POWER_SHIFT 0 | ||
3266 | |||
3267 | |||
3268 | /**************************************************************************** | ||
3269 | * PCIE_CFG :: POWER_BUDGETING_CAPABILITY | ||
3270 | ***************************************************************************/ | ||
3271 | /* PCIE_CFG :: POWER_BUDGETING_CAPABILITY :: RESERVED_0 [31:01] */ | ||
3272 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_RESERVED_0_MASK 0xfffffffe | ||
3273 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_RESERVED_0_ALIGN 0 | ||
3274 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_RESERVED_0_BITS 31 | ||
3275 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_RESERVED_0_SHIFT 1 | ||
3276 | |||
3277 | /* PCIE_CFG :: POWER_BUDGETING_CAPABILITY :: LOM_CONFIGURATION [00:00] */ | ||
3278 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_LOM_CONFIGURATION_MASK 0x00000001 | ||
3279 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_LOM_CONFIGURATION_ALIGN 0 | ||
3280 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_LOM_CONFIGURATION_BITS 1 | ||
3281 | #define PCIE_CFG_POWER_BUDGETING_CAPABILITY_LOM_CONFIGURATION_SHIFT 0 | ||
3282 | |||
3283 | |||
3284 | /**************************************************************************** | ||
3285 | * PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 | ||
3286 | ***************************************************************************/ | ||
3287 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: POWER_RAIL_2 [31:29] */ | ||
3288 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_2_MASK 0xe0000000 | ||
3289 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_2_ALIGN 0 | ||
3290 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_2_BITS 3 | ||
3291 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_2_SHIFT 29 | ||
3292 | |||
3293 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: TYPE_2 [28:26] */ | ||
3294 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_2_MASK 0x1c000000 | ||
3295 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_2_ALIGN 0 | ||
3296 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_2_BITS 3 | ||
3297 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_2_SHIFT 26 | ||
3298 | |||
3299 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: PM_STATE_2 [25:24] */ | ||
3300 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_2_MASK 0x03000000 | ||
3301 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_2_ALIGN 0 | ||
3302 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_2_BITS 2 | ||
3303 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_2_SHIFT 24 | ||
3304 | |||
3305 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: BASE_POWER_2 [23:16] */ | ||
3306 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_2_MASK 0x00ff0000 | ||
3307 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_2_ALIGN 0 | ||
3308 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_2_BITS 8 | ||
3309 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_2_SHIFT 16 | ||
3310 | |||
3311 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: POWER_RAIL_1 [15:13] */ | ||
3312 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_1_MASK 0x0000e000 | ||
3313 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_1_ALIGN 0 | ||
3314 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_1_BITS 3 | ||
3315 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_POWER_RAIL_1_SHIFT 13 | ||
3316 | |||
3317 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: TYPE_1 [12:10] */ | ||
3318 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_1_MASK 0x00001c00 | ||
3319 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_1_ALIGN 0 | ||
3320 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_1_BITS 3 | ||
3321 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_TYPE_1_SHIFT 10 | ||
3322 | |||
3323 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: PM_STATE_1 [09:08] */ | ||
3324 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_1_MASK 0x00000300 | ||
3325 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_1_ALIGN 0 | ||
3326 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_1_BITS 2 | ||
3327 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_PM_STATE_1_SHIFT 8 | ||
3328 | |||
3329 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_2_1 :: BASE_POWER_1 [07:00] */ | ||
3330 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_1_MASK 0x000000ff | ||
3331 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_1_ALIGN 0 | ||
3332 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_1_BITS 8 | ||
3333 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1_BASE_POWER_1_SHIFT 0 | ||
3334 | |||
3335 | |||
3336 | /**************************************************************************** | ||
3337 | * PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 | ||
3338 | ***************************************************************************/ | ||
3339 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: POWER_RAIL_4 [31:29] */ | ||
3340 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_4_MASK 0xe0000000 | ||
3341 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_4_ALIGN 0 | ||
3342 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_4_BITS 3 | ||
3343 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_4_SHIFT 29 | ||
3344 | |||
3345 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: TYPE_4 [28:26] */ | ||
3346 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_4_MASK 0x1c000000 | ||
3347 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_4_ALIGN 0 | ||
3348 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_4_BITS 3 | ||
3349 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_4_SHIFT 26 | ||
3350 | |||
3351 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: PM_STATE_4 [25:24] */ | ||
3352 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_4_MASK 0x03000000 | ||
3353 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_4_ALIGN 0 | ||
3354 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_4_BITS 2 | ||
3355 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_4_SHIFT 24 | ||
3356 | |||
3357 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: BASE_POWER_4 [23:16] */ | ||
3358 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_4_MASK 0x00ff0000 | ||
3359 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_4_ALIGN 0 | ||
3360 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_4_BITS 8 | ||
3361 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_4_SHIFT 16 | ||
3362 | |||
3363 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: POWER_RAIL_3 [15:13] */ | ||
3364 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_3_MASK 0x0000e000 | ||
3365 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_3_ALIGN 0 | ||
3366 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_3_BITS 3 | ||
3367 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_POWER_RAIL_3_SHIFT 13 | ||
3368 | |||
3369 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: TYPE_3 [12:10] */ | ||
3370 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_3_MASK 0x00001c00 | ||
3371 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_3_ALIGN 0 | ||
3372 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_3_BITS 3 | ||
3373 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_TYPE_3_SHIFT 10 | ||
3374 | |||
3375 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: PM_STATE_3 [09:08] */ | ||
3376 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_3_MASK 0x00000300 | ||
3377 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_3_ALIGN 0 | ||
3378 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_3_BITS 2 | ||
3379 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_PM_STATE_3_SHIFT 8 | ||
3380 | |||
3381 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_4_3 :: BASE_POWER_3 [07:00] */ | ||
3382 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_3_MASK 0x000000ff | ||
3383 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_3_ALIGN 0 | ||
3384 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_3_BITS 8 | ||
3385 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3_BASE_POWER_3_SHIFT 0 | ||
3386 | |||
3387 | |||
3388 | /**************************************************************************** | ||
3389 | * PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 | ||
3390 | ***************************************************************************/ | ||
3391 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: POWER_RAIL_6 [31:29] */ | ||
3392 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_6_MASK 0xe0000000 | ||
3393 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_6_ALIGN 0 | ||
3394 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_6_BITS 3 | ||
3395 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_6_SHIFT 29 | ||
3396 | |||
3397 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: TYPE_6 [28:26] */ | ||
3398 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_6_MASK 0x1c000000 | ||
3399 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_6_ALIGN 0 | ||
3400 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_6_BITS 3 | ||
3401 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_6_SHIFT 26 | ||
3402 | |||
3403 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: PM_STATE_6 [25:24] */ | ||
3404 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_6_MASK 0x03000000 | ||
3405 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_6_ALIGN 0 | ||
3406 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_6_BITS 2 | ||
3407 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_6_SHIFT 24 | ||
3408 | |||
3409 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: BASE_POWER_6 [23:16] */ | ||
3410 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_6_MASK 0x00ff0000 | ||
3411 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_6_ALIGN 0 | ||
3412 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_6_BITS 8 | ||
3413 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_6_SHIFT 16 | ||
3414 | |||
3415 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: POWER_RAIL_5 [15:13] */ | ||
3416 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_5_MASK 0x0000e000 | ||
3417 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_5_ALIGN 0 | ||
3418 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_5_BITS 3 | ||
3419 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_POWER_RAIL_5_SHIFT 13 | ||
3420 | |||
3421 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: TYPE_5 [12:10] */ | ||
3422 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_5_MASK 0x00001c00 | ||
3423 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_5_ALIGN 0 | ||
3424 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_5_BITS 3 | ||
3425 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_TYPE_5_SHIFT 10 | ||
3426 | |||
3427 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: PM_STATE_5 [09:08] */ | ||
3428 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_5_MASK 0x00000300 | ||
3429 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_5_ALIGN 0 | ||
3430 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_5_BITS 2 | ||
3431 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_PM_STATE_5_SHIFT 8 | ||
3432 | |||
3433 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_6_5 :: BASE_POWER_5 [07:00] */ | ||
3434 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_5_MASK 0x000000ff | ||
3435 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_5_ALIGN 0 | ||
3436 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_5_BITS 8 | ||
3437 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5_BASE_POWER_5_SHIFT 0 | ||
3438 | |||
3439 | |||
3440 | /**************************************************************************** | ||
3441 | * PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 | ||
3442 | ***************************************************************************/ | ||
3443 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: POWER_RAIL_8 [31:29] */ | ||
3444 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_8_MASK 0xe0000000 | ||
3445 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_8_ALIGN 0 | ||
3446 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_8_BITS 3 | ||
3447 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_8_SHIFT 29 | ||
3448 | |||
3449 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: TYPE_8 [28:26] */ | ||
3450 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_8_MASK 0x1c000000 | ||
3451 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_8_ALIGN 0 | ||
3452 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_8_BITS 3 | ||
3453 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_8_SHIFT 26 | ||
3454 | |||
3455 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: PM_STATE_8 [25:24] */ | ||
3456 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_8_MASK 0x03000000 | ||
3457 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_8_ALIGN 0 | ||
3458 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_8_BITS 2 | ||
3459 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_8_SHIFT 24 | ||
3460 | |||
3461 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: BASE_POWER_8 [23:16] */ | ||
3462 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_8_MASK 0x00ff0000 | ||
3463 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_8_ALIGN 0 | ||
3464 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_8_BITS 8 | ||
3465 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_8_SHIFT 16 | ||
3466 | |||
3467 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: POWER_RAIL_7 [15:13] */ | ||
3468 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_7_MASK 0x0000e000 | ||
3469 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_7_ALIGN 0 | ||
3470 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_7_BITS 3 | ||
3471 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_POWER_RAIL_7_SHIFT 13 | ||
3472 | |||
3473 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: TYPE_7 [12:10] */ | ||
3474 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_7_MASK 0x00001c00 | ||
3475 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_7_ALIGN 0 | ||
3476 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_7_BITS 3 | ||
3477 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_TYPE_7_SHIFT 10 | ||
3478 | |||
3479 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: PM_STATE_7 [09:08] */ | ||
3480 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_7_MASK 0x00000300 | ||
3481 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_7_ALIGN 0 | ||
3482 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_7_BITS 2 | ||
3483 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_PM_STATE_7_SHIFT 8 | ||
3484 | |||
3485 | /* PCIE_CFG :: FIRMWARE_POWER_BUDGETING_8_7 :: BASE_POWER_7 [07:00] */ | ||
3486 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_7_MASK 0x000000ff | ||
3487 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_7_ALIGN 0 | ||
3488 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_7_BITS 8 | ||
3489 | #define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7_BASE_POWER_7_SHIFT 0 | ||
3490 | |||
3491 | |||
3492 | /**************************************************************************** | ||
3493 | * PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING | ||
3494 | ***************************************************************************/ | ||
3495 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: UNUSED_0 [31:07] */ | ||
3496 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNUSED_0_MASK 0xffffff80 | ||
3497 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNUSED_0_ALIGN 0 | ||
3498 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNUSED_0_BITS 25 | ||
3499 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNUSED_0_SHIFT 7 | ||
3500 | |||
3501 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: D3HOT_MEMORY_READ_ADVISORY_NON_FATAL [06:06] */ | ||
3502 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_D3HOT_MEMORY_READ_ADVISORY_NON_FATAL_MASK 0x00000040 | ||
3503 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_D3HOT_MEMORY_READ_ADVISORY_NON_FATAL_ALIGN 0 | ||
3504 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_D3HOT_MEMORY_READ_ADVISORY_NON_FATAL_BITS 1 | ||
3505 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_D3HOT_MEMORY_READ_ADVISORY_NON_FATAL_SHIFT 6 | ||
3506 | |||
3507 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: RETRY_POISON_ENABLE [05:05] */ | ||
3508 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_RETRY_POISON_ENABLE_MASK 0x00000020 | ||
3509 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_RETRY_POISON_ENABLE_ALIGN 0 | ||
3510 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_RETRY_POISON_ENABLE_BITS 1 | ||
3511 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_RETRY_POISON_ENABLE_SHIFT 5 | ||
3512 | |||
3513 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: POISON_ADVISORY_NON_FATAL_ENABLE [04:04] */ | ||
3514 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_POISON_ADVISORY_NON_FATAL_ENABLE_MASK 0x00000010 | ||
3515 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_POISON_ADVISORY_NON_FATAL_ENABLE_ALIGN 0 | ||
3516 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_POISON_ADVISORY_NON_FATAL_ENABLE_BITS 1 | ||
3517 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_POISON_ADVISORY_NON_FATAL_ENABLE_SHIFT 4 | ||
3518 | |||
3519 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: UNEXPECTED_ADVISORY_NON_FATAL_ENABLE [03:03] */ | ||
3520 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNEXPECTED_ADVISORY_NON_FATAL_ENABLE_MASK 0x00000008 | ||
3521 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNEXPECTED_ADVISORY_NON_FATAL_ENABLE_ALIGN 0 | ||
3522 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNEXPECTED_ADVISORY_NON_FATAL_ENABLE_BITS 1 | ||
3523 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_UNEXPECTED_ADVISORY_NON_FATAL_ENABLE_SHIFT 3 | ||
3524 | |||
3525 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: NON_POSTED_CFG_ADVISORY_NON_FATAL_ENABLE [02:02] */ | ||
3526 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NON_POSTED_CFG_ADVISORY_NON_FATAL_ENABLE_MASK 0x00000004 | ||
3527 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NON_POSTED_CFG_ADVISORY_NON_FATAL_ENABLE_ALIGN 0 | ||
3528 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NON_POSTED_CFG_ADVISORY_NON_FATAL_ENABLE_BITS 1 | ||
3529 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NON_POSTED_CFG_ADVISORY_NON_FATAL_ENABLE_SHIFT 2 | ||
3530 | |||
3531 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: NP_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE [01:01] */ | ||
3532 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NP_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_MASK 0x00000002 | ||
3533 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NP_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_ALIGN 0 | ||
3534 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NP_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_BITS 1 | ||
3535 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_NP_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_SHIFT 1 | ||
3536 | |||
3537 | /* PCIE_CFG :: PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING :: COMPLETION_ABORT_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE [00:00] */ | ||
3538 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_COMPLETION_ABORT_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_MASK 0x00000001 | ||
3539 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_COMPLETION_ABORT_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_ALIGN 0 | ||
3540 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_COMPLETION_ABORT_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_BITS 1 | ||
3541 | #define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING_COMPLETION_ABORT_MEMORY_READ_ADVISORY_NON_FATAL_ENABLE_SHIFT 0 | ||
3542 | |||
3543 | |||
3544 | /**************************************************************************** | ||
3545 | * BCM70012_TGT_TOP_PCIE_TL | ||
3546 | ***************************************************************************/ | ||
3547 | /**************************************************************************** | ||
3548 | * PCIE_TL :: TL_CONTROL | ||
3549 | ***************************************************************************/ | ||
3550 | /* PCIE_TL :: TL_CONTROL :: RESERVED_0 [31:31] */ | ||
3551 | #define PCIE_TL_TL_CONTROL_RESERVED_0_MASK 0x80000000 | ||
3552 | #define PCIE_TL_TL_CONTROL_RESERVED_0_ALIGN 0 | ||
3553 | #define PCIE_TL_TL_CONTROL_RESERVED_0_BITS 1 | ||
3554 | #define PCIE_TL_TL_CONTROL_RESERVED_0_SHIFT 31 | ||
3555 | |||
3556 | /* PCIE_TL :: TL_CONTROL :: CQ14298_FIX_ENA_N [30:30] */ | ||
3557 | #define PCIE_TL_TL_CONTROL_CQ14298_FIX_ENA_N_MASK 0x40000000 | ||
3558 | #define PCIE_TL_TL_CONTROL_CQ14298_FIX_ENA_N_ALIGN 0 | ||
3559 | #define PCIE_TL_TL_CONTROL_CQ14298_FIX_ENA_N_BITS 1 | ||
3560 | #define PCIE_TL_TL_CONTROL_CQ14298_FIX_ENA_N_SHIFT 30 | ||
3561 | |||
3562 | /* PCIE_TL :: TL_CONTROL :: RESERVED_1 [29:29] */ | ||
3563 | #define PCIE_TL_TL_CONTROL_RESERVED_1_MASK 0x20000000 | ||
3564 | #define PCIE_TL_TL_CONTROL_RESERVED_1_ALIGN 0 | ||
3565 | #define PCIE_TL_TL_CONTROL_RESERVED_1_BITS 1 | ||
3566 | #define PCIE_TL_TL_CONTROL_RESERVED_1_SHIFT 29 | ||
3567 | |||
3568 | /* PCIE_TL :: TL_CONTROL :: INTA_WAKEUP_LINK_CLKREQ_DA [28:28] */ | ||
3569 | #define PCIE_TL_TL_CONTROL_INTA_WAKEUP_LINK_CLKREQ_DA_MASK 0x10000000 | ||
3570 | #define PCIE_TL_TL_CONTROL_INTA_WAKEUP_LINK_CLKREQ_DA_ALIGN 0 | ||
3571 | #define PCIE_TL_TL_CONTROL_INTA_WAKEUP_LINK_CLKREQ_DA_BITS 1 | ||
3572 | #define PCIE_TL_TL_CONTROL_INTA_WAKEUP_LINK_CLKREQ_DA_SHIFT 28 | ||
3573 | |||
3574 | /* PCIE_TL :: TL_CONTROL :: RESERVED_2 [27:27] */ | ||
3575 | #define PCIE_TL_TL_CONTROL_RESERVED_2_MASK 0x08000000 | ||
3576 | #define PCIE_TL_TL_CONTROL_RESERVED_2_ALIGN 0 | ||
3577 | #define PCIE_TL_TL_CONTROL_RESERVED_2_BITS 1 | ||
3578 | #define PCIE_TL_TL_CONTROL_RESERVED_2_SHIFT 27 | ||
3579 | |||
3580 | /* PCIE_TL :: TL_CONTROL :: CQ9583_TYPE_1_VENDOR_DEFINED_MESSAGE_FIX [26:26] */ | ||
3581 | #define PCIE_TL_TL_CONTROL_CQ9583_TYPE_1_VENDOR_DEFINED_MESSAGE_FIX_MASK 0x04000000 | ||
3582 | #define PCIE_TL_TL_CONTROL_CQ9583_TYPE_1_VENDOR_DEFINED_MESSAGE_FIX_ALIGN 0 | ||
3583 | #define PCIE_TL_TL_CONTROL_CQ9583_TYPE_1_VENDOR_DEFINED_MESSAGE_FIX_BITS 1 | ||
3584 | #define PCIE_TL_TL_CONTROL_CQ9583_TYPE_1_VENDOR_DEFINED_MESSAGE_FIX_SHIFT 26 | ||
3585 | |||
3586 | /* PCIE_TL :: TL_CONTROL :: RESERVED_3 [25:25] */ | ||
3587 | #define PCIE_TL_TL_CONTROL_RESERVED_3_MASK 0x02000000 | ||
3588 | #define PCIE_TL_TL_CONTROL_RESERVED_3_ALIGN 0 | ||
3589 | #define PCIE_TL_TL_CONTROL_RESERVED_3_BITS 1 | ||
3590 | #define PCIE_TL_TL_CONTROL_RESERVED_3_SHIFT 25 | ||
3591 | |||
3592 | /* PCIE_TL :: TL_CONTROL :: RESERVED_4 [24:24] */ | ||
3593 | #define PCIE_TL_TL_CONTROL_RESERVED_4_MASK 0x01000000 | ||
3594 | #define PCIE_TL_TL_CONTROL_RESERVED_4_ALIGN 0 | ||
3595 | #define PCIE_TL_TL_CONTROL_RESERVED_4_BITS 1 | ||
3596 | #define PCIE_TL_TL_CONTROL_RESERVED_4_SHIFT 24 | ||
3597 | |||
3598 | /* PCIE_TL :: TL_CONTROL :: RESERVED_5 [23:23] */ | ||
3599 | #define PCIE_TL_TL_CONTROL_RESERVED_5_MASK 0x00800000 | ||
3600 | #define PCIE_TL_TL_CONTROL_RESERVED_5_ALIGN 0 | ||
3601 | #define PCIE_TL_TL_CONTROL_RESERVED_5_BITS 1 | ||
3602 | #define PCIE_TL_TL_CONTROL_RESERVED_5_SHIFT 23 | ||
3603 | |||
3604 | /* PCIE_TL :: TL_CONTROL :: CRC_SWAP [22:22] */ | ||
3605 | #define PCIE_TL_TL_CONTROL_CRC_SWAP_MASK 0x00400000 | ||
3606 | #define PCIE_TL_TL_CONTROL_CRC_SWAP_ALIGN 0 | ||
3607 | #define PCIE_TL_TL_CONTROL_CRC_SWAP_BITS 1 | ||
3608 | #define PCIE_TL_TL_CONTROL_CRC_SWAP_SHIFT 22 | ||
3609 | |||
3610 | /* PCIE_TL :: TL_CONTROL :: SLV_CMP_DIS_CA_ERROR [21:21] */ | ||
3611 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_CA_ERROR_MASK 0x00200000 | ||
3612 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_CA_ERROR_ALIGN 0 | ||
3613 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_CA_ERROR_BITS 1 | ||
3614 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_CA_ERROR_SHIFT 21 | ||
3615 | |||
3616 | /* PCIE_TL :: TL_CONTROL :: SLV_CMP_DIS_UR_ERROR [20:20] */ | ||
3617 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_UR_ERROR_MASK 0x00100000 | ||
3618 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_UR_ERROR_ALIGN 0 | ||
3619 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_UR_ERROR_BITS 1 | ||
3620 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_UR_ERROR_SHIFT 20 | ||
3621 | |||
3622 | /* PCIE_TL :: TL_CONTROL :: SLV_CMP_DIS_RSV_ERROR [19:19] */ | ||
3623 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_RSV_ERROR_MASK 0x00080000 | ||
3624 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_RSV_ERROR_ALIGN 0 | ||
3625 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_RSV_ERROR_BITS 1 | ||
3626 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_RSV_ERROR_SHIFT 19 | ||
3627 | |||
3628 | /* PCIE_TL :: TL_CONTROL :: RESERVED_6 [18:18] */ | ||
3629 | #define PCIE_TL_TL_CONTROL_RESERVED_6_MASK 0x00040000 | ||
3630 | #define PCIE_TL_TL_CONTROL_RESERVED_6_ALIGN 0 | ||
3631 | #define PCIE_TL_TL_CONTROL_RESERVED_6_BITS 1 | ||
3632 | #define PCIE_TL_TL_CONTROL_RESERVED_6_SHIFT 18 | ||
3633 | |||
3634 | /* PCIE_TL :: TL_CONTROL :: SLV_CMP_DIS_EP_ERROR [17:17] */ | ||
3635 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_EP_ERROR_MASK 0x00020000 | ||
3636 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_EP_ERROR_ALIGN 0 | ||
3637 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_EP_ERROR_BITS 1 | ||
3638 | #define PCIE_TL_TL_CONTROL_SLV_CMP_DIS_EP_ERROR_SHIFT 17 | ||
3639 | |||
3640 | /* PCIE_TL :: TL_CONTROL :: ENABLE_BYTECOUNT_CHECK [16:16] */ | ||
3641 | #define PCIE_TL_TL_CONTROL_ENABLE_BYTECOUNT_CHECK_MASK 0x00010000 | ||
3642 | #define PCIE_TL_TL_CONTROL_ENABLE_BYTECOUNT_CHECK_ALIGN 0 | ||
3643 | #define PCIE_TL_TL_CONTROL_ENABLE_BYTECOUNT_CHECK_BITS 1 | ||
3644 | #define PCIE_TL_TL_CONTROL_ENABLE_BYTECOUNT_CHECK_SHIFT 16 | ||
3645 | |||
3646 | /* PCIE_TL :: TL_CONTROL :: NOT_USED [15:14] */ | ||
3647 | #define PCIE_TL_TL_CONTROL_NOT_USED_MASK 0x0000c000 | ||
3648 | #define PCIE_TL_TL_CONTROL_NOT_USED_ALIGN 0 | ||
3649 | #define PCIE_TL_TL_CONTROL_NOT_USED_BITS 2 | ||
3650 | #define PCIE_TL_TL_CONTROL_NOT_USED_SHIFT 14 | ||
3651 | |||
3652 | /* PCIE_TL :: TL_CONTROL :: TRAFFIC_CLASS_DR [13:11] */ | ||
3653 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DR_MASK 0x00003800 | ||
3654 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DR_ALIGN 0 | ||
3655 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DR_BITS 3 | ||
3656 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DR_SHIFT 11 | ||
3657 | |||
3658 | /* PCIE_TL :: TL_CONTROL :: TRAFFIC_CLASS_DW [10:08] */ | ||
3659 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DW_MASK 0x00000700 | ||
3660 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DW_ALIGN 0 | ||
3661 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DW_BITS 3 | ||
3662 | #define PCIE_TL_TL_CONTROL_TRAFFIC_CLASS_DW_SHIFT 8 | ||
3663 | |||
3664 | /* PCIE_TL :: TL_CONTROL :: NOT_USED_0 [07:06] */ | ||
3665 | #define PCIE_TL_TL_CONTROL_NOT_USED_0_MASK 0x000000c0 | ||
3666 | #define PCIE_TL_TL_CONTROL_NOT_USED_0_ALIGN 0 | ||
3667 | #define PCIE_TL_TL_CONTROL_NOT_USED_0_BITS 2 | ||
3668 | #define PCIE_TL_TL_CONTROL_NOT_USED_0_SHIFT 6 | ||
3669 | |||
3670 | /* PCIE_TL :: TL_CONTROL :: NOT_USED_1 [05:00] */ | ||
3671 | #define PCIE_TL_TL_CONTROL_NOT_USED_1_MASK 0x0000003f | ||
3672 | #define PCIE_TL_TL_CONTROL_NOT_USED_1_ALIGN 0 | ||
3673 | #define PCIE_TL_TL_CONTROL_NOT_USED_1_BITS 6 | ||
3674 | #define PCIE_TL_TL_CONTROL_NOT_USED_1_SHIFT 0 | ||
3675 | |||
3676 | |||
3677 | /**************************************************************************** | ||
3678 | * PCIE_TL :: TRANSACTION_CONFIGURATION | ||
3679 | ***************************************************************************/ | ||
3680 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_RETRY_BUFFER_TIMING_MOD [31:31] */ | ||
3681 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_RETRY_BUFFER_TIMING_MOD_MASK 0x80000000 | ||
3682 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_RETRY_BUFFER_TIMING_MOD_ALIGN 0 | ||
3683 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_RETRY_BUFFER_TIMING_MOD_BITS 1 | ||
3684 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_RETRY_BUFFER_TIMING_MOD_SHIFT 31 | ||
3685 | |||
3686 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: RESERVED_0 [30:30] */ | ||
3687 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_0_MASK 0x40000000 | ||
3688 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_0_ALIGN 0 | ||
3689 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_0_BITS 1 | ||
3690 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_0_SHIFT 30 | ||
3691 | |||
3692 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: MSI_SINGLE_SHOT_ENABLE [29:29] */ | ||
3693 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_SINGLE_SHOT_ENABLE_MASK 0x20000000 | ||
3694 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_SINGLE_SHOT_ENABLE_ALIGN 0 | ||
3695 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_SINGLE_SHOT_ENABLE_BITS 1 | ||
3696 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_SINGLE_SHOT_ENABLE_SHIFT 29 | ||
3697 | |||
3698 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: RESERVED_1 [28:28] */ | ||
3699 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_1_MASK 0x10000000 | ||
3700 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_1_ALIGN 0 | ||
3701 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_1_BITS 1 | ||
3702 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_1_SHIFT 28 | ||
3703 | |||
3704 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: SELECT_CORE_CLOCK_OVERRIDE [27:27] */ | ||
3705 | #define PCIE_TL_TRANSACTION_CONFIGURATION_SELECT_CORE_CLOCK_OVERRIDE_MASK 0x08000000 | ||
3706 | #define PCIE_TL_TRANSACTION_CONFIGURATION_SELECT_CORE_CLOCK_OVERRIDE_ALIGN 0 | ||
3707 | #define PCIE_TL_TRANSACTION_CONFIGURATION_SELECT_CORE_CLOCK_OVERRIDE_BITS 1 | ||
3708 | #define PCIE_TL_TRANSACTION_CONFIGURATION_SELECT_CORE_CLOCK_OVERRIDE_SHIFT 27 | ||
3709 | |||
3710 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: CQ9139_FIX_ENABLE [26:26] */ | ||
3711 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CQ9139_FIX_ENABLE_MASK 0x04000000 | ||
3712 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CQ9139_FIX_ENABLE_ALIGN 0 | ||
3713 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CQ9139_FIX_ENABLE_BITS 1 | ||
3714 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CQ9139_FIX_ENABLE_SHIFT 26 | ||
3715 | |||
3716 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_CMPT_PWR_CHECK [25:25] */ | ||
3717 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CMPT_PWR_CHECK_MASK 0x02000000 | ||
3718 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CMPT_PWR_CHECK_ALIGN 0 | ||
3719 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CMPT_PWR_CHECK_BITS 1 | ||
3720 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CMPT_PWR_CHECK_SHIFT 25 | ||
3721 | |||
3722 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_CQ12696_FIX [24:24] */ | ||
3723 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12696_FIX_MASK 0x01000000 | ||
3724 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12696_FIX_ALIGN 0 | ||
3725 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12696_FIX_BITS 1 | ||
3726 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12696_FIX_SHIFT 24 | ||
3727 | |||
3728 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: DEVICE_SERIAL_NO_OVERRIDE [23:23] */ | ||
3729 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DEVICE_SERIAL_NO_OVERRIDE_MASK 0x00800000 | ||
3730 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DEVICE_SERIAL_NO_OVERRIDE_ALIGN 0 | ||
3731 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DEVICE_SERIAL_NO_OVERRIDE_BITS 1 | ||
3732 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DEVICE_SERIAL_NO_OVERRIDE_SHIFT 23 | ||
3733 | |||
3734 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_CQ12455_FIX [22:22] */ | ||
3735 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12455_FIX_MASK 0x00400000 | ||
3736 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12455_FIX_ALIGN 0 | ||
3737 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12455_FIX_BITS 1 | ||
3738 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_CQ12455_FIX_SHIFT 22 | ||
3739 | |||
3740 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_TC_VC_FILTERING_CHECK [21:21] */ | ||
3741 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_TC_VC_FILTERING_CHECK_MASK 0x00200000 | ||
3742 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_TC_VC_FILTERING_CHECK_ALIGN 0 | ||
3743 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_TC_VC_FILTERING_CHECK_BITS 1 | ||
3744 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_TC_VC_FILTERING_CHECK_SHIFT 21 | ||
3745 | |||
3746 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: DONT_GEN_HOT_PLUG_MSG [20:20] */ | ||
3747 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DONT_GEN_HOT_PLUG_MSG_MASK 0x00100000 | ||
3748 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DONT_GEN_HOT_PLUG_MSG_ALIGN 0 | ||
3749 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DONT_GEN_HOT_PLUG_MSG_BITS 1 | ||
3750 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DONT_GEN_HOT_PLUG_MSG_SHIFT 20 | ||
3751 | |||
3752 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: IGNORE_HOTPLUG_MSG [19:19] */ | ||
3753 | #define PCIE_TL_TRANSACTION_CONFIGURATION_IGNORE_HOTPLUG_MSG_MASK 0x00080000 | ||
3754 | #define PCIE_TL_TRANSACTION_CONFIGURATION_IGNORE_HOTPLUG_MSG_ALIGN 0 | ||
3755 | #define PCIE_TL_TRANSACTION_CONFIGURATION_IGNORE_HOTPLUG_MSG_BITS 1 | ||
3756 | #define PCIE_TL_TRANSACTION_CONFIGURATION_IGNORE_HOTPLUG_MSG_SHIFT 19 | ||
3757 | |||
3758 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: MSI_MULTMSG_CAPABLE [18:16] */ | ||
3759 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_MULTMSG_CAPABLE_MASK 0x00070000 | ||
3760 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_MULTMSG_CAPABLE_ALIGN 0 | ||
3761 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_MULTMSG_CAPABLE_BITS 3 | ||
3762 | #define PCIE_TL_TRANSACTION_CONFIGURATION_MSI_MULTMSG_CAPABLE_SHIFT 16 | ||
3763 | |||
3764 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: DATA_SELECT_LIMIT [15:12] */ | ||
3765 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DATA_SELECT_LIMIT_MASK 0x0000f000 | ||
3766 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DATA_SELECT_LIMIT_ALIGN 0 | ||
3767 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DATA_SELECT_LIMIT_BITS 4 | ||
3768 | #define PCIE_TL_TRANSACTION_CONFIGURATION_DATA_SELECT_LIMIT_SHIFT 12 | ||
3769 | |||
3770 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_PCIE_1_1_PL [11:11] */ | ||
3771 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_PL_MASK 0x00000800 | ||
3772 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_PL_ALIGN 0 | ||
3773 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_PL_BITS 1 | ||
3774 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_PL_SHIFT 11 | ||
3775 | |||
3776 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_PCIE_1_1_DL [10:10] */ | ||
3777 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_DL_MASK 0x00000400 | ||
3778 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_DL_ALIGN 0 | ||
3779 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_DL_BITS 1 | ||
3780 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_DL_SHIFT 10 | ||
3781 | |||
3782 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_PCIE_1_1_TL [09:09] */ | ||
3783 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_TL_MASK 0x00000200 | ||
3784 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_TL_ALIGN 0 | ||
3785 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_TL_BITS 1 | ||
3786 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_PCIE_1_1_TL_SHIFT 9 | ||
3787 | |||
3788 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: RESERVED_2 [08:07] */ | ||
3789 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_2_MASK 0x00000180 | ||
3790 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_2_ALIGN 0 | ||
3791 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_2_BITS 2 | ||
3792 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_2_SHIFT 7 | ||
3793 | |||
3794 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: PCIE_POWER_BUDGET_CAP_ENABLE [06:06] */ | ||
3795 | #define PCIE_TL_TRANSACTION_CONFIGURATION_PCIE_POWER_BUDGET_CAP_ENABLE_MASK 0x00000040 | ||
3796 | #define PCIE_TL_TRANSACTION_CONFIGURATION_PCIE_POWER_BUDGET_CAP_ENABLE_ALIGN 0 | ||
3797 | #define PCIE_TL_TRANSACTION_CONFIGURATION_PCIE_POWER_BUDGET_CAP_ENABLE_BITS 1 | ||
3798 | #define PCIE_TL_TRANSACTION_CONFIGURATION_PCIE_POWER_BUDGET_CAP_ENABLE_SHIFT 6 | ||
3799 | |||
3800 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: LOM_CONFIGURATION [05:05] */ | ||
3801 | #define PCIE_TL_TRANSACTION_CONFIGURATION_LOM_CONFIGURATION_MASK 0x00000020 | ||
3802 | #define PCIE_TL_TRANSACTION_CONFIGURATION_LOM_CONFIGURATION_ALIGN 0 | ||
3803 | #define PCIE_TL_TRANSACTION_CONFIGURATION_LOM_CONFIGURATION_BITS 1 | ||
3804 | #define PCIE_TL_TRANSACTION_CONFIGURATION_LOM_CONFIGURATION_SHIFT 5 | ||
3805 | |||
3806 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: CONCATE_SELECT [04:04] */ | ||
3807 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CONCATE_SELECT_MASK 0x00000010 | ||
3808 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CONCATE_SELECT_ALIGN 0 | ||
3809 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CONCATE_SELECT_BITS 1 | ||
3810 | #define PCIE_TL_TRANSACTION_CONFIGURATION_CONCATE_SELECT_SHIFT 4 | ||
3811 | |||
3812 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: RESERVED_3 [03:03] */ | ||
3813 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_3_MASK 0x00000008 | ||
3814 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_3_ALIGN 0 | ||
3815 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_3_BITS 1 | ||
3816 | #define PCIE_TL_TRANSACTION_CONFIGURATION_RESERVED_3_SHIFT 3 | ||
3817 | |||
3818 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_9468_FIX [02:02] */ | ||
3819 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9468_FIX_MASK 0x00000004 | ||
3820 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9468_FIX_ALIGN 0 | ||
3821 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9468_FIX_BITS 1 | ||
3822 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9468_FIX_SHIFT 2 | ||
3823 | |||
3824 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: POWER_STATE_WRITE_MEM_ENABLE [01:01] */ | ||
3825 | #define PCIE_TL_TRANSACTION_CONFIGURATION_POWER_STATE_WRITE_MEM_ENABLE_MASK 0x00000002 | ||
3826 | #define PCIE_TL_TRANSACTION_CONFIGURATION_POWER_STATE_WRITE_MEM_ENABLE_ALIGN 0 | ||
3827 | #define PCIE_TL_TRANSACTION_CONFIGURATION_POWER_STATE_WRITE_MEM_ENABLE_BITS 1 | ||
3828 | #define PCIE_TL_TRANSACTION_CONFIGURATION_POWER_STATE_WRITE_MEM_ENABLE_SHIFT 1 | ||
3829 | |||
3830 | /* PCIE_TL :: TRANSACTION_CONFIGURATION :: ENABLE_9709_ENABLE [00:00] */ | ||
3831 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9709_ENABLE_MASK 0x00000001 | ||
3832 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9709_ENABLE_ALIGN 0 | ||
3833 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9709_ENABLE_BITS 1 | ||
3834 | #define PCIE_TL_TRANSACTION_CONFIGURATION_ENABLE_9709_ENABLE_SHIFT 0 | ||
3835 | |||
3836 | |||
3837 | /**************************************************************************** | ||
3838 | * PCIE_TL :: WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC | ||
3839 | ***************************************************************************/ | ||
3840 | /* PCIE_TL :: WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC :: RESERVED_0 [31:00] */ | ||
3841 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_RESERVED_0_MASK 0xffffffff | ||
3842 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_RESERVED_0_ALIGN 0 | ||
3843 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_RESERVED_0_BITS 32 | ||
3844 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_RESERVED_0_SHIFT 0 | ||
3845 | |||
3846 | |||
3847 | /**************************************************************************** | ||
3848 | * PCIE_TL :: WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2 | ||
3849 | ***************************************************************************/ | ||
3850 | /* PCIE_TL :: WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2 :: RESERVED_0 [31:00] */ | ||
3851 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2_RESERVED_0_MASK 0xffffffff | ||
3852 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2_RESERVED_0_ALIGN 0 | ||
3853 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2_RESERVED_0_BITS 32 | ||
3854 | #define PCIE_TL_WRITE_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_2_RESERVED_0_SHIFT 0 | ||
3855 | |||
3856 | |||
3857 | /**************************************************************************** | ||
3858 | * PCIE_TL :: DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC | ||
3859 | ***************************************************************************/ | ||
3860 | /* PCIE_TL :: DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC :: REG_MADDR_UPR [31:00] */ | ||
3861 | #define PCIE_TL_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_REG_MADDR_UPR_MASK 0xffffffff | ||
3862 | #define PCIE_TL_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_REG_MADDR_UPR_ALIGN 0 | ||
3863 | #define PCIE_TL_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_REG_MADDR_UPR_BITS 32 | ||
3864 | #define PCIE_TL_DMA_REQUEST_UPPER_ADDRESS_DIAGNOSTIC_REG_MADDR_UPR_SHIFT 0 | ||
3865 | |||
3866 | |||
3867 | /**************************************************************************** | ||
3868 | * PCIE_TL :: DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2 | ||
3869 | ***************************************************************************/ | ||
3870 | /* PCIE_TL :: DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2 :: REG_MADDR_LWR [31:00] */ | ||
3871 | #define PCIE_TL_DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2_REG_MADDR_LWR_MASK 0xffffffff | ||
3872 | #define PCIE_TL_DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2_REG_MADDR_LWR_ALIGN 0 | ||
3873 | #define PCIE_TL_DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2_REG_MADDR_LWR_BITS 32 | ||
3874 | #define PCIE_TL_DMA_REQUEST_LOWER_ADDRESS_DIAGNOSTIC_2_REG_MADDR_LWR_SHIFT 0 | ||
3875 | |||
3876 | |||
3877 | /**************************************************************************** | ||
3878 | * PCIE_TL :: DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC | ||
3879 | ***************************************************************************/ | ||
3880 | /* PCIE_TL :: DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC :: REG_MLEN_BE [31:24] */ | ||
3881 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_REG_MLEN_BE_MASK 0xff000000 | ||
3882 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_REG_MLEN_BE_ALIGN 0 | ||
3883 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_REG_MLEN_BE_BITS 8 | ||
3884 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_REG_MLEN_BE_SHIFT 24 | ||
3885 | |||
3886 | /* PCIE_TL :: DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC :: DMA_REQUEST_FIRST_DW_BYTE_ENABLES [23:20] */ | ||
3887 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_FIRST_DW_BYTE_ENABLES_MASK 0x00f00000 | ||
3888 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_FIRST_DW_BYTE_ENABLES_ALIGN 0 | ||
3889 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_FIRST_DW_BYTE_ENABLES_BITS 4 | ||
3890 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_FIRST_DW_BYTE_ENABLES_SHIFT 20 | ||
3891 | |||
3892 | /* PCIE_TL :: DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC :: DMA_REQUEST_LAST_DW_BYTE_ENABLES [19:16] */ | ||
3893 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_LAST_DW_BYTE_ENABLES_MASK 0x000f0000 | ||
3894 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_LAST_DW_BYTE_ENABLES_ALIGN 0 | ||
3895 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_LAST_DW_BYTE_ENABLES_BITS 4 | ||
3896 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_LAST_DW_BYTE_ENABLES_SHIFT 16 | ||
3897 | |||
3898 | /* PCIE_TL :: DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC :: RESERVED_0 [15:11] */ | ||
3899 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_RESERVED_0_MASK 0x0000f800 | ||
3900 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_RESERVED_0_ALIGN 0 | ||
3901 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_RESERVED_0_BITS 5 | ||
3902 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_RESERVED_0_SHIFT 11 | ||
3903 | |||
3904 | /* PCIE_TL :: DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC :: DMA_REQUEST_DW_LENGTH [10:00] */ | ||
3905 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_DW_LENGTH_MASK 0x000007ff | ||
3906 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_DW_LENGTH_ALIGN 0 | ||
3907 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_DW_LENGTH_BITS 11 | ||
3908 | #define PCIE_TL_DMA_REQUEST_LENGTH_BYTE_ENABLE_DIAGNOSTIC_DMA_REQUEST_DW_LENGTH_SHIFT 0 | ||
3909 | |||
3910 | |||
3911 | /**************************************************************************** | ||
3912 | * PCIE_TL :: DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC | ||
3913 | ***************************************************************************/ | ||
3914 | /* PCIE_TL :: DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC :: REG_MTAG_ATTR [31:19] */ | ||
3915 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_REG_MTAG_ATTR_MASK 0xfff80000 | ||
3916 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_REG_MTAG_ATTR_ALIGN 0 | ||
3917 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_REG_MTAG_ATTR_BITS 13 | ||
3918 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_REG_MTAG_ATTR_SHIFT 19 | ||
3919 | |||
3920 | /* PCIE_TL :: DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC :: DMA_REQUEST_FUNCTION [18:16] */ | ||
3921 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_FUNCTION_MASK 0x00070000 | ||
3922 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_FUNCTION_ALIGN 0 | ||
3923 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_FUNCTION_BITS 3 | ||
3924 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_FUNCTION_SHIFT 16 | ||
3925 | |||
3926 | /* PCIE_TL :: DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC :: RESERVED_0 [15:13] */ | ||
3927 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_0_MASK 0x0000e000 | ||
3928 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_0_ALIGN 0 | ||
3929 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_0_BITS 3 | ||
3930 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_0_SHIFT 13 | ||
3931 | |||
3932 | /* PCIE_TL :: DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC :: DMA_REQUEST_ATTRIBUTES [12:08] */ | ||
3933 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_ATTRIBUTES_MASK 0x00001f00 | ||
3934 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_ATTRIBUTES_ALIGN 0 | ||
3935 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_ATTRIBUTES_BITS 5 | ||
3936 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_ATTRIBUTES_SHIFT 8 | ||
3937 | |||
3938 | /* PCIE_TL :: DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC :: RESERVED_1 [07:05] */ | ||
3939 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_1_MASK 0x000000e0 | ||
3940 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_1_ALIGN 0 | ||
3941 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_1_BITS 3 | ||
3942 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_RESERVED_1_SHIFT 5 | ||
3943 | |||
3944 | /* PCIE_TL :: DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC :: DMA_REQUEST_TAG [04:00] */ | ||
3945 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_TAG_MASK 0x0000001f | ||
3946 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_TAG_ALIGN 0 | ||
3947 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_TAG_BITS 5 | ||
3948 | #define PCIE_TL_DMA_REQUEST_TAG_ATTRIBUTE_FUNCTION_DIAGNOSTIC_DMA_REQUEST_TAG_SHIFT 0 | ||
3949 | |||
3950 | |||
3951 | /**************************************************************************** | ||
3952 | * PCIE_TL :: READ_DMA_SPLIT_IDS_DIAGNOSTIC | ||
3953 | ***************************************************************************/ | ||
3954 | /* PCIE_TL :: READ_DMA_SPLIT_IDS_DIAGNOSTIC :: REG_SPLIT_ID [31:16] */ | ||
3955 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_REG_SPLIT_ID_MASK 0xffff0000 | ||
3956 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_REG_SPLIT_ID_ALIGN 0 | ||
3957 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_REG_SPLIT_ID_BITS 16 | ||
3958 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_REG_SPLIT_ID_SHIFT 16 | ||
3959 | |||
3960 | /* PCIE_TL :: READ_DMA_SPLIT_IDS_DIAGNOSTIC :: RESERVED_0 [15:13] */ | ||
3961 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_0_MASK 0x0000e000 | ||
3962 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_0_ALIGN 0 | ||
3963 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_0_BITS 3 | ||
3964 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_0_SHIFT 13 | ||
3965 | |||
3966 | /* PCIE_TL :: READ_DMA_SPLIT_IDS_DIAGNOSTIC :: READ_DMA_SPLIT_ATTRIBUTES [12:11] */ | ||
3967 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_ATTRIBUTES_MASK 0x00001800 | ||
3968 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_ATTRIBUTES_ALIGN 0 | ||
3969 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_ATTRIBUTES_BITS 2 | ||
3970 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_ATTRIBUTES_SHIFT 11 | ||
3971 | |||
3972 | /* PCIE_TL :: READ_DMA_SPLIT_IDS_DIAGNOSTIC :: READ_DMA_SPLIT_TC [10:08] */ | ||
3973 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TC_MASK 0x00000700 | ||
3974 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TC_ALIGN 0 | ||
3975 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TC_BITS 3 | ||
3976 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TC_SHIFT 8 | ||
3977 | |||
3978 | /* PCIE_TL :: READ_DMA_SPLIT_IDS_DIAGNOSTIC :: RESERVED_1 [07:05] */ | ||
3979 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_1_MASK 0x000000e0 | ||
3980 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_1_ALIGN 0 | ||
3981 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_1_BITS 3 | ||
3982 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_RESERVED_1_SHIFT 5 | ||
3983 | |||
3984 | /* PCIE_TL :: READ_DMA_SPLIT_IDS_DIAGNOSTIC :: READ_DMA_SPLIT_TAG [04:00] */ | ||
3985 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TAG_MASK 0x0000001f | ||
3986 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TAG_ALIGN 0 | ||
3987 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TAG_BITS 5 | ||
3988 | #define PCIE_TL_READ_DMA_SPLIT_IDS_DIAGNOSTIC_READ_DMA_SPLIT_TAG_SHIFT 0 | ||
3989 | |||
3990 | |||
3991 | /**************************************************************************** | ||
3992 | * PCIE_TL :: READ_DMA_SPLIT_LENGTH_DIAGNOSTIC | ||
3993 | ***************************************************************************/ | ||
3994 | /* PCIE_TL :: READ_DMA_SPLIT_LENGTH_DIAGNOSTIC :: REG_SPLIT_LEN [31:13] */ | ||
3995 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_REG_SPLIT_LEN_MASK 0xffffe000 | ||
3996 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_REG_SPLIT_LEN_ALIGN 0 | ||
3997 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_REG_SPLIT_LEN_BITS 19 | ||
3998 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_REG_SPLIT_LEN_SHIFT 13 | ||
3999 | |||
4000 | /* PCIE_TL :: READ_DMA_SPLIT_LENGTH_DIAGNOSTIC :: READ_DMA_SPLIT_INITIAL_BYTE_COUNT [12:00] */ | ||
4001 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_READ_DMA_SPLIT_INITIAL_BYTE_COUNT_MASK 0x00001fff | ||
4002 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_READ_DMA_SPLIT_INITIAL_BYTE_COUNT_ALIGN 0 | ||
4003 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_READ_DMA_SPLIT_INITIAL_BYTE_COUNT_BITS 13 | ||
4004 | #define PCIE_TL_READ_DMA_SPLIT_LENGTH_DIAGNOSTIC_READ_DMA_SPLIT_INITIAL_BYTE_COUNT_SHIFT 0 | ||
4005 | |||
4006 | |||
4007 | /**************************************************************************** | ||
4008 | * PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC | ||
4009 | ***************************************************************************/ | ||
4010 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: REG_SM_R0_R3 [31:31] */ | ||
4011 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_REG_SM_R0_R3_MASK 0x80000000 | ||
4012 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_REG_SM_R0_R3_ALIGN 0 | ||
4013 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_REG_SM_R0_R3_BITS 1 | ||
4014 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_REG_SM_R0_R3_SHIFT 31 | ||
4015 | |||
4016 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: TLP_TRANSMITTER_DATA_STATE_MACHINE [30:28] */ | ||
4017 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_DATA_STATE_MACHINE_MASK 0x70000000 | ||
4018 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_DATA_STATE_MACHINE_ALIGN 0 | ||
4019 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_DATA_STATE_MACHINE_BITS 3 | ||
4020 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_DATA_STATE_MACHINE_SHIFT 28 | ||
4021 | |||
4022 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: TLP_TRANSMITTER_ARBITRATION_STATE_MACHINE [27:23] */ | ||
4023 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_ARBITRATION_STATE_MACHINE_MASK 0x0f800000 | ||
4024 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_ARBITRATION_STATE_MACHINE_ALIGN 0 | ||
4025 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_ARBITRATION_STATE_MACHINE_BITS 5 | ||
4026 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TLP_TRANSMITTER_ARBITRATION_STATE_MACHINE_SHIFT 23 | ||
4027 | |||
4028 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: RESERVED_0 [22:07] */ | ||
4029 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_RESERVED_0_MASK 0x007fff80 | ||
4030 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_RESERVED_0_ALIGN 0 | ||
4031 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_RESERVED_0_BITS 16 | ||
4032 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_RESERVED_0_SHIFT 7 | ||
4033 | |||
4034 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: READ_DMA_RAW_REQUEST [06:06] */ | ||
4035 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_RAW_REQUEST_MASK 0x00000040 | ||
4036 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_RAW_REQUEST_ALIGN 0 | ||
4037 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_RAW_REQUEST_BITS 1 | ||
4038 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_RAW_REQUEST_SHIFT 6 | ||
4039 | |||
4040 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: WRITE_DMA_RAW_REQUEST [05:05] */ | ||
4041 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_RAW_REQUEST_MASK 0x00000020 | ||
4042 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_RAW_REQUEST_ALIGN 0 | ||
4043 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_RAW_REQUEST_BITS 1 | ||
4044 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_RAW_REQUEST_SHIFT 5 | ||
4045 | |||
4046 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: INTERRUPT_MSG_GATED_REQUEST [04:04] */ | ||
4047 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_INTERRUPT_MSG_GATED_REQUEST_MASK 0x00000010 | ||
4048 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_INTERRUPT_MSG_GATED_REQUEST_ALIGN 0 | ||
4049 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_INTERRUPT_MSG_GATED_REQUEST_BITS 1 | ||
4050 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_INTERRUPT_MSG_GATED_REQUEST_SHIFT 4 | ||
4051 | |||
4052 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: MSI_DMA_GATED_REQUEST [03:03] */ | ||
4053 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_MSI_DMA_GATED_REQUEST_MASK 0x00000008 | ||
4054 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_MSI_DMA_GATED_REQUEST_ALIGN 0 | ||
4055 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_MSI_DMA_GATED_REQUEST_BITS 1 | ||
4056 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_MSI_DMA_GATED_REQUEST_SHIFT 3 | ||
4057 | |||
4058 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: TARGET_COMPLETION_OR_MSG_GATED_REQUEST [02:02] */ | ||
4059 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TARGET_COMPLETION_OR_MSG_GATED_REQUEST_MASK 0x00000004 | ||
4060 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TARGET_COMPLETION_OR_MSG_GATED_REQUEST_ALIGN 0 | ||
4061 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TARGET_COMPLETION_OR_MSG_GATED_REQUEST_BITS 1 | ||
4062 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_TARGET_COMPLETION_OR_MSG_GATED_REQUEST_SHIFT 2 | ||
4063 | |||
4064 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: READ_DMA_GATED_REQUEST [01:01] */ | ||
4065 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_GATED_REQUEST_MASK 0x00000002 | ||
4066 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_GATED_REQUEST_ALIGN 0 | ||
4067 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_GATED_REQUEST_BITS 1 | ||
4068 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_READ_DMA_GATED_REQUEST_SHIFT 1 | ||
4069 | |||
4070 | /* PCIE_TL :: XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC :: WRITE_DMA_GATED_REQUEST [00:00] */ | ||
4071 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_GATED_REQUEST_MASK 0x00000001 | ||
4072 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_GATED_REQUEST_ALIGN 0 | ||
4073 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_GATED_REQUEST_BITS 1 | ||
4074 | #define PCIE_TL_XMT_STATE_MACHINES_AND_REQUEST_DIAGNOSTIC_WRITE_DMA_GATED_REQUEST_SHIFT 0 | ||
4075 | |||
4076 | |||
4077 | /**************************************************************************** | ||
4078 | * PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC | ||
4079 | ***************************************************************************/ | ||
4080 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: REG_DMA_CMPT_MISC2 [31:29] */ | ||
4081 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_REG_DMA_CMPT_MISC2_MASK 0xe0000000 | ||
4082 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_REG_DMA_CMPT_MISC2_ALIGN 0 | ||
4083 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_REG_DMA_CMPT_MISC2_BITS 3 | ||
4084 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_REG_DMA_CMPT_MISC2_SHIFT 29 | ||
4085 | |||
4086 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: SPLIT_BYTE_LENGTH_REMAINING [28:16] */ | ||
4087 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_BYTE_LENGTH_REMAINING_MASK 0x1fff0000 | ||
4088 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_BYTE_LENGTH_REMAINING_ALIGN 0 | ||
4089 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_BYTE_LENGTH_REMAINING_BITS 13 | ||
4090 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_BYTE_LENGTH_REMAINING_SHIFT 16 | ||
4091 | |||
4092 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: NOT_USED [15:15] */ | ||
4093 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_NOT_USED_MASK 0x00008000 | ||
4094 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_NOT_USED_ALIGN 0 | ||
4095 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_NOT_USED_BITS 1 | ||
4096 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_NOT_USED_SHIFT 15 | ||
4097 | |||
4098 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: LAST_COMPLETION_TLP_INDICATOR_SPLITCTL_GENERATED [14:14] */ | ||
4099 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_SPLITCTL_GENERATED_MASK 0x00004000 | ||
4100 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_SPLITCTL_GENERATED_ALIGN 0 | ||
4101 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_SPLITCTL_GENERATED_BITS 1 | ||
4102 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_SPLITCTL_GENERATED_SHIFT 14 | ||
4103 | |||
4104 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: LAST_COMPLETION_TLP_INDICATOR_DMA_CMPT_GENERATED [13:13] */ | ||
4105 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_DMA_CMPT_GENERATED_MASK 0x00002000 | ||
4106 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_DMA_CMPT_GENERATED_ALIGN 0 | ||
4107 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_DMA_CMPT_GENERATED_BITS 1 | ||
4108 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_LAST_COMPLETION_TLP_INDICATOR_DMA_CMPT_GENERATED_SHIFT 13 | ||
4109 | |||
4110 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: DW_LENGTH_REMAINING_IN_CURRENT_COMPLETION_TLP_IS_GREATER_THAN_1 [12:12] */ | ||
4111 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_DW_LENGTH_REMAINING_IN_CURRENT_COMPLETION_TLP_IS_GREATER_THAN_1_MASK 0x00001000 | ||
4112 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_DW_LENGTH_REMAINING_IN_CURRENT_COMPLETION_TLP_IS_GREATER_THAN_1_ALIGN 0 | ||
4113 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_DW_LENGTH_REMAINING_IN_CURRENT_COMPLETION_TLP_IS_GREATER_THAN_1_BITS 1 | ||
4114 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_DW_LENGTH_REMAINING_IN_CURRENT_COMPLETION_TLP_IS_GREATER_THAN_1_SHIFT 12 | ||
4115 | |||
4116 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: SPLIT_TRANSACTION_ACTIVE_SPLIT_PENDING_BLOCK_REQUEST [11:11] */ | ||
4117 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_TRANSACTION_ACTIVE_SPLIT_PENDING_BLOCK_REQUEST_MASK 0x00000800 | ||
4118 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_TRANSACTION_ACTIVE_SPLIT_PENDING_BLOCK_REQUEST_ALIGN 0 | ||
4119 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_TRANSACTION_ACTIVE_SPLIT_PENDING_BLOCK_REQUEST_BITS 1 | ||
4120 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_TRANSACTION_ACTIVE_SPLIT_PENDING_BLOCK_REQUEST_SHIFT 11 | ||
4121 | |||
4122 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: COMPLETION_TLP_MATCHES_REQUEST_WITHOUT_BC_LADDR_CHECKS [10:10] */ | ||
4123 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_WITHOUT_BC_LADDR_CHECKS_MASK 0x00000400 | ||
4124 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_WITHOUT_BC_LADDR_CHECKS_ALIGN 0 | ||
4125 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_WITHOUT_BC_LADDR_CHECKS_BITS 1 | ||
4126 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_WITHOUT_BC_LADDR_CHECKS_SHIFT 10 | ||
4127 | |||
4128 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: COMPLETION_TLP_MATCHES_REQUEST_FULLY [09:09] */ | ||
4129 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_FULLY_MASK 0x00000200 | ||
4130 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_FULLY_ALIGN 0 | ||
4131 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_FULLY_BITS 1 | ||
4132 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TLP_MATCHES_REQUEST_FULLY_SHIFT 9 | ||
4133 | |||
4134 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: SPLIT_DW_DATA_VALID_ADDRESS_ACK [08:08] */ | ||
4135 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_DW_DATA_VALID_ADDRESS_ACK_MASK 0x00000100 | ||
4136 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_DW_DATA_VALID_ADDRESS_ACK_ALIGN 0 | ||
4137 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_DW_DATA_VALID_ADDRESS_ACK_BITS 1 | ||
4138 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_SPLIT_DW_DATA_VALID_ADDRESS_ACK_SHIFT 8 | ||
4139 | |||
4140 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: COMPLETION_TOO_MUCH_DATA_ERROR_COUNTER [07:04] */ | ||
4141 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TOO_MUCH_DATA_ERROR_COUNTER_MASK 0x000000f0 | ||
4142 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TOO_MUCH_DATA_ERROR_COUNTER_ALIGN 0 | ||
4143 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TOO_MUCH_DATA_ERROR_COUNTER_BITS 4 | ||
4144 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_COMPLETION_TOO_MUCH_DATA_ERROR_COUNTER_SHIFT 4 | ||
4145 | |||
4146 | /* PCIE_TL :: DMA_COMPLETION_MISC__DIAGNOSTIC :: FRAME_DEAD_TIME_ERROR_COUNTER [03:00] */ | ||
4147 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_FRAME_DEAD_TIME_ERROR_COUNTER_MASK 0x0000000f | ||
4148 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_FRAME_DEAD_TIME_ERROR_COUNTER_ALIGN 0 | ||
4149 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_FRAME_DEAD_TIME_ERROR_COUNTER_BITS 4 | ||
4150 | #define PCIE_TL_DMA_COMPLETION_MISC__DIAGNOSTIC_FRAME_DEAD_TIME_ERROR_COUNTER_SHIFT 0 | ||
4151 | |||
4152 | |||
4153 | /**************************************************************************** | ||
4154 | * PCIE_TL :: SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC | ||
4155 | ***************************************************************************/ | ||
4156 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC :: REG_SPLITCTL_MISC0 [31:29] */ | ||
4157 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_REG_SPLITCTL_MISC0_MASK 0xe0000000 | ||
4158 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_REG_SPLITCTL_MISC0_ALIGN 0 | ||
4159 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_REG_SPLITCTL_MISC0_BITS 3 | ||
4160 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_REG_SPLITCTL_MISC0_SHIFT 29 | ||
4161 | |||
4162 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC :: LOOKUP_RESULT_FOR_EXPECTED_BYTE_COUNT_REMAINING [28:16] */ | ||
4163 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_BYTE_COUNT_REMAINING_MASK 0x1fff0000 | ||
4164 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_BYTE_COUNT_REMAINING_ALIGN 0 | ||
4165 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_BYTE_COUNT_REMAINING_BITS 13 | ||
4166 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_BYTE_COUNT_REMAINING_SHIFT 16 | ||
4167 | |||
4168 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC :: LOOKUP_RESULT_FOR_EXPECTED_REQUESTER_ID [15:00] */ | ||
4169 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_REQUESTER_ID_MASK 0x0000ffff | ||
4170 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_REQUESTER_ID_ALIGN 0 | ||
4171 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_REQUESTER_ID_BITS 16 | ||
4172 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_0_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_REQUESTER_ID_SHIFT 0 | ||
4173 | |||
4174 | |||
4175 | /**************************************************************************** | ||
4176 | * PCIE_TL :: SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC | ||
4177 | ***************************************************************************/ | ||
4178 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC :: REG_SPLITCTL_MISC1 [31:16] */ | ||
4179 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_REG_SPLITCTL_MISC1_MASK 0xffff0000 | ||
4180 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_REG_SPLITCTL_MISC1_ALIGN 0 | ||
4181 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_REG_SPLITCTL_MISC1_BITS 16 | ||
4182 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_REG_SPLITCTL_MISC1_SHIFT 16 | ||
4183 | |||
4184 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC :: RESERVED_0 [15:15] */ | ||
4185 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_0_MASK 0x00008000 | ||
4186 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_0_ALIGN 0 | ||
4187 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_0_BITS 1 | ||
4188 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_0_SHIFT 15 | ||
4189 | |||
4190 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC :: LOOKUP_RESULT_FOR_EXPECTED_LOWER_ADDRESS [14:08] */ | ||
4191 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_LOWER_ADDRESS_MASK 0x00007f00 | ||
4192 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_LOWER_ADDRESS_ALIGN 0 | ||
4193 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_LOWER_ADDRESS_BITS 7 | ||
4194 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_LOWER_ADDRESS_SHIFT 8 | ||
4195 | |||
4196 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC :: RESERVED_1 [07:07] */ | ||
4197 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_1_MASK 0x00000080 | ||
4198 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_1_ALIGN 0 | ||
4199 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_1_BITS 1 | ||
4200 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_RESERVED_1_SHIFT 7 | ||
4201 | |||
4202 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC :: LOOKUP_RESULT_FOR_EXPECTED_ATTRIBUTE [06:05] */ | ||
4203 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_ATTRIBUTE_MASK 0x00000060 | ||
4204 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_ATTRIBUTE_ALIGN 0 | ||
4205 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_ATTRIBUTE_BITS 2 | ||
4206 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_RESULT_FOR_EXPECTED_ATTRIBUTE_SHIFT 5 | ||
4207 | |||
4208 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC :: LOOKUP_TAG [04:00] */ | ||
4209 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_TAG_MASK 0x0000001f | ||
4210 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_TAG_ALIGN 0 | ||
4211 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_TAG_BITS 5 | ||
4212 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_1_DIAGNOSTIC_LOOKUP_TAG_SHIFT 0 | ||
4213 | |||
4214 | |||
4215 | /**************************************************************************** | ||
4216 | * PCIE_TL :: SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC | ||
4217 | ***************************************************************************/ | ||
4218 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC :: REG_SPLITCTL_MISC2 [31:31] */ | ||
4219 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_REG_SPLITCTL_MISC2_MASK 0x80000000 | ||
4220 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_REG_SPLITCTL_MISC2_ALIGN 0 | ||
4221 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_REG_SPLITCTL_MISC2_BITS 1 | ||
4222 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_REG_SPLITCTL_MISC2_SHIFT 31 | ||
4223 | |||
4224 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC :: COMPLETION_TLP_MATCHES_EXPECTED_LOWER_ADDRESS [30:30] */ | ||
4225 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_EXPECTED_LOWER_ADDRESS_MASK 0x40000000 | ||
4226 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_EXPECTED_LOWER_ADDRESS_ALIGN 0 | ||
4227 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_EXPECTED_LOWER_ADDRESS_BITS 1 | ||
4228 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_EXPECTED_LOWER_ADDRESS_SHIFT 30 | ||
4229 | |||
4230 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC :: COMPLETION_TLP_MATCHES_VALID_TAG [29:29] */ | ||
4231 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_VALID_TAG_MASK 0x20000000 | ||
4232 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_VALID_TAG_ALIGN 0 | ||
4233 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_VALID_TAG_BITS 1 | ||
4234 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_COMPLETION_TLP_MATCHES_VALID_TAG_SHIFT 29 | ||
4235 | |||
4236 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC :: UPDATED_BYTE_COUNT [28:16] */ | ||
4237 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_UPDATED_BYTE_COUNT_MASK 0x1fff0000 | ||
4238 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_UPDATED_BYTE_COUNT_ALIGN 0 | ||
4239 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_UPDATED_BYTE_COUNT_BITS 13 | ||
4240 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_UPDATED_BYTE_COUNT_SHIFT 16 | ||
4241 | |||
4242 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC :: RESERVED_0 [15:08] */ | ||
4243 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_RESERVED_0_MASK 0x0000ff00 | ||
4244 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_RESERVED_0_ALIGN 0 | ||
4245 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_RESERVED_0_BITS 8 | ||
4246 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_RESERVED_0_SHIFT 8 | ||
4247 | |||
4248 | /* PCIE_TL :: SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC :: SPLIT_TABLE_VALID_ARRAY [07:00] */ | ||
4249 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_SPLIT_TABLE_VALID_ARRAY_MASK 0x000000ff | ||
4250 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_SPLIT_TABLE_VALID_ARRAY_ALIGN 0 | ||
4251 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_SPLIT_TABLE_VALID_ARRAY_BITS 8 | ||
4252 | #define PCIE_TL_SPLIT_CONTROLLER_MISC_2_DIAGNOSTIC_SPLIT_TABLE_VALID_ARRAY_SHIFT 0 | ||
4253 | |||
4254 | |||
4255 | /**************************************************************************** | ||
4256 | * PCIE_TL :: TL_BUS_NO_DEV__NO__FUNC__NO | ||
4257 | ***************************************************************************/ | ||
4258 | /* PCIE_TL :: TL_BUS_NO_DEV__NO__FUNC__NO :: RESERVED_0 [31:17] */ | ||
4259 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_RESERVED_0_MASK 0xfffe0000 | ||
4260 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_RESERVED_0_ALIGN 0 | ||
4261 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_RESERVED_0_BITS 15 | ||
4262 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_RESERVED_0_SHIFT 17 | ||
4263 | |||
4264 | /* PCIE_TL :: TL_BUS_NO_DEV__NO__FUNC__NO :: CONFIG_WRITE_INDICATER [16:16] */ | ||
4265 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_CONFIG_WRITE_INDICATER_MASK 0x00010000 | ||
4266 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_CONFIG_WRITE_INDICATER_ALIGN 0 | ||
4267 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_CONFIG_WRITE_INDICATER_BITS 1 | ||
4268 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_CONFIG_WRITE_INDICATER_SHIFT 16 | ||
4269 | |||
4270 | /* PCIE_TL :: TL_BUS_NO_DEV__NO__FUNC__NO :: BUS_NUMBER [15:08] */ | ||
4271 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_BUS_NUMBER_MASK 0x0000ff00 | ||
4272 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_BUS_NUMBER_ALIGN 0 | ||
4273 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_BUS_NUMBER_BITS 8 | ||
4274 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_BUS_NUMBER_SHIFT 8 | ||
4275 | |||
4276 | /* PCIE_TL :: TL_BUS_NO_DEV__NO__FUNC__NO :: DEVICE_NUMBER [07:03] */ | ||
4277 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_DEVICE_NUMBER_MASK 0x000000f8 | ||
4278 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_DEVICE_NUMBER_ALIGN 0 | ||
4279 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_DEVICE_NUMBER_BITS 5 | ||
4280 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_DEVICE_NUMBER_SHIFT 3 | ||
4281 | |||
4282 | /* PCIE_TL :: TL_BUS_NO_DEV__NO__FUNC__NO :: FUNCTION_NUMBER [02:00] */ | ||
4283 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_FUNCTION_NUMBER_MASK 0x00000007 | ||
4284 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_FUNCTION_NUMBER_ALIGN 0 | ||
4285 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_FUNCTION_NUMBER_BITS 3 | ||
4286 | #define PCIE_TL_TL_BUS_NO_DEV__NO__FUNC__NO_FUNCTION_NUMBER_SHIFT 0 | ||
4287 | |||
4288 | |||
4289 | /**************************************************************************** | ||
4290 | * PCIE_TL :: TL_DEBUG | ||
4291 | ***************************************************************************/ | ||
4292 | /* PCIE_TL :: TL_DEBUG :: A4_DEVICE_INDICATION_BIT [31:31] */ | ||
4293 | #define PCIE_TL_TL_DEBUG_A4_DEVICE_INDICATION_BIT_MASK 0x80000000 | ||
4294 | #define PCIE_TL_TL_DEBUG_A4_DEVICE_INDICATION_BIT_ALIGN 0 | ||
4295 | #define PCIE_TL_TL_DEBUG_A4_DEVICE_INDICATION_BIT_BITS 1 | ||
4296 | #define PCIE_TL_TL_DEBUG_A4_DEVICE_INDICATION_BIT_SHIFT 31 | ||
4297 | |||
4298 | /* PCIE_TL :: TL_DEBUG :: B1_DEVICE_INDICATION_BIT [30:30] */ | ||
4299 | #define PCIE_TL_TL_DEBUG_B1_DEVICE_INDICATION_BIT_MASK 0x40000000 | ||
4300 | #define PCIE_TL_TL_DEBUG_B1_DEVICE_INDICATION_BIT_ALIGN 0 | ||
4301 | #define PCIE_TL_TL_DEBUG_B1_DEVICE_INDICATION_BIT_BITS 1 | ||
4302 | #define PCIE_TL_TL_DEBUG_B1_DEVICE_INDICATION_BIT_SHIFT 30 | ||
4303 | |||
4304 | /* PCIE_TL :: TL_DEBUG :: RESERVED_0 [29:00] */ | ||
4305 | #define PCIE_TL_TL_DEBUG_RESERVED_0_MASK 0x3fffffff | ||
4306 | #define PCIE_TL_TL_DEBUG_RESERVED_0_ALIGN 0 | ||
4307 | #define PCIE_TL_TL_DEBUG_RESERVED_0_BITS 30 | ||
4308 | #define PCIE_TL_TL_DEBUG_RESERVED_0_SHIFT 0 | ||
4309 | |||
4310 | |||
4311 | /**************************************************************************** | ||
4312 | * BCM70012_TGT_TOP_PCIE_DLL | ||
4313 | ***************************************************************************/ | ||
4314 | /**************************************************************************** | ||
4315 | * PCIE_DLL :: DATA_LINK_CONTROL | ||
4316 | ***************************************************************************/ | ||
4317 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_0 [31:30] */ | ||
4318 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_0_MASK 0xc0000000 | ||
4319 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_0_ALIGN 0 | ||
4320 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_0_BITS 2 | ||
4321 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_0_SHIFT 30 | ||
4322 | |||
4323 | /* PCIE_DLL :: DATA_LINK_CONTROL :: CQ28001_FIX_ENABLE [29:29] */ | ||
4324 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ28001_FIX_ENABLE_MASK 0x20000000 | ||
4325 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ28001_FIX_ENABLE_ALIGN 0 | ||
4326 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ28001_FIX_ENABLE_BITS 1 | ||
4327 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ28001_FIX_ENABLE_SHIFT 29 | ||
4328 | |||
4329 | /* PCIE_DLL :: DATA_LINK_CONTROL :: CQ27820_FIX_ENABLE [28:28] */ | ||
4330 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ27820_FIX_ENABLE_MASK 0x10000000 | ||
4331 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ27820_FIX_ENABLE_ALIGN 0 | ||
4332 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ27820_FIX_ENABLE_BITS 1 | ||
4333 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ27820_FIX_ENABLE_SHIFT 28 | ||
4334 | |||
4335 | /* PCIE_DLL :: DATA_LINK_CONTROL :: ASPM_L1_ENABLE [27:27] */ | ||
4336 | #define PCIE_DLL_DATA_LINK_CONTROL_ASPM_L1_ENABLE_MASK 0x08000000 | ||
4337 | #define PCIE_DLL_DATA_LINK_CONTROL_ASPM_L1_ENABLE_ALIGN 0 | ||
4338 | #define PCIE_DLL_DATA_LINK_CONTROL_ASPM_L1_ENABLE_BITS 1 | ||
4339 | #define PCIE_DLL_DATA_LINK_CONTROL_ASPM_L1_ENABLE_SHIFT 27 | ||
4340 | |||
4341 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_1 [26:25] */ | ||
4342 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_1_MASK 0x06000000 | ||
4343 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_1_ALIGN 0 | ||
4344 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_1_BITS 2 | ||
4345 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_1_SHIFT 25 | ||
4346 | |||
4347 | /* PCIE_DLL :: DATA_LINK_CONTROL :: CQ11211 [24:24] */ | ||
4348 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ11211_MASK 0x01000000 | ||
4349 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ11211_ALIGN 0 | ||
4350 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ11211_BITS 1 | ||
4351 | #define PCIE_DLL_DATA_LINK_CONTROL_CQ11211_SHIFT 24 | ||
4352 | |||
4353 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_2 [23:23] */ | ||
4354 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_2_MASK 0x00800000 | ||
4355 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_2_ALIGN 0 | ||
4356 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_2_BITS 1 | ||
4357 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_2_SHIFT 23 | ||
4358 | |||
4359 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_3 [22:22] */ | ||
4360 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_3_MASK 0x00400000 | ||
4361 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_3_ALIGN 0 | ||
4362 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_3_BITS 1 | ||
4363 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_3_SHIFT 22 | ||
4364 | |||
4365 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_4 [21:21] */ | ||
4366 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_4_MASK 0x00200000 | ||
4367 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_4_ALIGN 0 | ||
4368 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_4_BITS 1 | ||
4369 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_4_SHIFT 21 | ||
4370 | |||
4371 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_5 [20:20] */ | ||
4372 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_5_MASK 0x00100000 | ||
4373 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_5_ALIGN 0 | ||
4374 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_5_BITS 1 | ||
4375 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_5_SHIFT 20 | ||
4376 | |||
4377 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_6 [19:19] */ | ||
4378 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_6_MASK 0x00080000 | ||
4379 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_6_ALIGN 0 | ||
4380 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_6_BITS 1 | ||
4381 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_6_SHIFT 19 | ||
4382 | |||
4383 | /* PCIE_DLL :: DATA_LINK_CONTROL :: PLL_REFSEL_SWITCH_CONTROL_CQ11011 [18:18] */ | ||
4384 | #define PCIE_DLL_DATA_LINK_CONTROL_PLL_REFSEL_SWITCH_CONTROL_CQ11011_MASK 0x00040000 | ||
4385 | #define PCIE_DLL_DATA_LINK_CONTROL_PLL_REFSEL_SWITCH_CONTROL_CQ11011_ALIGN 0 | ||
4386 | #define PCIE_DLL_DATA_LINK_CONTROL_PLL_REFSEL_SWITCH_CONTROL_CQ11011_BITS 1 | ||
4387 | #define PCIE_DLL_DATA_LINK_CONTROL_PLL_REFSEL_SWITCH_CONTROL_CQ11011_SHIFT 18 | ||
4388 | |||
4389 | /* PCIE_DLL :: DATA_LINK_CONTROL :: RESERVED_7 [17:17] */ | ||
4390 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_7_MASK 0x00020000 | ||
4391 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_7_ALIGN 0 | ||
4392 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_7_BITS 1 | ||
4393 | #define PCIE_DLL_DATA_LINK_CONTROL_RESERVED_7_SHIFT 17 | ||
4394 | |||
4395 | /* PCIE_DLL :: DATA_LINK_CONTROL :: POWER_MANAGEMENT_CONTROL [16:16] */ | ||
4396 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_MASK 0x00010000 | ||
4397 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_ALIGN 0 | ||
4398 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_BITS 1 | ||
4399 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_SHIFT 16 | ||
4400 | |||
4401 | /* PCIE_DLL :: DATA_LINK_CONTROL :: POWER_DOWN_SERDES_TRANSMITTER [15:15] */ | ||
4402 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_TRANSMITTER_MASK 0x00008000 | ||
4403 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_TRANSMITTER_ALIGN 0 | ||
4404 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_TRANSMITTER_BITS 1 | ||
4405 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_TRANSMITTER_SHIFT 15 | ||
4406 | |||
4407 | /* PCIE_DLL :: DATA_LINK_CONTROL :: POWER_DOWN_SERDES_PLL [14:14] */ | ||
4408 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_PLL_MASK 0x00004000 | ||
4409 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_PLL_ALIGN 0 | ||
4410 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_PLL_BITS 1 | ||
4411 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_PLL_SHIFT 14 | ||
4412 | |||
4413 | /* PCIE_DLL :: DATA_LINK_CONTROL :: POWER_DOWN_SERDES_RECEIVER [13:13] */ | ||
4414 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_RECEIVER_MASK 0x00002000 | ||
4415 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_RECEIVER_ALIGN 0 | ||
4416 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_RECEIVER_BITS 1 | ||
4417 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_DOWN_SERDES_RECEIVER_SHIFT 13 | ||
4418 | |||
4419 | /* PCIE_DLL :: DATA_LINK_CONTROL :: ENABLE_BEACON [12:12] */ | ||
4420 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_BEACON_MASK 0x00001000 | ||
4421 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_BEACON_ALIGN 0 | ||
4422 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_BEACON_BITS 1 | ||
4423 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_BEACON_SHIFT 12 | ||
4424 | |||
4425 | /* PCIE_DLL :: DATA_LINK_CONTROL :: AUTOMATIC_TIMER_THRESHOLD_ENABLE [11:11] */ | ||
4426 | #define PCIE_DLL_DATA_LINK_CONTROL_AUTOMATIC_TIMER_THRESHOLD_ENABLE_MASK 0x00000800 | ||
4427 | #define PCIE_DLL_DATA_LINK_CONTROL_AUTOMATIC_TIMER_THRESHOLD_ENABLE_ALIGN 0 | ||
4428 | #define PCIE_DLL_DATA_LINK_CONTROL_AUTOMATIC_TIMER_THRESHOLD_ENABLE_BITS 1 | ||
4429 | #define PCIE_DLL_DATA_LINK_CONTROL_AUTOMATIC_TIMER_THRESHOLD_ENABLE_SHIFT 11 | ||
4430 | |||
4431 | /* PCIE_DLL :: DATA_LINK_CONTROL :: ENABLE_DLLP_TIMEOUT_MECHANISM [10:10] */ | ||
4432 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_DLLP_TIMEOUT_MECHANISM_MASK 0x00000400 | ||
4433 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_DLLP_TIMEOUT_MECHANISM_ALIGN 0 | ||
4434 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_DLLP_TIMEOUT_MECHANISM_BITS 1 | ||
4435 | #define PCIE_DLL_DATA_LINK_CONTROL_ENABLE_DLLP_TIMEOUT_MECHANISM_SHIFT 10 | ||
4436 | |||
4437 | /* PCIE_DLL :: DATA_LINK_CONTROL :: CHECK_RECEIVE_FLOW_CONTROL_CREDITS [09:09] */ | ||
4438 | #define PCIE_DLL_DATA_LINK_CONTROL_CHECK_RECEIVE_FLOW_CONTROL_CREDITS_MASK 0x00000200 | ||
4439 | #define PCIE_DLL_DATA_LINK_CONTROL_CHECK_RECEIVE_FLOW_CONTROL_CREDITS_ALIGN 0 | ||
4440 | #define PCIE_DLL_DATA_LINK_CONTROL_CHECK_RECEIVE_FLOW_CONTROL_CREDITS_BITS 1 | ||
4441 | #define PCIE_DLL_DATA_LINK_CONTROL_CHECK_RECEIVE_FLOW_CONTROL_CREDITS_SHIFT 9 | ||
4442 | |||
4443 | /* PCIE_DLL :: DATA_LINK_CONTROL :: LINK_ENABLE [08:08] */ | ||
4444 | #define PCIE_DLL_DATA_LINK_CONTROL_LINK_ENABLE_MASK 0x00000100 | ||
4445 | #define PCIE_DLL_DATA_LINK_CONTROL_LINK_ENABLE_ALIGN 0 | ||
4446 | #define PCIE_DLL_DATA_LINK_CONTROL_LINK_ENABLE_BITS 1 | ||
4447 | #define PCIE_DLL_DATA_LINK_CONTROL_LINK_ENABLE_SHIFT 8 | ||
4448 | |||
4449 | /* PCIE_DLL :: DATA_LINK_CONTROL :: POWER_MANAGEMENT_CONTROL_2 [07:00] */ | ||
4450 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_2_MASK 0x000000ff | ||
4451 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_2_ALIGN 0 | ||
4452 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_2_BITS 8 | ||
4453 | #define PCIE_DLL_DATA_LINK_CONTROL_POWER_MANAGEMENT_CONTROL_2_SHIFT 0 | ||
4454 | |||
4455 | |||
4456 | /**************************************************************************** | ||
4457 | * PCIE_DLL :: DATA_LINK_STATUS | ||
4458 | ***************************************************************************/ | ||
4459 | /* PCIE_DLL :: DATA_LINK_STATUS :: RESERVED_0 [31:26] */ | ||
4460 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_0_MASK 0xfc000000 | ||
4461 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_0_ALIGN 0 | ||
4462 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_0_BITS 6 | ||
4463 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_0_SHIFT 26 | ||
4464 | |||
4465 | /* PCIE_DLL :: DATA_LINK_STATUS :: PHY_LINK_STATE [25:23] */ | ||
4466 | #define PCIE_DLL_DATA_LINK_STATUS_PHY_LINK_STATE_MASK 0x03800000 | ||
4467 | #define PCIE_DLL_DATA_LINK_STATUS_PHY_LINK_STATE_ALIGN 0 | ||
4468 | #define PCIE_DLL_DATA_LINK_STATUS_PHY_LINK_STATE_BITS 3 | ||
4469 | #define PCIE_DLL_DATA_LINK_STATUS_PHY_LINK_STATE_SHIFT 23 | ||
4470 | |||
4471 | /* PCIE_DLL :: DATA_LINK_STATUS :: POWER_MANAGEMENT_STATE [22:19] */ | ||
4472 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_STATE_MASK 0x00780000 | ||
4473 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_STATE_ALIGN 0 | ||
4474 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_STATE_BITS 4 | ||
4475 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_STATE_SHIFT 19 | ||
4476 | |||
4477 | /* PCIE_DLL :: DATA_LINK_STATUS :: POWER_MANAGEMENT_SUB_STATE [18:17] */ | ||
4478 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_SUB_STATE_MASK 0x00060000 | ||
4479 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_SUB_STATE_ALIGN 0 | ||
4480 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_SUB_STATE_BITS 2 | ||
4481 | #define PCIE_DLL_DATA_LINK_STATUS_POWER_MANAGEMENT_SUB_STATE_SHIFT 17 | ||
4482 | |||
4483 | /* PCIE_DLL :: DATA_LINK_STATUS :: DATA_LINK_UP [16:16] */ | ||
4484 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_UP_MASK 0x00010000 | ||
4485 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_UP_ALIGN 0 | ||
4486 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_UP_BITS 1 | ||
4487 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_UP_SHIFT 16 | ||
4488 | |||
4489 | /* PCIE_DLL :: DATA_LINK_STATUS :: RESERVED_1 [15:11] */ | ||
4490 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_1_MASK 0x0000f800 | ||
4491 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_1_ALIGN 0 | ||
4492 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_1_BITS 5 | ||
4493 | #define PCIE_DLL_DATA_LINK_STATUS_RESERVED_1_SHIFT 11 | ||
4494 | |||
4495 | /* PCIE_DLL :: DATA_LINK_STATUS :: PME_TURN_OFF_STATUS_IN_D0 [10:10] */ | ||
4496 | #define PCIE_DLL_DATA_LINK_STATUS_PME_TURN_OFF_STATUS_IN_D0_MASK 0x00000400 | ||
4497 | #define PCIE_DLL_DATA_LINK_STATUS_PME_TURN_OFF_STATUS_IN_D0_ALIGN 0 | ||
4498 | #define PCIE_DLL_DATA_LINK_STATUS_PME_TURN_OFF_STATUS_IN_D0_BITS 1 | ||
4499 | #define PCIE_DLL_DATA_LINK_STATUS_PME_TURN_OFF_STATUS_IN_D0_SHIFT 10 | ||
4500 | |||
4501 | /* PCIE_DLL :: DATA_LINK_STATUS :: FLOW_CONTROL_UPDATE_TIMEOUT [09:09] */ | ||
4502 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_UPDATE_TIMEOUT_MASK 0x00000200 | ||
4503 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_UPDATE_TIMEOUT_ALIGN 0 | ||
4504 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_UPDATE_TIMEOUT_BITS 1 | ||
4505 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_UPDATE_TIMEOUT_SHIFT 9 | ||
4506 | |||
4507 | /* PCIE_DLL :: DATA_LINK_STATUS :: FLOW_CONTROL_RECEIVE_OVERFLOW [08:08] */ | ||
4508 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_RECEIVE_OVERFLOW_MASK 0x00000100 | ||
4509 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_RECEIVE_OVERFLOW_ALIGN 0 | ||
4510 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_RECEIVE_OVERFLOW_BITS 1 | ||
4511 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_RECEIVE_OVERFLOW_SHIFT 8 | ||
4512 | |||
4513 | /* PCIE_DLL :: DATA_LINK_STATUS :: FLOW_CONTROL_PROTOCOL_ERROR [07:07] */ | ||
4514 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_MASK 0x00000080 | ||
4515 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_ALIGN 0 | ||
4516 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_BITS 1 | ||
4517 | #define PCIE_DLL_DATA_LINK_STATUS_FLOW_CONTROL_PROTOCOL_ERROR_SHIFT 7 | ||
4518 | |||
4519 | /* PCIE_DLL :: DATA_LINK_STATUS :: DATA_LINK_PROTOCOL_ERROR [06:06] */ | ||
4520 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_PROTOCOL_ERROR_MASK 0x00000040 | ||
4521 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_PROTOCOL_ERROR_ALIGN 0 | ||
4522 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_PROTOCOL_ERROR_BITS 1 | ||
4523 | #define PCIE_DLL_DATA_LINK_STATUS_DATA_LINK_PROTOCOL_ERROR_SHIFT 6 | ||
4524 | |||
4525 | /* PCIE_DLL :: DATA_LINK_STATUS :: REPLAY_ROLLOVER [05:05] */ | ||
4526 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_ROLLOVER_MASK 0x00000020 | ||
4527 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_ROLLOVER_ALIGN 0 | ||
4528 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_ROLLOVER_BITS 1 | ||
4529 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_ROLLOVER_SHIFT 5 | ||
4530 | |||
4531 | /* PCIE_DLL :: DATA_LINK_STATUS :: REPLAY_TIMEOUT [04:04] */ | ||
4532 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_TIMEOUT_MASK 0x00000010 | ||
4533 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_TIMEOUT_ALIGN 0 | ||
4534 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_TIMEOUT_BITS 1 | ||
4535 | #define PCIE_DLL_DATA_LINK_STATUS_REPLAY_TIMEOUT_SHIFT 4 | ||
4536 | |||
4537 | /* PCIE_DLL :: DATA_LINK_STATUS :: NAK_RECEIVED [03:03] */ | ||
4538 | #define PCIE_DLL_DATA_LINK_STATUS_NAK_RECEIVED_MASK 0x00000008 | ||
4539 | #define PCIE_DLL_DATA_LINK_STATUS_NAK_RECEIVED_ALIGN 0 | ||
4540 | #define PCIE_DLL_DATA_LINK_STATUS_NAK_RECEIVED_BITS 1 | ||
4541 | #define PCIE_DLL_DATA_LINK_STATUS_NAK_RECEIVED_SHIFT 3 | ||
4542 | |||
4543 | /* PCIE_DLL :: DATA_LINK_STATUS :: DLLP_ERROR [02:02] */ | ||
4544 | #define PCIE_DLL_DATA_LINK_STATUS_DLLP_ERROR_MASK 0x00000004 | ||
4545 | #define PCIE_DLL_DATA_LINK_STATUS_DLLP_ERROR_ALIGN 0 | ||
4546 | #define PCIE_DLL_DATA_LINK_STATUS_DLLP_ERROR_BITS 1 | ||
4547 | #define PCIE_DLL_DATA_LINK_STATUS_DLLP_ERROR_SHIFT 2 | ||
4548 | |||
4549 | /* PCIE_DLL :: DATA_LINK_STATUS :: BAD_TLP_SEQUENCE_NUMBER [01:01] */ | ||
4550 | #define PCIE_DLL_DATA_LINK_STATUS_BAD_TLP_SEQUENCE_NUMBER_MASK 0x00000002 | ||
4551 | #define PCIE_DLL_DATA_LINK_STATUS_BAD_TLP_SEQUENCE_NUMBER_ALIGN 0 | ||
4552 | #define PCIE_DLL_DATA_LINK_STATUS_BAD_TLP_SEQUENCE_NUMBER_BITS 1 | ||
4553 | #define PCIE_DLL_DATA_LINK_STATUS_BAD_TLP_SEQUENCE_NUMBER_SHIFT 1 | ||
4554 | |||
4555 | /* PCIE_DLL :: DATA_LINK_STATUS :: TLP_ERROR [00:00] */ | ||
4556 | #define PCIE_DLL_DATA_LINK_STATUS_TLP_ERROR_MASK 0x00000001 | ||
4557 | #define PCIE_DLL_DATA_LINK_STATUS_TLP_ERROR_ALIGN 0 | ||
4558 | #define PCIE_DLL_DATA_LINK_STATUS_TLP_ERROR_BITS 1 | ||
4559 | #define PCIE_DLL_DATA_LINK_STATUS_TLP_ERROR_SHIFT 0 | ||
4560 | |||
4561 | |||
4562 | /**************************************************************************** | ||
4563 | * PCIE_DLL :: DATA_LINK_ATTENTION | ||
4564 | ***************************************************************************/ | ||
4565 | /* PCIE_DLL :: DATA_LINK_ATTENTION :: RESERVED_0 [31:06] */ | ||
4566 | #define PCIE_DLL_DATA_LINK_ATTENTION_RESERVED_0_MASK 0xffffffc0 | ||
4567 | #define PCIE_DLL_DATA_LINK_ATTENTION_RESERVED_0_ALIGN 0 | ||
4568 | #define PCIE_DLL_DATA_LINK_ATTENTION_RESERVED_0_BITS 26 | ||
4569 | #define PCIE_DLL_DATA_LINK_ATTENTION_RESERVED_0_SHIFT 6 | ||
4570 | |||
4571 | /* PCIE_DLL :: DATA_LINK_ATTENTION :: DATA_LINK_LAYER_PACKET_TEST_INDICATOR [05:05] */ | ||
4572 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_PACKET_TEST_INDICATOR_MASK 0x00000020 | ||
4573 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_PACKET_TEST_INDICATOR_ALIGN 0 | ||
4574 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_PACKET_TEST_INDICATOR_BITS 1 | ||
4575 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_PACKET_TEST_INDICATOR_SHIFT 5 | ||
4576 | |||
4577 | /* PCIE_DLL :: DATA_LINK_ATTENTION :: DATA_LINK_LAYER_ERROR_ATTENTION_INDICATOR [04:04] */ | ||
4578 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_ERROR_ATTENTION_INDICATOR_MASK 0x00000010 | ||
4579 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_ERROR_ATTENTION_INDICATOR_ALIGN 0 | ||
4580 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_ERROR_ATTENTION_INDICATOR_BITS 1 | ||
4581 | #define PCIE_DLL_DATA_LINK_ATTENTION_DATA_LINK_LAYER_ERROR_ATTENTION_INDICATOR_SHIFT 4 | ||
4582 | |||
4583 | /* PCIE_DLL :: DATA_LINK_ATTENTION :: NAK_RECEIVED_COUNTER_ATTENTION_INDICATOR [03:03] */ | ||
4584 | #define PCIE_DLL_DATA_LINK_ATTENTION_NAK_RECEIVED_COUNTER_ATTENTION_INDICATOR_MASK 0x00000008 | ||
4585 | #define PCIE_DLL_DATA_LINK_ATTENTION_NAK_RECEIVED_COUNTER_ATTENTION_INDICATOR_ALIGN 0 | ||
4586 | #define PCIE_DLL_DATA_LINK_ATTENTION_NAK_RECEIVED_COUNTER_ATTENTION_INDICATOR_BITS 1 | ||
4587 | #define PCIE_DLL_DATA_LINK_ATTENTION_NAK_RECEIVED_COUNTER_ATTENTION_INDICATOR_SHIFT 3 | ||
4588 | |||
4589 | /* PCIE_DLL :: DATA_LINK_ATTENTION :: DLLP_ERROR_COUNTER_ATTENTION_INDICATOR [02:02] */ | ||
4590 | #define PCIE_DLL_DATA_LINK_ATTENTION_DLLP_ERROR_COUNTER_ATTENTION_INDICATOR_MASK 0x00000004 | ||
4591 | #define PCIE_DLL_DATA_LINK_ATTENTION_DLLP_ERROR_COUNTER_ATTENTION_INDICATOR_ALIGN 0 | ||
4592 | #define PCIE_DLL_DATA_LINK_ATTENTION_DLLP_ERROR_COUNTER_ATTENTION_INDICATOR_BITS 1 | ||
4593 | #define PCIE_DLL_DATA_LINK_ATTENTION_DLLP_ERROR_COUNTER_ATTENTION_INDICATOR_SHIFT 2 | ||
4594 | |||
4595 | /* PCIE_DLL :: DATA_LINK_ATTENTION :: TLP_BAD_SEQUENCE_COUNTER_ATTENTION_INDICATOR [01:01] */ | ||
4596 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_INDICATOR_MASK 0x00000002 | ||
4597 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_INDICATOR_ALIGN 0 | ||
4598 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_INDICATOR_BITS 1 | ||
4599 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_INDICATOR_SHIFT 1 | ||
4600 | |||
4601 | /* PCIE_DLL :: DATA_LINK_ATTENTION :: TLP_ERROR_COUNTER_ATTENTION_INDICATOR [00:00] */ | ||
4602 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_ERROR_COUNTER_ATTENTION_INDICATOR_MASK 0x00000001 | ||
4603 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_ERROR_COUNTER_ATTENTION_INDICATOR_ALIGN 0 | ||
4604 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_ERROR_COUNTER_ATTENTION_INDICATOR_BITS 1 | ||
4605 | #define PCIE_DLL_DATA_LINK_ATTENTION_TLP_ERROR_COUNTER_ATTENTION_INDICATOR_SHIFT 0 | ||
4606 | |||
4607 | |||
4608 | /**************************************************************************** | ||
4609 | * PCIE_DLL :: DATA_LINK_ATTENTION_MASK | ||
4610 | ***************************************************************************/ | ||
4611 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: RESERVED_0 [31:08] */ | ||
4612 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_RESERVED_0_MASK 0xffffff00 | ||
4613 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_RESERVED_0_ALIGN 0 | ||
4614 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_RESERVED_0_BITS 24 | ||
4615 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_RESERVED_0_SHIFT 8 | ||
4616 | |||
4617 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: UNUSED_0 [07:06] */ | ||
4618 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_UNUSED_0_MASK 0x000000c0 | ||
4619 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_UNUSED_0_ALIGN 0 | ||
4620 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_UNUSED_0_BITS 2 | ||
4621 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_UNUSED_0_SHIFT 6 | ||
4622 | |||
4623 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: DATA_LINK_LAYER_PACKET_TEST_ATTENTION_MASK [05:05] */ | ||
4624 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_PACKET_TEST_ATTENTION_MASK_MASK 0x00000020 | ||
4625 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_PACKET_TEST_ATTENTION_MASK_ALIGN 0 | ||
4626 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_PACKET_TEST_ATTENTION_MASK_BITS 1 | ||
4627 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_PACKET_TEST_ATTENTION_MASK_SHIFT 5 | ||
4628 | |||
4629 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: DATA_LINK_LAYER_ERROR_ATTENTION_MASK [04:04] */ | ||
4630 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_ERROR_ATTENTION_MASK_MASK 0x00000010 | ||
4631 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_ERROR_ATTENTION_MASK_ALIGN 0 | ||
4632 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_ERROR_ATTENTION_MASK_BITS 1 | ||
4633 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DATA_LINK_LAYER_ERROR_ATTENTION_MASK_SHIFT 4 | ||
4634 | |||
4635 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: NAK_RECEIVED_COUNTER_ATTENTION_MASK [03:03] */ | ||
4636 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_NAK_RECEIVED_COUNTER_ATTENTION_MASK_MASK 0x00000008 | ||
4637 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_NAK_RECEIVED_COUNTER_ATTENTION_MASK_ALIGN 0 | ||
4638 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_NAK_RECEIVED_COUNTER_ATTENTION_MASK_BITS 1 | ||
4639 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_NAK_RECEIVED_COUNTER_ATTENTION_MASK_SHIFT 3 | ||
4640 | |||
4641 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: DLLP_ERROR_COUNTER_ATTENTION_MASK [02:02] */ | ||
4642 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DLLP_ERROR_COUNTER_ATTENTION_MASK_MASK 0x00000004 | ||
4643 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DLLP_ERROR_COUNTER_ATTENTION_MASK_ALIGN 0 | ||
4644 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DLLP_ERROR_COUNTER_ATTENTION_MASK_BITS 1 | ||
4645 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_DLLP_ERROR_COUNTER_ATTENTION_MASK_SHIFT 2 | ||
4646 | |||
4647 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: TLP_BAD_SEQUENCE_COUNTER_ATTENTION_MASK [01:01] */ | ||
4648 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_MASK_MASK 0x00000002 | ||
4649 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_MASK_ALIGN 0 | ||
4650 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_MASK_BITS 1 | ||
4651 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_BAD_SEQUENCE_COUNTER_ATTENTION_MASK_SHIFT 1 | ||
4652 | |||
4653 | /* PCIE_DLL :: DATA_LINK_ATTENTION_MASK :: TLP_ERROR_COUNTER_ATTENTION_MASK [00:00] */ | ||
4654 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_ERROR_COUNTER_ATTENTION_MASK_MASK 0x00000001 | ||
4655 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_ERROR_COUNTER_ATTENTION_MASK_ALIGN 0 | ||
4656 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_ERROR_COUNTER_ATTENTION_MASK_BITS 1 | ||
4657 | #define PCIE_DLL_DATA_LINK_ATTENTION_MASK_TLP_ERROR_COUNTER_ATTENTION_MASK_SHIFT 0 | ||
4658 | |||
4659 | |||
4660 | /**************************************************************************** | ||
4661 | * PCIE_DLL :: NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG | ||
4662 | ***************************************************************************/ | ||
4663 | /* PCIE_DLL :: NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG :: RESERVED_0 [31:12] */ | ||
4664 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_MASK 0xfffff000 | ||
4665 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_ALIGN 0 | ||
4666 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_BITS 20 | ||
4667 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_SHIFT 12 | ||
4668 | |||
4669 | /* PCIE_DLL :: NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG :: NEXT_TRANSMIT_SEQUENCE_NUMBER [11:00] */ | ||
4670 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_NEXT_TRANSMIT_SEQUENCE_NUMBER_MASK 0x00000fff | ||
4671 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_NEXT_TRANSMIT_SEQUENCE_NUMBER_ALIGN 0 | ||
4672 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_NEXT_TRANSMIT_SEQUENCE_NUMBER_BITS 12 | ||
4673 | #define PCIE_DLL_NEXT_TRANSMIT_SEQUENCE_NUMBER_DEBUG_NEXT_TRANSMIT_SEQUENCE_NUMBER_SHIFT 0 | ||
4674 | |||
4675 | |||
4676 | /**************************************************************************** | ||
4677 | * PCIE_DLL :: ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG | ||
4678 | ***************************************************************************/ | ||
4679 | /* PCIE_DLL :: ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG :: RESERVED_0 [31:12] */ | ||
4680 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_MASK 0xfffff000 | ||
4681 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_ALIGN 0 | ||
4682 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_BITS 20 | ||
4683 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_SHIFT 12 | ||
4684 | |||
4685 | /* PCIE_DLL :: ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG :: ACK_ED_TRANSMIT_SEQUENCE_NUMBER [11:00] */ | ||
4686 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_MASK 0x00000fff | ||
4687 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_ALIGN 0 | ||
4688 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_BITS 12 | ||
4689 | #define PCIE_DLL_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_ACK_ED_TRANSMIT_SEQUENCE_NUMBER_SHIFT 0 | ||
4690 | |||
4691 | |||
4692 | /**************************************************************************** | ||
4693 | * PCIE_DLL :: PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG | ||
4694 | ***************************************************************************/ | ||
4695 | /* PCIE_DLL :: PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG :: RESERVED_0 [31:12] */ | ||
4696 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_MASK 0xfffff000 | ||
4697 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_ALIGN 0 | ||
4698 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_BITS 20 | ||
4699 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_RESERVED_0_SHIFT 12 | ||
4700 | |||
4701 | /* PCIE_DLL :: PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG :: PURGED_TRANSMIT_SEQUENCE_NUMBER [11:00] */ | ||
4702 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_PURGED_TRANSMIT_SEQUENCE_NUMBER_MASK 0x00000fff | ||
4703 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_PURGED_TRANSMIT_SEQUENCE_NUMBER_ALIGN 0 | ||
4704 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_PURGED_TRANSMIT_SEQUENCE_NUMBER_BITS 12 | ||
4705 | #define PCIE_DLL_PURGED_TRANSMIT_SEQUENCE_NUMBER_DEBUG_PURGED_TRANSMIT_SEQUENCE_NUMBER_SHIFT 0 | ||
4706 | |||
4707 | |||
4708 | /**************************************************************************** | ||
4709 | * PCIE_DLL :: RECEIVE_SEQUENCE_NUMBER_DEBUG | ||
4710 | ***************************************************************************/ | ||
4711 | /* PCIE_DLL :: RECEIVE_SEQUENCE_NUMBER_DEBUG :: RESERVED_0 [31:12] */ | ||
4712 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RESERVED_0_MASK 0xfffff000 | ||
4713 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RESERVED_0_ALIGN 0 | ||
4714 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RESERVED_0_BITS 20 | ||
4715 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RESERVED_0_SHIFT 12 | ||
4716 | |||
4717 | /* PCIE_DLL :: RECEIVE_SEQUENCE_NUMBER_DEBUG :: RECEIVE_SEQUENCE_NUMBER [11:00] */ | ||
4718 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RECEIVE_SEQUENCE_NUMBER_MASK 0x00000fff | ||
4719 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RECEIVE_SEQUENCE_NUMBER_ALIGN 0 | ||
4720 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RECEIVE_SEQUENCE_NUMBER_BITS 12 | ||
4721 | #define PCIE_DLL_RECEIVE_SEQUENCE_NUMBER_DEBUG_RECEIVE_SEQUENCE_NUMBER_SHIFT 0 | ||
4722 | |||
4723 | |||
4724 | /**************************************************************************** | ||
4725 | * PCIE_DLL :: DATA_LINK_REPLAY | ||
4726 | ***************************************************************************/ | ||
4727 | /* PCIE_DLL :: DATA_LINK_REPLAY :: RESERVED_0 [31:23] */ | ||
4728 | #define PCIE_DLL_DATA_LINK_REPLAY_RESERVED_0_MASK 0xff800000 | ||
4729 | #define PCIE_DLL_DATA_LINK_REPLAY_RESERVED_0_ALIGN 0 | ||
4730 | #define PCIE_DLL_DATA_LINK_REPLAY_RESERVED_0_BITS 9 | ||
4731 | #define PCIE_DLL_DATA_LINK_REPLAY_RESERVED_0_SHIFT 23 | ||
4732 | |||
4733 | /* PCIE_DLL :: DATA_LINK_REPLAY :: REPLAY_TIMEOUT_VALUE [22:10] */ | ||
4734 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_TIMEOUT_VALUE_MASK 0x007ffc00 | ||
4735 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_TIMEOUT_VALUE_ALIGN 0 | ||
4736 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_TIMEOUT_VALUE_BITS 13 | ||
4737 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_TIMEOUT_VALUE_SHIFT 10 | ||
4738 | |||
4739 | /* PCIE_DLL :: DATA_LINK_REPLAY :: REPLAY_BUFFER_SIZE [09:00] */ | ||
4740 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_BUFFER_SIZE_MASK 0x000003ff | ||
4741 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_BUFFER_SIZE_ALIGN 0 | ||
4742 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_BUFFER_SIZE_BITS 10 | ||
4743 | #define PCIE_DLL_DATA_LINK_REPLAY_REPLAY_BUFFER_SIZE_SHIFT 0 | ||
4744 | |||
4745 | |||
4746 | /**************************************************************************** | ||
4747 | * PCIE_DLL :: DATA_LINK_ACK_TIMEOUT | ||
4748 | ***************************************************************************/ | ||
4749 | /* PCIE_DLL :: DATA_LINK_ACK_TIMEOUT :: RESERVED_0 [31:11] */ | ||
4750 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_RESERVED_0_MASK 0xfffff800 | ||
4751 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_RESERVED_0_ALIGN 0 | ||
4752 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_RESERVED_0_BITS 21 | ||
4753 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_RESERVED_0_SHIFT 11 | ||
4754 | |||
4755 | /* PCIE_DLL :: DATA_LINK_ACK_TIMEOUT :: ACK_LATENCY_TIMEOUT_VALUE [10:00] */ | ||
4756 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_ACK_LATENCY_TIMEOUT_VALUE_MASK 0x000007ff | ||
4757 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_ACK_LATENCY_TIMEOUT_VALUE_ALIGN 0 | ||
4758 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_ACK_LATENCY_TIMEOUT_VALUE_BITS 11 | ||
4759 | #define PCIE_DLL_DATA_LINK_ACK_TIMEOUT_ACK_LATENCY_TIMEOUT_VALUE_SHIFT 0 | ||
4760 | |||
4761 | |||
4762 | /**************************************************************************** | ||
4763 | * PCIE_DLL :: POWER_MANAGEMENT_THRESHOLD | ||
4764 | ***************************************************************************/ | ||
4765 | /* PCIE_DLL :: POWER_MANAGEMENT_THRESHOLD :: RESERVED_0 [31:24] */ | ||
4766 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_RESERVED_0_MASK 0xff000000 | ||
4767 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_RESERVED_0_ALIGN 0 | ||
4768 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_RESERVED_0_BITS 8 | ||
4769 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_RESERVED_0_SHIFT 24 | ||
4770 | |||
4771 | /* PCIE_DLL :: POWER_MANAGEMENT_THRESHOLD :: L0_STAY_TIME [23:20] */ | ||
4772 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0_STAY_TIME_MASK 0x00f00000 | ||
4773 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0_STAY_TIME_ALIGN 0 | ||
4774 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0_STAY_TIME_BITS 4 | ||
4775 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0_STAY_TIME_SHIFT 20 | ||
4776 | |||
4777 | /* PCIE_DLL :: POWER_MANAGEMENT_THRESHOLD :: L1_STAY_TIME [19:16] */ | ||
4778 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_STAY_TIME_MASK 0x000f0000 | ||
4779 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_STAY_TIME_ALIGN 0 | ||
4780 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_STAY_TIME_BITS 4 | ||
4781 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_STAY_TIME_SHIFT 16 | ||
4782 | |||
4783 | /* PCIE_DLL :: POWER_MANAGEMENT_THRESHOLD :: L1_THRESHOLD [15:08] */ | ||
4784 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_THRESHOLD_MASK 0x0000ff00 | ||
4785 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_THRESHOLD_ALIGN 0 | ||
4786 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_THRESHOLD_BITS 8 | ||
4787 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L1_THRESHOLD_SHIFT 8 | ||
4788 | |||
4789 | /* PCIE_DLL :: POWER_MANAGEMENT_THRESHOLD :: L0S_THRESHOLD [07:00] */ | ||
4790 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0S_THRESHOLD_MASK 0x000000ff | ||
4791 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0S_THRESHOLD_ALIGN 0 | ||
4792 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0S_THRESHOLD_BITS 8 | ||
4793 | #define PCIE_DLL_POWER_MANAGEMENT_THRESHOLD_L0S_THRESHOLD_SHIFT 0 | ||
4794 | |||
4795 | |||
4796 | /**************************************************************************** | ||
4797 | * PCIE_DLL :: RETRY_BUFFER_WRITE_POINTER_DEBUG | ||
4798 | ***************************************************************************/ | ||
4799 | /* PCIE_DLL :: RETRY_BUFFER_WRITE_POINTER_DEBUG :: RESERVED_0 [31:11] */ | ||
4800 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RESERVED_0_MASK 0xfffff800 | ||
4801 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RESERVED_0_ALIGN 0 | ||
4802 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RESERVED_0_BITS 21 | ||
4803 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RESERVED_0_SHIFT 11 | ||
4804 | |||
4805 | /* PCIE_DLL :: RETRY_BUFFER_WRITE_POINTER_DEBUG :: RETRY_BUFFER_WRITE_POINTER [10:00] */ | ||
4806 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RETRY_BUFFER_WRITE_POINTER_MASK 0x000007ff | ||
4807 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RETRY_BUFFER_WRITE_POINTER_ALIGN 0 | ||
4808 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RETRY_BUFFER_WRITE_POINTER_BITS 11 | ||
4809 | #define PCIE_DLL_RETRY_BUFFER_WRITE_POINTER_DEBUG_RETRY_BUFFER_WRITE_POINTER_SHIFT 0 | ||
4810 | |||
4811 | |||
4812 | /**************************************************************************** | ||
4813 | * PCIE_DLL :: RETRY_BUFFER_READ_POINTER_DEBUG | ||
4814 | ***************************************************************************/ | ||
4815 | /* PCIE_DLL :: RETRY_BUFFER_READ_POINTER_DEBUG :: RESERVED_0 [31:11] */ | ||
4816 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RESERVED_0_MASK 0xfffff800 | ||
4817 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RESERVED_0_ALIGN 0 | ||
4818 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RESERVED_0_BITS 21 | ||
4819 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RESERVED_0_SHIFT 11 | ||
4820 | |||
4821 | /* PCIE_DLL :: RETRY_BUFFER_READ_POINTER_DEBUG :: RETRY_BUFFER_READ_POINTER [10:00] */ | ||
4822 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RETRY_BUFFER_READ_POINTER_MASK 0x000007ff | ||
4823 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RETRY_BUFFER_READ_POINTER_ALIGN 0 | ||
4824 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RETRY_BUFFER_READ_POINTER_BITS 11 | ||
4825 | #define PCIE_DLL_RETRY_BUFFER_READ_POINTER_DEBUG_RETRY_BUFFER_READ_POINTER_SHIFT 0 | ||
4826 | |||
4827 | |||
4828 | /**************************************************************************** | ||
4829 | * PCIE_DLL :: RETRY_BUFFER_PURGED_POINTER_DEBUG | ||
4830 | ***************************************************************************/ | ||
4831 | /* PCIE_DLL :: RETRY_BUFFER_PURGED_POINTER_DEBUG :: RESERVED_0 [31:11] */ | ||
4832 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RESERVED_0_MASK 0xfffff800 | ||
4833 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RESERVED_0_ALIGN 0 | ||
4834 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RESERVED_0_BITS 21 | ||
4835 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RESERVED_0_SHIFT 11 | ||
4836 | |||
4837 | /* PCIE_DLL :: RETRY_BUFFER_PURGED_POINTER_DEBUG :: RETRY_BUFFER_PURGED_POINTER [10:00] */ | ||
4838 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RETRY_BUFFER_PURGED_POINTER_MASK 0x000007ff | ||
4839 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RETRY_BUFFER_PURGED_POINTER_ALIGN 0 | ||
4840 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RETRY_BUFFER_PURGED_POINTER_BITS 11 | ||
4841 | #define PCIE_DLL_RETRY_BUFFER_PURGED_POINTER_DEBUG_RETRY_BUFFER_PURGED_POINTER_SHIFT 0 | ||
4842 | |||
4843 | |||
4844 | /**************************************************************************** | ||
4845 | * PCIE_DLL :: RETRY_BUFFER_READ_WRITE_DEBUG_PORT | ||
4846 | ***************************************************************************/ | ||
4847 | /* PCIE_DLL :: RETRY_BUFFER_READ_WRITE_DEBUG_PORT :: RETRY_BUFFER_DATA [31:00] */ | ||
4848 | #define PCIE_DLL_RETRY_BUFFER_READ_WRITE_DEBUG_PORT_RETRY_BUFFER_DATA_MASK 0xffffffff | ||
4849 | #define PCIE_DLL_RETRY_BUFFER_READ_WRITE_DEBUG_PORT_RETRY_BUFFER_DATA_ALIGN 0 | ||
4850 | #define PCIE_DLL_RETRY_BUFFER_READ_WRITE_DEBUG_PORT_RETRY_BUFFER_DATA_BITS 32 | ||
4851 | #define PCIE_DLL_RETRY_BUFFER_READ_WRITE_DEBUG_PORT_RETRY_BUFFER_DATA_SHIFT 0 | ||
4852 | |||
4853 | |||
4854 | /**************************************************************************** | ||
4855 | * PCIE_DLL :: ERROR_COUNT_THRESHOLD | ||
4856 | ***************************************************************************/ | ||
4857 | /* PCIE_DLL :: ERROR_COUNT_THRESHOLD :: RESERVED_0 [31:15] */ | ||
4858 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_RESERVED_0_MASK 0xffff8000 | ||
4859 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_RESERVED_0_ALIGN 0 | ||
4860 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_RESERVED_0_BITS 17 | ||
4861 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_RESERVED_0_SHIFT 15 | ||
4862 | |||
4863 | /* PCIE_DLL :: ERROR_COUNT_THRESHOLD :: BAD_SEQUENCE_NUMBER_COUNT_THRESHOLD [14:12] */ | ||
4864 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_BAD_SEQUENCE_NUMBER_COUNT_THRESHOLD_MASK 0x00007000 | ||
4865 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_BAD_SEQUENCE_NUMBER_COUNT_THRESHOLD_ALIGN 0 | ||
4866 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_BAD_SEQUENCE_NUMBER_COUNT_THRESHOLD_BITS 3 | ||
4867 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_BAD_SEQUENCE_NUMBER_COUNT_THRESHOLD_SHIFT 12 | ||
4868 | |||
4869 | /* PCIE_DLL :: ERROR_COUNT_THRESHOLD :: NAK_RECEIVED_COUNT_THRESHOLD [11:08] */ | ||
4870 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_NAK_RECEIVED_COUNT_THRESHOLD_MASK 0x00000f00 | ||
4871 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_NAK_RECEIVED_COUNT_THRESHOLD_ALIGN 0 | ||
4872 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_NAK_RECEIVED_COUNT_THRESHOLD_BITS 4 | ||
4873 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_NAK_RECEIVED_COUNT_THRESHOLD_SHIFT 8 | ||
4874 | |||
4875 | /* PCIE_DLL :: ERROR_COUNT_THRESHOLD :: DLLP_ERROR_COUNT_THRESHOLD [07:04] */ | ||
4876 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_DLLP_ERROR_COUNT_THRESHOLD_MASK 0x000000f0 | ||
4877 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_DLLP_ERROR_COUNT_THRESHOLD_ALIGN 0 | ||
4878 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_DLLP_ERROR_COUNT_THRESHOLD_BITS 4 | ||
4879 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_DLLP_ERROR_COUNT_THRESHOLD_SHIFT 4 | ||
4880 | |||
4881 | /* PCIE_DLL :: ERROR_COUNT_THRESHOLD :: TLP_ERROR_COUNT_THRESHOLD [03:00] */ | ||
4882 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_TLP_ERROR_COUNT_THRESHOLD_MASK 0x0000000f | ||
4883 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_TLP_ERROR_COUNT_THRESHOLD_ALIGN 0 | ||
4884 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_TLP_ERROR_COUNT_THRESHOLD_BITS 4 | ||
4885 | #define PCIE_DLL_ERROR_COUNT_THRESHOLD_TLP_ERROR_COUNT_THRESHOLD_SHIFT 0 | ||
4886 | |||
4887 | |||
4888 | /**************************************************************************** | ||
4889 | * PCIE_DLL :: TL_ERROR_COUNTER | ||
4890 | ***************************************************************************/ | ||
4891 | /* PCIE_DLL :: TL_ERROR_COUNTER :: RESERVED_0 [31:24] */ | ||
4892 | #define PCIE_DLL_TL_ERROR_COUNTER_RESERVED_0_MASK 0xff000000 | ||
4893 | #define PCIE_DLL_TL_ERROR_COUNTER_RESERVED_0_ALIGN 0 | ||
4894 | #define PCIE_DLL_TL_ERROR_COUNTER_RESERVED_0_BITS 8 | ||
4895 | #define PCIE_DLL_TL_ERROR_COUNTER_RESERVED_0_SHIFT 24 | ||
4896 | |||
4897 | /* PCIE_DLL :: TL_ERROR_COUNTER :: TLP_BAD_SEQUENCE_NUMBER_COUNTER [23:16] */ | ||
4898 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_BAD_SEQUENCE_NUMBER_COUNTER_MASK 0x00ff0000 | ||
4899 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_BAD_SEQUENCE_NUMBER_COUNTER_ALIGN 0 | ||
4900 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_BAD_SEQUENCE_NUMBER_COUNTER_BITS 8 | ||
4901 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_BAD_SEQUENCE_NUMBER_COUNTER_SHIFT 16 | ||
4902 | |||
4903 | /* PCIE_DLL :: TL_ERROR_COUNTER :: TLP_ERROR_COUNTER [15:00] */ | ||
4904 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_ERROR_COUNTER_MASK 0x0000ffff | ||
4905 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_ERROR_COUNTER_ALIGN 0 | ||
4906 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_ERROR_COUNTER_BITS 16 | ||
4907 | #define PCIE_DLL_TL_ERROR_COUNTER_TLP_ERROR_COUNTER_SHIFT 0 | ||
4908 | |||
4909 | |||
4910 | /**************************************************************************** | ||
4911 | * PCIE_DLL :: DLLP_ERROR_COUNTER | ||
4912 | ***************************************************************************/ | ||
4913 | /* PCIE_DLL :: DLLP_ERROR_COUNTER :: RESERVED_0 [31:16] */ | ||
4914 | #define PCIE_DLL_DLLP_ERROR_COUNTER_RESERVED_0_MASK 0xffff0000 | ||
4915 | #define PCIE_DLL_DLLP_ERROR_COUNTER_RESERVED_0_ALIGN 0 | ||
4916 | #define PCIE_DLL_DLLP_ERROR_COUNTER_RESERVED_0_BITS 16 | ||
4917 | #define PCIE_DLL_DLLP_ERROR_COUNTER_RESERVED_0_SHIFT 16 | ||
4918 | |||
4919 | /* PCIE_DLL :: DLLP_ERROR_COUNTER :: DLLP_ERROR_COUNTER [15:00] */ | ||
4920 | #define PCIE_DLL_DLLP_ERROR_COUNTER_DLLP_ERROR_COUNTER_MASK 0x0000ffff | ||
4921 | #define PCIE_DLL_DLLP_ERROR_COUNTER_DLLP_ERROR_COUNTER_ALIGN 0 | ||
4922 | #define PCIE_DLL_DLLP_ERROR_COUNTER_DLLP_ERROR_COUNTER_BITS 16 | ||
4923 | #define PCIE_DLL_DLLP_ERROR_COUNTER_DLLP_ERROR_COUNTER_SHIFT 0 | ||
4924 | |||
4925 | |||
4926 | /**************************************************************************** | ||
4927 | * PCIE_DLL :: NAK_RECEIVED_COUNTER | ||
4928 | ***************************************************************************/ | ||
4929 | /* PCIE_DLL :: NAK_RECEIVED_COUNTER :: RESERVED_0 [31:16] */ | ||
4930 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_RESERVED_0_MASK 0xffff0000 | ||
4931 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_RESERVED_0_ALIGN 0 | ||
4932 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_RESERVED_0_BITS 16 | ||
4933 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_RESERVED_0_SHIFT 16 | ||
4934 | |||
4935 | /* PCIE_DLL :: NAK_RECEIVED_COUNTER :: NAK_RECEIVED_COUNTER [15:00] */ | ||
4936 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_NAK_RECEIVED_COUNTER_MASK 0x0000ffff | ||
4937 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_NAK_RECEIVED_COUNTER_ALIGN 0 | ||
4938 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_NAK_RECEIVED_COUNTER_BITS 16 | ||
4939 | #define PCIE_DLL_NAK_RECEIVED_COUNTER_NAK_RECEIVED_COUNTER_SHIFT 0 | ||
4940 | |||
4941 | |||
4942 | /**************************************************************************** | ||
4943 | * PCIE_DLL :: DATA_LINK_TEST | ||
4944 | ***************************************************************************/ | ||
4945 | /* PCIE_DLL :: DATA_LINK_TEST :: RESERVED_0 [31:16] */ | ||
4946 | #define PCIE_DLL_DATA_LINK_TEST_RESERVED_0_MASK 0xffff0000 | ||
4947 | #define PCIE_DLL_DATA_LINK_TEST_RESERVED_0_ALIGN 0 | ||
4948 | #define PCIE_DLL_DATA_LINK_TEST_RESERVED_0_BITS 16 | ||
4949 | #define PCIE_DLL_DATA_LINK_TEST_RESERVED_0_SHIFT 16 | ||
4950 | |||
4951 | /* PCIE_DLL :: DATA_LINK_TEST :: STORE_RECEIVE_TLPS [15:15] */ | ||
4952 | #define PCIE_DLL_DATA_LINK_TEST_STORE_RECEIVE_TLPS_MASK 0x00008000 | ||
4953 | #define PCIE_DLL_DATA_LINK_TEST_STORE_RECEIVE_TLPS_ALIGN 0 | ||
4954 | #define PCIE_DLL_DATA_LINK_TEST_STORE_RECEIVE_TLPS_BITS 1 | ||
4955 | #define PCIE_DLL_DATA_LINK_TEST_STORE_RECEIVE_TLPS_SHIFT 15 | ||
4956 | |||
4957 | /* PCIE_DLL :: DATA_LINK_TEST :: DISABLE_TLPS [14:14] */ | ||
4958 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_TLPS_MASK 0x00004000 | ||
4959 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_TLPS_ALIGN 0 | ||
4960 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_TLPS_BITS 1 | ||
4961 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_TLPS_SHIFT 14 | ||
4962 | |||
4963 | /* PCIE_DLL :: DATA_LINK_TEST :: DISABLE_DLLPS [13:13] */ | ||
4964 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_DLLPS_MASK 0x00002000 | ||
4965 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_DLLPS_ALIGN 0 | ||
4966 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_DLLPS_BITS 1 | ||
4967 | #define PCIE_DLL_DATA_LINK_TEST_DISABLE_DLLPS_SHIFT 13 | ||
4968 | |||
4969 | /* PCIE_DLL :: DATA_LINK_TEST :: FORCE_PHY_LINK_UP [12:12] */ | ||
4970 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PHY_LINK_UP_MASK 0x00001000 | ||
4971 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PHY_LINK_UP_ALIGN 0 | ||
4972 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PHY_LINK_UP_BITS 1 | ||
4973 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PHY_LINK_UP_SHIFT 12 | ||
4974 | |||
4975 | /* PCIE_DLL :: DATA_LINK_TEST :: BYPASS_FLOW_CONTROL [11:11] */ | ||
4976 | #define PCIE_DLL_DATA_LINK_TEST_BYPASS_FLOW_CONTROL_MASK 0x00000800 | ||
4977 | #define PCIE_DLL_DATA_LINK_TEST_BYPASS_FLOW_CONTROL_ALIGN 0 | ||
4978 | #define PCIE_DLL_DATA_LINK_TEST_BYPASS_FLOW_CONTROL_BITS 1 | ||
4979 | #define PCIE_DLL_DATA_LINK_TEST_BYPASS_FLOW_CONTROL_SHIFT 11 | ||
4980 | |||
4981 | /* PCIE_DLL :: DATA_LINK_TEST :: ENABLE_RAM_CORE_CLOCK_MARGIN_TEST_MODE [10:10] */ | ||
4982 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_CORE_CLOCK_MARGIN_TEST_MODE_MASK 0x00000400 | ||
4983 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_CORE_CLOCK_MARGIN_TEST_MODE_ALIGN 0 | ||
4984 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_CORE_CLOCK_MARGIN_TEST_MODE_BITS 1 | ||
4985 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_CORE_CLOCK_MARGIN_TEST_MODE_SHIFT 10 | ||
4986 | |||
4987 | /* PCIE_DLL :: DATA_LINK_TEST :: ENABLE_RAM_OVERSTRESS_TEST_MODE [09:09] */ | ||
4988 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_OVERSTRESS_TEST_MODE_MASK 0x00000200 | ||
4989 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_OVERSTRESS_TEST_MODE_ALIGN 0 | ||
4990 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_OVERSTRESS_TEST_MODE_BITS 1 | ||
4991 | #define PCIE_DLL_DATA_LINK_TEST_ENABLE_RAM_OVERSTRESS_TEST_MODE_SHIFT 9 | ||
4992 | |||
4993 | /* PCIE_DLL :: DATA_LINK_TEST :: SPEED_UP_SLOW_CLOCK [08:08] */ | ||
4994 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_SLOW_CLOCK_MASK 0x00000100 | ||
4995 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_SLOW_CLOCK_ALIGN 0 | ||
4996 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_SLOW_CLOCK_BITS 1 | ||
4997 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_SLOW_CLOCK_SHIFT 8 | ||
4998 | |||
4999 | /* PCIE_DLL :: DATA_LINK_TEST :: SPEED_UP_COMPLETION_TIMER [07:07] */ | ||
5000 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_COMPLETION_TIMER_MASK 0x00000080 | ||
5001 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_COMPLETION_TIMER_ALIGN 0 | ||
5002 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_COMPLETION_TIMER_BITS 1 | ||
5003 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_COMPLETION_TIMER_SHIFT 7 | ||
5004 | |||
5005 | /* PCIE_DLL :: DATA_LINK_TEST :: SPEED_UP_REPLAY_TIMER [06:06] */ | ||
5006 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_REPLAY_TIMER_MASK 0x00000040 | ||
5007 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_REPLAY_TIMER_ALIGN 0 | ||
5008 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_REPLAY_TIMER_BITS 1 | ||
5009 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_REPLAY_TIMER_SHIFT 6 | ||
5010 | |||
5011 | /* PCIE_DLL :: DATA_LINK_TEST :: SPEED_UP_ACK_LATENCY_TIMER [05:05] */ | ||
5012 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_ACK_LATENCY_TIMER_MASK 0x00000020 | ||
5013 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_ACK_LATENCY_TIMER_ALIGN 0 | ||
5014 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_ACK_LATENCY_TIMER_BITS 1 | ||
5015 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_ACK_LATENCY_TIMER_SHIFT 5 | ||
5016 | |||
5017 | /* PCIE_DLL :: DATA_LINK_TEST :: SPEED_UP_PME_SERVICE_TIMER [04:04] */ | ||
5018 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_PME_SERVICE_TIMER_MASK 0x00000010 | ||
5019 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_PME_SERVICE_TIMER_ALIGN 0 | ||
5020 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_PME_SERVICE_TIMER_BITS 1 | ||
5021 | #define PCIE_DLL_DATA_LINK_TEST_SPEED_UP_PME_SERVICE_TIMER_SHIFT 4 | ||
5022 | |||
5023 | /* PCIE_DLL :: DATA_LINK_TEST :: FORCE_PURGE [03:03] */ | ||
5024 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PURGE_MASK 0x00000008 | ||
5025 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PURGE_ALIGN 0 | ||
5026 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PURGE_BITS 1 | ||
5027 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_PURGE_SHIFT 3 | ||
5028 | |||
5029 | /* PCIE_DLL :: DATA_LINK_TEST :: FORCE_RETRY [02:02] */ | ||
5030 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_RETRY_MASK 0x00000004 | ||
5031 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_RETRY_ALIGN 0 | ||
5032 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_RETRY_BITS 1 | ||
5033 | #define PCIE_DLL_DATA_LINK_TEST_FORCE_RETRY_SHIFT 2 | ||
5034 | |||
5035 | /* PCIE_DLL :: DATA_LINK_TEST :: INVERT_CRC [01:01] */ | ||
5036 | #define PCIE_DLL_DATA_LINK_TEST_INVERT_CRC_MASK 0x00000002 | ||
5037 | #define PCIE_DLL_DATA_LINK_TEST_INVERT_CRC_ALIGN 0 | ||
5038 | #define PCIE_DLL_DATA_LINK_TEST_INVERT_CRC_BITS 1 | ||
5039 | #define PCIE_DLL_DATA_LINK_TEST_INVERT_CRC_SHIFT 1 | ||
5040 | |||
5041 | /* PCIE_DLL :: DATA_LINK_TEST :: SEND_BAD_CRC_BIT [00:00] */ | ||
5042 | #define PCIE_DLL_DATA_LINK_TEST_SEND_BAD_CRC_BIT_MASK 0x00000001 | ||
5043 | #define PCIE_DLL_DATA_LINK_TEST_SEND_BAD_CRC_BIT_ALIGN 0 | ||
5044 | #define PCIE_DLL_DATA_LINK_TEST_SEND_BAD_CRC_BIT_BITS 1 | ||
5045 | #define PCIE_DLL_DATA_LINK_TEST_SEND_BAD_CRC_BIT_SHIFT 0 | ||
5046 | |||
5047 | |||
5048 | /**************************************************************************** | ||
5049 | * PCIE_DLL :: PACKET_BIST | ||
5050 | ***************************************************************************/ | ||
5051 | /* PCIE_DLL :: PACKET_BIST :: RESERVED_0 [31:24] */ | ||
5052 | #define PCIE_DLL_PACKET_BIST_RESERVED_0_MASK 0xff000000 | ||
5053 | #define PCIE_DLL_PACKET_BIST_RESERVED_0_ALIGN 0 | ||
5054 | #define PCIE_DLL_PACKET_BIST_RESERVED_0_BITS 8 | ||
5055 | #define PCIE_DLL_PACKET_BIST_RESERVED_0_SHIFT 24 | ||
5056 | |||
5057 | /* PCIE_DLL :: PACKET_BIST :: PACKET_CHECKER_LOCKED [23:23] */ | ||
5058 | #define PCIE_DLL_PACKET_BIST_PACKET_CHECKER_LOCKED_MASK 0x00800000 | ||
5059 | #define PCIE_DLL_PACKET_BIST_PACKET_CHECKER_LOCKED_ALIGN 0 | ||
5060 | #define PCIE_DLL_PACKET_BIST_PACKET_CHECKER_LOCKED_BITS 1 | ||
5061 | #define PCIE_DLL_PACKET_BIST_PACKET_CHECKER_LOCKED_SHIFT 23 | ||
5062 | |||
5063 | /* PCIE_DLL :: PACKET_BIST :: RECEIVE_MISMATCH [22:22] */ | ||
5064 | #define PCIE_DLL_PACKET_BIST_RECEIVE_MISMATCH_MASK 0x00400000 | ||
5065 | #define PCIE_DLL_PACKET_BIST_RECEIVE_MISMATCH_ALIGN 0 | ||
5066 | #define PCIE_DLL_PACKET_BIST_RECEIVE_MISMATCH_BITS 1 | ||
5067 | #define PCIE_DLL_PACKET_BIST_RECEIVE_MISMATCH_SHIFT 22 | ||
5068 | |||
5069 | /* PCIE_DLL :: PACKET_BIST :: ENABLE_RANDOM_TLP_LENGTH [21:21] */ | ||
5070 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_TLP_LENGTH_MASK 0x00200000 | ||
5071 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_TLP_LENGTH_ALIGN 0 | ||
5072 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_TLP_LENGTH_BITS 1 | ||
5073 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_TLP_LENGTH_SHIFT 21 | ||
5074 | |||
5075 | /* PCIE_DLL :: PACKET_BIST :: TLP_LENGTH [20:10] */ | ||
5076 | #define PCIE_DLL_PACKET_BIST_TLP_LENGTH_MASK 0x001ffc00 | ||
5077 | #define PCIE_DLL_PACKET_BIST_TLP_LENGTH_ALIGN 0 | ||
5078 | #define PCIE_DLL_PACKET_BIST_TLP_LENGTH_BITS 11 | ||
5079 | #define PCIE_DLL_PACKET_BIST_TLP_LENGTH_SHIFT 10 | ||
5080 | |||
5081 | /* PCIE_DLL :: PACKET_BIST :: ENABLE_RANDOM_IPG_LENGTH [09:09] */ | ||
5082 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_IPG_LENGTH_MASK 0x00000200 | ||
5083 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_IPG_LENGTH_ALIGN 0 | ||
5084 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_IPG_LENGTH_BITS 1 | ||
5085 | #define PCIE_DLL_PACKET_BIST_ENABLE_RANDOM_IPG_LENGTH_SHIFT 9 | ||
5086 | |||
5087 | /* PCIE_DLL :: PACKET_BIST :: IPG_LENGTH [08:02] */ | ||
5088 | #define PCIE_DLL_PACKET_BIST_IPG_LENGTH_MASK 0x000001fc | ||
5089 | #define PCIE_DLL_PACKET_BIST_IPG_LENGTH_ALIGN 0 | ||
5090 | #define PCIE_DLL_PACKET_BIST_IPG_LENGTH_BITS 7 | ||
5091 | #define PCIE_DLL_PACKET_BIST_IPG_LENGTH_SHIFT 2 | ||
5092 | |||
5093 | /* PCIE_DLL :: PACKET_BIST :: TRANSMIT_START [01:01] */ | ||
5094 | #define PCIE_DLL_PACKET_BIST_TRANSMIT_START_MASK 0x00000002 | ||
5095 | #define PCIE_DLL_PACKET_BIST_TRANSMIT_START_ALIGN 0 | ||
5096 | #define PCIE_DLL_PACKET_BIST_TRANSMIT_START_BITS 1 | ||
5097 | #define PCIE_DLL_PACKET_BIST_TRANSMIT_START_SHIFT 1 | ||
5098 | |||
5099 | /* PCIE_DLL :: PACKET_BIST :: ENABLE_PACKET_GENERATOR_TEST_MODE [00:00] */ | ||
5100 | #define PCIE_DLL_PACKET_BIST_ENABLE_PACKET_GENERATOR_TEST_MODE_MASK 0x00000001 | ||
5101 | #define PCIE_DLL_PACKET_BIST_ENABLE_PACKET_GENERATOR_TEST_MODE_ALIGN 0 | ||
5102 | #define PCIE_DLL_PACKET_BIST_ENABLE_PACKET_GENERATOR_TEST_MODE_BITS 1 | ||
5103 | #define PCIE_DLL_PACKET_BIST_ENABLE_PACKET_GENERATOR_TEST_MODE_SHIFT 0 | ||
5104 | |||
5105 | |||
5106 | /**************************************************************************** | ||
5107 | * PCIE_DLL :: LINK_PCIE_1_1_CONTROL | ||
5108 | ***************************************************************************/ | ||
5109 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: RTBF_CT_2_0 [31:29] */ | ||
5110 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_CT_2_0_MASK 0xe0000000 | ||
5111 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_CT_2_0_ALIGN 0 | ||
5112 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_CT_2_0_BITS 3 | ||
5113 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_CT_2_0_SHIFT 29 | ||
5114 | |||
5115 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: RTBF_SAM_1_0 [28:27] */ | ||
5116 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_SAM_1_0_MASK 0x18000000 | ||
5117 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_SAM_1_0_ALIGN 0 | ||
5118 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_SAM_1_0_BITS 2 | ||
5119 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_RTBF_SAM_1_0_SHIFT 27 | ||
5120 | |||
5121 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: UNUSED_0 [26:10] */ | ||
5122 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_UNUSED_0_MASK 0x07fffc00 | ||
5123 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_UNUSED_0_ALIGN 0 | ||
5124 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_UNUSED_0_BITS 17 | ||
5125 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_UNUSED_0_SHIFT 10 | ||
5126 | |||
5127 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: SELOCALXTAL [09:09] */ | ||
5128 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_SELOCALXTAL_MASK 0x00000200 | ||
5129 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_SELOCALXTAL_ALIGN 0 | ||
5130 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_SELOCALXTAL_BITS 1 | ||
5131 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_SELOCALXTAL_SHIFT 9 | ||
5132 | |||
5133 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: L2_PLL_POWERDOWN_DISABLE [08:08] */ | ||
5134 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_PLL_POWERDOWN_DISABLE_MASK 0x00000100 | ||
5135 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_PLL_POWERDOWN_DISABLE_ALIGN 0 | ||
5136 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_PLL_POWERDOWN_DISABLE_BITS 1 | ||
5137 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_PLL_POWERDOWN_DISABLE_SHIFT 8 | ||
5138 | |||
5139 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: L1_PLL_POWERDOWN_DISABLE [07:07] */ | ||
5140 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_POWERDOWN_DISABLE_MASK 0x00000080 | ||
5141 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_POWERDOWN_DISABLE_ALIGN 0 | ||
5142 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_POWERDOWN_DISABLE_BITS 1 | ||
5143 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_POWERDOWN_DISABLE_SHIFT 7 | ||
5144 | |||
5145 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: L2_D3PM_CLKREQ_DISABLE [06:06] */ | ||
5146 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_D3PM_CLKREQ_DISABLE_MASK 0x00000040 | ||
5147 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_D3PM_CLKREQ_DISABLE_ALIGN 0 | ||
5148 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_D3PM_CLKREQ_DISABLE_BITS 1 | ||
5149 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L2_D3PM_CLKREQ_DISABLE_SHIFT 6 | ||
5150 | |||
5151 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: L1_D3PM_CLKREQ_DISABLE [05:05] */ | ||
5152 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_D3PM_CLKREQ_DISABLE_MASK 0x00000020 | ||
5153 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_D3PM_CLKREQ_DISABLE_ALIGN 0 | ||
5154 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_D3PM_CLKREQ_DISABLE_BITS 1 | ||
5155 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_D3PM_CLKREQ_DISABLE_SHIFT 5 | ||
5156 | |||
5157 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: L1_ASPM_CLKREQ_DISABLE [04:04] */ | ||
5158 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_ASPM_CLKREQ_DISABLE_MASK 0x00000010 | ||
5159 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_ASPM_CLKREQ_DISABLE_ALIGN 0 | ||
5160 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_ASPM_CLKREQ_DISABLE_BITS 1 | ||
5161 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_ASPM_CLKREQ_DISABLE_SHIFT 4 | ||
5162 | |||
5163 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: L1_PLL_PD_W_O_CLKREQ [03:03] */ | ||
5164 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_PD_W_O_CLKREQ_MASK 0x00000008 | ||
5165 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_PD_W_O_CLKREQ_ALIGN 0 | ||
5166 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_PD_W_O_CLKREQ_BITS 1 | ||
5167 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_L1_PLL_PD_W_O_CLKREQ_SHIFT 3 | ||
5168 | |||
5169 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: DASPM10USTIMER [02:02] */ | ||
5170 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DASPM10USTIMER_MASK 0x00000004 | ||
5171 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DASPM10USTIMER_ALIGN 0 | ||
5172 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DASPM10USTIMER_BITS 1 | ||
5173 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DASPM10USTIMER_SHIFT 2 | ||
5174 | |||
5175 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: DFFU_EL1 [01:01] */ | ||
5176 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFFU_EL1_MASK 0x00000002 | ||
5177 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFFU_EL1_ALIGN 0 | ||
5178 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFFU_EL1_BITS 1 | ||
5179 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFFU_EL1_SHIFT 1 | ||
5180 | |||
5181 | /* PCIE_DLL :: LINK_PCIE_1_1_CONTROL :: DFLOWCTLUPDATE1_1 [00:00] */ | ||
5182 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFLOWCTLUPDATE1_1_MASK 0x00000001 | ||
5183 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFLOWCTLUPDATE1_1_ALIGN 0 | ||
5184 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFLOWCTLUPDATE1_1_BITS 1 | ||
5185 | #define PCIE_DLL_LINK_PCIE_1_1_CONTROL_DFLOWCTLUPDATE1_1_SHIFT 0 | ||
5186 | |||
5187 | |||
5188 | /**************************************************************************** | ||
5189 | * BCM70012_TGT_TOP_PCIE_PHY | ||
5190 | ***************************************************************************/ | ||
5191 | /**************************************************************************** | ||
5192 | * PCIE_PHY :: PHY_MODE | ||
5193 | ***************************************************************************/ | ||
5194 | /* PCIE_PHY :: PHY_MODE :: RESERVED_0 [31:04] */ | ||
5195 | #define PCIE_PHY_PHY_MODE_RESERVED_0_MASK 0xfffffff0 | ||
5196 | #define PCIE_PHY_PHY_MODE_RESERVED_0_ALIGN 0 | ||
5197 | #define PCIE_PHY_PHY_MODE_RESERVED_0_BITS 28 | ||
5198 | #define PCIE_PHY_PHY_MODE_RESERVED_0_SHIFT 4 | ||
5199 | |||
5200 | /* PCIE_PHY :: PHY_MODE :: UPSTREAM_DEV [03:03] */ | ||
5201 | #define PCIE_PHY_PHY_MODE_UPSTREAM_DEV_MASK 0x00000008 | ||
5202 | #define PCIE_PHY_PHY_MODE_UPSTREAM_DEV_ALIGN 0 | ||
5203 | #define PCIE_PHY_PHY_MODE_UPSTREAM_DEV_BITS 1 | ||
5204 | #define PCIE_PHY_PHY_MODE_UPSTREAM_DEV_SHIFT 3 | ||
5205 | |||
5206 | /* PCIE_PHY :: PHY_MODE :: SERDES_SA_MODE [02:02] */ | ||
5207 | #define PCIE_PHY_PHY_MODE_SERDES_SA_MODE_MASK 0x00000004 | ||
5208 | #define PCIE_PHY_PHY_MODE_SERDES_SA_MODE_ALIGN 0 | ||
5209 | #define PCIE_PHY_PHY_MODE_SERDES_SA_MODE_BITS 1 | ||
5210 | #define PCIE_PHY_PHY_MODE_SERDES_SA_MODE_SHIFT 2 | ||
5211 | |||
5212 | /* PCIE_PHY :: PHY_MODE :: LINK_DISABLE [01:01] */ | ||
5213 | #define PCIE_PHY_PHY_MODE_LINK_DISABLE_MASK 0x00000002 | ||
5214 | #define PCIE_PHY_PHY_MODE_LINK_DISABLE_ALIGN 0 | ||
5215 | #define PCIE_PHY_PHY_MODE_LINK_DISABLE_BITS 1 | ||
5216 | #define PCIE_PHY_PHY_MODE_LINK_DISABLE_SHIFT 1 | ||
5217 | |||
5218 | /* PCIE_PHY :: PHY_MODE :: SOFT_RESET [00:00] */ | ||
5219 | #define PCIE_PHY_PHY_MODE_SOFT_RESET_MASK 0x00000001 | ||
5220 | #define PCIE_PHY_PHY_MODE_SOFT_RESET_ALIGN 0 | ||
5221 | #define PCIE_PHY_PHY_MODE_SOFT_RESET_BITS 1 | ||
5222 | #define PCIE_PHY_PHY_MODE_SOFT_RESET_SHIFT 0 | ||
5223 | |||
5224 | |||
5225 | /**************************************************************************** | ||
5226 | * PCIE_PHY :: PHY_LINK_STATUS | ||
5227 | ***************************************************************************/ | ||
5228 | /* PCIE_PHY :: PHY_LINK_STATUS :: RESERVED_0 [31:10] */ | ||
5229 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_0_MASK 0xfffffc00 | ||
5230 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_0_ALIGN 0 | ||
5231 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_0_BITS 22 | ||
5232 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_0_SHIFT 10 | ||
5233 | |||
5234 | /* PCIE_PHY :: PHY_LINK_STATUS :: BUFFER_OVERRUN [09:09] */ | ||
5235 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_OVERRUN_MASK 0x00000200 | ||
5236 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_OVERRUN_ALIGN 0 | ||
5237 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_OVERRUN_BITS 1 | ||
5238 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_OVERRUN_SHIFT 9 | ||
5239 | |||
5240 | /* PCIE_PHY :: PHY_LINK_STATUS :: BUFFER_UNDERRUN [08:08] */ | ||
5241 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_UNDERRUN_MASK 0x00000100 | ||
5242 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_UNDERRUN_ALIGN 0 | ||
5243 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_UNDERRUN_BITS 1 | ||
5244 | #define PCIE_PHY_PHY_LINK_STATUS_BUFFER_UNDERRUN_SHIFT 8 | ||
5245 | |||
5246 | /* PCIE_PHY :: PHY_LINK_STATUS :: LINK_PARTNER_REQUEST_LOOPBACK [07:07] */ | ||
5247 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_REQUEST_LOOPBACK_MASK 0x00000080 | ||
5248 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_REQUEST_LOOPBACK_ALIGN 0 | ||
5249 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_REQUEST_LOOPBACK_BITS 1 | ||
5250 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_REQUEST_LOOPBACK_SHIFT 7 | ||
5251 | |||
5252 | /* PCIE_PHY :: PHY_LINK_STATUS :: LINK_PARTNER_DISABLE_SCRAMBLER [06:06] */ | ||
5253 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_DISABLE_SCRAMBLER_MASK 0x00000040 | ||
5254 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_DISABLE_SCRAMBLER_ALIGN 0 | ||
5255 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_DISABLE_SCRAMBLER_BITS 1 | ||
5256 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_PARTNER_DISABLE_SCRAMBLER_SHIFT 6 | ||
5257 | |||
5258 | /* PCIE_PHY :: PHY_LINK_STATUS :: EXTENDED_SYNCH [05:05] */ | ||
5259 | #define PCIE_PHY_PHY_LINK_STATUS_EXTENDED_SYNCH_MASK 0x00000020 | ||
5260 | #define PCIE_PHY_PHY_LINK_STATUS_EXTENDED_SYNCH_ALIGN 0 | ||
5261 | #define PCIE_PHY_PHY_LINK_STATUS_EXTENDED_SYNCH_BITS 1 | ||
5262 | #define PCIE_PHY_PHY_LINK_STATUS_EXTENDED_SYNCH_SHIFT 5 | ||
5263 | |||
5264 | /* PCIE_PHY :: PHY_LINK_STATUS :: POLARITY_INVERTED [04:04] */ | ||
5265 | #define PCIE_PHY_PHY_LINK_STATUS_POLARITY_INVERTED_MASK 0x00000010 | ||
5266 | #define PCIE_PHY_PHY_LINK_STATUS_POLARITY_INVERTED_ALIGN 0 | ||
5267 | #define PCIE_PHY_PHY_LINK_STATUS_POLARITY_INVERTED_BITS 1 | ||
5268 | #define PCIE_PHY_PHY_LINK_STATUS_POLARITY_INVERTED_SHIFT 4 | ||
5269 | |||
5270 | /* PCIE_PHY :: PHY_LINK_STATUS :: LINK_UP [03:03] */ | ||
5271 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_UP_MASK 0x00000008 | ||
5272 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_UP_ALIGN 0 | ||
5273 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_UP_BITS 1 | ||
5274 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_UP_SHIFT 3 | ||
5275 | |||
5276 | /* PCIE_PHY :: PHY_LINK_STATUS :: LINK_TRAINING [02:02] */ | ||
5277 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_TRAINING_MASK 0x00000004 | ||
5278 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_TRAINING_ALIGN 0 | ||
5279 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_TRAINING_BITS 1 | ||
5280 | #define PCIE_PHY_PHY_LINK_STATUS_LINK_TRAINING_SHIFT 2 | ||
5281 | |||
5282 | /* PCIE_PHY :: PHY_LINK_STATUS :: RECEIVE_DATA_VALID [01:01] */ | ||
5283 | #define PCIE_PHY_PHY_LINK_STATUS_RECEIVE_DATA_VALID_MASK 0x00000002 | ||
5284 | #define PCIE_PHY_PHY_LINK_STATUS_RECEIVE_DATA_VALID_ALIGN 0 | ||
5285 | #define PCIE_PHY_PHY_LINK_STATUS_RECEIVE_DATA_VALID_BITS 1 | ||
5286 | #define PCIE_PHY_PHY_LINK_STATUS_RECEIVE_DATA_VALID_SHIFT 1 | ||
5287 | |||
5288 | /* PCIE_PHY :: PHY_LINK_STATUS :: RESERVED_1 [00:00] */ | ||
5289 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_1_MASK 0x00000001 | ||
5290 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_1_ALIGN 0 | ||
5291 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_1_BITS 1 | ||
5292 | #define PCIE_PHY_PHY_LINK_STATUS_RESERVED_1_SHIFT 0 | ||
5293 | |||
5294 | |||
5295 | /**************************************************************************** | ||
5296 | * PCIE_PHY :: PHY_LINK_LTSSM_CONTROL | ||
5297 | ***************************************************************************/ | ||
5298 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: RESERVED_0 [31:08] */ | ||
5299 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESERVED_0_MASK 0xffffff00 | ||
5300 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESERVED_0_ALIGN 0 | ||
5301 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESERVED_0_BITS 24 | ||
5302 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESERVED_0_SHIFT 8 | ||
5303 | |||
5304 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: DISABLESCRAMBLE [07:07] */ | ||
5305 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESCRAMBLE_MASK 0x00000080 | ||
5306 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESCRAMBLE_ALIGN 0 | ||
5307 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESCRAMBLE_BITS 1 | ||
5308 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESCRAMBLE_SHIFT 7 | ||
5309 | |||
5310 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: DETECTSTATE [06:06] */ | ||
5311 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DETECTSTATE_MASK 0x00000040 | ||
5312 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DETECTSTATE_ALIGN 0 | ||
5313 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DETECTSTATE_BITS 1 | ||
5314 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DETECTSTATE_SHIFT 6 | ||
5315 | |||
5316 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: POLLINGSTATE [05:05] */ | ||
5317 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_POLLINGSTATE_MASK 0x00000020 | ||
5318 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_POLLINGSTATE_ALIGN 0 | ||
5319 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_POLLINGSTATE_BITS 1 | ||
5320 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_POLLINGSTATE_SHIFT 5 | ||
5321 | |||
5322 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: CONFIGSTATE [04:04] */ | ||
5323 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_CONFIGSTATE_MASK 0x00000010 | ||
5324 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_CONFIGSTATE_ALIGN 0 | ||
5325 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_CONFIGSTATE_BITS 1 | ||
5326 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_CONFIGSTATE_SHIFT 4 | ||
5327 | |||
5328 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: RECOVSTATE [03:03] */ | ||
5329 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RECOVSTATE_MASK 0x00000008 | ||
5330 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RECOVSTATE_ALIGN 0 | ||
5331 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RECOVSTATE_BITS 1 | ||
5332 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RECOVSTATE_SHIFT 3 | ||
5333 | |||
5334 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: EXTLBSTATE [02:02] */ | ||
5335 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_EXTLBSTATE_MASK 0x00000004 | ||
5336 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_EXTLBSTATE_ALIGN 0 | ||
5337 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_EXTLBSTATE_BITS 1 | ||
5338 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_EXTLBSTATE_SHIFT 2 | ||
5339 | |||
5340 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: RESETSTATE [01:01] */ | ||
5341 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESETSTATE_MASK 0x00000002 | ||
5342 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESETSTATE_ALIGN 0 | ||
5343 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESETSTATE_BITS 1 | ||
5344 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_RESETSTATE_SHIFT 1 | ||
5345 | |||
5346 | /* PCIE_PHY :: PHY_LINK_LTSSM_CONTROL :: DISABLESTATE [00:00] */ | ||
5347 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESTATE_MASK 0x00000001 | ||
5348 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESTATE_ALIGN 0 | ||
5349 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESTATE_BITS 1 | ||
5350 | #define PCIE_PHY_PHY_LINK_LTSSM_CONTROL_DISABLESTATE_SHIFT 0 | ||
5351 | |||
5352 | |||
5353 | /**************************************************************************** | ||
5354 | * PCIE_PHY :: PHY_LINK_TRAINING_LINK_NUMBER | ||
5355 | ***************************************************************************/ | ||
5356 | /* PCIE_PHY :: PHY_LINK_TRAINING_LINK_NUMBER :: RESERVED_0 [31:08] */ | ||
5357 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_RESERVED_0_MASK 0xffffff00 | ||
5358 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_RESERVED_0_ALIGN 0 | ||
5359 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_RESERVED_0_BITS 24 | ||
5360 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_RESERVED_0_SHIFT 8 | ||
5361 | |||
5362 | /* PCIE_PHY :: PHY_LINK_TRAINING_LINK_NUMBER :: LANE_NUMBER [07:00] */ | ||
5363 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_LANE_NUMBER_MASK 0x000000ff | ||
5364 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_LANE_NUMBER_ALIGN 0 | ||
5365 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_LANE_NUMBER_BITS 8 | ||
5366 | #define PCIE_PHY_PHY_LINK_TRAINING_LINK_NUMBER_LANE_NUMBER_SHIFT 0 | ||
5367 | |||
5368 | |||
5369 | /**************************************************************************** | ||
5370 | * PCIE_PHY :: PHY_LINK_TRAINING_LANE_NUMBER | ||
5371 | ***************************************************************************/ | ||
5372 | /* PCIE_PHY :: PHY_LINK_TRAINING_LANE_NUMBER :: RESERVED_0 [31:08] */ | ||
5373 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_RESERVED_0_MASK 0xffffff00 | ||
5374 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_RESERVED_0_ALIGN 0 | ||
5375 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_RESERVED_0_BITS 24 | ||
5376 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_RESERVED_0_SHIFT 8 | ||
5377 | |||
5378 | /* PCIE_PHY :: PHY_LINK_TRAINING_LANE_NUMBER :: LANE_NUMBER [07:00] */ | ||
5379 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_LANE_NUMBER_MASK 0x000000ff | ||
5380 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_LANE_NUMBER_ALIGN 0 | ||
5381 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_LANE_NUMBER_BITS 8 | ||
5382 | #define PCIE_PHY_PHY_LINK_TRAINING_LANE_NUMBER_LANE_NUMBER_SHIFT 0 | ||
5383 | |||
5384 | |||
5385 | /**************************************************************************** | ||
5386 | * PCIE_PHY :: PHY_LINK_TRAINING_N_FTS | ||
5387 | ***************************************************************************/ | ||
5388 | /* PCIE_PHY :: PHY_LINK_TRAINING_N_FTS :: RESERVED_0 [31:25] */ | ||
5389 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RESERVED_0_MASK 0xfe000000 | ||
5390 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RESERVED_0_ALIGN 0 | ||
5391 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RESERVED_0_BITS 7 | ||
5392 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RESERVED_0_SHIFT 25 | ||
5393 | |||
5394 | /* PCIE_PHY :: PHY_LINK_TRAINING_N_FTS :: TRANSMITTER_N_FTS_OVERRIDE [24:24] */ | ||
5395 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_MASK 0x01000000 | ||
5396 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_ALIGN 0 | ||
5397 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_BITS 1 | ||
5398 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_SHIFT 24 | ||
5399 | |||
5400 | /* PCIE_PHY :: PHY_LINK_TRAINING_N_FTS :: TRANSMITTER_N_FTS_OVERRIDE_VALUE [23:16] */ | ||
5401 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_VALUE_MASK 0x00ff0000 | ||
5402 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_VALUE_ALIGN 0 | ||
5403 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_VALUE_BITS 8 | ||
5404 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_OVERRIDE_VALUE_SHIFT 16 | ||
5405 | |||
5406 | /* PCIE_PHY :: PHY_LINK_TRAINING_N_FTS :: TRANSMITTER_N_FTS [15:08] */ | ||
5407 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_MASK 0x0000ff00 | ||
5408 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_ALIGN 0 | ||
5409 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_BITS 8 | ||
5410 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_TRANSMITTER_N_FTS_SHIFT 8 | ||
5411 | |||
5412 | /* PCIE_PHY :: PHY_LINK_TRAINING_N_FTS :: RECEIVER_N_FTS [07:00] */ | ||
5413 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RECEIVER_N_FTS_MASK 0x000000ff | ||
5414 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RECEIVER_N_FTS_ALIGN 0 | ||
5415 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RECEIVER_N_FTS_BITS 8 | ||
5416 | #define PCIE_PHY_PHY_LINK_TRAINING_N_FTS_RECEIVER_N_FTS_SHIFT 0 | ||
5417 | |||
5418 | |||
5419 | /**************************************************************************** | ||
5420 | * PCIE_PHY :: PHY_ATTENTION | ||
5421 | ***************************************************************************/ | ||
5422 | /* PCIE_PHY :: PHY_ATTENTION :: RESERVED_0 [31:08] */ | ||
5423 | #define PCIE_PHY_PHY_ATTENTION_RESERVED_0_MASK 0xffffff00 | ||
5424 | #define PCIE_PHY_PHY_ATTENTION_RESERVED_0_ALIGN 0 | ||
5425 | #define PCIE_PHY_PHY_ATTENTION_RESERVED_0_BITS 24 | ||
5426 | #define PCIE_PHY_PHY_ATTENTION_RESERVED_0_SHIFT 8 | ||
5427 | |||
5428 | /* PCIE_PHY :: PHY_ATTENTION :: HOT_RESET [07:07] */ | ||
5429 | #define PCIE_PHY_PHY_ATTENTION_HOT_RESET_MASK 0x00000080 | ||
5430 | #define PCIE_PHY_PHY_ATTENTION_HOT_RESET_ALIGN 0 | ||
5431 | #define PCIE_PHY_PHY_ATTENTION_HOT_RESET_BITS 1 | ||
5432 | #define PCIE_PHY_PHY_ATTENTION_HOT_RESET_SHIFT 7 | ||
5433 | |||
5434 | /* PCIE_PHY :: PHY_ATTENTION :: LINK_DOWN [06:06] */ | ||
5435 | #define PCIE_PHY_PHY_ATTENTION_LINK_DOWN_MASK 0x00000040 | ||
5436 | #define PCIE_PHY_PHY_ATTENTION_LINK_DOWN_ALIGN 0 | ||
5437 | #define PCIE_PHY_PHY_ATTENTION_LINK_DOWN_BITS 1 | ||
5438 | #define PCIE_PHY_PHY_ATTENTION_LINK_DOWN_SHIFT 6 | ||
5439 | |||
5440 | /* PCIE_PHY :: PHY_ATTENTION :: TRAINING_ERROR [05:05] */ | ||
5441 | #define PCIE_PHY_PHY_ATTENTION_TRAINING_ERROR_MASK 0x00000020 | ||
5442 | #define PCIE_PHY_PHY_ATTENTION_TRAINING_ERROR_ALIGN 0 | ||
5443 | #define PCIE_PHY_PHY_ATTENTION_TRAINING_ERROR_BITS 1 | ||
5444 | #define PCIE_PHY_PHY_ATTENTION_TRAINING_ERROR_SHIFT 5 | ||
5445 | |||
5446 | /* PCIE_PHY :: PHY_ATTENTION :: BUFFER_OVERRUN [04:04] */ | ||
5447 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_OVERRUN_MASK 0x00000010 | ||
5448 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_OVERRUN_ALIGN 0 | ||
5449 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_OVERRUN_BITS 1 | ||
5450 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_OVERRUN_SHIFT 4 | ||
5451 | |||
5452 | /* PCIE_PHY :: PHY_ATTENTION :: BUFFER_UNDERRUN [03:03] */ | ||
5453 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_UNDERRUN_MASK 0x00000008 | ||
5454 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_UNDERRUN_ALIGN 0 | ||
5455 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_UNDERRUN_BITS 1 | ||
5456 | #define PCIE_PHY_PHY_ATTENTION_BUFFER_UNDERRUN_SHIFT 3 | ||
5457 | |||
5458 | /* PCIE_PHY :: PHY_ATTENTION :: RECEIVE_FRAMING_ERROR [02:02] */ | ||
5459 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_FRAMING_ERROR_MASK 0x00000004 | ||
5460 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_FRAMING_ERROR_ALIGN 0 | ||
5461 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_FRAMING_ERROR_BITS 1 | ||
5462 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_FRAMING_ERROR_SHIFT 2 | ||
5463 | |||
5464 | /* PCIE_PHY :: PHY_ATTENTION :: RECEIVE_DISPARITY_ERROR [01:01] */ | ||
5465 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_DISPARITY_ERROR_MASK 0x00000002 | ||
5466 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_DISPARITY_ERROR_ALIGN 0 | ||
5467 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_DISPARITY_ERROR_BITS 1 | ||
5468 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_DISPARITY_ERROR_SHIFT 1 | ||
5469 | |||
5470 | /* PCIE_PHY :: PHY_ATTENTION :: RECEIVE_CODE_ERROR [00:00] */ | ||
5471 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_CODE_ERROR_MASK 0x00000001 | ||
5472 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_CODE_ERROR_ALIGN 0 | ||
5473 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_CODE_ERROR_BITS 1 | ||
5474 | #define PCIE_PHY_PHY_ATTENTION_RECEIVE_CODE_ERROR_SHIFT 0 | ||
5475 | |||
5476 | |||
5477 | /**************************************************************************** | ||
5478 | * PCIE_PHY :: PHY_ATTENTION_MASK | ||
5479 | ***************************************************************************/ | ||
5480 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: RESERVED_0 [31:08] */ | ||
5481 | #define PCIE_PHY_PHY_ATTENTION_MASK_RESERVED_0_MASK 0xffffff00 | ||
5482 | #define PCIE_PHY_PHY_ATTENTION_MASK_RESERVED_0_ALIGN 0 | ||
5483 | #define PCIE_PHY_PHY_ATTENTION_MASK_RESERVED_0_BITS 24 | ||
5484 | #define PCIE_PHY_PHY_ATTENTION_MASK_RESERVED_0_SHIFT 8 | ||
5485 | |||
5486 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: HOT_RESET_MASK [07:07] */ | ||
5487 | #define PCIE_PHY_PHY_ATTENTION_MASK_HOT_RESET_MASK_MASK 0x00000080 | ||
5488 | #define PCIE_PHY_PHY_ATTENTION_MASK_HOT_RESET_MASK_ALIGN 0 | ||
5489 | #define PCIE_PHY_PHY_ATTENTION_MASK_HOT_RESET_MASK_BITS 1 | ||
5490 | #define PCIE_PHY_PHY_ATTENTION_MASK_HOT_RESET_MASK_SHIFT 7 | ||
5491 | |||
5492 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: LINK_DOWN_MASK [06:06] */ | ||
5493 | #define PCIE_PHY_PHY_ATTENTION_MASK_LINK_DOWN_MASK_MASK 0x00000040 | ||
5494 | #define PCIE_PHY_PHY_ATTENTION_MASK_LINK_DOWN_MASK_ALIGN 0 | ||
5495 | #define PCIE_PHY_PHY_ATTENTION_MASK_LINK_DOWN_MASK_BITS 1 | ||
5496 | #define PCIE_PHY_PHY_ATTENTION_MASK_LINK_DOWN_MASK_SHIFT 6 | ||
5497 | |||
5498 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: TRAINING_ERROR_MASK [05:05] */ | ||
5499 | #define PCIE_PHY_PHY_ATTENTION_MASK_TRAINING_ERROR_MASK_MASK 0x00000020 | ||
5500 | #define PCIE_PHY_PHY_ATTENTION_MASK_TRAINING_ERROR_MASK_ALIGN 0 | ||
5501 | #define PCIE_PHY_PHY_ATTENTION_MASK_TRAINING_ERROR_MASK_BITS 1 | ||
5502 | #define PCIE_PHY_PHY_ATTENTION_MASK_TRAINING_ERROR_MASK_SHIFT 5 | ||
5503 | |||
5504 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: BUFFER_OVERRUN_MASK [04:04] */ | ||
5505 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_OVERRUN_MASK_MASK 0x00000010 | ||
5506 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_OVERRUN_MASK_ALIGN 0 | ||
5507 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_OVERRUN_MASK_BITS 1 | ||
5508 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_OVERRUN_MASK_SHIFT 4 | ||
5509 | |||
5510 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: BUFFER_UNDERRUN_MASK [03:03] */ | ||
5511 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_UNDERRUN_MASK_MASK 0x00000008 | ||
5512 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_UNDERRUN_MASK_ALIGN 0 | ||
5513 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_UNDERRUN_MASK_BITS 1 | ||
5514 | #define PCIE_PHY_PHY_ATTENTION_MASK_BUFFER_UNDERRUN_MASK_SHIFT 3 | ||
5515 | |||
5516 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: RECEIVE_FRAME_ERROR_MASK [02:02] */ | ||
5517 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_FRAME_ERROR_MASK_MASK 0x00000004 | ||
5518 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_FRAME_ERROR_MASK_ALIGN 0 | ||
5519 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_FRAME_ERROR_MASK_BITS 1 | ||
5520 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_FRAME_ERROR_MASK_SHIFT 2 | ||
5521 | |||
5522 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: RECEIVE_DISPARITY_ERROR_MASK [01:01] */ | ||
5523 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_DISPARITY_ERROR_MASK_MASK 0x00000002 | ||
5524 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_DISPARITY_ERROR_MASK_ALIGN 0 | ||
5525 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_DISPARITY_ERROR_MASK_BITS 1 | ||
5526 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_DISPARITY_ERROR_MASK_SHIFT 1 | ||
5527 | |||
5528 | /* PCIE_PHY :: PHY_ATTENTION_MASK :: RECEIVE_CODE_ERROR_MASK [00:00] */ | ||
5529 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_CODE_ERROR_MASK_MASK 0x00000001 | ||
5530 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_CODE_ERROR_MASK_ALIGN 0 | ||
5531 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_CODE_ERROR_MASK_BITS 1 | ||
5532 | #define PCIE_PHY_PHY_ATTENTION_MASK_RECEIVE_CODE_ERROR_MASK_SHIFT 0 | ||
5533 | |||
5534 | |||
5535 | /**************************************************************************** | ||
5536 | * PCIE_PHY :: PHY_RECEIVE_ERROR_COUNTER | ||
5537 | ***************************************************************************/ | ||
5538 | /* PCIE_PHY :: PHY_RECEIVE_ERROR_COUNTER :: DISPARITY_ERROR_COUNT [31:16] */ | ||
5539 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_DISPARITY_ERROR_COUNT_MASK 0xffff0000 | ||
5540 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_DISPARITY_ERROR_COUNT_ALIGN 0 | ||
5541 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_DISPARITY_ERROR_COUNT_BITS 16 | ||
5542 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_DISPARITY_ERROR_COUNT_SHIFT 16 | ||
5543 | |||
5544 | /* PCIE_PHY :: PHY_RECEIVE_ERROR_COUNTER :: CODE_ERROR_COUNT [15:00] */ | ||
5545 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_CODE_ERROR_COUNT_MASK 0x0000ffff | ||
5546 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_CODE_ERROR_COUNT_ALIGN 0 | ||
5547 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_CODE_ERROR_COUNT_BITS 16 | ||
5548 | #define PCIE_PHY_PHY_RECEIVE_ERROR_COUNTER_CODE_ERROR_COUNT_SHIFT 0 | ||
5549 | |||
5550 | |||
5551 | /**************************************************************************** | ||
5552 | * PCIE_PHY :: PHY_RECEIVE_FRAMING_ERROR_COUNTER | ||
5553 | ***************************************************************************/ | ||
5554 | /* PCIE_PHY :: PHY_RECEIVE_FRAMING_ERROR_COUNTER :: RESERVED_0 [31:16] */ | ||
5555 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_RESERVED_0_MASK 0xffff0000 | ||
5556 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_RESERVED_0_ALIGN 0 | ||
5557 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_RESERVED_0_BITS 16 | ||
5558 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_RESERVED_0_SHIFT 16 | ||
5559 | |||
5560 | /* PCIE_PHY :: PHY_RECEIVE_FRAMING_ERROR_COUNTER :: FRAMING_ERROR_COUNT [15:00] */ | ||
5561 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_FRAMING_ERROR_COUNT_MASK 0x0000ffff | ||
5562 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_FRAMING_ERROR_COUNT_ALIGN 0 | ||
5563 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_FRAMING_ERROR_COUNT_BITS 16 | ||
5564 | #define PCIE_PHY_PHY_RECEIVE_FRAMING_ERROR_COUNTER_FRAMING_ERROR_COUNT_SHIFT 0 | ||
5565 | |||
5566 | |||
5567 | /**************************************************************************** | ||
5568 | * PCIE_PHY :: PHY_RECEIVE_ERROR_THRESHOLD | ||
5569 | ***************************************************************************/ | ||
5570 | /* PCIE_PHY :: PHY_RECEIVE_ERROR_THRESHOLD :: RESERVED_0 [31:12] */ | ||
5571 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_RESERVED_0_MASK 0xfffff000 | ||
5572 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_RESERVED_0_ALIGN 0 | ||
5573 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_RESERVED_0_BITS 20 | ||
5574 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_RESERVED_0_SHIFT 12 | ||
5575 | |||
5576 | /* PCIE_PHY :: PHY_RECEIVE_ERROR_THRESHOLD :: FRAME_ERROR_THRESHOLD [11:08] */ | ||
5577 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_FRAME_ERROR_THRESHOLD_MASK 0x00000f00 | ||
5578 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_FRAME_ERROR_THRESHOLD_ALIGN 0 | ||
5579 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_FRAME_ERROR_THRESHOLD_BITS 4 | ||
5580 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_FRAME_ERROR_THRESHOLD_SHIFT 8 | ||
5581 | |||
5582 | /* PCIE_PHY :: PHY_RECEIVE_ERROR_THRESHOLD :: DISPARITY_ERROR_THRESHOLD [07:04] */ | ||
5583 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_DISPARITY_ERROR_THRESHOLD_MASK 0x000000f0 | ||
5584 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_DISPARITY_ERROR_THRESHOLD_ALIGN 0 | ||
5585 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_DISPARITY_ERROR_THRESHOLD_BITS 4 | ||
5586 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_DISPARITY_ERROR_THRESHOLD_SHIFT 4 | ||
5587 | |||
5588 | /* PCIE_PHY :: PHY_RECEIVE_ERROR_THRESHOLD :: CODE_ERROR_THRESHOLD [03:00] */ | ||
5589 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_CODE_ERROR_THRESHOLD_MASK 0x0000000f | ||
5590 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_CODE_ERROR_THRESHOLD_ALIGN 0 | ||
5591 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_CODE_ERROR_THRESHOLD_BITS 4 | ||
5592 | #define PCIE_PHY_PHY_RECEIVE_ERROR_THRESHOLD_CODE_ERROR_THRESHOLD_SHIFT 0 | ||
5593 | |||
5594 | |||
5595 | /**************************************************************************** | ||
5596 | * PCIE_PHY :: PHY_TEST_CONTROL | ||
5597 | ***************************************************************************/ | ||
5598 | /* PCIE_PHY :: PHY_TEST_CONTROL :: UNUSED_0 [31:31] */ | ||
5599 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_0_MASK 0x80000000 | ||
5600 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_0_ALIGN 0 | ||
5601 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_0_BITS 1 | ||
5602 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_0_SHIFT 31 | ||
5603 | |||
5604 | /* PCIE_PHY :: PHY_TEST_CONTROL :: DELAY_HOTRESET_ENABLE [30:30] */ | ||
5605 | #define PCIE_PHY_PHY_TEST_CONTROL_DELAY_HOTRESET_ENABLE_MASK 0x40000000 | ||
5606 | #define PCIE_PHY_PHY_TEST_CONTROL_DELAY_HOTRESET_ENABLE_ALIGN 0 | ||
5607 | #define PCIE_PHY_PHY_TEST_CONTROL_DELAY_HOTRESET_ENABLE_BITS 1 | ||
5608 | #define PCIE_PHY_PHY_TEST_CONTROL_DELAY_HOTRESET_ENABLE_SHIFT 30 | ||
5609 | |||
5610 | /* PCIE_PHY :: PHY_TEST_CONTROL :: CQ27039_TSX_MAJORITY_CHECK [29:29] */ | ||
5611 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_TSX_MAJORITY_CHECK_MASK 0x20000000 | ||
5612 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_TSX_MAJORITY_CHECK_ALIGN 0 | ||
5613 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_TSX_MAJORITY_CHECK_BITS 1 | ||
5614 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_TSX_MAJORITY_CHECK_SHIFT 29 | ||
5615 | |||
5616 | /* PCIE_PHY :: PHY_TEST_CONTROL :: CQ27039_MASK_OFF_BOGUS [28:28] */ | ||
5617 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_MASK_OFF_BOGUS_MASK 0x10000000 | ||
5618 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_MASK_OFF_BOGUS_ALIGN 0 | ||
5619 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_MASK_OFF_BOGUS_BITS 1 | ||
5620 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_MASK_OFF_BOGUS_SHIFT 28 | ||
5621 | |||
5622 | /* PCIE_PHY :: PHY_TEST_CONTROL :: CQ27039_POLARITY_CHECK [27:27] */ | ||
5623 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_POLARITY_CHECK_MASK 0x08000000 | ||
5624 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_POLARITY_CHECK_ALIGN 0 | ||
5625 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_POLARITY_CHECK_BITS 1 | ||
5626 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_POLARITY_CHECK_SHIFT 27 | ||
5627 | |||
5628 | /* PCIE_PHY :: PHY_TEST_CONTROL :: CQ27039_STICKY_POLARITY_CHECK [26:26] */ | ||
5629 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_STICKY_POLARITY_CHECK_MASK 0x04000000 | ||
5630 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_STICKY_POLARITY_CHECK_ALIGN 0 | ||
5631 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_STICKY_POLARITY_CHECK_BITS 1 | ||
5632 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ27039_STICKY_POLARITY_CHECK_SHIFT 26 | ||
5633 | |||
5634 | /* PCIE_PHY :: PHY_TEST_CONTROL :: UNUSED_1 [25:23] */ | ||
5635 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_1_MASK 0x03800000 | ||
5636 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_1_ALIGN 0 | ||
5637 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_1_BITS 3 | ||
5638 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_1_SHIFT 23 | ||
5639 | |||
5640 | /* PCIE_PHY :: PHY_TEST_CONTROL :: TWO_OS_RULE_RELAXING [22:22] */ | ||
5641 | #define PCIE_PHY_PHY_TEST_CONTROL_TWO_OS_RULE_RELAXING_MASK 0x00400000 | ||
5642 | #define PCIE_PHY_PHY_TEST_CONTROL_TWO_OS_RULE_RELAXING_ALIGN 0 | ||
5643 | #define PCIE_PHY_PHY_TEST_CONTROL_TWO_OS_RULE_RELAXING_BITS 1 | ||
5644 | #define PCIE_PHY_PHY_TEST_CONTROL_TWO_OS_RULE_RELAXING_SHIFT 22 | ||
5645 | |||
5646 | /* PCIE_PHY :: PHY_TEST_CONTROL :: DISABLE_HOT_RESET [21:21] */ | ||
5647 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_HOT_RESET_MASK 0x00200000 | ||
5648 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_HOT_RESET_ALIGN 0 | ||
5649 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_HOT_RESET_BITS 1 | ||
5650 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_HOT_RESET_SHIFT 21 | ||
5651 | |||
5652 | /* PCIE_PHY :: PHY_TEST_CONTROL :: DISABLE_LINK_DOWN_RESET [20:20] */ | ||
5653 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_LINK_DOWN_RESET_MASK 0x00100000 | ||
5654 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_LINK_DOWN_RESET_ALIGN 0 | ||
5655 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_LINK_DOWN_RESET_BITS 1 | ||
5656 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_LINK_DOWN_RESET_SHIFT 20 | ||
5657 | |||
5658 | /* PCIE_PHY :: PHY_TEST_CONTROL :: DISABLE_EIDLE_SET_TRANSMITTING_AT_TIME_OUT_TO_DETECT_STATE [19:19] */ | ||
5659 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_EIDLE_SET_TRANSMITTING_AT_TIME_OUT_TO_DETECT_STATE_MASK 0x00080000 | ||
5660 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_EIDLE_SET_TRANSMITTING_AT_TIME_OUT_TO_DETECT_STATE_ALIGN 0 | ||
5661 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_EIDLE_SET_TRANSMITTING_AT_TIME_OUT_TO_DETECT_STATE_BITS 1 | ||
5662 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_EIDLE_SET_TRANSMITTING_AT_TIME_OUT_TO_DETECT_STATE_SHIFT 19 | ||
5663 | |||
5664 | /* PCIE_PHY :: PHY_TEST_CONTROL :: DISABLE_ERROR_EXIT [18:18] */ | ||
5665 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_EXIT_MASK 0x00040000 | ||
5666 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_EXIT_ALIGN 0 | ||
5667 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_EXIT_BITS 1 | ||
5668 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_EXIT_SHIFT 18 | ||
5669 | |||
5670 | /* PCIE_PHY :: PHY_TEST_CONTROL :: DISABLE_ERROR_MASK [17:17] */ | ||
5671 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_MASK_MASK 0x00020000 | ||
5672 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_MASK_ALIGN 0 | ||
5673 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_MASK_BITS 1 | ||
5674 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_MASK_SHIFT 17 | ||
5675 | |||
5676 | /* PCIE_PHY :: PHY_TEST_CONTROL :: DISABLE_ERROR_RECOVERY [16:16] */ | ||
5677 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_RECOVERY_MASK 0x00010000 | ||
5678 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_RECOVERY_ALIGN 0 | ||
5679 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_RECOVERY_BITS 1 | ||
5680 | #define PCIE_PHY_PHY_TEST_CONTROL_DISABLE_ERROR_RECOVERY_SHIFT 16 | ||
5681 | |||
5682 | /* PCIE_PHY :: PHY_TEST_CONTROL :: RESERVED_0 [15:08] */ | ||
5683 | #define PCIE_PHY_PHY_TEST_CONTROL_RESERVED_0_MASK 0x0000ff00 | ||
5684 | #define PCIE_PHY_PHY_TEST_CONTROL_RESERVED_0_ALIGN 0 | ||
5685 | #define PCIE_PHY_PHY_TEST_CONTROL_RESERVED_0_BITS 8 | ||
5686 | #define PCIE_PHY_PHY_TEST_CONTROL_RESERVED_0_SHIFT 8 | ||
5687 | |||
5688 | /* PCIE_PHY :: PHY_TEST_CONTROL :: UNUSED_2 [07:04] */ | ||
5689 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_2_MASK 0x000000f0 | ||
5690 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_2_ALIGN 0 | ||
5691 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_2_BITS 4 | ||
5692 | #define PCIE_PHY_PHY_TEST_CONTROL_UNUSED_2_SHIFT 4 | ||
5693 | |||
5694 | /* PCIE_PHY :: PHY_TEST_CONTROL :: CQ22100_FIX_DISABLE [03:03] */ | ||
5695 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ22100_FIX_DISABLE_MASK 0x00000008 | ||
5696 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ22100_FIX_DISABLE_ALIGN 0 | ||
5697 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ22100_FIX_DISABLE_BITS 1 | ||
5698 | #define PCIE_PHY_PHY_TEST_CONTROL_CQ22100_FIX_DISABLE_SHIFT 3 | ||
5699 | |||
5700 | /* PCIE_PHY :: PHY_TEST_CONTROL :: TRAINING_BYPASS [02:02] */ | ||
5701 | #define PCIE_PHY_PHY_TEST_CONTROL_TRAINING_BYPASS_MASK 0x00000004 | ||
5702 | #define PCIE_PHY_PHY_TEST_CONTROL_TRAINING_BYPASS_ALIGN 0 | ||
5703 | #define PCIE_PHY_PHY_TEST_CONTROL_TRAINING_BYPASS_BITS 1 | ||
5704 | #define PCIE_PHY_PHY_TEST_CONTROL_TRAINING_BYPASS_SHIFT 2 | ||
5705 | |||
5706 | /* PCIE_PHY :: PHY_TEST_CONTROL :: EXTERNAL_LOOPBACK [01:01] */ | ||
5707 | #define PCIE_PHY_PHY_TEST_CONTROL_EXTERNAL_LOOPBACK_MASK 0x00000002 | ||
5708 | #define PCIE_PHY_PHY_TEST_CONTROL_EXTERNAL_LOOPBACK_ALIGN 0 | ||
5709 | #define PCIE_PHY_PHY_TEST_CONTROL_EXTERNAL_LOOPBACK_BITS 1 | ||
5710 | #define PCIE_PHY_PHY_TEST_CONTROL_EXTERNAL_LOOPBACK_SHIFT 1 | ||
5711 | |||
5712 | /* PCIE_PHY :: PHY_TEST_CONTROL :: INTERNAL_LOOPBACK [00:00] */ | ||
5713 | #define PCIE_PHY_PHY_TEST_CONTROL_INTERNAL_LOOPBACK_MASK 0x00000001 | ||
5714 | #define PCIE_PHY_PHY_TEST_CONTROL_INTERNAL_LOOPBACK_ALIGN 0 | ||
5715 | #define PCIE_PHY_PHY_TEST_CONTROL_INTERNAL_LOOPBACK_BITS 1 | ||
5716 | #define PCIE_PHY_PHY_TEST_CONTROL_INTERNAL_LOOPBACK_SHIFT 0 | ||
5717 | |||
5718 | |||
5719 | /**************************************************************************** | ||
5720 | * PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE | ||
5721 | ***************************************************************************/ | ||
5722 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: RESERVED_0 [31:18] */ | ||
5723 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RESERVED_0_MASK 0xfffc0000 | ||
5724 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RESERVED_0_ALIGN 0 | ||
5725 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RESERVED_0_BITS 14 | ||
5726 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RESERVED_0_SHIFT 18 | ||
5727 | |||
5728 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: OBSVELECIDLEVALUE [17:17] */ | ||
5729 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEVALUE_MASK 0x00020000 | ||
5730 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEVALUE_ALIGN 0 | ||
5731 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEVALUE_BITS 1 | ||
5732 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEVALUE_SHIFT 17 | ||
5733 | |||
5734 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: OBSVELECIDLEOVERRIDE [16:16] */ | ||
5735 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEOVERRIDE_MASK 0x00010000 | ||
5736 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEOVERRIDE_ALIGN 0 | ||
5737 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEOVERRIDE_BITS 1 | ||
5738 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_OBSVELECIDLEOVERRIDE_SHIFT 16 | ||
5739 | |||
5740 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: PLLISUPVALUE [15:15] */ | ||
5741 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPVALUE_MASK 0x00008000 | ||
5742 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPVALUE_ALIGN 0 | ||
5743 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPVALUE_BITS 1 | ||
5744 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPVALUE_SHIFT 15 | ||
5745 | |||
5746 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: PLLISUPOVERRIDE [14:14] */ | ||
5747 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPOVERRIDE_MASK 0x00004000 | ||
5748 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPOVERRIDE_ALIGN 0 | ||
5749 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPOVERRIDE_BITS 1 | ||
5750 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_PLLISUPOVERRIDE_SHIFT 14 | ||
5751 | |||
5752 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: RCVRDETVALUE [13:13] */ | ||
5753 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETVALUE_MASK 0x00002000 | ||
5754 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETVALUE_ALIGN 0 | ||
5755 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETVALUE_BITS 1 | ||
5756 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETVALUE_SHIFT 13 | ||
5757 | |||
5758 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: RCVRDETOVERRIDE [12:12] */ | ||
5759 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETOVERRIDE_MASK 0x00001000 | ||
5760 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETOVERRIDE_ALIGN 0 | ||
5761 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETOVERRIDE_BITS 1 | ||
5762 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETOVERRIDE_SHIFT 12 | ||
5763 | |||
5764 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: RCVRDETTIMECONTROL [11:10] */ | ||
5765 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETTIMECONTROL_MASK 0x00000c00 | ||
5766 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETTIMECONTROL_ALIGN 0 | ||
5767 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETTIMECONTROL_BITS 2 | ||
5768 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETTIMECONTROL_SHIFT 10 | ||
5769 | |||
5770 | /* PCIE_PHY :: PHY_SERDES_CONTROL_OVERRIDE :: RCVRDETECTIONTIME [09:00] */ | ||
5771 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETECTIONTIME_MASK 0x000003ff | ||
5772 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETECTIONTIME_ALIGN 0 | ||
5773 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETECTIONTIME_BITS 10 | ||
5774 | #define PCIE_PHY_PHY_SERDES_CONTROL_OVERRIDE_RCVRDETECTIONTIME_SHIFT 0 | ||
5775 | |||
5776 | |||
5777 | /**************************************************************************** | ||
5778 | * PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE | ||
5779 | ***************************************************************************/ | ||
5780 | /* PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE :: TS1NUMOVERRIDE [31:31] */ | ||
5781 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TS1NUMOVERRIDE_MASK 0x80000000 | ||
5782 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TS1NUMOVERRIDE_ALIGN 0 | ||
5783 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TS1NUMOVERRIDE_BITS 1 | ||
5784 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TS1NUMOVERRIDE_SHIFT 31 | ||
5785 | |||
5786 | /* PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE :: TXIDLEMINOVERRIDE [30:30] */ | ||
5787 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINOVERRIDE_MASK 0x40000000 | ||
5788 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINOVERRIDE_ALIGN 0 | ||
5789 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINOVERRIDE_BITS 1 | ||
5790 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINOVERRIDE_SHIFT 30 | ||
5791 | |||
5792 | /* PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE :: TXIDLE2IDLEOVERRIDE [29:29] */ | ||
5793 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLE2IDLEOVERRIDE_MASK 0x20000000 | ||
5794 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLE2IDLEOVERRIDE_ALIGN 0 | ||
5795 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLE2IDLEOVERRIDE_BITS 1 | ||
5796 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLE2IDLEOVERRIDE_SHIFT 29 | ||
5797 | |||
5798 | /* PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE :: UNUSED_0 [28:28] */ | ||
5799 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_UNUSED_0_MASK 0x10000000 | ||
5800 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_UNUSED_0_ALIGN 0 | ||
5801 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_UNUSED_0_BITS 1 | ||
5802 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_UNUSED_0_SHIFT 28 | ||
5803 | |||
5804 | /* PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE :: N_TS1INPOLLINGACTIVE [27:16] */ | ||
5805 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_N_TS1INPOLLINGACTIVE_MASK 0x0fff0000 | ||
5806 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_N_TS1INPOLLINGACTIVE_ALIGN 0 | ||
5807 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_N_TS1INPOLLINGACTIVE_BITS 12 | ||
5808 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_N_TS1INPOLLINGACTIVE_SHIFT 16 | ||
5809 | |||
5810 | /* PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE :: TXIDLEMINTIME [15:08] */ | ||
5811 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINTIME_MASK 0x0000ff00 | ||
5812 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINTIME_ALIGN 0 | ||
5813 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINTIME_BITS 8 | ||
5814 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLEMINTIME_SHIFT 8 | ||
5815 | |||
5816 | /* PCIE_PHY :: PHY_TIMING_PARAMETER_OVERRIDE :: TXIDLESETTOIDLETIME [07:00] */ | ||
5817 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLESETTOIDLETIME_MASK 0x000000ff | ||
5818 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLESETTOIDLETIME_ALIGN 0 | ||
5819 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLESETTOIDLETIME_BITS 8 | ||
5820 | #define PCIE_PHY_PHY_TIMING_PARAMETER_OVERRIDE_TXIDLESETTOIDLETIME_SHIFT 0 | ||
5821 | |||
5822 | |||
5823 | /**************************************************************************** | ||
5824 | * PCIE_PHY :: PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES | ||
5825 | ***************************************************************************/ | ||
5826 | /* PCIE_PHY :: PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES :: RESERVED_0 [31:10] */ | ||
5827 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RESERVED_0_MASK 0xfffffc00 | ||
5828 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RESERVED_0_ALIGN 0 | ||
5829 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RESERVED_0_BITS 22 | ||
5830 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RESERVED_0_SHIFT 10 | ||
5831 | |||
5832 | /* PCIE_PHY :: PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES :: TRANSMIT_STATE_MACHINE_STATE [09:04] */ | ||
5833 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_TRANSMIT_STATE_MACHINE_STATE_MASK 0x000003f0 | ||
5834 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_TRANSMIT_STATE_MACHINE_STATE_ALIGN 0 | ||
5835 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_TRANSMIT_STATE_MACHINE_STATE_BITS 6 | ||
5836 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_TRANSMIT_STATE_MACHINE_STATE_SHIFT 4 | ||
5837 | |||
5838 | /* PCIE_PHY :: PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES :: RECEIVE_STATE_MACHINE_STATE [03:00] */ | ||
5839 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RECEIVE_STATE_MACHINE_STATE_MASK 0x0000000f | ||
5840 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RECEIVE_STATE_MACHINE_STATE_ALIGN 0 | ||
5841 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RECEIVE_STATE_MACHINE_STATE_BITS 4 | ||
5842 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC1_TX_RX_SM_STATES_RECEIVE_STATE_MACHINE_STATE_SHIFT 0 | ||
5843 | |||
5844 | |||
5845 | /**************************************************************************** | ||
5846 | * PCIE_PHY :: PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES | ||
5847 | ***************************************************************************/ | ||
5848 | /* PCIE_PHY :: PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES :: LTSSM_STATE_MACHINE_STATE [31:00] */ | ||
5849 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES_LTSSM_STATE_MACHINE_STATE_MASK 0xffffffff | ||
5850 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES_LTSSM_STATE_MACHINE_STATE_ALIGN 0 | ||
5851 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES_LTSSM_STATE_MACHINE_STATE_BITS 32 | ||
5852 | #define PCIE_PHY_PHY_HARDWARE_DIAGNOSTIC2_LTSSM_STATES_LTSSM_STATE_MACHINE_STATE_SHIFT 0 | ||
5853 | |||
5854 | |||
5855 | /**************************************************************************** | ||
5856 | * BCM70012_TGT_TOP_INTR | ||
5857 | ***************************************************************************/ | ||
5858 | /**************************************************************************** | ||
5859 | * INTR :: INTR_STATUS | ||
5860 | ***************************************************************************/ | ||
5861 | /* INTR :: INTR_STATUS :: reserved0 [31:26] */ | ||
5862 | #define INTR_INTR_STATUS_reserved0_MASK 0xfc000000 | ||
5863 | #define INTR_INTR_STATUS_reserved0_ALIGN 0 | ||
5864 | #define INTR_INTR_STATUS_reserved0_BITS 6 | ||
5865 | #define INTR_INTR_STATUS_reserved0_SHIFT 26 | ||
5866 | |||
5867 | /* INTR :: INTR_STATUS :: PCIE_TGT_CA_ATTN [25:25] */ | ||
5868 | #define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_MASK 0x02000000 | ||
5869 | #define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_ALIGN 0 | ||
5870 | #define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_BITS 1 | ||
5871 | #define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_SHIFT 25 | ||
5872 | |||
5873 | /* INTR :: INTR_STATUS :: PCIE_TGT_UR_ATTN [24:24] */ | ||
5874 | #define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_MASK 0x01000000 | ||
5875 | #define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_ALIGN 0 | ||
5876 | #define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_BITS 1 | ||
5877 | #define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_SHIFT 24 | ||
5878 | |||
5879 | /* INTR :: INTR_STATUS :: reserved1 [23:14] */ | ||
5880 | #define INTR_INTR_STATUS_reserved1_MASK 0x00ffc000 | ||
5881 | #define INTR_INTR_STATUS_reserved1_ALIGN 0 | ||
5882 | #define INTR_INTR_STATUS_reserved1_BITS 10 | ||
5883 | #define INTR_INTR_STATUS_reserved1_SHIFT 14 | ||
5884 | |||
5885 | /* INTR :: INTR_STATUS :: L1_UV_RX_DMA_ERR_INTR [13:13] */ | ||
5886 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_MASK 0x00002000 | ||
5887 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_ALIGN 0 | ||
5888 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_BITS 1 | ||
5889 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_SHIFT 13 | ||
5890 | |||
5891 | /* INTR :: INTR_STATUS :: L1_UV_RX_DMA_DONE_INTR [12:12] */ | ||
5892 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_MASK 0x00001000 | ||
5893 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_ALIGN 0 | ||
5894 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_BITS 1 | ||
5895 | #define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_SHIFT 12 | ||
5896 | |||
5897 | /* INTR :: INTR_STATUS :: L1_Y_RX_DMA_ERR_INTR [11:11] */ | ||
5898 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_MASK 0x00000800 | ||
5899 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_ALIGN 0 | ||
5900 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_BITS 1 | ||
5901 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_SHIFT 11 | ||
5902 | |||
5903 | /* INTR :: INTR_STATUS :: L1_Y_RX_DMA_DONE_INTR [10:10] */ | ||
5904 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_MASK 0x00000400 | ||
5905 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_ALIGN 0 | ||
5906 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_BITS 1 | ||
5907 | #define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_SHIFT 10 | ||
5908 | |||
5909 | /* INTR :: INTR_STATUS :: L1_TX_DMA_ERR_INTR [09:09] */ | ||
5910 | #define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_MASK 0x00000200 | ||
5911 | #define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_ALIGN 0 | ||
5912 | #define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_BITS 1 | ||
5913 | #define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_SHIFT 9 | ||
5914 | |||
5915 | /* INTR :: INTR_STATUS :: L1_TX_DMA_DONE_INTR [08:08] */ | ||
5916 | #define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_MASK 0x00000100 | ||
5917 | #define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_ALIGN 0 | ||
5918 | #define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_BITS 1 | ||
5919 | #define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_SHIFT 8 | ||
5920 | |||
5921 | /* INTR :: INTR_STATUS :: reserved2 [07:06] */ | ||
5922 | #define INTR_INTR_STATUS_reserved2_MASK 0x000000c0 | ||
5923 | #define INTR_INTR_STATUS_reserved2_ALIGN 0 | ||
5924 | #define INTR_INTR_STATUS_reserved2_BITS 2 | ||
5925 | #define INTR_INTR_STATUS_reserved2_SHIFT 6 | ||
5926 | |||
5927 | /* INTR :: INTR_STATUS :: L0_UV_RX_DMA_ERR_INTR [05:05] */ | ||
5928 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_MASK 0x00000020 | ||
5929 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_ALIGN 0 | ||
5930 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_BITS 1 | ||
5931 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_SHIFT 5 | ||
5932 | |||
5933 | /* INTR :: INTR_STATUS :: L0_UV_RX_DMA_DONE_INTR [04:04] */ | ||
5934 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_MASK 0x00000010 | ||
5935 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_ALIGN 0 | ||
5936 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_BITS 1 | ||
5937 | #define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_SHIFT 4 | ||
5938 | |||
5939 | /* INTR :: INTR_STATUS :: L0_Y_RX_DMA_ERR_INTR [03:03] */ | ||
5940 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_MASK 0x00000008 | ||
5941 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_ALIGN 0 | ||
5942 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_BITS 1 | ||
5943 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_SHIFT 3 | ||
5944 | |||
5945 | /* INTR :: INTR_STATUS :: L0_Y_RX_DMA_DONE_INTR [02:02] */ | ||
5946 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_MASK 0x00000004 | ||
5947 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_ALIGN 0 | ||
5948 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_BITS 1 | ||
5949 | #define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_SHIFT 2 | ||
5950 | |||
5951 | /* INTR :: INTR_STATUS :: L0_TX_DMA_ERR_INTR [01:01] */ | ||
5952 | #define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_MASK 0x00000002 | ||
5953 | #define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_ALIGN 0 | ||
5954 | #define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_BITS 1 | ||
5955 | #define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_SHIFT 1 | ||
5956 | |||
5957 | /* INTR :: INTR_STATUS :: L0_TX_DMA_DONE_INTR [00:00] */ | ||
5958 | #define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_MASK 0x00000001 | ||
5959 | #define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_ALIGN 0 | ||
5960 | #define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_BITS 1 | ||
5961 | #define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_SHIFT 0 | ||
5962 | |||
5963 | |||
5964 | /**************************************************************************** | ||
5965 | * INTR :: INTR_SET | ||
5966 | ***************************************************************************/ | ||
5967 | /* INTR :: INTR_SET :: reserved0 [31:26] */ | ||
5968 | #define INTR_INTR_SET_reserved0_MASK 0xfc000000 | ||
5969 | #define INTR_INTR_SET_reserved0_ALIGN 0 | ||
5970 | #define INTR_INTR_SET_reserved0_BITS 6 | ||
5971 | #define INTR_INTR_SET_reserved0_SHIFT 26 | ||
5972 | |||
5973 | /* INTR :: INTR_SET :: PCIE_TGT_CA_ATTN [25:25] */ | ||
5974 | #define INTR_INTR_SET_PCIE_TGT_CA_ATTN_MASK 0x02000000 | ||
5975 | #define INTR_INTR_SET_PCIE_TGT_CA_ATTN_ALIGN 0 | ||
5976 | #define INTR_INTR_SET_PCIE_TGT_CA_ATTN_BITS 1 | ||
5977 | #define INTR_INTR_SET_PCIE_TGT_CA_ATTN_SHIFT 25 | ||
5978 | |||
5979 | /* INTR :: INTR_SET :: PCIE_TGT_UR_ATTN [24:24] */ | ||
5980 | #define INTR_INTR_SET_PCIE_TGT_UR_ATTN_MASK 0x01000000 | ||
5981 | #define INTR_INTR_SET_PCIE_TGT_UR_ATTN_ALIGN 0 | ||
5982 | #define INTR_INTR_SET_PCIE_TGT_UR_ATTN_BITS 1 | ||
5983 | #define INTR_INTR_SET_PCIE_TGT_UR_ATTN_SHIFT 24 | ||
5984 | |||
5985 | /* INTR :: INTR_SET :: reserved1 [23:14] */ | ||
5986 | #define INTR_INTR_SET_reserved1_MASK 0x00ffc000 | ||
5987 | #define INTR_INTR_SET_reserved1_ALIGN 0 | ||
5988 | #define INTR_INTR_SET_reserved1_BITS 10 | ||
5989 | #define INTR_INTR_SET_reserved1_SHIFT 14 | ||
5990 | |||
5991 | /* INTR :: INTR_SET :: UV_RX_DMA_L1_ERR_INTR [13:13] */ | ||
5992 | #define INTR_INTR_SET_UV_RX_DMA_L1_ERR_INTR_MASK 0x00002000 | ||
5993 | #define INTR_INTR_SET_UV_RX_DMA_L1_ERR_INTR_ALIGN 0 | ||
5994 | #define INTR_INTR_SET_UV_RX_DMA_L1_ERR_INTR_BITS 1 | ||
5995 | #define INTR_INTR_SET_UV_RX_DMA_L1_ERR_INTR_SHIFT 13 | ||
5996 | |||
5997 | /* INTR :: INTR_SET :: UV_RX_DMA_L1_DONE_INTR [12:12] */ | ||
5998 | #define INTR_INTR_SET_UV_RX_DMA_L1_DONE_INTR_MASK 0x00001000 | ||
5999 | #define INTR_INTR_SET_UV_RX_DMA_L1_DONE_INTR_ALIGN 0 | ||
6000 | #define INTR_INTR_SET_UV_RX_DMA_L1_DONE_INTR_BITS 1 | ||
6001 | #define INTR_INTR_SET_UV_RX_DMA_L1_DONE_INTR_SHIFT 12 | ||
6002 | |||
6003 | /* INTR :: INTR_SET :: Y_RX_DMA_L1_ERR_INTR [11:11] */ | ||
6004 | #define INTR_INTR_SET_Y_RX_DMA_L1_ERR_INTR_MASK 0x00000800 | ||
6005 | #define INTR_INTR_SET_Y_RX_DMA_L1_ERR_INTR_ALIGN 0 | ||
6006 | #define INTR_INTR_SET_Y_RX_DMA_L1_ERR_INTR_BITS 1 | ||
6007 | #define INTR_INTR_SET_Y_RX_DMA_L1_ERR_INTR_SHIFT 11 | ||
6008 | |||
6009 | /* INTR :: INTR_SET :: Y_RX_DMA_L1_DONE_INTR [10:10] */ | ||
6010 | #define INTR_INTR_SET_Y_RX_DMA_L1_DONE_INTR_MASK 0x00000400 | ||
6011 | #define INTR_INTR_SET_Y_RX_DMA_L1_DONE_INTR_ALIGN 0 | ||
6012 | #define INTR_INTR_SET_Y_RX_DMA_L1_DONE_INTR_BITS 1 | ||
6013 | #define INTR_INTR_SET_Y_RX_DMA_L1_DONE_INTR_SHIFT 10 | ||
6014 | |||
6015 | /* INTR :: INTR_SET :: TX_DMA_L1_ERR_INTR [09:09] */ | ||
6016 | #define INTR_INTR_SET_TX_DMA_L1_ERR_INTR_MASK 0x00000200 | ||
6017 | #define INTR_INTR_SET_TX_DMA_L1_ERR_INTR_ALIGN 0 | ||
6018 | #define INTR_INTR_SET_TX_DMA_L1_ERR_INTR_BITS 1 | ||
6019 | #define INTR_INTR_SET_TX_DMA_L1_ERR_INTR_SHIFT 9 | ||
6020 | |||
6021 | /* INTR :: INTR_SET :: TX_DMA_L1_DONE_INTR [08:08] */ | ||
6022 | #define INTR_INTR_SET_TX_DMA_L1_DONE_INTR_MASK 0x00000100 | ||
6023 | #define INTR_INTR_SET_TX_DMA_L1_DONE_INTR_ALIGN 0 | ||
6024 | #define INTR_INTR_SET_TX_DMA_L1_DONE_INTR_BITS 1 | ||
6025 | #define INTR_INTR_SET_TX_DMA_L1_DONE_INTR_SHIFT 8 | ||
6026 | |||
6027 | /* INTR :: INTR_SET :: reserved2 [07:06] */ | ||
6028 | #define INTR_INTR_SET_reserved2_MASK 0x000000c0 | ||
6029 | #define INTR_INTR_SET_reserved2_ALIGN 0 | ||
6030 | #define INTR_INTR_SET_reserved2_BITS 2 | ||
6031 | #define INTR_INTR_SET_reserved2_SHIFT 6 | ||
6032 | |||
6033 | /* INTR :: INTR_SET :: UV_RX_DMA_L0_ERR_INTR [05:05] */ | ||
6034 | #define INTR_INTR_SET_UV_RX_DMA_L0_ERR_INTR_MASK 0x00000020 | ||
6035 | #define INTR_INTR_SET_UV_RX_DMA_L0_ERR_INTR_ALIGN 0 | ||
6036 | #define INTR_INTR_SET_UV_RX_DMA_L0_ERR_INTR_BITS 1 | ||
6037 | #define INTR_INTR_SET_UV_RX_DMA_L0_ERR_INTR_SHIFT 5 | ||
6038 | |||
6039 | /* INTR :: INTR_SET :: UV_RX_DMA_L0_DONE_INTR [04:04] */ | ||
6040 | #define INTR_INTR_SET_UV_RX_DMA_L0_DONE_INTR_MASK 0x00000010 | ||
6041 | #define INTR_INTR_SET_UV_RX_DMA_L0_DONE_INTR_ALIGN 0 | ||
6042 | #define INTR_INTR_SET_UV_RX_DMA_L0_DONE_INTR_BITS 1 | ||
6043 | #define INTR_INTR_SET_UV_RX_DMA_L0_DONE_INTR_SHIFT 4 | ||
6044 | |||
6045 | /* INTR :: INTR_SET :: Y_RX_DMA_L0_ERR_INTR [03:03] */ | ||
6046 | #define INTR_INTR_SET_Y_RX_DMA_L0_ERR_INTR_MASK 0x00000008 | ||
6047 | #define INTR_INTR_SET_Y_RX_DMA_L0_ERR_INTR_ALIGN 0 | ||
6048 | #define INTR_INTR_SET_Y_RX_DMA_L0_ERR_INTR_BITS 1 | ||
6049 | #define INTR_INTR_SET_Y_RX_DMA_L0_ERR_INTR_SHIFT 3 | ||
6050 | |||
6051 | /* INTR :: INTR_SET :: Y_RX_DMA_L0_DONE_INTR [02:02] */ | ||
6052 | #define INTR_INTR_SET_Y_RX_DMA_L0_DONE_INTR_MASK 0x00000004 | ||
6053 | #define INTR_INTR_SET_Y_RX_DMA_L0_DONE_INTR_ALIGN 0 | ||
6054 | #define INTR_INTR_SET_Y_RX_DMA_L0_DONE_INTR_BITS 1 | ||
6055 | #define INTR_INTR_SET_Y_RX_DMA_L0_DONE_INTR_SHIFT 2 | ||
6056 | |||
6057 | /* INTR :: INTR_SET :: TX_DMA_L0_ERR_INTR [01:01] */ | ||
6058 | #define INTR_INTR_SET_TX_DMA_L0_ERR_INTR_MASK 0x00000002 | ||
6059 | #define INTR_INTR_SET_TX_DMA_L0_ERR_INTR_ALIGN 0 | ||
6060 | #define INTR_INTR_SET_TX_DMA_L0_ERR_INTR_BITS 1 | ||
6061 | #define INTR_INTR_SET_TX_DMA_L0_ERR_INTR_SHIFT 1 | ||
6062 | |||
6063 | /* INTR :: INTR_SET :: TX_DMA_L0_DONE_INTR [00:00] */ | ||
6064 | #define INTR_INTR_SET_TX_DMA_L0_DONE_INTR_MASK 0x00000001 | ||
6065 | #define INTR_INTR_SET_TX_DMA_L0_DONE_INTR_ALIGN 0 | ||
6066 | #define INTR_INTR_SET_TX_DMA_L0_DONE_INTR_BITS 1 | ||
6067 | #define INTR_INTR_SET_TX_DMA_L0_DONE_INTR_SHIFT 0 | ||
6068 | |||
6069 | |||
6070 | /**************************************************************************** | ||
6071 | * INTR :: INTR_CLR_REG | ||
6072 | ***************************************************************************/ | ||
6073 | /* INTR :: INTR_CLR_REG :: reserved0 [31:26] */ | ||
6074 | #define INTR_INTR_CLR_REG_reserved0_MASK 0xfc000000 | ||
6075 | #define INTR_INTR_CLR_REG_reserved0_ALIGN 0 | ||
6076 | #define INTR_INTR_CLR_REG_reserved0_BITS 6 | ||
6077 | #define INTR_INTR_CLR_REG_reserved0_SHIFT 26 | ||
6078 | |||
6079 | /* INTR :: INTR_CLR_REG :: PCIE_TGT_CA_ATTN [25:25] */ | ||
6080 | #define INTR_INTR_CLR_REG_PCIE_TGT_CA_ATTN_MASK 0x02000000 | ||
6081 | #define INTR_INTR_CLR_REG_PCIE_TGT_CA_ATTN_ALIGN 0 | ||
6082 | #define INTR_INTR_CLR_REG_PCIE_TGT_CA_ATTN_BITS 1 | ||
6083 | #define INTR_INTR_CLR_REG_PCIE_TGT_CA_ATTN_SHIFT 25 | ||
6084 | |||
6085 | /* INTR :: INTR_CLR_REG :: PCIE_TGT_UR_ATTN [24:24] */ | ||
6086 | #define INTR_INTR_CLR_REG_PCIE_TGT_UR_ATTN_MASK 0x01000000 | ||
6087 | #define INTR_INTR_CLR_REG_PCIE_TGT_UR_ATTN_ALIGN 0 | ||
6088 | #define INTR_INTR_CLR_REG_PCIE_TGT_UR_ATTN_BITS 1 | ||
6089 | #define INTR_INTR_CLR_REG_PCIE_TGT_UR_ATTN_SHIFT 24 | ||
6090 | |||
6091 | /* INTR :: INTR_CLR_REG :: reserved1 [23:14] */ | ||
6092 | #define INTR_INTR_CLR_REG_reserved1_MASK 0x00ffc000 | ||
6093 | #define INTR_INTR_CLR_REG_reserved1_ALIGN 0 | ||
6094 | #define INTR_INTR_CLR_REG_reserved1_BITS 10 | ||
6095 | #define INTR_INTR_CLR_REG_reserved1_SHIFT 14 | ||
6096 | |||
6097 | /* INTR :: INTR_CLR_REG :: L1_UV_RX_DMA_ERR_INTR_CLR [13:13] */ | ||
6098 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_ERR_INTR_CLR_MASK 0x00002000 | ||
6099 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_ERR_INTR_CLR_ALIGN 0 | ||
6100 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_ERR_INTR_CLR_BITS 1 | ||
6101 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_ERR_INTR_CLR_SHIFT 13 | ||
6102 | |||
6103 | /* INTR :: INTR_CLR_REG :: L1_UV_RX_DMA_DONE_INTR_CLR [12:12] */ | ||
6104 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_DONE_INTR_CLR_MASK 0x00001000 | ||
6105 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_DONE_INTR_CLR_ALIGN 0 | ||
6106 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_DONE_INTR_CLR_BITS 1 | ||
6107 | #define INTR_INTR_CLR_REG_L1_UV_RX_DMA_DONE_INTR_CLR_SHIFT 12 | ||
6108 | |||
6109 | /* INTR :: INTR_CLR_REG :: L1_Y_RX_DMA_ERR_INTR_CLR [11:11] */ | ||
6110 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_ERR_INTR_CLR_MASK 0x00000800 | ||
6111 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_ERR_INTR_CLR_ALIGN 0 | ||
6112 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_ERR_INTR_CLR_BITS 1 | ||
6113 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_ERR_INTR_CLR_SHIFT 11 | ||
6114 | |||
6115 | /* INTR :: INTR_CLR_REG :: L1_Y_RX_DMA_DONE_INTR_CLR [10:10] */ | ||
6116 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_DONE_INTR_CLR_MASK 0x00000400 | ||
6117 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_DONE_INTR_CLR_ALIGN 0 | ||
6118 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_DONE_INTR_CLR_BITS 1 | ||
6119 | #define INTR_INTR_CLR_REG_L1_Y_RX_DMA_DONE_INTR_CLR_SHIFT 10 | ||
6120 | |||
6121 | /* INTR :: INTR_CLR_REG :: L1_TX_DMA_ERR_INTR_CLR [09:09] */ | ||
6122 | #define INTR_INTR_CLR_REG_L1_TX_DMA_ERR_INTR_CLR_MASK 0x00000200 | ||
6123 | #define INTR_INTR_CLR_REG_L1_TX_DMA_ERR_INTR_CLR_ALIGN 0 | ||
6124 | #define INTR_INTR_CLR_REG_L1_TX_DMA_ERR_INTR_CLR_BITS 1 | ||
6125 | #define INTR_INTR_CLR_REG_L1_TX_DMA_ERR_INTR_CLR_SHIFT 9 | ||
6126 | |||
6127 | /* INTR :: INTR_CLR_REG :: L1_TX_DMA_DONE_INTR_CLR [08:08] */ | ||
6128 | #define INTR_INTR_CLR_REG_L1_TX_DMA_DONE_INTR_CLR_MASK 0x00000100 | ||
6129 | #define INTR_INTR_CLR_REG_L1_TX_DMA_DONE_INTR_CLR_ALIGN 0 | ||
6130 | #define INTR_INTR_CLR_REG_L1_TX_DMA_DONE_INTR_CLR_BITS 1 | ||
6131 | #define INTR_INTR_CLR_REG_L1_TX_DMA_DONE_INTR_CLR_SHIFT 8 | ||
6132 | |||
6133 | /* INTR :: INTR_CLR_REG :: reserved2 [07:06] */ | ||
6134 | #define INTR_INTR_CLR_REG_reserved2_MASK 0x000000c0 | ||
6135 | #define INTR_INTR_CLR_REG_reserved2_ALIGN 0 | ||
6136 | #define INTR_INTR_CLR_REG_reserved2_BITS 2 | ||
6137 | #define INTR_INTR_CLR_REG_reserved2_SHIFT 6 | ||
6138 | |||
6139 | /* INTR :: INTR_CLR_REG :: L0_UV_RX_DMA_ERR_INTR_CLR [05:05] */ | ||
6140 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_ERR_INTR_CLR_MASK 0x00000020 | ||
6141 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_ERR_INTR_CLR_ALIGN 0 | ||
6142 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_ERR_INTR_CLR_BITS 1 | ||
6143 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_ERR_INTR_CLR_SHIFT 5 | ||
6144 | |||
6145 | /* INTR :: INTR_CLR_REG :: L0_UV_RX_DMA_DONE_INTR_CLR [04:04] */ | ||
6146 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_DONE_INTR_CLR_MASK 0x00000010 | ||
6147 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_DONE_INTR_CLR_ALIGN 0 | ||
6148 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_DONE_INTR_CLR_BITS 1 | ||
6149 | #define INTR_INTR_CLR_REG_L0_UV_RX_DMA_DONE_INTR_CLR_SHIFT 4 | ||
6150 | |||
6151 | /* INTR :: INTR_CLR_REG :: L0_Y_RX_DMA_ERR_INTR_CLR [03:03] */ | ||
6152 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_ERR_INTR_CLR_MASK 0x00000008 | ||
6153 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_ERR_INTR_CLR_ALIGN 0 | ||
6154 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_ERR_INTR_CLR_BITS 1 | ||
6155 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_ERR_INTR_CLR_SHIFT 3 | ||
6156 | |||
6157 | /* INTR :: INTR_CLR_REG :: L0_Y_RX_DMA_DONE_INTR_CLR [02:02] */ | ||
6158 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_DONE_INTR_CLR_MASK 0x00000004 | ||
6159 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_DONE_INTR_CLR_ALIGN 0 | ||
6160 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_DONE_INTR_CLR_BITS 1 | ||
6161 | #define INTR_INTR_CLR_REG_L0_Y_RX_DMA_DONE_INTR_CLR_SHIFT 2 | ||
6162 | |||
6163 | /* INTR :: INTR_CLR_REG :: L0_TX_DMA_ERR_INTR_CLR [01:01] */ | ||
6164 | #define INTR_INTR_CLR_REG_L0_TX_DMA_ERR_INTR_CLR_MASK 0x00000002 | ||
6165 | #define INTR_INTR_CLR_REG_L0_TX_DMA_ERR_INTR_CLR_ALIGN 0 | ||
6166 | #define INTR_INTR_CLR_REG_L0_TX_DMA_ERR_INTR_CLR_BITS 1 | ||
6167 | #define INTR_INTR_CLR_REG_L0_TX_DMA_ERR_INTR_CLR_SHIFT 1 | ||
6168 | |||
6169 | /* INTR :: INTR_CLR_REG :: L0_TX_DMA_DONE_INTR_CLR [00:00] */ | ||
6170 | #define INTR_INTR_CLR_REG_L0_TX_DMA_DONE_INTR_CLR_MASK 0x00000001 | ||
6171 | #define INTR_INTR_CLR_REG_L0_TX_DMA_DONE_INTR_CLR_ALIGN 0 | ||
6172 | #define INTR_INTR_CLR_REG_L0_TX_DMA_DONE_INTR_CLR_BITS 1 | ||
6173 | #define INTR_INTR_CLR_REG_L0_TX_DMA_DONE_INTR_CLR_SHIFT 0 | ||
6174 | |||
6175 | |||
6176 | /**************************************************************************** | ||
6177 | * INTR :: INTR_MSK_STS_REG | ||
6178 | ***************************************************************************/ | ||
6179 | /* INTR :: INTR_MSK_STS_REG :: reserved0 [31:26] */ | ||
6180 | #define INTR_INTR_MSK_STS_REG_reserved0_MASK 0xfc000000 | ||
6181 | #define INTR_INTR_MSK_STS_REG_reserved0_ALIGN 0 | ||
6182 | #define INTR_INTR_MSK_STS_REG_reserved0_BITS 6 | ||
6183 | #define INTR_INTR_MSK_STS_REG_reserved0_SHIFT 26 | ||
6184 | |||
6185 | /* INTR :: INTR_MSK_STS_REG :: PCIE_TGT_CA_ATTN [25:25] */ | ||
6186 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_CA_ATTN_MASK 0x02000000 | ||
6187 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_CA_ATTN_ALIGN 0 | ||
6188 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_CA_ATTN_BITS 1 | ||
6189 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_CA_ATTN_SHIFT 25 | ||
6190 | |||
6191 | /* INTR :: INTR_MSK_STS_REG :: PCIE_TGT_UR_ATTN [24:24] */ | ||
6192 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_UR_ATTN_MASK 0x01000000 | ||
6193 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_UR_ATTN_ALIGN 0 | ||
6194 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_UR_ATTN_BITS 1 | ||
6195 | #define INTR_INTR_MSK_STS_REG_PCIE_TGT_UR_ATTN_SHIFT 24 | ||
6196 | |||
6197 | /* INTR :: INTR_MSK_STS_REG :: reserved1 [23:14] */ | ||
6198 | #define INTR_INTR_MSK_STS_REG_reserved1_MASK 0x00ffc000 | ||
6199 | #define INTR_INTR_MSK_STS_REG_reserved1_ALIGN 0 | ||
6200 | #define INTR_INTR_MSK_STS_REG_reserved1_BITS 10 | ||
6201 | #define INTR_INTR_MSK_STS_REG_reserved1_SHIFT 14 | ||
6202 | |||
6203 | /* INTR :: INTR_MSK_STS_REG :: L1_UV_RX_DMA_ERR_INTR_MSK [13:13] */ | ||
6204 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_ERR_INTR_MSK_MASK 0x00002000 | ||
6205 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_ERR_INTR_MSK_ALIGN 0 | ||
6206 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_ERR_INTR_MSK_BITS 1 | ||
6207 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_ERR_INTR_MSK_SHIFT 13 | ||
6208 | |||
6209 | /* INTR :: INTR_MSK_STS_REG :: L1_UV_RX_DMA_DONE_INTR_MSK [12:12] */ | ||
6210 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_DONE_INTR_MSK_MASK 0x00001000 | ||
6211 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_DONE_INTR_MSK_ALIGN 0 | ||
6212 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_DONE_INTR_MSK_BITS 1 | ||
6213 | #define INTR_INTR_MSK_STS_REG_L1_UV_RX_DMA_DONE_INTR_MSK_SHIFT 12 | ||
6214 | |||
6215 | /* INTR :: INTR_MSK_STS_REG :: LIST1_Y_RX_DMA_ERR_INTR_MSK [11:11] */ | ||
6216 | #define INTR_INTR_MSK_STS_REG_LIST1_Y_RX_DMA_ERR_INTR_MSK_MASK 0x00000800 | ||
6217 | #define INTR_INTR_MSK_STS_REG_LIST1_Y_RX_DMA_ERR_INTR_MSK_ALIGN 0 | ||
6218 | #define INTR_INTR_MSK_STS_REG_LIST1_Y_RX_DMA_ERR_INTR_MSK_BITS 1 | ||
6219 | #define INTR_INTR_MSK_STS_REG_LIST1_Y_RX_DMA_ERR_INTR_MSK_SHIFT 11 | ||
6220 | |||
6221 | /* INTR :: INTR_MSK_STS_REG :: L1_Y_RX_DMA_DONE_INTR_MSK [10:10] */ | ||
6222 | #define INTR_INTR_MSK_STS_REG_L1_Y_RX_DMA_DONE_INTR_MSK_MASK 0x00000400 | ||
6223 | #define INTR_INTR_MSK_STS_REG_L1_Y_RX_DMA_DONE_INTR_MSK_ALIGN 0 | ||
6224 | #define INTR_INTR_MSK_STS_REG_L1_Y_RX_DMA_DONE_INTR_MSK_BITS 1 | ||
6225 | #define INTR_INTR_MSK_STS_REG_L1_Y_RX_DMA_DONE_INTR_MSK_SHIFT 10 | ||
6226 | |||
6227 | /* INTR :: INTR_MSK_STS_REG :: L1_TX_DMA_ERR_INTR_MSK [09:09] */ | ||
6228 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_ERR_INTR_MSK_MASK 0x00000200 | ||
6229 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_ERR_INTR_MSK_ALIGN 0 | ||
6230 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_ERR_INTR_MSK_BITS 1 | ||
6231 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_ERR_INTR_MSK_SHIFT 9 | ||
6232 | |||
6233 | /* INTR :: INTR_MSK_STS_REG :: L1_TX_DMA_DONE_INTR_MSK [08:08] */ | ||
6234 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_DONE_INTR_MSK_MASK 0x00000100 | ||
6235 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_DONE_INTR_MSK_ALIGN 0 | ||
6236 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_DONE_INTR_MSK_BITS 1 | ||
6237 | #define INTR_INTR_MSK_STS_REG_L1_TX_DMA_DONE_INTR_MSK_SHIFT 8 | ||
6238 | |||
6239 | /* INTR :: INTR_MSK_STS_REG :: reserved2 [07:06] */ | ||
6240 | #define INTR_INTR_MSK_STS_REG_reserved2_MASK 0x000000c0 | ||
6241 | #define INTR_INTR_MSK_STS_REG_reserved2_ALIGN 0 | ||
6242 | #define INTR_INTR_MSK_STS_REG_reserved2_BITS 2 | ||
6243 | #define INTR_INTR_MSK_STS_REG_reserved2_SHIFT 6 | ||
6244 | |||
6245 | /* INTR :: INTR_MSK_STS_REG :: L0_UV_RX_DMA_ERR_INTR_MSK [05:05] */ | ||
6246 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_ERR_INTR_MSK_MASK 0x00000020 | ||
6247 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_ERR_INTR_MSK_ALIGN 0 | ||
6248 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_ERR_INTR_MSK_BITS 1 | ||
6249 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_ERR_INTR_MSK_SHIFT 5 | ||
6250 | |||
6251 | /* INTR :: INTR_MSK_STS_REG :: L0_UV_RX_DMA_DONE_INTR_MSK [04:04] */ | ||
6252 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_DONE_INTR_MSK_MASK 0x00000010 | ||
6253 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_DONE_INTR_MSK_ALIGN 0 | ||
6254 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_DONE_INTR_MSK_BITS 1 | ||
6255 | #define INTR_INTR_MSK_STS_REG_L0_UV_RX_DMA_DONE_INTR_MSK_SHIFT 4 | ||
6256 | |||
6257 | /* INTR :: INTR_MSK_STS_REG :: LIST0_Y_RX_DMA_ERR_INTR_MSK [03:03] */ | ||
6258 | #define INTR_INTR_MSK_STS_REG_LIST0_Y_RX_DMA_ERR_INTR_MSK_MASK 0x00000008 | ||
6259 | #define INTR_INTR_MSK_STS_REG_LIST0_Y_RX_DMA_ERR_INTR_MSK_ALIGN 0 | ||
6260 | #define INTR_INTR_MSK_STS_REG_LIST0_Y_RX_DMA_ERR_INTR_MSK_BITS 1 | ||
6261 | #define INTR_INTR_MSK_STS_REG_LIST0_Y_RX_DMA_ERR_INTR_MSK_SHIFT 3 | ||
6262 | |||
6263 | /* INTR :: INTR_MSK_STS_REG :: L0_Y_RX_DMA_DONE_INTR_MSK [02:02] */ | ||
6264 | #define INTR_INTR_MSK_STS_REG_L0_Y_RX_DMA_DONE_INTR_MSK_MASK 0x00000004 | ||
6265 | #define INTR_INTR_MSK_STS_REG_L0_Y_RX_DMA_DONE_INTR_MSK_ALIGN 0 | ||
6266 | #define INTR_INTR_MSK_STS_REG_L0_Y_RX_DMA_DONE_INTR_MSK_BITS 1 | ||
6267 | #define INTR_INTR_MSK_STS_REG_L0_Y_RX_DMA_DONE_INTR_MSK_SHIFT 2 | ||
6268 | |||
6269 | /* INTR :: INTR_MSK_STS_REG :: L0_TX_DMA_ERR_INTR_MSK [01:01] */ | ||
6270 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_ERR_INTR_MSK_MASK 0x00000002 | ||
6271 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_ERR_INTR_MSK_ALIGN 0 | ||
6272 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_ERR_INTR_MSK_BITS 1 | ||
6273 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_ERR_INTR_MSK_SHIFT 1 | ||
6274 | |||
6275 | /* INTR :: INTR_MSK_STS_REG :: L0_TX_DMA_DONE_INTR_MSK [00:00] */ | ||
6276 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_DONE_INTR_MSK_MASK 0x00000001 | ||
6277 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_DONE_INTR_MSK_ALIGN 0 | ||
6278 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_DONE_INTR_MSK_BITS 1 | ||
6279 | #define INTR_INTR_MSK_STS_REG_L0_TX_DMA_DONE_INTR_MSK_SHIFT 0 | ||
6280 | |||
6281 | |||
6282 | /**************************************************************************** | ||
6283 | * INTR :: INTR_MSK_SET_REG | ||
6284 | ***************************************************************************/ | ||
6285 | /* INTR :: INTR_MSK_SET_REG :: reserved0 [31:26] */ | ||
6286 | #define INTR_INTR_MSK_SET_REG_reserved0_MASK 0xfc000000 | ||
6287 | #define INTR_INTR_MSK_SET_REG_reserved0_ALIGN 0 | ||
6288 | #define INTR_INTR_MSK_SET_REG_reserved0_BITS 6 | ||
6289 | #define INTR_INTR_MSK_SET_REG_reserved0_SHIFT 26 | ||
6290 | |||
6291 | /* INTR :: INTR_MSK_SET_REG :: PCIE_TGT_CA_ATTN [25:25] */ | ||
6292 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_CA_ATTN_MASK 0x02000000 | ||
6293 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_CA_ATTN_ALIGN 0 | ||
6294 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_CA_ATTN_BITS 1 | ||
6295 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_CA_ATTN_SHIFT 25 | ||
6296 | |||
6297 | /* INTR :: INTR_MSK_SET_REG :: PCIE_TGT_UR_ATTN [24:24] */ | ||
6298 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_UR_ATTN_MASK 0x01000000 | ||
6299 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_UR_ATTN_ALIGN 0 | ||
6300 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_UR_ATTN_BITS 1 | ||
6301 | #define INTR_INTR_MSK_SET_REG_PCIE_TGT_UR_ATTN_SHIFT 24 | ||
6302 | |||
6303 | /* INTR :: INTR_MSK_SET_REG :: reserved1 [23:14] */ | ||
6304 | #define INTR_INTR_MSK_SET_REG_reserved1_MASK 0x00ffc000 | ||
6305 | #define INTR_INTR_MSK_SET_REG_reserved1_ALIGN 0 | ||
6306 | #define INTR_INTR_MSK_SET_REG_reserved1_BITS 10 | ||
6307 | #define INTR_INTR_MSK_SET_REG_reserved1_SHIFT 14 | ||
6308 | |||
6309 | /* INTR :: INTR_MSK_SET_REG :: L1_UV_RX_DMA_ERR_INTR_MSK_SET [13:13] */ | ||
6310 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_ERR_INTR_MSK_SET_MASK 0x00002000 | ||
6311 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_ERR_INTR_MSK_SET_ALIGN 0 | ||
6312 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_ERR_INTR_MSK_SET_BITS 1 | ||
6313 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_ERR_INTR_MSK_SET_SHIFT 13 | ||
6314 | |||
6315 | /* INTR :: INTR_MSK_SET_REG :: L1_UV_RX_DMA_DONE_INTR_MSK_SET [12:12] */ | ||
6316 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_DONE_INTR_MSK_SET_MASK 0x00001000 | ||
6317 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_DONE_INTR_MSK_SET_ALIGN 0 | ||
6318 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_DONE_INTR_MSK_SET_BITS 1 | ||
6319 | #define INTR_INTR_MSK_SET_REG_L1_UV_RX_DMA_DONE_INTR_MSK_SET_SHIFT 12 | ||
6320 | |||
6321 | /* INTR :: INTR_MSK_SET_REG :: L1_Y_RX_DMA_ERR_INTR_MSK_SET [11:11] */ | ||
6322 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_ERR_INTR_MSK_SET_MASK 0x00000800 | ||
6323 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_ERR_INTR_MSK_SET_ALIGN 0 | ||
6324 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_ERR_INTR_MSK_SET_BITS 1 | ||
6325 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_ERR_INTR_MSK_SET_SHIFT 11 | ||
6326 | |||
6327 | /* INTR :: INTR_MSK_SET_REG :: L1_Y_RX_DMA_DONE_INTR_MSK_SET [10:10] */ | ||
6328 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_DONE_INTR_MSK_SET_MASK 0x00000400 | ||
6329 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_DONE_INTR_MSK_SET_ALIGN 0 | ||
6330 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_DONE_INTR_MSK_SET_BITS 1 | ||
6331 | #define INTR_INTR_MSK_SET_REG_L1_Y_RX_DMA_DONE_INTR_MSK_SET_SHIFT 10 | ||
6332 | |||
6333 | /* INTR :: INTR_MSK_SET_REG :: L1_TX_DMA_ERR_INTR_MSK_SET [09:09] */ | ||
6334 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_ERR_INTR_MSK_SET_MASK 0x00000200 | ||
6335 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_ERR_INTR_MSK_SET_ALIGN 0 | ||
6336 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_ERR_INTR_MSK_SET_BITS 1 | ||
6337 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_ERR_INTR_MSK_SET_SHIFT 9 | ||
6338 | |||
6339 | /* INTR :: INTR_MSK_SET_REG :: L1_TX_DMA_DONE_INTR_MSK_SET [08:08] */ | ||
6340 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_DONE_INTR_MSK_SET_MASK 0x00000100 | ||
6341 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_DONE_INTR_MSK_SET_ALIGN 0 | ||
6342 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_DONE_INTR_MSK_SET_BITS 1 | ||
6343 | #define INTR_INTR_MSK_SET_REG_L1_TX_DMA_DONE_INTR_MSK_SET_SHIFT 8 | ||
6344 | |||
6345 | /* INTR :: INTR_MSK_SET_REG :: reserved2 [07:06] */ | ||
6346 | #define INTR_INTR_MSK_SET_REG_reserved2_MASK 0x000000c0 | ||
6347 | #define INTR_INTR_MSK_SET_REG_reserved2_ALIGN 0 | ||
6348 | #define INTR_INTR_MSK_SET_REG_reserved2_BITS 2 | ||
6349 | #define INTR_INTR_MSK_SET_REG_reserved2_SHIFT 6 | ||
6350 | |||
6351 | /* INTR :: INTR_MSK_SET_REG :: L0_UV_RX_DMA_ERR_INTR_MSK_SET [05:05] */ | ||
6352 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_ERR_INTR_MSK_SET_MASK 0x00000020 | ||
6353 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_ERR_INTR_MSK_SET_ALIGN 0 | ||
6354 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_ERR_INTR_MSK_SET_BITS 1 | ||
6355 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_ERR_INTR_MSK_SET_SHIFT 5 | ||
6356 | |||
6357 | /* INTR :: INTR_MSK_SET_REG :: L0_UV_RX_DMA_DONE_INTR_MSK_SET [04:04] */ | ||
6358 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_DONE_INTR_MSK_SET_MASK 0x00000010 | ||
6359 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_DONE_INTR_MSK_SET_ALIGN 0 | ||
6360 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_DONE_INTR_MSK_SET_BITS 1 | ||
6361 | #define INTR_INTR_MSK_SET_REG_L0_UV_RX_DMA_DONE_INTR_MSK_SET_SHIFT 4 | ||
6362 | |||
6363 | /* INTR :: INTR_MSK_SET_REG :: L0_Y_RX_DMA_ERR_INTR_MSK_SET [03:03] */ | ||
6364 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_ERR_INTR_MSK_SET_MASK 0x00000008 | ||
6365 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_ERR_INTR_MSK_SET_ALIGN 0 | ||
6366 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_ERR_INTR_MSK_SET_BITS 1 | ||
6367 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_ERR_INTR_MSK_SET_SHIFT 3 | ||
6368 | |||
6369 | /* INTR :: INTR_MSK_SET_REG :: L0_Y_RX_DMA_DONE_INTR_MSK_SET [02:02] */ | ||
6370 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_DONE_INTR_MSK_SET_MASK 0x00000004 | ||
6371 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_DONE_INTR_MSK_SET_ALIGN 0 | ||
6372 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_DONE_INTR_MSK_SET_BITS 1 | ||
6373 | #define INTR_INTR_MSK_SET_REG_L0_Y_RX_DMA_DONE_INTR_MSK_SET_SHIFT 2 | ||
6374 | |||
6375 | /* INTR :: INTR_MSK_SET_REG :: L0_TX_DMA_ERR_INTR_MSK_SET [01:01] */ | ||
6376 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_ERR_INTR_MSK_SET_MASK 0x00000002 | ||
6377 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_ERR_INTR_MSK_SET_ALIGN 0 | ||
6378 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_ERR_INTR_MSK_SET_BITS 1 | ||
6379 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_ERR_INTR_MSK_SET_SHIFT 1 | ||
6380 | |||
6381 | /* INTR :: INTR_MSK_SET_REG :: L0_TX_DMA_DONE_INTR_MSK_SET [00:00] */ | ||
6382 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_DONE_INTR_MSK_SET_MASK 0x00000001 | ||
6383 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_DONE_INTR_MSK_SET_ALIGN 0 | ||
6384 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_DONE_INTR_MSK_SET_BITS 1 | ||
6385 | #define INTR_INTR_MSK_SET_REG_L0_TX_DMA_DONE_INTR_MSK_SET_SHIFT 0 | ||
6386 | |||
6387 | |||
6388 | /**************************************************************************** | ||
6389 | * INTR :: INTR_MSK_CLR_REG | ||
6390 | ***************************************************************************/ | ||
6391 | /* INTR :: INTR_MSK_CLR_REG :: reserved0 [31:26] */ | ||
6392 | #define INTR_INTR_MSK_CLR_REG_reserved0_MASK 0xfc000000 | ||
6393 | #define INTR_INTR_MSK_CLR_REG_reserved0_ALIGN 0 | ||
6394 | #define INTR_INTR_MSK_CLR_REG_reserved0_BITS 6 | ||
6395 | #define INTR_INTR_MSK_CLR_REG_reserved0_SHIFT 26 | ||
6396 | |||
6397 | /* INTR :: INTR_MSK_CLR_REG :: PCIE_TGT_CA_ATTN [25:25] */ | ||
6398 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_CA_ATTN_MASK 0x02000000 | ||
6399 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_CA_ATTN_ALIGN 0 | ||
6400 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_CA_ATTN_BITS 1 | ||
6401 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_CA_ATTN_SHIFT 25 | ||
6402 | |||
6403 | /* INTR :: INTR_MSK_CLR_REG :: PCIE_TGT_UR_ATTN [24:24] */ | ||
6404 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_UR_ATTN_MASK 0x01000000 | ||
6405 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_UR_ATTN_ALIGN 0 | ||
6406 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_UR_ATTN_BITS 1 | ||
6407 | #define INTR_INTR_MSK_CLR_REG_PCIE_TGT_UR_ATTN_SHIFT 24 | ||
6408 | |||
6409 | /* INTR :: INTR_MSK_CLR_REG :: reserved1 [23:14] */ | ||
6410 | #define INTR_INTR_MSK_CLR_REG_reserved1_MASK 0x00ffc000 | ||
6411 | #define INTR_INTR_MSK_CLR_REG_reserved1_ALIGN 0 | ||
6412 | #define INTR_INTR_MSK_CLR_REG_reserved1_BITS 10 | ||
6413 | #define INTR_INTR_MSK_CLR_REG_reserved1_SHIFT 14 | ||
6414 | |||
6415 | /* INTR :: INTR_MSK_CLR_REG :: L1_UV_RX_DMA_ERR_INTR_MSK_CLR [13:13] */ | ||
6416 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_ERR_INTR_MSK_CLR_MASK 0x00002000 | ||
6417 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_ERR_INTR_MSK_CLR_ALIGN 0 | ||
6418 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_ERR_INTR_MSK_CLR_BITS 1 | ||
6419 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_ERR_INTR_MSK_CLR_SHIFT 13 | ||
6420 | |||
6421 | /* INTR :: INTR_MSK_CLR_REG :: L1_UV_RX_DMA_DONE_INTR_MSK_CLR [12:12] */ | ||
6422 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_DONE_INTR_MSK_CLR_MASK 0x00001000 | ||
6423 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_DONE_INTR_MSK_CLR_ALIGN 0 | ||
6424 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_DONE_INTR_MSK_CLR_BITS 1 | ||
6425 | #define INTR_INTR_MSK_CLR_REG_L1_UV_RX_DMA_DONE_INTR_MSK_CLR_SHIFT 12 | ||
6426 | |||
6427 | /* INTR :: INTR_MSK_CLR_REG :: L1_Y_RX_DMA_ERR_INTR_MSK_CLR [11:11] */ | ||
6428 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_ERR_INTR_MSK_CLR_MASK 0x00000800 | ||
6429 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_ERR_INTR_MSK_CLR_ALIGN 0 | ||
6430 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_ERR_INTR_MSK_CLR_BITS 1 | ||
6431 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_ERR_INTR_MSK_CLR_SHIFT 11 | ||
6432 | |||
6433 | /* INTR :: INTR_MSK_CLR_REG :: L1_Y_RX_DMA_DONE_INTR_MSK_CLR [10:10] */ | ||
6434 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_DONE_INTR_MSK_CLR_MASK 0x00000400 | ||
6435 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_DONE_INTR_MSK_CLR_ALIGN 0 | ||
6436 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_DONE_INTR_MSK_CLR_BITS 1 | ||
6437 | #define INTR_INTR_MSK_CLR_REG_L1_Y_RX_DMA_DONE_INTR_MSK_CLR_SHIFT 10 | ||
6438 | |||
6439 | /* INTR :: INTR_MSK_CLR_REG :: L1_TX_DMA_ERR_INTR_MSK_CLR [09:09] */ | ||
6440 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_ERR_INTR_MSK_CLR_MASK 0x00000200 | ||
6441 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_ERR_INTR_MSK_CLR_ALIGN 0 | ||
6442 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_ERR_INTR_MSK_CLR_BITS 1 | ||
6443 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_ERR_INTR_MSK_CLR_SHIFT 9 | ||
6444 | |||
6445 | /* INTR :: INTR_MSK_CLR_REG :: L1_TX_DMA_DONE_INTR_MSK_CLR [08:08] */ | ||
6446 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_DONE_INTR_MSK_CLR_MASK 0x00000100 | ||
6447 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_DONE_INTR_MSK_CLR_ALIGN 0 | ||
6448 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_DONE_INTR_MSK_CLR_BITS 1 | ||
6449 | #define INTR_INTR_MSK_CLR_REG_L1_TX_DMA_DONE_INTR_MSK_CLR_SHIFT 8 | ||
6450 | |||
6451 | /* INTR :: INTR_MSK_CLR_REG :: reserved2 [07:06] */ | ||
6452 | #define INTR_INTR_MSK_CLR_REG_reserved2_MASK 0x000000c0 | ||
6453 | #define INTR_INTR_MSK_CLR_REG_reserved2_ALIGN 0 | ||
6454 | #define INTR_INTR_MSK_CLR_REG_reserved2_BITS 2 | ||
6455 | #define INTR_INTR_MSK_CLR_REG_reserved2_SHIFT 6 | ||
6456 | |||
6457 | /* INTR :: INTR_MSK_CLR_REG :: L0_UV_RX_DMA_ERR_INTR_MSK_CLR [05:05] */ | ||
6458 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_ERR_INTR_MSK_CLR_MASK 0x00000020 | ||
6459 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_ERR_INTR_MSK_CLR_ALIGN 0 | ||
6460 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_ERR_INTR_MSK_CLR_BITS 1 | ||
6461 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_ERR_INTR_MSK_CLR_SHIFT 5 | ||
6462 | |||
6463 | /* INTR :: INTR_MSK_CLR_REG :: L0_UV_RX_DMA_DONE_INTR_MSK_CLR [04:04] */ | ||
6464 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_DONE_INTR_MSK_CLR_MASK 0x00000010 | ||
6465 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_DONE_INTR_MSK_CLR_ALIGN 0 | ||
6466 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_DONE_INTR_MSK_CLR_BITS 1 | ||
6467 | #define INTR_INTR_MSK_CLR_REG_L0_UV_RX_DMA_DONE_INTR_MSK_CLR_SHIFT 4 | ||
6468 | |||
6469 | /* INTR :: INTR_MSK_CLR_REG :: L0_Y_RX_DMA_ERR_INTR_MSK_CLR [03:03] */ | ||
6470 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_ERR_INTR_MSK_CLR_MASK 0x00000008 | ||
6471 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_ERR_INTR_MSK_CLR_ALIGN 0 | ||
6472 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_ERR_INTR_MSK_CLR_BITS 1 | ||
6473 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_ERR_INTR_MSK_CLR_SHIFT 3 | ||
6474 | |||
6475 | /* INTR :: INTR_MSK_CLR_REG :: L0_Y_RX_DMA_DONE_INTR_MSK_CLR [02:02] */ | ||
6476 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_DONE_INTR_MSK_CLR_MASK 0x00000004 | ||
6477 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_DONE_INTR_MSK_CLR_ALIGN 0 | ||
6478 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_DONE_INTR_MSK_CLR_BITS 1 | ||
6479 | #define INTR_INTR_MSK_CLR_REG_L0_Y_RX_DMA_DONE_INTR_MSK_CLR_SHIFT 2 | ||
6480 | |||
6481 | /* INTR :: INTR_MSK_CLR_REG :: L0_TX_DMA_ERR_INTR_MSK_CLR [01:01] */ | ||
6482 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_ERR_INTR_MSK_CLR_MASK 0x00000002 | ||
6483 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_ERR_INTR_MSK_CLR_ALIGN 0 | ||
6484 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_ERR_INTR_MSK_CLR_BITS 1 | ||
6485 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_ERR_INTR_MSK_CLR_SHIFT 1 | ||
6486 | |||
6487 | /* INTR :: INTR_MSK_CLR_REG :: L0_TX_DMA_DONE_INTR_MSK_CLR [00:00] */ | ||
6488 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_DONE_INTR_MSK_CLR_MASK 0x00000001 | ||
6489 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_DONE_INTR_MSK_CLR_ALIGN 0 | ||
6490 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_DONE_INTR_MSK_CLR_BITS 1 | ||
6491 | #define INTR_INTR_MSK_CLR_REG_L0_TX_DMA_DONE_INTR_MSK_CLR_SHIFT 0 | ||
6492 | |||
6493 | |||
6494 | /**************************************************************************** | ||
6495 | * INTR :: EOI_CTRL | ||
6496 | ***************************************************************************/ | ||
6497 | /* INTR :: EOI_CTRL :: reserved0 [31:01] */ | ||
6498 | #define INTR_EOI_CTRL_reserved0_MASK 0xfffffffe | ||
6499 | #define INTR_EOI_CTRL_reserved0_ALIGN 0 | ||
6500 | #define INTR_EOI_CTRL_reserved0_BITS 31 | ||
6501 | #define INTR_EOI_CTRL_reserved0_SHIFT 1 | ||
6502 | |||
6503 | /* INTR :: EOI_CTRL :: EOI [00:00] */ | ||
6504 | #define INTR_EOI_CTRL_EOI_MASK 0x00000001 | ||
6505 | #define INTR_EOI_CTRL_EOI_ALIGN 0 | ||
6506 | #define INTR_EOI_CTRL_EOI_BITS 1 | ||
6507 | #define INTR_EOI_CTRL_EOI_SHIFT 0 | ||
6508 | |||
6509 | |||
6510 | /**************************************************************************** | ||
6511 | * BCM70012_TGT_TOP_MDIO | ||
6512 | ***************************************************************************/ | ||
6513 | /**************************************************************************** | ||
6514 | * MDIO :: CTRL0 | ||
6515 | ***************************************************************************/ | ||
6516 | /* MDIO :: CTRL0 :: reserved0 [31:22] */ | ||
6517 | #define MDIO_CTRL0_reserved0_MASK 0xffc00000 | ||
6518 | #define MDIO_CTRL0_reserved0_ALIGN 0 | ||
6519 | #define MDIO_CTRL0_reserved0_BITS 10 | ||
6520 | #define MDIO_CTRL0_reserved0_SHIFT 22 | ||
6521 | |||
6522 | /* MDIO :: CTRL0 :: WRITE_READ_COMMAND [21:21] */ | ||
6523 | #define MDIO_CTRL0_WRITE_READ_COMMAND_MASK 0x00200000 | ||
6524 | #define MDIO_CTRL0_WRITE_READ_COMMAND_ALIGN 0 | ||
6525 | #define MDIO_CTRL0_WRITE_READ_COMMAND_BITS 1 | ||
6526 | #define MDIO_CTRL0_WRITE_READ_COMMAND_SHIFT 21 | ||
6527 | |||
6528 | /* MDIO :: CTRL0 :: PHYAD [20:16] */ | ||
6529 | #define MDIO_CTRL0_PHYAD_MASK 0x001f0000 | ||
6530 | #define MDIO_CTRL0_PHYAD_ALIGN 0 | ||
6531 | #define MDIO_CTRL0_PHYAD_BITS 5 | ||
6532 | #define MDIO_CTRL0_PHYAD_SHIFT 16 | ||
6533 | |||
6534 | /* MDIO :: CTRL0 :: reserved1 [15:05] */ | ||
6535 | #define MDIO_CTRL0_reserved1_MASK 0x0000ffe0 | ||
6536 | #define MDIO_CTRL0_reserved1_ALIGN 0 | ||
6537 | #define MDIO_CTRL0_reserved1_BITS 11 | ||
6538 | #define MDIO_CTRL0_reserved1_SHIFT 5 | ||
6539 | |||
6540 | /* MDIO :: CTRL0 :: REGAD [04:00] */ | ||
6541 | #define MDIO_CTRL0_REGAD_MASK 0x0000001f | ||
6542 | #define MDIO_CTRL0_REGAD_ALIGN 0 | ||
6543 | #define MDIO_CTRL0_REGAD_BITS 5 | ||
6544 | #define MDIO_CTRL0_REGAD_SHIFT 0 | ||
6545 | |||
6546 | |||
6547 | /**************************************************************************** | ||
6548 | * MDIO :: CTRL1 | ||
6549 | ***************************************************************************/ | ||
6550 | /* MDIO :: CTRL1 :: WR_STATUS [31:31] */ | ||
6551 | #define MDIO_CTRL1_WR_STATUS_MASK 0x80000000 | ||
6552 | #define MDIO_CTRL1_WR_STATUS_ALIGN 0 | ||
6553 | #define MDIO_CTRL1_WR_STATUS_BITS 1 | ||
6554 | #define MDIO_CTRL1_WR_STATUS_SHIFT 31 | ||
6555 | |||
6556 | /* MDIO :: CTRL1 :: reserved0 [30:16] */ | ||
6557 | #define MDIO_CTRL1_reserved0_MASK 0x7fff0000 | ||
6558 | #define MDIO_CTRL1_reserved0_ALIGN 0 | ||
6559 | #define MDIO_CTRL1_reserved0_BITS 15 | ||
6560 | #define MDIO_CTRL1_reserved0_SHIFT 16 | ||
6561 | |||
6562 | /* MDIO :: CTRL1 :: Write_Data [15:00] */ | ||
6563 | #define MDIO_CTRL1_Write_Data_MASK 0x0000ffff | ||
6564 | #define MDIO_CTRL1_Write_Data_ALIGN 0 | ||
6565 | #define MDIO_CTRL1_Write_Data_BITS 16 | ||
6566 | #define MDIO_CTRL1_Write_Data_SHIFT 0 | ||
6567 | |||
6568 | |||
6569 | /**************************************************************************** | ||
6570 | * MDIO :: CTRL2 | ||
6571 | ***************************************************************************/ | ||
6572 | /* MDIO :: CTRL2 :: RD_STATUS [31:31] */ | ||
6573 | #define MDIO_CTRL2_RD_STATUS_MASK 0x80000000 | ||
6574 | #define MDIO_CTRL2_RD_STATUS_ALIGN 0 | ||
6575 | #define MDIO_CTRL2_RD_STATUS_BITS 1 | ||
6576 | #define MDIO_CTRL2_RD_STATUS_SHIFT 31 | ||
6577 | |||
6578 | /* MDIO :: CTRL2 :: reserved0 [30:16] */ | ||
6579 | #define MDIO_CTRL2_reserved0_MASK 0x7fff0000 | ||
6580 | #define MDIO_CTRL2_reserved0_ALIGN 0 | ||
6581 | #define MDIO_CTRL2_reserved0_BITS 15 | ||
6582 | #define MDIO_CTRL2_reserved0_SHIFT 16 | ||
6583 | |||
6584 | /* MDIO :: CTRL2 :: Read_Data [15:00] */ | ||
6585 | #define MDIO_CTRL2_Read_Data_MASK 0x0000ffff | ||
6586 | #define MDIO_CTRL2_Read_Data_ALIGN 0 | ||
6587 | #define MDIO_CTRL2_Read_Data_BITS 16 | ||
6588 | #define MDIO_CTRL2_Read_Data_SHIFT 0 | ||
6589 | |||
6590 | |||
6591 | /**************************************************************************** | ||
6592 | * BCM70012_TGT_TOP_TGT_RGR_BRIDGE | ||
6593 | ***************************************************************************/ | ||
6594 | /**************************************************************************** | ||
6595 | * TGT_RGR_BRIDGE :: REVISION | ||
6596 | ***************************************************************************/ | ||
6597 | /* TGT_RGR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
6598 | #define TGT_RGR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
6599 | #define TGT_RGR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
6600 | #define TGT_RGR_BRIDGE_REVISION_reserved0_BITS 16 | ||
6601 | #define TGT_RGR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
6602 | |||
6603 | /* TGT_RGR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
6604 | #define TGT_RGR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
6605 | #define TGT_RGR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
6606 | #define TGT_RGR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
6607 | #define TGT_RGR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
6608 | |||
6609 | /* TGT_RGR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
6610 | #define TGT_RGR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
6611 | #define TGT_RGR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
6612 | #define TGT_RGR_BRIDGE_REVISION_MINOR_BITS 8 | ||
6613 | #define TGT_RGR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
6614 | |||
6615 | |||
6616 | /**************************************************************************** | ||
6617 | * TGT_RGR_BRIDGE :: CTRL | ||
6618 | ***************************************************************************/ | ||
6619 | /* TGT_RGR_BRIDGE :: CTRL :: reserved0 [31:02] */ | ||
6620 | #define TGT_RGR_BRIDGE_CTRL_reserved0_MASK 0xfffffffc | ||
6621 | #define TGT_RGR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
6622 | #define TGT_RGR_BRIDGE_CTRL_reserved0_BITS 30 | ||
6623 | #define TGT_RGR_BRIDGE_CTRL_reserved0_SHIFT 2 | ||
6624 | |||
6625 | /* TGT_RGR_BRIDGE :: CTRL :: RBUS_ERROR_INTR [01:01] */ | ||
6626 | #define TGT_RGR_BRIDGE_CTRL_RBUS_ERROR_INTR_MASK 0x00000002 | ||
6627 | #define TGT_RGR_BRIDGE_CTRL_RBUS_ERROR_INTR_ALIGN 0 | ||
6628 | #define TGT_RGR_BRIDGE_CTRL_RBUS_ERROR_INTR_BITS 1 | ||
6629 | #define TGT_RGR_BRIDGE_CTRL_RBUS_ERROR_INTR_SHIFT 1 | ||
6630 | |||
6631 | /* TGT_RGR_BRIDGE :: CTRL :: GISB_ERROR_INTR [00:00] */ | ||
6632 | #define TGT_RGR_BRIDGE_CTRL_GISB_ERROR_INTR_MASK 0x00000001 | ||
6633 | #define TGT_RGR_BRIDGE_CTRL_GISB_ERROR_INTR_ALIGN 0 | ||
6634 | #define TGT_RGR_BRIDGE_CTRL_GISB_ERROR_INTR_BITS 1 | ||
6635 | #define TGT_RGR_BRIDGE_CTRL_GISB_ERROR_INTR_SHIFT 0 | ||
6636 | |||
6637 | |||
6638 | /**************************************************************************** | ||
6639 | * TGT_RGR_BRIDGE :: RBUS_TIMER | ||
6640 | ***************************************************************************/ | ||
6641 | /* TGT_RGR_BRIDGE :: RBUS_TIMER :: reserved0 [31:16] */ | ||
6642 | #define TGT_RGR_BRIDGE_RBUS_TIMER_reserved0_MASK 0xffff0000 | ||
6643 | #define TGT_RGR_BRIDGE_RBUS_TIMER_reserved0_ALIGN 0 | ||
6644 | #define TGT_RGR_BRIDGE_RBUS_TIMER_reserved0_BITS 16 | ||
6645 | #define TGT_RGR_BRIDGE_RBUS_TIMER_reserved0_SHIFT 16 | ||
6646 | |||
6647 | /* TGT_RGR_BRIDGE :: RBUS_TIMER :: RBUS_TO_RBUS_TRANS_TIMER_CNT [15:00] */ | ||
6648 | #define TGT_RGR_BRIDGE_RBUS_TIMER_RBUS_TO_RBUS_TRANS_TIMER_CNT_MASK 0x0000ffff | ||
6649 | #define TGT_RGR_BRIDGE_RBUS_TIMER_RBUS_TO_RBUS_TRANS_TIMER_CNT_ALIGN 0 | ||
6650 | #define TGT_RGR_BRIDGE_RBUS_TIMER_RBUS_TO_RBUS_TRANS_TIMER_CNT_BITS 16 | ||
6651 | #define TGT_RGR_BRIDGE_RBUS_TIMER_RBUS_TO_RBUS_TRANS_TIMER_CNT_SHIFT 0 | ||
6652 | |||
6653 | |||
6654 | /**************************************************************************** | ||
6655 | * TGT_RGR_BRIDGE :: SPARE_SW_RESET_0 | ||
6656 | ***************************************************************************/ | ||
6657 | /* TGT_RGR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
6658 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
6659 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
6660 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
6661 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
6662 | |||
6663 | /* TGT_RGR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
6664 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
6665 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
6666 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
6667 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
6668 | |||
6669 | |||
6670 | /**************************************************************************** | ||
6671 | * TGT_RGR_BRIDGE :: SPARE_SW_RESET_1 | ||
6672 | ***************************************************************************/ | ||
6673 | /* TGT_RGR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
6674 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
6675 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
6676 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
6677 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
6678 | |||
6679 | /* TGT_RGR_BRIDGE :: SPARE_SW_RESET_1 :: SPARE_SW_RESET [00:00] */ | ||
6680 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_MASK 0x00000001 | ||
6681 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ALIGN 0 | ||
6682 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_BITS 1 | ||
6683 | #define TGT_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_SHIFT 0 | ||
6684 | |||
6685 | |||
6686 | /**************************************************************************** | ||
6687 | * BCM70012_I2C_TOP_I2C | ||
6688 | ***************************************************************************/ | ||
6689 | /**************************************************************************** | ||
6690 | * I2C :: CHIP_ADDRESS | ||
6691 | ***************************************************************************/ | ||
6692 | /* I2C :: CHIP_ADDRESS :: reserved0 [31:08] */ | ||
6693 | #define I2C_CHIP_ADDRESS_reserved0_MASK 0xffffff00 | ||
6694 | #define I2C_CHIP_ADDRESS_reserved0_ALIGN 0 | ||
6695 | #define I2C_CHIP_ADDRESS_reserved0_BITS 24 | ||
6696 | #define I2C_CHIP_ADDRESS_reserved0_SHIFT 8 | ||
6697 | |||
6698 | /* I2C :: CHIP_ADDRESS :: CHIP_ADDRESS [07:01] */ | ||
6699 | #define I2C_CHIP_ADDRESS_CHIP_ADDRESS_MASK 0x000000fe | ||
6700 | #define I2C_CHIP_ADDRESS_CHIP_ADDRESS_ALIGN 0 | ||
6701 | #define I2C_CHIP_ADDRESS_CHIP_ADDRESS_BITS 7 | ||
6702 | #define I2C_CHIP_ADDRESS_CHIP_ADDRESS_SHIFT 1 | ||
6703 | |||
6704 | /* I2C :: CHIP_ADDRESS :: RESERVED [00:00] */ | ||
6705 | #define I2C_CHIP_ADDRESS_RESERVED_MASK 0x00000001 | ||
6706 | #define I2C_CHIP_ADDRESS_RESERVED_ALIGN 0 | ||
6707 | #define I2C_CHIP_ADDRESS_RESERVED_BITS 1 | ||
6708 | #define I2C_CHIP_ADDRESS_RESERVED_SHIFT 0 | ||
6709 | |||
6710 | |||
6711 | /**************************************************************************** | ||
6712 | * I2C :: DATA_IN0 | ||
6713 | ***************************************************************************/ | ||
6714 | /* I2C :: DATA_IN0 :: reserved0 [31:08] */ | ||
6715 | #define I2C_DATA_IN0_reserved0_MASK 0xffffff00 | ||
6716 | #define I2C_DATA_IN0_reserved0_ALIGN 0 | ||
6717 | #define I2C_DATA_IN0_reserved0_BITS 24 | ||
6718 | #define I2C_DATA_IN0_reserved0_SHIFT 8 | ||
6719 | |||
6720 | /* I2C :: DATA_IN0 :: DATA_IN0 [07:00] */ | ||
6721 | #define I2C_DATA_IN0_DATA_IN0_MASK 0x000000ff | ||
6722 | #define I2C_DATA_IN0_DATA_IN0_ALIGN 0 | ||
6723 | #define I2C_DATA_IN0_DATA_IN0_BITS 8 | ||
6724 | #define I2C_DATA_IN0_DATA_IN0_SHIFT 0 | ||
6725 | |||
6726 | |||
6727 | /**************************************************************************** | ||
6728 | * I2C :: DATA_IN1 | ||
6729 | ***************************************************************************/ | ||
6730 | /* I2C :: DATA_IN1 :: reserved0 [31:08] */ | ||
6731 | #define I2C_DATA_IN1_reserved0_MASK 0xffffff00 | ||
6732 | #define I2C_DATA_IN1_reserved0_ALIGN 0 | ||
6733 | #define I2C_DATA_IN1_reserved0_BITS 24 | ||
6734 | #define I2C_DATA_IN1_reserved0_SHIFT 8 | ||
6735 | |||
6736 | /* I2C :: DATA_IN1 :: DATA_IN1 [07:00] */ | ||
6737 | #define I2C_DATA_IN1_DATA_IN1_MASK 0x000000ff | ||
6738 | #define I2C_DATA_IN1_DATA_IN1_ALIGN 0 | ||
6739 | #define I2C_DATA_IN1_DATA_IN1_BITS 8 | ||
6740 | #define I2C_DATA_IN1_DATA_IN1_SHIFT 0 | ||
6741 | |||
6742 | |||
6743 | /**************************************************************************** | ||
6744 | * I2C :: DATA_IN2 | ||
6745 | ***************************************************************************/ | ||
6746 | /* I2C :: DATA_IN2 :: reserved0 [31:08] */ | ||
6747 | #define I2C_DATA_IN2_reserved0_MASK 0xffffff00 | ||
6748 | #define I2C_DATA_IN2_reserved0_ALIGN 0 | ||
6749 | #define I2C_DATA_IN2_reserved0_BITS 24 | ||
6750 | #define I2C_DATA_IN2_reserved0_SHIFT 8 | ||
6751 | |||
6752 | /* I2C :: DATA_IN2 :: DATA_IN2 [07:00] */ | ||
6753 | #define I2C_DATA_IN2_DATA_IN2_MASK 0x000000ff | ||
6754 | #define I2C_DATA_IN2_DATA_IN2_ALIGN 0 | ||
6755 | #define I2C_DATA_IN2_DATA_IN2_BITS 8 | ||
6756 | #define I2C_DATA_IN2_DATA_IN2_SHIFT 0 | ||
6757 | |||
6758 | |||
6759 | /**************************************************************************** | ||
6760 | * I2C :: DATA_IN3 | ||
6761 | ***************************************************************************/ | ||
6762 | /* I2C :: DATA_IN3 :: reserved0 [31:08] */ | ||
6763 | #define I2C_DATA_IN3_reserved0_MASK 0xffffff00 | ||
6764 | #define I2C_DATA_IN3_reserved0_ALIGN 0 | ||
6765 | #define I2C_DATA_IN3_reserved0_BITS 24 | ||
6766 | #define I2C_DATA_IN3_reserved0_SHIFT 8 | ||
6767 | |||
6768 | /* I2C :: DATA_IN3 :: DATA_IN3 [07:00] */ | ||
6769 | #define I2C_DATA_IN3_DATA_IN3_MASK 0x000000ff | ||
6770 | #define I2C_DATA_IN3_DATA_IN3_ALIGN 0 | ||
6771 | #define I2C_DATA_IN3_DATA_IN3_BITS 8 | ||
6772 | #define I2C_DATA_IN3_DATA_IN3_SHIFT 0 | ||
6773 | |||
6774 | |||
6775 | /**************************************************************************** | ||
6776 | * I2C :: DATA_IN4 | ||
6777 | ***************************************************************************/ | ||
6778 | /* I2C :: DATA_IN4 :: reserved0 [31:08] */ | ||
6779 | #define I2C_DATA_IN4_reserved0_MASK 0xffffff00 | ||
6780 | #define I2C_DATA_IN4_reserved0_ALIGN 0 | ||
6781 | #define I2C_DATA_IN4_reserved0_BITS 24 | ||
6782 | #define I2C_DATA_IN4_reserved0_SHIFT 8 | ||
6783 | |||
6784 | /* I2C :: DATA_IN4 :: DATA_IN4 [07:00] */ | ||
6785 | #define I2C_DATA_IN4_DATA_IN4_MASK 0x000000ff | ||
6786 | #define I2C_DATA_IN4_DATA_IN4_ALIGN 0 | ||
6787 | #define I2C_DATA_IN4_DATA_IN4_BITS 8 | ||
6788 | #define I2C_DATA_IN4_DATA_IN4_SHIFT 0 | ||
6789 | |||
6790 | |||
6791 | /**************************************************************************** | ||
6792 | * I2C :: DATA_IN5 | ||
6793 | ***************************************************************************/ | ||
6794 | /* I2C :: DATA_IN5 :: reserved0 [31:08] */ | ||
6795 | #define I2C_DATA_IN5_reserved0_MASK 0xffffff00 | ||
6796 | #define I2C_DATA_IN5_reserved0_ALIGN 0 | ||
6797 | #define I2C_DATA_IN5_reserved0_BITS 24 | ||
6798 | #define I2C_DATA_IN5_reserved0_SHIFT 8 | ||
6799 | |||
6800 | /* I2C :: DATA_IN5 :: DATA_IN5 [07:00] */ | ||
6801 | #define I2C_DATA_IN5_DATA_IN5_MASK 0x000000ff | ||
6802 | #define I2C_DATA_IN5_DATA_IN5_ALIGN 0 | ||
6803 | #define I2C_DATA_IN5_DATA_IN5_BITS 8 | ||
6804 | #define I2C_DATA_IN5_DATA_IN5_SHIFT 0 | ||
6805 | |||
6806 | |||
6807 | /**************************************************************************** | ||
6808 | * I2C :: DATA_IN6 | ||
6809 | ***************************************************************************/ | ||
6810 | /* I2C :: DATA_IN6 :: reserved0 [31:08] */ | ||
6811 | #define I2C_DATA_IN6_reserved0_MASK 0xffffff00 | ||
6812 | #define I2C_DATA_IN6_reserved0_ALIGN 0 | ||
6813 | #define I2C_DATA_IN6_reserved0_BITS 24 | ||
6814 | #define I2C_DATA_IN6_reserved0_SHIFT 8 | ||
6815 | |||
6816 | /* I2C :: DATA_IN6 :: DATA_IN6 [07:00] */ | ||
6817 | #define I2C_DATA_IN6_DATA_IN6_MASK 0x000000ff | ||
6818 | #define I2C_DATA_IN6_DATA_IN6_ALIGN 0 | ||
6819 | #define I2C_DATA_IN6_DATA_IN6_BITS 8 | ||
6820 | #define I2C_DATA_IN6_DATA_IN6_SHIFT 0 | ||
6821 | |||
6822 | |||
6823 | /**************************************************************************** | ||
6824 | * I2C :: DATA_IN7 | ||
6825 | ***************************************************************************/ | ||
6826 | /* I2C :: DATA_IN7 :: reserved0 [31:08] */ | ||
6827 | #define I2C_DATA_IN7_reserved0_MASK 0xffffff00 | ||
6828 | #define I2C_DATA_IN7_reserved0_ALIGN 0 | ||
6829 | #define I2C_DATA_IN7_reserved0_BITS 24 | ||
6830 | #define I2C_DATA_IN7_reserved0_SHIFT 8 | ||
6831 | |||
6832 | /* I2C :: DATA_IN7 :: DATA_IN7 [07:00] */ | ||
6833 | #define I2C_DATA_IN7_DATA_IN7_MASK 0x000000ff | ||
6834 | #define I2C_DATA_IN7_DATA_IN7_ALIGN 0 | ||
6835 | #define I2C_DATA_IN7_DATA_IN7_BITS 8 | ||
6836 | #define I2C_DATA_IN7_DATA_IN7_SHIFT 0 | ||
6837 | |||
6838 | |||
6839 | /**************************************************************************** | ||
6840 | * I2C :: CNT_REG | ||
6841 | ***************************************************************************/ | ||
6842 | /* I2C :: CNT_REG :: reserved0 [31:08] */ | ||
6843 | #define I2C_CNT_REG_reserved0_MASK 0xffffff00 | ||
6844 | #define I2C_CNT_REG_reserved0_ALIGN 0 | ||
6845 | #define I2C_CNT_REG_reserved0_BITS 24 | ||
6846 | #define I2C_CNT_REG_reserved0_SHIFT 8 | ||
6847 | |||
6848 | /* I2C :: CNT_REG :: CNT_REG2 [07:04] */ | ||
6849 | #define I2C_CNT_REG_CNT_REG2_MASK 0x000000f0 | ||
6850 | #define I2C_CNT_REG_CNT_REG2_ALIGN 0 | ||
6851 | #define I2C_CNT_REG_CNT_REG2_BITS 4 | ||
6852 | #define I2C_CNT_REG_CNT_REG2_SHIFT 4 | ||
6853 | |||
6854 | /* I2C :: CNT_REG :: CNT_REG1 [03:00] */ | ||
6855 | #define I2C_CNT_REG_CNT_REG1_MASK 0x0000000f | ||
6856 | #define I2C_CNT_REG_CNT_REG1_ALIGN 0 | ||
6857 | #define I2C_CNT_REG_CNT_REG1_BITS 4 | ||
6858 | #define I2C_CNT_REG_CNT_REG1_SHIFT 0 | ||
6859 | |||
6860 | |||
6861 | /**************************************************************************** | ||
6862 | * I2C :: CTL_REG | ||
6863 | ***************************************************************************/ | ||
6864 | /* I2C :: CTL_REG :: reserved0 [31:08] */ | ||
6865 | #define I2C_CTL_REG_reserved0_MASK 0xffffff00 | ||
6866 | #define I2C_CTL_REG_reserved0_ALIGN 0 | ||
6867 | #define I2C_CTL_REG_reserved0_BITS 24 | ||
6868 | #define I2C_CTL_REG_reserved0_SHIFT 8 | ||
6869 | |||
6870 | /* I2C :: CTL_REG :: DIV_CLK [07:07] */ | ||
6871 | #define I2C_CTL_REG_DIV_CLK_MASK 0x00000080 | ||
6872 | #define I2C_CTL_REG_DIV_CLK_ALIGN 0 | ||
6873 | #define I2C_CTL_REG_DIV_CLK_BITS 1 | ||
6874 | #define I2C_CTL_REG_DIV_CLK_SHIFT 7 | ||
6875 | |||
6876 | /* I2C :: CTL_REG :: INT_EN [06:06] */ | ||
6877 | #define I2C_CTL_REG_INT_EN_MASK 0x00000040 | ||
6878 | #define I2C_CTL_REG_INT_EN_ALIGN 0 | ||
6879 | #define I2C_CTL_REG_INT_EN_BITS 1 | ||
6880 | #define I2C_CTL_REG_INT_EN_SHIFT 6 | ||
6881 | |||
6882 | /* I2C :: CTL_REG :: SCL_SEL [05:04] */ | ||
6883 | #define I2C_CTL_REG_SCL_SEL_MASK 0x00000030 | ||
6884 | #define I2C_CTL_REG_SCL_SEL_ALIGN 0 | ||
6885 | #define I2C_CTL_REG_SCL_SEL_BITS 2 | ||
6886 | #define I2C_CTL_REG_SCL_SEL_SHIFT 4 | ||
6887 | |||
6888 | /* I2C :: CTL_REG :: DELAY_DIS [03:03] */ | ||
6889 | #define I2C_CTL_REG_DELAY_DIS_MASK 0x00000008 | ||
6890 | #define I2C_CTL_REG_DELAY_DIS_ALIGN 0 | ||
6891 | #define I2C_CTL_REG_DELAY_DIS_BITS 1 | ||
6892 | #define I2C_CTL_REG_DELAY_DIS_SHIFT 3 | ||
6893 | |||
6894 | /* I2C :: CTL_REG :: DEGLITCH_DIS [02:02] */ | ||
6895 | #define I2C_CTL_REG_DEGLITCH_DIS_MASK 0x00000004 | ||
6896 | #define I2C_CTL_REG_DEGLITCH_DIS_ALIGN 0 | ||
6897 | #define I2C_CTL_REG_DEGLITCH_DIS_BITS 1 | ||
6898 | #define I2C_CTL_REG_DEGLITCH_DIS_SHIFT 2 | ||
6899 | |||
6900 | /* I2C :: CTL_REG :: DTF [01:00] */ | ||
6901 | #define I2C_CTL_REG_DTF_MASK 0x00000003 | ||
6902 | #define I2C_CTL_REG_DTF_ALIGN 0 | ||
6903 | #define I2C_CTL_REG_DTF_BITS 2 | ||
6904 | #define I2C_CTL_REG_DTF_SHIFT 0 | ||
6905 | |||
6906 | |||
6907 | /**************************************************************************** | ||
6908 | * I2C :: IIC_ENABLE | ||
6909 | ***************************************************************************/ | ||
6910 | /* I2C :: IIC_ENABLE :: reserved0 [31:07] */ | ||
6911 | #define I2C_IIC_ENABLE_reserved0_MASK 0xffffff80 | ||
6912 | #define I2C_IIC_ENABLE_reserved0_ALIGN 0 | ||
6913 | #define I2C_IIC_ENABLE_reserved0_BITS 25 | ||
6914 | #define I2C_IIC_ENABLE_reserved0_SHIFT 7 | ||
6915 | |||
6916 | /* I2C :: IIC_ENABLE :: RESTART [06:06] */ | ||
6917 | #define I2C_IIC_ENABLE_RESTART_MASK 0x00000040 | ||
6918 | #define I2C_IIC_ENABLE_RESTART_ALIGN 0 | ||
6919 | #define I2C_IIC_ENABLE_RESTART_BITS 1 | ||
6920 | #define I2C_IIC_ENABLE_RESTART_SHIFT 6 | ||
6921 | |||
6922 | /* I2C :: IIC_ENABLE :: NO_START [05:05] */ | ||
6923 | #define I2C_IIC_ENABLE_NO_START_MASK 0x00000020 | ||
6924 | #define I2C_IIC_ENABLE_NO_START_ALIGN 0 | ||
6925 | #define I2C_IIC_ENABLE_NO_START_BITS 1 | ||
6926 | #define I2C_IIC_ENABLE_NO_START_SHIFT 5 | ||
6927 | |||
6928 | /* I2C :: IIC_ENABLE :: NO_STOP [04:04] */ | ||
6929 | #define I2C_IIC_ENABLE_NO_STOP_MASK 0x00000010 | ||
6930 | #define I2C_IIC_ENABLE_NO_STOP_ALIGN 0 | ||
6931 | #define I2C_IIC_ENABLE_NO_STOP_BITS 1 | ||
6932 | #define I2C_IIC_ENABLE_NO_STOP_SHIFT 4 | ||
6933 | |||
6934 | /* I2C :: IIC_ENABLE :: reserved1 [03:03] */ | ||
6935 | #define I2C_IIC_ENABLE_reserved1_MASK 0x00000008 | ||
6936 | #define I2C_IIC_ENABLE_reserved1_ALIGN 0 | ||
6937 | #define I2C_IIC_ENABLE_reserved1_BITS 1 | ||
6938 | #define I2C_IIC_ENABLE_reserved1_SHIFT 3 | ||
6939 | |||
6940 | /* I2C :: IIC_ENABLE :: NO_ACK [02:02] */ | ||
6941 | #define I2C_IIC_ENABLE_NO_ACK_MASK 0x00000004 | ||
6942 | #define I2C_IIC_ENABLE_NO_ACK_ALIGN 0 | ||
6943 | #define I2C_IIC_ENABLE_NO_ACK_BITS 1 | ||
6944 | #define I2C_IIC_ENABLE_NO_ACK_SHIFT 2 | ||
6945 | |||
6946 | /* I2C :: IIC_ENABLE :: INTRP [01:01] */ | ||
6947 | #define I2C_IIC_ENABLE_INTRP_MASK 0x00000002 | ||
6948 | #define I2C_IIC_ENABLE_INTRP_ALIGN 0 | ||
6949 | #define I2C_IIC_ENABLE_INTRP_BITS 1 | ||
6950 | #define I2C_IIC_ENABLE_INTRP_SHIFT 1 | ||
6951 | |||
6952 | /* I2C :: IIC_ENABLE :: ENABLE [00:00] */ | ||
6953 | #define I2C_IIC_ENABLE_ENABLE_MASK 0x00000001 | ||
6954 | #define I2C_IIC_ENABLE_ENABLE_ALIGN 0 | ||
6955 | #define I2C_IIC_ENABLE_ENABLE_BITS 1 | ||
6956 | #define I2C_IIC_ENABLE_ENABLE_SHIFT 0 | ||
6957 | |||
6958 | |||
6959 | /**************************************************************************** | ||
6960 | * I2C :: DATA_OUT0 | ||
6961 | ***************************************************************************/ | ||
6962 | /* I2C :: DATA_OUT0 :: reserved0 [31:08] */ | ||
6963 | #define I2C_DATA_OUT0_reserved0_MASK 0xffffff00 | ||
6964 | #define I2C_DATA_OUT0_reserved0_ALIGN 0 | ||
6965 | #define I2C_DATA_OUT0_reserved0_BITS 24 | ||
6966 | #define I2C_DATA_OUT0_reserved0_SHIFT 8 | ||
6967 | |||
6968 | /* I2C :: DATA_OUT0 :: DATA_OUT0 [07:00] */ | ||
6969 | #define I2C_DATA_OUT0_DATA_OUT0_MASK 0x000000ff | ||
6970 | #define I2C_DATA_OUT0_DATA_OUT0_ALIGN 0 | ||
6971 | #define I2C_DATA_OUT0_DATA_OUT0_BITS 8 | ||
6972 | #define I2C_DATA_OUT0_DATA_OUT0_SHIFT 0 | ||
6973 | |||
6974 | |||
6975 | /**************************************************************************** | ||
6976 | * I2C :: DATA_OUT1 | ||
6977 | ***************************************************************************/ | ||
6978 | /* I2C :: DATA_OUT1 :: reserved0 [31:08] */ | ||
6979 | #define I2C_DATA_OUT1_reserved0_MASK 0xffffff00 | ||
6980 | #define I2C_DATA_OUT1_reserved0_ALIGN 0 | ||
6981 | #define I2C_DATA_OUT1_reserved0_BITS 24 | ||
6982 | #define I2C_DATA_OUT1_reserved0_SHIFT 8 | ||
6983 | |||
6984 | /* I2C :: DATA_OUT1 :: DATA_OUT1 [07:00] */ | ||
6985 | #define I2C_DATA_OUT1_DATA_OUT1_MASK 0x000000ff | ||
6986 | #define I2C_DATA_OUT1_DATA_OUT1_ALIGN 0 | ||
6987 | #define I2C_DATA_OUT1_DATA_OUT1_BITS 8 | ||
6988 | #define I2C_DATA_OUT1_DATA_OUT1_SHIFT 0 | ||
6989 | |||
6990 | |||
6991 | /**************************************************************************** | ||
6992 | * I2C :: DATA_OUT2 | ||
6993 | ***************************************************************************/ | ||
6994 | /* I2C :: DATA_OUT2 :: reserved0 [31:08] */ | ||
6995 | #define I2C_DATA_OUT2_reserved0_MASK 0xffffff00 | ||
6996 | #define I2C_DATA_OUT2_reserved0_ALIGN 0 | ||
6997 | #define I2C_DATA_OUT2_reserved0_BITS 24 | ||
6998 | #define I2C_DATA_OUT2_reserved0_SHIFT 8 | ||
6999 | |||
7000 | /* I2C :: DATA_OUT2 :: DATA_OUT2 [07:00] */ | ||
7001 | #define I2C_DATA_OUT2_DATA_OUT2_MASK 0x000000ff | ||
7002 | #define I2C_DATA_OUT2_DATA_OUT2_ALIGN 0 | ||
7003 | #define I2C_DATA_OUT2_DATA_OUT2_BITS 8 | ||
7004 | #define I2C_DATA_OUT2_DATA_OUT2_SHIFT 0 | ||
7005 | |||
7006 | |||
7007 | /**************************************************************************** | ||
7008 | * I2C :: DATA_OUT3 | ||
7009 | ***************************************************************************/ | ||
7010 | /* I2C :: DATA_OUT3 :: reserved0 [31:08] */ | ||
7011 | #define I2C_DATA_OUT3_reserved0_MASK 0xffffff00 | ||
7012 | #define I2C_DATA_OUT3_reserved0_ALIGN 0 | ||
7013 | #define I2C_DATA_OUT3_reserved0_BITS 24 | ||
7014 | #define I2C_DATA_OUT3_reserved0_SHIFT 8 | ||
7015 | |||
7016 | /* I2C :: DATA_OUT3 :: DATA_OUT3 [07:00] */ | ||
7017 | #define I2C_DATA_OUT3_DATA_OUT3_MASK 0x000000ff | ||
7018 | #define I2C_DATA_OUT3_DATA_OUT3_ALIGN 0 | ||
7019 | #define I2C_DATA_OUT3_DATA_OUT3_BITS 8 | ||
7020 | #define I2C_DATA_OUT3_DATA_OUT3_SHIFT 0 | ||
7021 | |||
7022 | |||
7023 | /**************************************************************************** | ||
7024 | * I2C :: DATA_OUT4 | ||
7025 | ***************************************************************************/ | ||
7026 | /* I2C :: DATA_OUT4 :: reserved0 [31:08] */ | ||
7027 | #define I2C_DATA_OUT4_reserved0_MASK 0xffffff00 | ||
7028 | #define I2C_DATA_OUT4_reserved0_ALIGN 0 | ||
7029 | #define I2C_DATA_OUT4_reserved0_BITS 24 | ||
7030 | #define I2C_DATA_OUT4_reserved0_SHIFT 8 | ||
7031 | |||
7032 | /* I2C :: DATA_OUT4 :: DATA_OUT4 [07:00] */ | ||
7033 | #define I2C_DATA_OUT4_DATA_OUT4_MASK 0x000000ff | ||
7034 | #define I2C_DATA_OUT4_DATA_OUT4_ALIGN 0 | ||
7035 | #define I2C_DATA_OUT4_DATA_OUT4_BITS 8 | ||
7036 | #define I2C_DATA_OUT4_DATA_OUT4_SHIFT 0 | ||
7037 | |||
7038 | |||
7039 | /**************************************************************************** | ||
7040 | * I2C :: DATA_OUT5 | ||
7041 | ***************************************************************************/ | ||
7042 | /* I2C :: DATA_OUT5 :: reserved0 [31:08] */ | ||
7043 | #define I2C_DATA_OUT5_reserved0_MASK 0xffffff00 | ||
7044 | #define I2C_DATA_OUT5_reserved0_ALIGN 0 | ||
7045 | #define I2C_DATA_OUT5_reserved0_BITS 24 | ||
7046 | #define I2C_DATA_OUT5_reserved0_SHIFT 8 | ||
7047 | |||
7048 | /* I2C :: DATA_OUT5 :: DATA_OUT5 [07:00] */ | ||
7049 | #define I2C_DATA_OUT5_DATA_OUT5_MASK 0x000000ff | ||
7050 | #define I2C_DATA_OUT5_DATA_OUT5_ALIGN 0 | ||
7051 | #define I2C_DATA_OUT5_DATA_OUT5_BITS 8 | ||
7052 | #define I2C_DATA_OUT5_DATA_OUT5_SHIFT 0 | ||
7053 | |||
7054 | |||
7055 | /**************************************************************************** | ||
7056 | * I2C :: DATA_OUT6 | ||
7057 | ***************************************************************************/ | ||
7058 | /* I2C :: DATA_OUT6 :: reserved0 [31:08] */ | ||
7059 | #define I2C_DATA_OUT6_reserved0_MASK 0xffffff00 | ||
7060 | #define I2C_DATA_OUT6_reserved0_ALIGN 0 | ||
7061 | #define I2C_DATA_OUT6_reserved0_BITS 24 | ||
7062 | #define I2C_DATA_OUT6_reserved0_SHIFT 8 | ||
7063 | |||
7064 | /* I2C :: DATA_OUT6 :: DATA_OUT6 [07:00] */ | ||
7065 | #define I2C_DATA_OUT6_DATA_OUT6_MASK 0x000000ff | ||
7066 | #define I2C_DATA_OUT6_DATA_OUT6_ALIGN 0 | ||
7067 | #define I2C_DATA_OUT6_DATA_OUT6_BITS 8 | ||
7068 | #define I2C_DATA_OUT6_DATA_OUT6_SHIFT 0 | ||
7069 | |||
7070 | |||
7071 | /**************************************************************************** | ||
7072 | * I2C :: DATA_OUT7 | ||
7073 | ***************************************************************************/ | ||
7074 | /* I2C :: DATA_OUT7 :: reserved0 [31:08] */ | ||
7075 | #define I2C_DATA_OUT7_reserved0_MASK 0xffffff00 | ||
7076 | #define I2C_DATA_OUT7_reserved0_ALIGN 0 | ||
7077 | #define I2C_DATA_OUT7_reserved0_BITS 24 | ||
7078 | #define I2C_DATA_OUT7_reserved0_SHIFT 8 | ||
7079 | |||
7080 | /* I2C :: DATA_OUT7 :: DATA_OUT7 [07:00] */ | ||
7081 | #define I2C_DATA_OUT7_DATA_OUT7_MASK 0x000000ff | ||
7082 | #define I2C_DATA_OUT7_DATA_OUT7_ALIGN 0 | ||
7083 | #define I2C_DATA_OUT7_DATA_OUT7_BITS 8 | ||
7084 | #define I2C_DATA_OUT7_DATA_OUT7_SHIFT 0 | ||
7085 | |||
7086 | |||
7087 | /**************************************************************************** | ||
7088 | * I2C :: CTLHI_REG | ||
7089 | ***************************************************************************/ | ||
7090 | /* I2C :: CTLHI_REG :: reserved0 [31:02] */ | ||
7091 | #define I2C_CTLHI_REG_reserved0_MASK 0xfffffffc | ||
7092 | #define I2C_CTLHI_REG_reserved0_ALIGN 0 | ||
7093 | #define I2C_CTLHI_REG_reserved0_BITS 30 | ||
7094 | #define I2C_CTLHI_REG_reserved0_SHIFT 2 | ||
7095 | |||
7096 | /* I2C :: CTLHI_REG :: IGNORE_ACK [01:01] */ | ||
7097 | #define I2C_CTLHI_REG_IGNORE_ACK_MASK 0x00000002 | ||
7098 | #define I2C_CTLHI_REG_IGNORE_ACK_ALIGN 0 | ||
7099 | #define I2C_CTLHI_REG_IGNORE_ACK_BITS 1 | ||
7100 | #define I2C_CTLHI_REG_IGNORE_ACK_SHIFT 1 | ||
7101 | |||
7102 | /* I2C :: CTLHI_REG :: WAIT_DIS [00:00] */ | ||
7103 | #define I2C_CTLHI_REG_WAIT_DIS_MASK 0x00000001 | ||
7104 | #define I2C_CTLHI_REG_WAIT_DIS_ALIGN 0 | ||
7105 | #define I2C_CTLHI_REG_WAIT_DIS_BITS 1 | ||
7106 | #define I2C_CTLHI_REG_WAIT_DIS_SHIFT 0 | ||
7107 | |||
7108 | |||
7109 | /**************************************************************************** | ||
7110 | * I2C :: SCL_PARAM | ||
7111 | ***************************************************************************/ | ||
7112 | /* I2C :: SCL_PARAM :: reserved0 [31:00] */ | ||
7113 | #define I2C_SCL_PARAM_reserved0_MASK 0xffffffff | ||
7114 | #define I2C_SCL_PARAM_reserved0_ALIGN 0 | ||
7115 | #define I2C_SCL_PARAM_reserved0_BITS 32 | ||
7116 | #define I2C_SCL_PARAM_reserved0_SHIFT 0 | ||
7117 | |||
7118 | |||
7119 | /**************************************************************************** | ||
7120 | * BCM70012_I2C_TOP_I2C_GR_BRIDGE | ||
7121 | ***************************************************************************/ | ||
7122 | /**************************************************************************** | ||
7123 | * I2C_GR_BRIDGE :: REVISION | ||
7124 | ***************************************************************************/ | ||
7125 | /* I2C_GR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
7126 | #define I2C_GR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
7127 | #define I2C_GR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
7128 | #define I2C_GR_BRIDGE_REVISION_reserved0_BITS 16 | ||
7129 | #define I2C_GR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
7130 | |||
7131 | /* I2C_GR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
7132 | #define I2C_GR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
7133 | #define I2C_GR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
7134 | #define I2C_GR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
7135 | #define I2C_GR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
7136 | |||
7137 | /* I2C_GR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
7138 | #define I2C_GR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
7139 | #define I2C_GR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
7140 | #define I2C_GR_BRIDGE_REVISION_MINOR_BITS 8 | ||
7141 | #define I2C_GR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
7142 | |||
7143 | |||
7144 | /**************************************************************************** | ||
7145 | * I2C_GR_BRIDGE :: CTRL | ||
7146 | ***************************************************************************/ | ||
7147 | /* I2C_GR_BRIDGE :: CTRL :: reserved0 [31:01] */ | ||
7148 | #define I2C_GR_BRIDGE_CTRL_reserved0_MASK 0xfffffffe | ||
7149 | #define I2C_GR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
7150 | #define I2C_GR_BRIDGE_CTRL_reserved0_BITS 31 | ||
7151 | #define I2C_GR_BRIDGE_CTRL_reserved0_SHIFT 1 | ||
7152 | |||
7153 | /* I2C_GR_BRIDGE :: CTRL :: gisb_error_intr [00:00] */ | ||
7154 | #define I2C_GR_BRIDGE_CTRL_gisb_error_intr_MASK 0x00000001 | ||
7155 | #define I2C_GR_BRIDGE_CTRL_gisb_error_intr_ALIGN 0 | ||
7156 | #define I2C_GR_BRIDGE_CTRL_gisb_error_intr_BITS 1 | ||
7157 | #define I2C_GR_BRIDGE_CTRL_gisb_error_intr_SHIFT 0 | ||
7158 | #define I2C_GR_BRIDGE_CTRL_gisb_error_intr_INTR_DISABLE 0 | ||
7159 | #define I2C_GR_BRIDGE_CTRL_gisb_error_intr_INTR_ENABLE 1 | ||
7160 | |||
7161 | |||
7162 | /**************************************************************************** | ||
7163 | * I2C_GR_BRIDGE :: SPARE_SW_RESET_0 | ||
7164 | ***************************************************************************/ | ||
7165 | /* I2C_GR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
7166 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
7167 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
7168 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
7169 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
7170 | |||
7171 | /* I2C_GR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
7172 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
7173 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
7174 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
7175 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
7176 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_DEASSERT 0 | ||
7177 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ASSERT 1 | ||
7178 | |||
7179 | |||
7180 | /**************************************************************************** | ||
7181 | * I2C_GR_BRIDGE :: SPARE_SW_RESET_1 | ||
7182 | ***************************************************************************/ | ||
7183 | /* I2C_GR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
7184 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
7185 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
7186 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
7187 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
7188 | |||
7189 | /* I2C_GR_BRIDGE :: SPARE_SW_RESET_1 :: SPARE_SW_RESET [00:00] */ | ||
7190 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_MASK 0x00000001 | ||
7191 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ALIGN 0 | ||
7192 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_BITS 1 | ||
7193 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_SHIFT 0 | ||
7194 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_DEASSERT 0 | ||
7195 | #define I2C_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ASSERT 1 | ||
7196 | |||
7197 | |||
7198 | /**************************************************************************** | ||
7199 | * BCM70012_MISC_TOP_MISC1 | ||
7200 | ***************************************************************************/ | ||
7201 | /**************************************************************************** | ||
7202 | * MISC1 :: TX_FIRST_DESC_L_ADDR_LIST0 | ||
7203 | ***************************************************************************/ | ||
7204 | /* MISC1 :: TX_FIRST_DESC_L_ADDR_LIST0 :: DESC_ADDR [31:05] */ | ||
7205 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_MASK 0xffffffe0 | ||
7206 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_ALIGN 0 | ||
7207 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_BITS 27 | ||
7208 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_SHIFT 5 | ||
7209 | |||
7210 | /* MISC1 :: TX_FIRST_DESC_L_ADDR_LIST0 :: reserved0 [04:01] */ | ||
7211 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_reserved0_MASK 0x0000001e | ||
7212 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_reserved0_ALIGN 0 | ||
7213 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_reserved0_BITS 4 | ||
7214 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_reserved0_SHIFT 1 | ||
7215 | |||
7216 | /* MISC1 :: TX_FIRST_DESC_L_ADDR_LIST0 :: TX_DESC_LIST0_VALID [00:00] */ | ||
7217 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_TX_DESC_LIST0_VALID_MASK 0x00000001 | ||
7218 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_TX_DESC_LIST0_VALID_ALIGN 0 | ||
7219 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_TX_DESC_LIST0_VALID_BITS 1 | ||
7220 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST0_TX_DESC_LIST0_VALID_SHIFT 0 | ||
7221 | |||
7222 | |||
7223 | /**************************************************************************** | ||
7224 | * MISC1 :: TX_FIRST_DESC_U_ADDR_LIST0 | ||
7225 | ***************************************************************************/ | ||
7226 | /* MISC1 :: TX_FIRST_DESC_U_ADDR_LIST0 :: DESC_ADDR [31:00] */ | ||
7227 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_MASK 0xffffffff | ||
7228 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_ALIGN 0 | ||
7229 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_BITS 32 | ||
7230 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_SHIFT 0 | ||
7231 | |||
7232 | |||
7233 | /**************************************************************************** | ||
7234 | * MISC1 :: TX_FIRST_DESC_L_ADDR_LIST1 | ||
7235 | ***************************************************************************/ | ||
7236 | /* MISC1 :: TX_FIRST_DESC_L_ADDR_LIST1 :: DESC_ADDR [31:05] */ | ||
7237 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_MASK 0xffffffe0 | ||
7238 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_ALIGN 0 | ||
7239 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_BITS 27 | ||
7240 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_SHIFT 5 | ||
7241 | |||
7242 | /* MISC1 :: TX_FIRST_DESC_L_ADDR_LIST1 :: reserved0 [04:01] */ | ||
7243 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_reserved0_MASK 0x0000001e | ||
7244 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_reserved0_ALIGN 0 | ||
7245 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_reserved0_BITS 4 | ||
7246 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_reserved0_SHIFT 1 | ||
7247 | |||
7248 | /* MISC1 :: TX_FIRST_DESC_L_ADDR_LIST1 :: TX_DESC_LIST1_VALID [00:00] */ | ||
7249 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_TX_DESC_LIST1_VALID_MASK 0x00000001 | ||
7250 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_TX_DESC_LIST1_VALID_ALIGN 0 | ||
7251 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_TX_DESC_LIST1_VALID_BITS 1 | ||
7252 | #define MISC1_TX_FIRST_DESC_L_ADDR_LIST1_TX_DESC_LIST1_VALID_SHIFT 0 | ||
7253 | |||
7254 | |||
7255 | /**************************************************************************** | ||
7256 | * MISC1 :: TX_FIRST_DESC_U_ADDR_LIST1 | ||
7257 | ***************************************************************************/ | ||
7258 | /* MISC1 :: TX_FIRST_DESC_U_ADDR_LIST1 :: DESC_ADDR [31:00] */ | ||
7259 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_MASK 0xffffffff | ||
7260 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_ALIGN 0 | ||
7261 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_BITS 32 | ||
7262 | #define MISC1_TX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_SHIFT 0 | ||
7263 | |||
7264 | |||
7265 | /**************************************************************************** | ||
7266 | * MISC1 :: TX_SW_DESC_LIST_CTRL_STS | ||
7267 | ***************************************************************************/ | ||
7268 | /* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: reserved0 [31:04] */ | ||
7269 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_MASK 0xfffffff0 | ||
7270 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_ALIGN 0 | ||
7271 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_BITS 28 | ||
7272 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_SHIFT 4 | ||
7273 | |||
7274 | /* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: DMA_DATA_SERV_PTR [03:03] */ | ||
7275 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_MASK 0x00000008 | ||
7276 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_ALIGN 0 | ||
7277 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_BITS 1 | ||
7278 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_SHIFT 3 | ||
7279 | |||
7280 | /* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: DESC_SERV_PTR [02:02] */ | ||
7281 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_MASK 0x00000004 | ||
7282 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_ALIGN 0 | ||
7283 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_BITS 1 | ||
7284 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_SHIFT 2 | ||
7285 | |||
7286 | /* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: TX_DMA_HALT_ON_ERROR [01:01] */ | ||
7287 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_MASK 0x00000002 | ||
7288 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_ALIGN 0 | ||
7289 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_BITS 1 | ||
7290 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_SHIFT 1 | ||
7291 | |||
7292 | /* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: TX_DMA_RUN_STOP [00:00] */ | ||
7293 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_MASK 0x00000001 | ||
7294 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_ALIGN 0 | ||
7295 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_BITS 1 | ||
7296 | #define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_SHIFT 0 | ||
7297 | |||
7298 | |||
7299 | /**************************************************************************** | ||
7300 | * MISC1 :: TX_DMA_ERROR_STATUS | ||
7301 | ***************************************************************************/ | ||
7302 | /* MISC1 :: TX_DMA_ERROR_STATUS :: reserved0 [31:10] */ | ||
7303 | #define MISC1_TX_DMA_ERROR_STATUS_reserved0_MASK 0xfffffc00 | ||
7304 | #define MISC1_TX_DMA_ERROR_STATUS_reserved0_ALIGN 0 | ||
7305 | #define MISC1_TX_DMA_ERROR_STATUS_reserved0_BITS 22 | ||
7306 | #define MISC1_TX_DMA_ERROR_STATUS_reserved0_SHIFT 10 | ||
7307 | |||
7308 | /* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L1_DESC_TX_ABORT_ERRORS [09:09] */ | ||
7309 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_MASK 0x00000200 | ||
7310 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_ALIGN 0 | ||
7311 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_BITS 1 | ||
7312 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_SHIFT 9 | ||
7313 | |||
7314 | /* MISC1 :: TX_DMA_ERROR_STATUS :: reserved1 [08:08] */ | ||
7315 | #define MISC1_TX_DMA_ERROR_STATUS_reserved1_MASK 0x00000100 | ||
7316 | #define MISC1_TX_DMA_ERROR_STATUS_reserved1_ALIGN 0 | ||
7317 | #define MISC1_TX_DMA_ERROR_STATUS_reserved1_BITS 1 | ||
7318 | #define MISC1_TX_DMA_ERROR_STATUS_reserved1_SHIFT 8 | ||
7319 | |||
7320 | /* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L0_DESC_TX_ABORT_ERRORS [07:07] */ | ||
7321 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_MASK 0x00000080 | ||
7322 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_ALIGN 0 | ||
7323 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_BITS 1 | ||
7324 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_SHIFT 7 | ||
7325 | |||
7326 | /* MISC1 :: TX_DMA_ERROR_STATUS :: reserved2 [06:06] */ | ||
7327 | #define MISC1_TX_DMA_ERROR_STATUS_reserved2_MASK 0x00000040 | ||
7328 | #define MISC1_TX_DMA_ERROR_STATUS_reserved2_ALIGN 0 | ||
7329 | #define MISC1_TX_DMA_ERROR_STATUS_reserved2_BITS 1 | ||
7330 | #define MISC1_TX_DMA_ERROR_STATUS_reserved2_SHIFT 6 | ||
7331 | |||
7332 | /* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L1_DMA_DATA_TX_ABORT_ERRORS [05:05] */ | ||
7333 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_MASK 0x00000020 | ||
7334 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_ALIGN 0 | ||
7335 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_BITS 1 | ||
7336 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_SHIFT 5 | ||
7337 | |||
7338 | /* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L1_FIFO_FULL_ERRORS [04:04] */ | ||
7339 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_MASK 0x00000010 | ||
7340 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_ALIGN 0 | ||
7341 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_BITS 1 | ||
7342 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_SHIFT 4 | ||
7343 | |||
7344 | /* MISC1 :: TX_DMA_ERROR_STATUS :: reserved3 [03:03] */ | ||
7345 | #define MISC1_TX_DMA_ERROR_STATUS_reserved3_MASK 0x00000008 | ||
7346 | #define MISC1_TX_DMA_ERROR_STATUS_reserved3_ALIGN 0 | ||
7347 | #define MISC1_TX_DMA_ERROR_STATUS_reserved3_BITS 1 | ||
7348 | #define MISC1_TX_DMA_ERROR_STATUS_reserved3_SHIFT 3 | ||
7349 | |||
7350 | /* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L0_DMA_DATA_TX_ABORT_ERRORS [02:02] */ | ||
7351 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_MASK 0x00000004 | ||
7352 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_ALIGN 0 | ||
7353 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_BITS 1 | ||
7354 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_SHIFT 2 | ||
7355 | |||
7356 | /* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L0_FIFO_FULL_ERRORS [01:01] */ | ||
7357 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_MASK 0x00000002 | ||
7358 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_ALIGN 0 | ||
7359 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_BITS 1 | ||
7360 | #define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_SHIFT 1 | ||
7361 | |||
7362 | /* MISC1 :: TX_DMA_ERROR_STATUS :: reserved4 [00:00] */ | ||
7363 | #define MISC1_TX_DMA_ERROR_STATUS_reserved4_MASK 0x00000001 | ||
7364 | #define MISC1_TX_DMA_ERROR_STATUS_reserved4_ALIGN 0 | ||
7365 | #define MISC1_TX_DMA_ERROR_STATUS_reserved4_BITS 1 | ||
7366 | #define MISC1_TX_DMA_ERROR_STATUS_reserved4_SHIFT 0 | ||
7367 | |||
7368 | |||
7369 | /**************************************************************************** | ||
7370 | * MISC1 :: TX_DMA_LIST0_CUR_DESC_L_ADDR | ||
7371 | ***************************************************************************/ | ||
7372 | /* MISC1 :: TX_DMA_LIST0_CUR_DESC_L_ADDR :: TX_DMA_L0_CUR_DESC_L_ADDR [31:05] */ | ||
7373 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_TX_DMA_L0_CUR_DESC_L_ADDR_MASK 0xffffffe0 | ||
7374 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_TX_DMA_L0_CUR_DESC_L_ADDR_ALIGN 0 | ||
7375 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_TX_DMA_L0_CUR_DESC_L_ADDR_BITS 27 | ||
7376 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_TX_DMA_L0_CUR_DESC_L_ADDR_SHIFT 5 | ||
7377 | |||
7378 | /* MISC1 :: TX_DMA_LIST0_CUR_DESC_L_ADDR :: reserved0 [04:00] */ | ||
7379 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_reserved0_MASK 0x0000001f | ||
7380 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_reserved0_ALIGN 0 | ||
7381 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_reserved0_BITS 5 | ||
7382 | #define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR_reserved0_SHIFT 0 | ||
7383 | |||
7384 | |||
7385 | /**************************************************************************** | ||
7386 | * MISC1 :: TX_DMA_LIST0_CUR_DESC_U_ADDR | ||
7387 | ***************************************************************************/ | ||
7388 | /* MISC1 :: TX_DMA_LIST0_CUR_DESC_U_ADDR :: TX_DMA_L0_CUR_DESC_U_ADDR [31:00] */ | ||
7389 | #define MISC1_TX_DMA_LIST0_CUR_DESC_U_ADDR_TX_DMA_L0_CUR_DESC_U_ADDR_MASK 0xffffffff | ||
7390 | #define MISC1_TX_DMA_LIST0_CUR_DESC_U_ADDR_TX_DMA_L0_CUR_DESC_U_ADDR_ALIGN 0 | ||
7391 | #define MISC1_TX_DMA_LIST0_CUR_DESC_U_ADDR_TX_DMA_L0_CUR_DESC_U_ADDR_BITS 32 | ||
7392 | #define MISC1_TX_DMA_LIST0_CUR_DESC_U_ADDR_TX_DMA_L0_CUR_DESC_U_ADDR_SHIFT 0 | ||
7393 | |||
7394 | |||
7395 | /**************************************************************************** | ||
7396 | * MISC1 :: TX_DMA_LIST0_CUR_BYTE_CNT_REM | ||
7397 | ***************************************************************************/ | ||
7398 | /* MISC1 :: TX_DMA_LIST0_CUR_BYTE_CNT_REM :: reserved0 [31:24] */ | ||
7399 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved0_MASK 0xff000000 | ||
7400 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved0_ALIGN 0 | ||
7401 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved0_BITS 8 | ||
7402 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved0_SHIFT 24 | ||
7403 | |||
7404 | /* MISC1 :: TX_DMA_LIST0_CUR_BYTE_CNT_REM :: TX_DMA_L0_CUR_BYTE_CNT_REM [23:02] */ | ||
7405 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_TX_DMA_L0_CUR_BYTE_CNT_REM_MASK 0x00fffffc | ||
7406 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_TX_DMA_L0_CUR_BYTE_CNT_REM_ALIGN 0 | ||
7407 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_TX_DMA_L0_CUR_BYTE_CNT_REM_BITS 22 | ||
7408 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_TX_DMA_L0_CUR_BYTE_CNT_REM_SHIFT 2 | ||
7409 | |||
7410 | /* MISC1 :: TX_DMA_LIST0_CUR_BYTE_CNT_REM :: reserved1 [01:00] */ | ||
7411 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved1_MASK 0x00000003 | ||
7412 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved1_ALIGN 0 | ||
7413 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved1_BITS 2 | ||
7414 | #define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM_reserved1_SHIFT 0 | ||
7415 | |||
7416 | |||
7417 | /**************************************************************************** | ||
7418 | * MISC1 :: TX_DMA_LIST1_CUR_DESC_L_ADDR | ||
7419 | ***************************************************************************/ | ||
7420 | /* MISC1 :: TX_DMA_LIST1_CUR_DESC_L_ADDR :: TX_DMA_L1_CUR_DESC_L_ADDR [31:05] */ | ||
7421 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_TX_DMA_L1_CUR_DESC_L_ADDR_MASK 0xffffffe0 | ||
7422 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_TX_DMA_L1_CUR_DESC_L_ADDR_ALIGN 0 | ||
7423 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_TX_DMA_L1_CUR_DESC_L_ADDR_BITS 27 | ||
7424 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_TX_DMA_L1_CUR_DESC_L_ADDR_SHIFT 5 | ||
7425 | |||
7426 | /* MISC1 :: TX_DMA_LIST1_CUR_DESC_L_ADDR :: reserved0 [04:00] */ | ||
7427 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_reserved0_MASK 0x0000001f | ||
7428 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_reserved0_ALIGN 0 | ||
7429 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_reserved0_BITS 5 | ||
7430 | #define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR_reserved0_SHIFT 0 | ||
7431 | |||
7432 | |||
7433 | /**************************************************************************** | ||
7434 | * MISC1 :: TX_DMA_LIST1_CUR_DESC_U_ADDR | ||
7435 | ***************************************************************************/ | ||
7436 | /* MISC1 :: TX_DMA_LIST1_CUR_DESC_U_ADDR :: TX_DMA_L1_CUR_DESC_U_ADDR [31:00] */ | ||
7437 | #define MISC1_TX_DMA_LIST1_CUR_DESC_U_ADDR_TX_DMA_L1_CUR_DESC_U_ADDR_MASK 0xffffffff | ||
7438 | #define MISC1_TX_DMA_LIST1_CUR_DESC_U_ADDR_TX_DMA_L1_CUR_DESC_U_ADDR_ALIGN 0 | ||
7439 | #define MISC1_TX_DMA_LIST1_CUR_DESC_U_ADDR_TX_DMA_L1_CUR_DESC_U_ADDR_BITS 32 | ||
7440 | #define MISC1_TX_DMA_LIST1_CUR_DESC_U_ADDR_TX_DMA_L1_CUR_DESC_U_ADDR_SHIFT 0 | ||
7441 | |||
7442 | |||
7443 | /**************************************************************************** | ||
7444 | * MISC1 :: TX_DMA_LIST1_CUR_BYTE_CNT_REM | ||
7445 | ***************************************************************************/ | ||
7446 | /* MISC1 :: TX_DMA_LIST1_CUR_BYTE_CNT_REM :: reserved0 [31:24] */ | ||
7447 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved0_MASK 0xff000000 | ||
7448 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved0_ALIGN 0 | ||
7449 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved0_BITS 8 | ||
7450 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved0_SHIFT 24 | ||
7451 | |||
7452 | /* MISC1 :: TX_DMA_LIST1_CUR_BYTE_CNT_REM :: TX_DMA_L1_CUR_BYTE_CNT_REM [23:02] */ | ||
7453 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_TX_DMA_L1_CUR_BYTE_CNT_REM_MASK 0x00fffffc | ||
7454 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_TX_DMA_L1_CUR_BYTE_CNT_REM_ALIGN 0 | ||
7455 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_TX_DMA_L1_CUR_BYTE_CNT_REM_BITS 22 | ||
7456 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_TX_DMA_L1_CUR_BYTE_CNT_REM_SHIFT 2 | ||
7457 | |||
7458 | /* MISC1 :: TX_DMA_LIST1_CUR_BYTE_CNT_REM :: reserved1 [01:00] */ | ||
7459 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved1_MASK 0x00000003 | ||
7460 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved1_ALIGN 0 | ||
7461 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved1_BITS 2 | ||
7462 | #define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM_reserved1_SHIFT 0 | ||
7463 | |||
7464 | |||
7465 | /**************************************************************************** | ||
7466 | * MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST0 | ||
7467 | ***************************************************************************/ | ||
7468 | /* MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST0 :: DESC_ADDR [31:05] */ | ||
7469 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_MASK 0xffffffe0 | ||
7470 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_ALIGN 0 | ||
7471 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_BITS 27 | ||
7472 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_SHIFT 5 | ||
7473 | |||
7474 | /* MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST0 :: reserved0 [04:01] */ | ||
7475 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_MASK 0x0000001e | ||
7476 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_ALIGN 0 | ||
7477 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_BITS 4 | ||
7478 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_SHIFT 1 | ||
7479 | |||
7480 | /* MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST0 :: RX_DESC_LIST0_VALID [00:00] */ | ||
7481 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_MASK 0x00000001 | ||
7482 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_ALIGN 0 | ||
7483 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_BITS 1 | ||
7484 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_SHIFT 0 | ||
7485 | |||
7486 | |||
7487 | /**************************************************************************** | ||
7488 | * MISC1 :: Y_RX_FIRST_DESC_U_ADDR_LIST0 | ||
7489 | ***************************************************************************/ | ||
7490 | /* MISC1 :: Y_RX_FIRST_DESC_U_ADDR_LIST0 :: DESC_ADDR [31:00] */ | ||
7491 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_MASK 0xffffffff | ||
7492 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_ALIGN 0 | ||
7493 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_BITS 32 | ||
7494 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_SHIFT 0 | ||
7495 | |||
7496 | |||
7497 | /**************************************************************************** | ||
7498 | * MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST1 | ||
7499 | ***************************************************************************/ | ||
7500 | /* MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST1 :: DESC_ADDR [31:05] */ | ||
7501 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_MASK 0xffffffe0 | ||
7502 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_ALIGN 0 | ||
7503 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_BITS 27 | ||
7504 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_SHIFT 5 | ||
7505 | |||
7506 | /* MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST1 :: reserved0 [04:01] */ | ||
7507 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_MASK 0x0000001e | ||
7508 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_ALIGN 0 | ||
7509 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_BITS 4 | ||
7510 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_SHIFT 1 | ||
7511 | |||
7512 | /* MISC1 :: Y_RX_FIRST_DESC_L_ADDR_LIST1 :: RX_DESC_LIST1_VALID [00:00] */ | ||
7513 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_MASK 0x00000001 | ||
7514 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_ALIGN 0 | ||
7515 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_BITS 1 | ||
7516 | #define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_SHIFT 0 | ||
7517 | |||
7518 | |||
7519 | /**************************************************************************** | ||
7520 | * MISC1 :: Y_RX_FIRST_DESC_U_ADDR_LIST1 | ||
7521 | ***************************************************************************/ | ||
7522 | /* MISC1 :: Y_RX_FIRST_DESC_U_ADDR_LIST1 :: DESC_ADDR [31:00] */ | ||
7523 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_MASK 0xffffffff | ||
7524 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_ALIGN 0 | ||
7525 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_BITS 32 | ||
7526 | #define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_SHIFT 0 | ||
7527 | |||
7528 | |||
7529 | /**************************************************************************** | ||
7530 | * MISC1 :: Y_RX_SW_DESC_LIST_CTRL_STS | ||
7531 | ***************************************************************************/ | ||
7532 | /* MISC1 :: Y_RX_SW_DESC_LIST_CTRL_STS :: reserved0 [31:04] */ | ||
7533 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_reserved0_MASK 0xfffffff0 | ||
7534 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_reserved0_ALIGN 0 | ||
7535 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_reserved0_BITS 28 | ||
7536 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_reserved0_SHIFT 4 | ||
7537 | |||
7538 | /* MISC1 :: Y_RX_SW_DESC_LIST_CTRL_STS :: DMA_DATA_SERV_PTR [03:03] */ | ||
7539 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_MASK 0x00000008 | ||
7540 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_ALIGN 0 | ||
7541 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_BITS 1 | ||
7542 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_SHIFT 3 | ||
7543 | |||
7544 | /* MISC1 :: Y_RX_SW_DESC_LIST_CTRL_STS :: DESC_SERV_PTR [02:02] */ | ||
7545 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_MASK 0x00000004 | ||
7546 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_ALIGN 0 | ||
7547 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_BITS 1 | ||
7548 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_SHIFT 2 | ||
7549 | |||
7550 | /* MISC1 :: Y_RX_SW_DESC_LIST_CTRL_STS :: RX_HALT_ON_ERROR [01:01] */ | ||
7551 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_MASK 0x00000002 | ||
7552 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_ALIGN 0 | ||
7553 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_BITS 1 | ||
7554 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_SHIFT 1 | ||
7555 | |||
7556 | /* MISC1 :: Y_RX_SW_DESC_LIST_CTRL_STS :: RX_RUN_STOP [00:00] */ | ||
7557 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_MASK 0x00000001 | ||
7558 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_ALIGN 0 | ||
7559 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_BITS 1 | ||
7560 | #define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_SHIFT 0 | ||
7561 | |||
7562 | |||
7563 | /**************************************************************************** | ||
7564 | * MISC1 :: Y_RX_ERROR_STATUS | ||
7565 | ***************************************************************************/ | ||
7566 | /* MISC1 :: Y_RX_ERROR_STATUS :: reserved0 [31:14] */ | ||
7567 | #define MISC1_Y_RX_ERROR_STATUS_reserved0_MASK 0xffffc000 | ||
7568 | #define MISC1_Y_RX_ERROR_STATUS_reserved0_ALIGN 0 | ||
7569 | #define MISC1_Y_RX_ERROR_STATUS_reserved0_BITS 18 | ||
7570 | #define MISC1_Y_RX_ERROR_STATUS_reserved0_SHIFT 14 | ||
7571 | |||
7572 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_UNDERRUN_ERROR [13:13] */ | ||
7573 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK 0x00002000 | ||
7574 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_ALIGN 0 | ||
7575 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_BITS 1 | ||
7576 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_SHIFT 13 | ||
7577 | |||
7578 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_OVERRUN_ERROR [12:12] */ | ||
7579 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_MASK 0x00001000 | ||
7580 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_ALIGN 0 | ||
7581 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_BITS 1 | ||
7582 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_SHIFT 12 | ||
7583 | |||
7584 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_UNDERRUN_ERROR [11:11] */ | ||
7585 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK 0x00000800 | ||
7586 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_ALIGN 0 | ||
7587 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_BITS 1 | ||
7588 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_SHIFT 11 | ||
7589 | |||
7590 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_OVERRUN_ERROR [10:10] */ | ||
7591 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_MASK 0x00000400 | ||
7592 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_ALIGN 0 | ||
7593 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_BITS 1 | ||
7594 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_SHIFT 10 | ||
7595 | |||
7596 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_DESC_TX_ABORT_ERRORS [09:09] */ | ||
7597 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_MASK 0x00000200 | ||
7598 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_ALIGN 0 | ||
7599 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_BITS 1 | ||
7600 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_SHIFT 9 | ||
7601 | |||
7602 | /* MISC1 :: Y_RX_ERROR_STATUS :: reserved1 [08:08] */ | ||
7603 | #define MISC1_Y_RX_ERROR_STATUS_reserved1_MASK 0x00000100 | ||
7604 | #define MISC1_Y_RX_ERROR_STATUS_reserved1_ALIGN 0 | ||
7605 | #define MISC1_Y_RX_ERROR_STATUS_reserved1_BITS 1 | ||
7606 | #define MISC1_Y_RX_ERROR_STATUS_reserved1_SHIFT 8 | ||
7607 | |||
7608 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_DESC_TX_ABORT_ERRORS [07:07] */ | ||
7609 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_MASK 0x00000080 | ||
7610 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_ALIGN 0 | ||
7611 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_BITS 1 | ||
7612 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_SHIFT 7 | ||
7613 | |||
7614 | /* MISC1 :: Y_RX_ERROR_STATUS :: reserved2 [06:05] */ | ||
7615 | #define MISC1_Y_RX_ERROR_STATUS_reserved2_MASK 0x00000060 | ||
7616 | #define MISC1_Y_RX_ERROR_STATUS_reserved2_ALIGN 0 | ||
7617 | #define MISC1_Y_RX_ERROR_STATUS_reserved2_BITS 2 | ||
7618 | #define MISC1_Y_RX_ERROR_STATUS_reserved2_SHIFT 5 | ||
7619 | |||
7620 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_FIFO_FULL_ERRORS [04:04] */ | ||
7621 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK 0x00000010 | ||
7622 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_ALIGN 0 | ||
7623 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_BITS 1 | ||
7624 | #define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_SHIFT 4 | ||
7625 | |||
7626 | /* MISC1 :: Y_RX_ERROR_STATUS :: reserved3 [03:02] */ | ||
7627 | #define MISC1_Y_RX_ERROR_STATUS_reserved3_MASK 0x0000000c | ||
7628 | #define MISC1_Y_RX_ERROR_STATUS_reserved3_ALIGN 0 | ||
7629 | #define MISC1_Y_RX_ERROR_STATUS_reserved3_BITS 2 | ||
7630 | #define MISC1_Y_RX_ERROR_STATUS_reserved3_SHIFT 2 | ||
7631 | |||
7632 | /* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_FIFO_FULL_ERRORS [01:01] */ | ||
7633 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK 0x00000002 | ||
7634 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_ALIGN 0 | ||
7635 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_BITS 1 | ||
7636 | #define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_SHIFT 1 | ||
7637 | |||
7638 | /* MISC1 :: Y_RX_ERROR_STATUS :: reserved4 [00:00] */ | ||
7639 | #define MISC1_Y_RX_ERROR_STATUS_reserved4_MASK 0x00000001 | ||
7640 | #define MISC1_Y_RX_ERROR_STATUS_reserved4_ALIGN 0 | ||
7641 | #define MISC1_Y_RX_ERROR_STATUS_reserved4_BITS 1 | ||
7642 | #define MISC1_Y_RX_ERROR_STATUS_reserved4_SHIFT 0 | ||
7643 | |||
7644 | |||
7645 | /**************************************************************************** | ||
7646 | * MISC1 :: Y_RX_LIST0_CUR_DESC_L_ADDR | ||
7647 | ***************************************************************************/ | ||
7648 | /* MISC1 :: Y_RX_LIST0_CUR_DESC_L_ADDR :: RX_L0_CUR_DESC_L_ADDR [31:05] */ | ||
7649 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_MASK 0xffffffe0 | ||
7650 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_ALIGN 0 | ||
7651 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_BITS 27 | ||
7652 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_SHIFT 5 | ||
7653 | |||
7654 | /* MISC1 :: Y_RX_LIST0_CUR_DESC_L_ADDR :: reserved0 [04:00] */ | ||
7655 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_reserved0_MASK 0x0000001f | ||
7656 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_reserved0_ALIGN 0 | ||
7657 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_reserved0_BITS 5 | ||
7658 | #define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR_reserved0_SHIFT 0 | ||
7659 | |||
7660 | |||
7661 | /**************************************************************************** | ||
7662 | * MISC1 :: Y_RX_LIST0_CUR_DESC_U_ADDR | ||
7663 | ***************************************************************************/ | ||
7664 | /* MISC1 :: Y_RX_LIST0_CUR_DESC_U_ADDR :: RX_L0_CUR_DESC_U_ADDR [31:00] */ | ||
7665 | #define MISC1_Y_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_MASK 0xffffffff | ||
7666 | #define MISC1_Y_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_ALIGN 0 | ||
7667 | #define MISC1_Y_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_BITS 32 | ||
7668 | #define MISC1_Y_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_SHIFT 0 | ||
7669 | |||
7670 | |||
7671 | /**************************************************************************** | ||
7672 | * MISC1 :: Y_RX_LIST0_CUR_BYTE_CNT | ||
7673 | ***************************************************************************/ | ||
7674 | /* MISC1 :: Y_RX_LIST0_CUR_BYTE_CNT :: RX_L0_CUR_BYTE_CNT [31:00] */ | ||
7675 | #define MISC1_Y_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_MASK 0xffffffff | ||
7676 | #define MISC1_Y_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_ALIGN 0 | ||
7677 | #define MISC1_Y_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_BITS 32 | ||
7678 | #define MISC1_Y_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_SHIFT 0 | ||
7679 | |||
7680 | |||
7681 | /**************************************************************************** | ||
7682 | * MISC1 :: Y_RX_LIST1_CUR_DESC_L_ADDR | ||
7683 | ***************************************************************************/ | ||
7684 | /* MISC1 :: Y_RX_LIST1_CUR_DESC_L_ADDR :: RX_L1_CUR_DESC_L_ADDR [31:05] */ | ||
7685 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_MASK 0xffffffe0 | ||
7686 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_ALIGN 0 | ||
7687 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_BITS 27 | ||
7688 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_SHIFT 5 | ||
7689 | |||
7690 | /* MISC1 :: Y_RX_LIST1_CUR_DESC_L_ADDR :: reserved0 [04:00] */ | ||
7691 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_reserved0_MASK 0x0000001f | ||
7692 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_reserved0_ALIGN 0 | ||
7693 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_reserved0_BITS 5 | ||
7694 | #define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR_reserved0_SHIFT 0 | ||
7695 | |||
7696 | |||
7697 | /**************************************************************************** | ||
7698 | * MISC1 :: Y_RX_LIST1_CUR_DESC_U_ADDR | ||
7699 | ***************************************************************************/ | ||
7700 | /* MISC1 :: Y_RX_LIST1_CUR_DESC_U_ADDR :: RX_L1_CUR_DESC_U_ADDR [31:00] */ | ||
7701 | #define MISC1_Y_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_MASK 0xffffffff | ||
7702 | #define MISC1_Y_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_ALIGN 0 | ||
7703 | #define MISC1_Y_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_BITS 32 | ||
7704 | #define MISC1_Y_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_SHIFT 0 | ||
7705 | |||
7706 | |||
7707 | /**************************************************************************** | ||
7708 | * MISC1 :: Y_RX_LIST1_CUR_BYTE_CNT | ||
7709 | ***************************************************************************/ | ||
7710 | /* MISC1 :: Y_RX_LIST1_CUR_BYTE_CNT :: RX_L1_CUR_BYTE_CNT [31:00] */ | ||
7711 | #define MISC1_Y_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_MASK 0xffffffff | ||
7712 | #define MISC1_Y_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_ALIGN 0 | ||
7713 | #define MISC1_Y_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_BITS 32 | ||
7714 | #define MISC1_Y_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_SHIFT 0 | ||
7715 | |||
7716 | |||
7717 | /**************************************************************************** | ||
7718 | * MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST0 | ||
7719 | ***************************************************************************/ | ||
7720 | /* MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST0 :: DESC_ADDR [31:05] */ | ||
7721 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_MASK 0xffffffe0 | ||
7722 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_ALIGN 0 | ||
7723 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_BITS 27 | ||
7724 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_DESC_ADDR_SHIFT 5 | ||
7725 | |||
7726 | /* MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST0 :: reserved0 [04:01] */ | ||
7727 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_MASK 0x0000001e | ||
7728 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_ALIGN 0 | ||
7729 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_BITS 4 | ||
7730 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_reserved0_SHIFT 1 | ||
7731 | |||
7732 | /* MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST0 :: RX_DESC_LIST0_VALID [00:00] */ | ||
7733 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_MASK 0x00000001 | ||
7734 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_ALIGN 0 | ||
7735 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_BITS 1 | ||
7736 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0_RX_DESC_LIST0_VALID_SHIFT 0 | ||
7737 | |||
7738 | |||
7739 | /**************************************************************************** | ||
7740 | * MISC1 :: UV_RX_FIRST_DESC_U_ADDR_LIST0 | ||
7741 | ***************************************************************************/ | ||
7742 | /* MISC1 :: UV_RX_FIRST_DESC_U_ADDR_LIST0 :: DESC_ADDR [31:00] */ | ||
7743 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_MASK 0xffffffff | ||
7744 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_ALIGN 0 | ||
7745 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_BITS 32 | ||
7746 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST0_DESC_ADDR_SHIFT 0 | ||
7747 | |||
7748 | |||
7749 | /**************************************************************************** | ||
7750 | * MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST1 | ||
7751 | ***************************************************************************/ | ||
7752 | /* MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST1 :: DESC_ADDR [31:05] */ | ||
7753 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_MASK 0xffffffe0 | ||
7754 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_ALIGN 0 | ||
7755 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_BITS 27 | ||
7756 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_DESC_ADDR_SHIFT 5 | ||
7757 | |||
7758 | /* MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST1 :: reserved0 [04:01] */ | ||
7759 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_MASK 0x0000001e | ||
7760 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_ALIGN 0 | ||
7761 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_BITS 4 | ||
7762 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_reserved0_SHIFT 1 | ||
7763 | |||
7764 | /* MISC1 :: UV_RX_FIRST_DESC_L_ADDR_LIST1 :: RX_DESC_LIST1_VALID [00:00] */ | ||
7765 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_MASK 0x00000001 | ||
7766 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_ALIGN 0 | ||
7767 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_BITS 1 | ||
7768 | #define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1_RX_DESC_LIST1_VALID_SHIFT 0 | ||
7769 | |||
7770 | |||
7771 | /**************************************************************************** | ||
7772 | * MISC1 :: UV_RX_FIRST_DESC_U_ADDR_LIST1 | ||
7773 | ***************************************************************************/ | ||
7774 | /* MISC1 :: UV_RX_FIRST_DESC_U_ADDR_LIST1 :: DESC_ADDR [31:00] */ | ||
7775 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_MASK 0xffffffff | ||
7776 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_ALIGN 0 | ||
7777 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_BITS 32 | ||
7778 | #define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST1_DESC_ADDR_SHIFT 0 | ||
7779 | |||
7780 | |||
7781 | /**************************************************************************** | ||
7782 | * MISC1 :: UV_RX_SW_DESC_LIST_CTRL_STS | ||
7783 | ***************************************************************************/ | ||
7784 | /* MISC1 :: UV_RX_SW_DESC_LIST_CTRL_STS :: reserved0 [31:04] */ | ||
7785 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_reserved0_MASK 0xfffffff0 | ||
7786 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_reserved0_ALIGN 0 | ||
7787 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_reserved0_BITS 28 | ||
7788 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_reserved0_SHIFT 4 | ||
7789 | |||
7790 | /* MISC1 :: UV_RX_SW_DESC_LIST_CTRL_STS :: DMA_DATA_SERV_PTR [03:03] */ | ||
7791 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_MASK 0x00000008 | ||
7792 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_ALIGN 0 | ||
7793 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_BITS 1 | ||
7794 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_SHIFT 3 | ||
7795 | |||
7796 | /* MISC1 :: UV_RX_SW_DESC_LIST_CTRL_STS :: DESC_SERV_PTR [02:02] */ | ||
7797 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_MASK 0x00000004 | ||
7798 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_ALIGN 0 | ||
7799 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_BITS 1 | ||
7800 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_SHIFT 2 | ||
7801 | |||
7802 | /* MISC1 :: UV_RX_SW_DESC_LIST_CTRL_STS :: RX_HALT_ON_ERROR [01:01] */ | ||
7803 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_MASK 0x00000002 | ||
7804 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_ALIGN 0 | ||
7805 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_BITS 1 | ||
7806 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_HALT_ON_ERROR_SHIFT 1 | ||
7807 | |||
7808 | /* MISC1 :: UV_RX_SW_DESC_LIST_CTRL_STS :: RX_RUN_STOP [00:00] */ | ||
7809 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_MASK 0x00000001 | ||
7810 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_ALIGN 0 | ||
7811 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_BITS 1 | ||
7812 | #define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS_RX_RUN_STOP_SHIFT 0 | ||
7813 | |||
7814 | |||
7815 | /**************************************************************************** | ||
7816 | * MISC1 :: UV_RX_ERROR_STATUS | ||
7817 | ***************************************************************************/ | ||
7818 | /* MISC1 :: UV_RX_ERROR_STATUS :: reserved0 [31:14] */ | ||
7819 | #define MISC1_UV_RX_ERROR_STATUS_reserved0_MASK 0xffffc000 | ||
7820 | #define MISC1_UV_RX_ERROR_STATUS_reserved0_ALIGN 0 | ||
7821 | #define MISC1_UV_RX_ERROR_STATUS_reserved0_BITS 18 | ||
7822 | #define MISC1_UV_RX_ERROR_STATUS_reserved0_SHIFT 14 | ||
7823 | |||
7824 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_UNDERRUN_ERROR [13:13] */ | ||
7825 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK 0x00002000 | ||
7826 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_ALIGN 0 | ||
7827 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_BITS 1 | ||
7828 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_SHIFT 13 | ||
7829 | |||
7830 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_OVERRUN_ERROR [12:12] */ | ||
7831 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_MASK 0x00001000 | ||
7832 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_ALIGN 0 | ||
7833 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_BITS 1 | ||
7834 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_SHIFT 12 | ||
7835 | |||
7836 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_UNDERRUN_ERROR [11:11] */ | ||
7837 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK 0x00000800 | ||
7838 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_ALIGN 0 | ||
7839 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_BITS 1 | ||
7840 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_SHIFT 11 | ||
7841 | |||
7842 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_OVERRUN_ERROR [10:10] */ | ||
7843 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_MASK 0x00000400 | ||
7844 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_ALIGN 0 | ||
7845 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_BITS 1 | ||
7846 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_SHIFT 10 | ||
7847 | |||
7848 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_DESC_TX_ABORT_ERRORS [09:09] */ | ||
7849 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_MASK 0x00000200 | ||
7850 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_ALIGN 0 | ||
7851 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_BITS 1 | ||
7852 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_SHIFT 9 | ||
7853 | |||
7854 | /* MISC1 :: UV_RX_ERROR_STATUS :: reserved1 [08:08] */ | ||
7855 | #define MISC1_UV_RX_ERROR_STATUS_reserved1_MASK 0x00000100 | ||
7856 | #define MISC1_UV_RX_ERROR_STATUS_reserved1_ALIGN 0 | ||
7857 | #define MISC1_UV_RX_ERROR_STATUS_reserved1_BITS 1 | ||
7858 | #define MISC1_UV_RX_ERROR_STATUS_reserved1_SHIFT 8 | ||
7859 | |||
7860 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_DESC_TX_ABORT_ERRORS [07:07] */ | ||
7861 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_MASK 0x00000080 | ||
7862 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_ALIGN 0 | ||
7863 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_BITS 1 | ||
7864 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_SHIFT 7 | ||
7865 | |||
7866 | /* MISC1 :: UV_RX_ERROR_STATUS :: reserved2 [06:05] */ | ||
7867 | #define MISC1_UV_RX_ERROR_STATUS_reserved2_MASK 0x00000060 | ||
7868 | #define MISC1_UV_RX_ERROR_STATUS_reserved2_ALIGN 0 | ||
7869 | #define MISC1_UV_RX_ERROR_STATUS_reserved2_BITS 2 | ||
7870 | #define MISC1_UV_RX_ERROR_STATUS_reserved2_SHIFT 5 | ||
7871 | |||
7872 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_FIFO_FULL_ERRORS [04:04] */ | ||
7873 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK 0x00000010 | ||
7874 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_ALIGN 0 | ||
7875 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_BITS 1 | ||
7876 | #define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_SHIFT 4 | ||
7877 | |||
7878 | /* MISC1 :: UV_RX_ERROR_STATUS :: reserved3 [03:02] */ | ||
7879 | #define MISC1_UV_RX_ERROR_STATUS_reserved3_MASK 0x0000000c | ||
7880 | #define MISC1_UV_RX_ERROR_STATUS_reserved3_ALIGN 0 | ||
7881 | #define MISC1_UV_RX_ERROR_STATUS_reserved3_BITS 2 | ||
7882 | #define MISC1_UV_RX_ERROR_STATUS_reserved3_SHIFT 2 | ||
7883 | |||
7884 | /* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_FIFO_FULL_ERRORS [01:01] */ | ||
7885 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK 0x00000002 | ||
7886 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_ALIGN 0 | ||
7887 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_BITS 1 | ||
7888 | #define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_SHIFT 1 | ||
7889 | |||
7890 | /* MISC1 :: UV_RX_ERROR_STATUS :: reserved4 [00:00] */ | ||
7891 | #define MISC1_UV_RX_ERROR_STATUS_reserved4_MASK 0x00000001 | ||
7892 | #define MISC1_UV_RX_ERROR_STATUS_reserved4_ALIGN 0 | ||
7893 | #define MISC1_UV_RX_ERROR_STATUS_reserved4_BITS 1 | ||
7894 | #define MISC1_UV_RX_ERROR_STATUS_reserved4_SHIFT 0 | ||
7895 | |||
7896 | |||
7897 | /**************************************************************************** | ||
7898 | * MISC1 :: UV_RX_LIST0_CUR_DESC_L_ADDR | ||
7899 | ***************************************************************************/ | ||
7900 | /* MISC1 :: UV_RX_LIST0_CUR_DESC_L_ADDR :: RX_L0_CUR_DESC_L_ADDR [31:05] */ | ||
7901 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_MASK 0xffffffe0 | ||
7902 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_ALIGN 0 | ||
7903 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_BITS 27 | ||
7904 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_RX_L0_CUR_DESC_L_ADDR_SHIFT 5 | ||
7905 | |||
7906 | /* MISC1 :: UV_RX_LIST0_CUR_DESC_L_ADDR :: reserved0 [04:00] */ | ||
7907 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_reserved0_MASK 0x0000001f | ||
7908 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_reserved0_ALIGN 0 | ||
7909 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_reserved0_BITS 5 | ||
7910 | #define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR_reserved0_SHIFT 0 | ||
7911 | |||
7912 | |||
7913 | /**************************************************************************** | ||
7914 | * MISC1 :: UV_RX_LIST0_CUR_DESC_U_ADDR | ||
7915 | ***************************************************************************/ | ||
7916 | /* MISC1 :: UV_RX_LIST0_CUR_DESC_U_ADDR :: RX_L0_CUR_DESC_U_ADDR [31:00] */ | ||
7917 | #define MISC1_UV_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_MASK 0xffffffff | ||
7918 | #define MISC1_UV_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_ALIGN 0 | ||
7919 | #define MISC1_UV_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_BITS 32 | ||
7920 | #define MISC1_UV_RX_LIST0_CUR_DESC_U_ADDR_RX_L0_CUR_DESC_U_ADDR_SHIFT 0 | ||
7921 | |||
7922 | |||
7923 | /**************************************************************************** | ||
7924 | * MISC1 :: UV_RX_LIST0_CUR_BYTE_CNT | ||
7925 | ***************************************************************************/ | ||
7926 | /* MISC1 :: UV_RX_LIST0_CUR_BYTE_CNT :: RX_L0_CUR_BYTE_CNT [31:00] */ | ||
7927 | #define MISC1_UV_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_MASK 0xffffffff | ||
7928 | #define MISC1_UV_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_ALIGN 0 | ||
7929 | #define MISC1_UV_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_BITS 32 | ||
7930 | #define MISC1_UV_RX_LIST0_CUR_BYTE_CNT_RX_L0_CUR_BYTE_CNT_SHIFT 0 | ||
7931 | |||
7932 | |||
7933 | /**************************************************************************** | ||
7934 | * MISC1 :: UV_RX_LIST1_CUR_DESC_L_ADDR | ||
7935 | ***************************************************************************/ | ||
7936 | /* MISC1 :: UV_RX_LIST1_CUR_DESC_L_ADDR :: RX_L1_CUR_DESC_L_ADDR [31:05] */ | ||
7937 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_MASK 0xffffffe0 | ||
7938 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_ALIGN 0 | ||
7939 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_BITS 27 | ||
7940 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_RX_L1_CUR_DESC_L_ADDR_SHIFT 5 | ||
7941 | |||
7942 | /* MISC1 :: UV_RX_LIST1_CUR_DESC_L_ADDR :: reserved0 [04:00] */ | ||
7943 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_reserved0_MASK 0x0000001f | ||
7944 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_reserved0_ALIGN 0 | ||
7945 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_reserved0_BITS 5 | ||
7946 | #define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR_reserved0_SHIFT 0 | ||
7947 | |||
7948 | |||
7949 | /**************************************************************************** | ||
7950 | * MISC1 :: UV_RX_LIST1_CUR_DESC_U_ADDR | ||
7951 | ***************************************************************************/ | ||
7952 | /* MISC1 :: UV_RX_LIST1_CUR_DESC_U_ADDR :: RX_L1_CUR_DESC_U_ADDR [31:00] */ | ||
7953 | #define MISC1_UV_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_MASK 0xffffffff | ||
7954 | #define MISC1_UV_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_ALIGN 0 | ||
7955 | #define MISC1_UV_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_BITS 32 | ||
7956 | #define MISC1_UV_RX_LIST1_CUR_DESC_U_ADDR_RX_L1_CUR_DESC_U_ADDR_SHIFT 0 | ||
7957 | |||
7958 | |||
7959 | /**************************************************************************** | ||
7960 | * MISC1 :: UV_RX_LIST1_CUR_BYTE_CNT | ||
7961 | ***************************************************************************/ | ||
7962 | /* MISC1 :: UV_RX_LIST1_CUR_BYTE_CNT :: RX_L1_CUR_BYTE_CNT [31:00] */ | ||
7963 | #define MISC1_UV_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_MASK 0xffffffff | ||
7964 | #define MISC1_UV_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_ALIGN 0 | ||
7965 | #define MISC1_UV_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_BITS 32 | ||
7966 | #define MISC1_UV_RX_LIST1_CUR_BYTE_CNT_RX_L1_CUR_BYTE_CNT_SHIFT 0 | ||
7967 | |||
7968 | |||
7969 | /**************************************************************************** | ||
7970 | * MISC1 :: DMA_DEBUG_OPTIONS_REG | ||
7971 | ***************************************************************************/ | ||
7972 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: DMA_DEBUG_TX_DMA_SOFT_RST [31:31] */ | ||
7973 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_SOFT_RST_MASK 0x80000000 | ||
7974 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_SOFT_RST_ALIGN 0 | ||
7975 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_SOFT_RST_BITS 1 | ||
7976 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_SOFT_RST_SHIFT 31 | ||
7977 | |||
7978 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: DMA_DEBUG_RX_DMA_SOFT_RST [30:30] */ | ||
7979 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_SOFT_RST_MASK 0x40000000 | ||
7980 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_SOFT_RST_ALIGN 0 | ||
7981 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_SOFT_RST_BITS 1 | ||
7982 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_SOFT_RST_SHIFT 30 | ||
7983 | |||
7984 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: DMA_DEBUG_TX_DMA_RD_Q_SOFT_RST [29:29] */ | ||
7985 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_RD_Q_SOFT_RST_MASK 0x20000000 | ||
7986 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_RD_Q_SOFT_RST_ALIGN 0 | ||
7987 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_RD_Q_SOFT_RST_BITS 1 | ||
7988 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_TX_DMA_RD_Q_SOFT_RST_SHIFT 29 | ||
7989 | |||
7990 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: DMA_DEBUG_RX_DMA_WR_Q_SOFT_RST [28:28] */ | ||
7991 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_WR_Q_SOFT_RST_MASK 0x10000000 | ||
7992 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_WR_Q_SOFT_RST_ALIGN 0 | ||
7993 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_WR_Q_SOFT_RST_BITS 1 | ||
7994 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_RX_DMA_WR_Q_SOFT_RST_SHIFT 28 | ||
7995 | |||
7996 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: RSVD_DMA_DEBUG_0 [27:05] */ | ||
7997 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_0_MASK 0x0fffffe0 | ||
7998 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_0_ALIGN 0 | ||
7999 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_0_BITS 23 | ||
8000 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_0_SHIFT 5 | ||
8001 | |||
8002 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: DMA_DEBUG_EN_RX_DMA_XFER_CNT [04:04] */ | ||
8003 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_EN_RX_DMA_XFER_CNT_MASK 0x00000010 | ||
8004 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_EN_RX_DMA_XFER_CNT_ALIGN 0 | ||
8005 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_EN_RX_DMA_XFER_CNT_BITS 1 | ||
8006 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_EN_RX_DMA_XFER_CNT_SHIFT 4 | ||
8007 | |||
8008 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: RSVD_DMA_DEBUG_1 [03:03] */ | ||
8009 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_1_MASK 0x00000008 | ||
8010 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_1_ALIGN 0 | ||
8011 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_1_BITS 1 | ||
8012 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_1_SHIFT 3 | ||
8013 | |||
8014 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: DMA_DEBUG_SINGLE_RD_Q [02:02] */ | ||
8015 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_RD_Q_MASK 0x00000004 | ||
8016 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_RD_Q_ALIGN 0 | ||
8017 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_RD_Q_BITS 1 | ||
8018 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_RD_Q_SHIFT 2 | ||
8019 | |||
8020 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: DMA_DEBUG_SINGLE_WR_Q [01:01] */ | ||
8021 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_WR_Q_MASK 0x00000002 | ||
8022 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_WR_Q_ALIGN 0 | ||
8023 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_WR_Q_BITS 1 | ||
8024 | #define MISC1_DMA_DEBUG_OPTIONS_REG_DMA_DEBUG_SINGLE_WR_Q_SHIFT 1 | ||
8025 | |||
8026 | /* MISC1 :: DMA_DEBUG_OPTIONS_REG :: RSVD_DMA_DEBUG_2 [00:00] */ | ||
8027 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_2_MASK 0x00000001 | ||
8028 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_2_ALIGN 0 | ||
8029 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_2_BITS 1 | ||
8030 | #define MISC1_DMA_DEBUG_OPTIONS_REG_RSVD_DMA_DEBUG_2_SHIFT 0 | ||
8031 | |||
8032 | |||
8033 | /**************************************************************************** | ||
8034 | * MISC1 :: READ_CHANNEL_ERROR_STATUS | ||
8035 | ***************************************************************************/ | ||
8036 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_7 [31:28] */ | ||
8037 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_7_MASK 0xf0000000 | ||
8038 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_7_ALIGN 0 | ||
8039 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_7_BITS 4 | ||
8040 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_7_SHIFT 28 | ||
8041 | |||
8042 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_6 [27:24] */ | ||
8043 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_6_MASK 0x0f000000 | ||
8044 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_6_ALIGN 0 | ||
8045 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_6_BITS 4 | ||
8046 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_6_SHIFT 24 | ||
8047 | |||
8048 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_5 [23:20] */ | ||
8049 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_5_MASK 0x00f00000 | ||
8050 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_5_ALIGN 0 | ||
8051 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_5_BITS 4 | ||
8052 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_5_SHIFT 20 | ||
8053 | |||
8054 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_4 [19:16] */ | ||
8055 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_4_MASK 0x000f0000 | ||
8056 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_4_ALIGN 0 | ||
8057 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_4_BITS 4 | ||
8058 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_4_SHIFT 16 | ||
8059 | |||
8060 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_3 [15:12] */ | ||
8061 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_3_MASK 0x0000f000 | ||
8062 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_3_ALIGN 0 | ||
8063 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_3_BITS 4 | ||
8064 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_3_SHIFT 12 | ||
8065 | |||
8066 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_2 [11:08] */ | ||
8067 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_2_MASK 0x00000f00 | ||
8068 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_2_ALIGN 0 | ||
8069 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_2_BITS 4 | ||
8070 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_2_SHIFT 8 | ||
8071 | |||
8072 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_1 [07:04] */ | ||
8073 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_1_MASK 0x000000f0 | ||
8074 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_1_ALIGN 0 | ||
8075 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_1_BITS 4 | ||
8076 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_1_SHIFT 4 | ||
8077 | |||
8078 | /* MISC1 :: READ_CHANNEL_ERROR_STATUS :: TX_ERR_STS_CHAN_0 [03:00] */ | ||
8079 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_0_MASK 0x0000000f | ||
8080 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_0_ALIGN 0 | ||
8081 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_0_BITS 4 | ||
8082 | #define MISC1_READ_CHANNEL_ERROR_STATUS_TX_ERR_STS_CHAN_0_SHIFT 0 | ||
8083 | |||
8084 | |||
8085 | /**************************************************************************** | ||
8086 | * MISC1 :: PCIE_DMA_CTRL | ||
8087 | ***************************************************************************/ | ||
8088 | /* MISC1 :: PCIE_DMA_CTRL :: reserved0 [31:18] */ | ||
8089 | #define MISC1_PCIE_DMA_CTRL_reserved0_MASK 0xfffc0000 | ||
8090 | #define MISC1_PCIE_DMA_CTRL_reserved0_ALIGN 0 | ||
8091 | #define MISC1_PCIE_DMA_CTRL_reserved0_BITS 14 | ||
8092 | #define MISC1_PCIE_DMA_CTRL_reserved0_SHIFT 18 | ||
8093 | |||
8094 | /* MISC1 :: PCIE_DMA_CTRL :: DESC_ENDIAN_MODE [17:16] */ | ||
8095 | #define MISC1_PCIE_DMA_CTRL_DESC_ENDIAN_MODE_MASK 0x00030000 | ||
8096 | #define MISC1_PCIE_DMA_CTRL_DESC_ENDIAN_MODE_ALIGN 0 | ||
8097 | #define MISC1_PCIE_DMA_CTRL_DESC_ENDIAN_MODE_BITS 2 | ||
8098 | #define MISC1_PCIE_DMA_CTRL_DESC_ENDIAN_MODE_SHIFT 16 | ||
8099 | |||
8100 | /* MISC1 :: PCIE_DMA_CTRL :: reserved1 [15:10] */ | ||
8101 | #define MISC1_PCIE_DMA_CTRL_reserved1_MASK 0x0000fc00 | ||
8102 | #define MISC1_PCIE_DMA_CTRL_reserved1_ALIGN 0 | ||
8103 | #define MISC1_PCIE_DMA_CTRL_reserved1_BITS 6 | ||
8104 | #define MISC1_PCIE_DMA_CTRL_reserved1_SHIFT 10 | ||
8105 | |||
8106 | /* MISC1 :: PCIE_DMA_CTRL :: EN_WEIGHTED_RR [09:09] */ | ||
8107 | #define MISC1_PCIE_DMA_CTRL_EN_WEIGHTED_RR_MASK 0x00000200 | ||
8108 | #define MISC1_PCIE_DMA_CTRL_EN_WEIGHTED_RR_ALIGN 0 | ||
8109 | #define MISC1_PCIE_DMA_CTRL_EN_WEIGHTED_RR_BITS 1 | ||
8110 | #define MISC1_PCIE_DMA_CTRL_EN_WEIGHTED_RR_SHIFT 9 | ||
8111 | |||
8112 | /* MISC1 :: PCIE_DMA_CTRL :: EN_ROUND_ROBIN [08:08] */ | ||
8113 | #define MISC1_PCIE_DMA_CTRL_EN_ROUND_ROBIN_MASK 0x00000100 | ||
8114 | #define MISC1_PCIE_DMA_CTRL_EN_ROUND_ROBIN_ALIGN 0 | ||
8115 | #define MISC1_PCIE_DMA_CTRL_EN_ROUND_ROBIN_BITS 1 | ||
8116 | #define MISC1_PCIE_DMA_CTRL_EN_ROUND_ROBIN_SHIFT 8 | ||
8117 | |||
8118 | /* MISC1 :: PCIE_DMA_CTRL :: reserved2 [07:05] */ | ||
8119 | #define MISC1_PCIE_DMA_CTRL_reserved2_MASK 0x000000e0 | ||
8120 | #define MISC1_PCIE_DMA_CTRL_reserved2_ALIGN 0 | ||
8121 | #define MISC1_PCIE_DMA_CTRL_reserved2_BITS 3 | ||
8122 | #define MISC1_PCIE_DMA_CTRL_reserved2_SHIFT 5 | ||
8123 | |||
8124 | /* MISC1 :: PCIE_DMA_CTRL :: RELAXED_ORDERING [04:04] */ | ||
8125 | #define MISC1_PCIE_DMA_CTRL_RELAXED_ORDERING_MASK 0x00000010 | ||
8126 | #define MISC1_PCIE_DMA_CTRL_RELAXED_ORDERING_ALIGN 0 | ||
8127 | #define MISC1_PCIE_DMA_CTRL_RELAXED_ORDERING_BITS 1 | ||
8128 | #define MISC1_PCIE_DMA_CTRL_RELAXED_ORDERING_SHIFT 4 | ||
8129 | |||
8130 | /* MISC1 :: PCIE_DMA_CTRL :: NO_SNOOP [03:03] */ | ||
8131 | #define MISC1_PCIE_DMA_CTRL_NO_SNOOP_MASK 0x00000008 | ||
8132 | #define MISC1_PCIE_DMA_CTRL_NO_SNOOP_ALIGN 0 | ||
8133 | #define MISC1_PCIE_DMA_CTRL_NO_SNOOP_BITS 1 | ||
8134 | #define MISC1_PCIE_DMA_CTRL_NO_SNOOP_SHIFT 3 | ||
8135 | |||
8136 | /* MISC1 :: PCIE_DMA_CTRL :: TRAFFIC_CLASS [02:00] */ | ||
8137 | #define MISC1_PCIE_DMA_CTRL_TRAFFIC_CLASS_MASK 0x00000007 | ||
8138 | #define MISC1_PCIE_DMA_CTRL_TRAFFIC_CLASS_ALIGN 0 | ||
8139 | #define MISC1_PCIE_DMA_CTRL_TRAFFIC_CLASS_BITS 3 | ||
8140 | #define MISC1_PCIE_DMA_CTRL_TRAFFIC_CLASS_SHIFT 0 | ||
8141 | |||
8142 | |||
8143 | /**************************************************************************** | ||
8144 | * BCM70012_MISC_TOP_MISC2 | ||
8145 | ***************************************************************************/ | ||
8146 | /**************************************************************************** | ||
8147 | * MISC2 :: GLOBAL_CTRL | ||
8148 | ***************************************************************************/ | ||
8149 | /* MISC2 :: GLOBAL_CTRL :: reserved0 [31:21] */ | ||
8150 | #define MISC2_GLOBAL_CTRL_reserved0_MASK 0xffe00000 | ||
8151 | #define MISC2_GLOBAL_CTRL_reserved0_ALIGN 0 | ||
8152 | #define MISC2_GLOBAL_CTRL_reserved0_BITS 11 | ||
8153 | #define MISC2_GLOBAL_CTRL_reserved0_SHIFT 21 | ||
8154 | |||
8155 | /* MISC2 :: GLOBAL_CTRL :: EN_WRITE_ALL [20:20] */ | ||
8156 | #define MISC2_GLOBAL_CTRL_EN_WRITE_ALL_MASK 0x00100000 | ||
8157 | #define MISC2_GLOBAL_CTRL_EN_WRITE_ALL_ALIGN 0 | ||
8158 | #define MISC2_GLOBAL_CTRL_EN_WRITE_ALL_BITS 1 | ||
8159 | #define MISC2_GLOBAL_CTRL_EN_WRITE_ALL_SHIFT 20 | ||
8160 | |||
8161 | /* MISC2 :: GLOBAL_CTRL :: reserved1 [19:17] */ | ||
8162 | #define MISC2_GLOBAL_CTRL_reserved1_MASK 0x000e0000 | ||
8163 | #define MISC2_GLOBAL_CTRL_reserved1_ALIGN 0 | ||
8164 | #define MISC2_GLOBAL_CTRL_reserved1_BITS 3 | ||
8165 | #define MISC2_GLOBAL_CTRL_reserved1_SHIFT 17 | ||
8166 | |||
8167 | /* MISC2 :: GLOBAL_CTRL :: EN_SINGLE_DMA [16:16] */ | ||
8168 | #define MISC2_GLOBAL_CTRL_EN_SINGLE_DMA_MASK 0x00010000 | ||
8169 | #define MISC2_GLOBAL_CTRL_EN_SINGLE_DMA_ALIGN 0 | ||
8170 | #define MISC2_GLOBAL_CTRL_EN_SINGLE_DMA_BITS 1 | ||
8171 | #define MISC2_GLOBAL_CTRL_EN_SINGLE_DMA_SHIFT 16 | ||
8172 | |||
8173 | /* MISC2 :: GLOBAL_CTRL :: reserved2 [15:11] */ | ||
8174 | #define MISC2_GLOBAL_CTRL_reserved2_MASK 0x0000f800 | ||
8175 | #define MISC2_GLOBAL_CTRL_reserved2_ALIGN 0 | ||
8176 | #define MISC2_GLOBAL_CTRL_reserved2_BITS 5 | ||
8177 | #define MISC2_GLOBAL_CTRL_reserved2_SHIFT 11 | ||
8178 | |||
8179 | /* MISC2 :: GLOBAL_CTRL :: Y_UV_FIFO_LEN_SEL [10:10] */ | ||
8180 | #define MISC2_GLOBAL_CTRL_Y_UV_FIFO_LEN_SEL_MASK 0x00000400 | ||
8181 | #define MISC2_GLOBAL_CTRL_Y_UV_FIFO_LEN_SEL_ALIGN 0 | ||
8182 | #define MISC2_GLOBAL_CTRL_Y_UV_FIFO_LEN_SEL_BITS 1 | ||
8183 | #define MISC2_GLOBAL_CTRL_Y_UV_FIFO_LEN_SEL_SHIFT 10 | ||
8184 | |||
8185 | /* MISC2 :: GLOBAL_CTRL :: ODD_DE_EOFRST_DIS [09:09] */ | ||
8186 | #define MISC2_GLOBAL_CTRL_ODD_DE_EOFRST_DIS_MASK 0x00000200 | ||
8187 | #define MISC2_GLOBAL_CTRL_ODD_DE_EOFRST_DIS_ALIGN 0 | ||
8188 | #define MISC2_GLOBAL_CTRL_ODD_DE_EOFRST_DIS_BITS 1 | ||
8189 | #define MISC2_GLOBAL_CTRL_ODD_DE_EOFRST_DIS_SHIFT 9 | ||
8190 | |||
8191 | /* MISC2 :: GLOBAL_CTRL :: DIS_BIT_STUFFING [08:08] */ | ||
8192 | #define MISC2_GLOBAL_CTRL_DIS_BIT_STUFFING_MASK 0x00000100 | ||
8193 | #define MISC2_GLOBAL_CTRL_DIS_BIT_STUFFING_ALIGN 0 | ||
8194 | #define MISC2_GLOBAL_CTRL_DIS_BIT_STUFFING_BITS 1 | ||
8195 | #define MISC2_GLOBAL_CTRL_DIS_BIT_STUFFING_SHIFT 8 | ||
8196 | |||
8197 | /* MISC2 :: GLOBAL_CTRL :: reserved3 [07:05] */ | ||
8198 | #define MISC2_GLOBAL_CTRL_reserved3_MASK 0x000000e0 | ||
8199 | #define MISC2_GLOBAL_CTRL_reserved3_ALIGN 0 | ||
8200 | #define MISC2_GLOBAL_CTRL_reserved3_BITS 3 | ||
8201 | #define MISC2_GLOBAL_CTRL_reserved3_SHIFT 5 | ||
8202 | |||
8203 | /* MISC2 :: GLOBAL_CTRL :: EN_PROG_MODE [04:04] */ | ||
8204 | #define MISC2_GLOBAL_CTRL_EN_PROG_MODE_MASK 0x00000010 | ||
8205 | #define MISC2_GLOBAL_CTRL_EN_PROG_MODE_ALIGN 0 | ||
8206 | #define MISC2_GLOBAL_CTRL_EN_PROG_MODE_BITS 1 | ||
8207 | #define MISC2_GLOBAL_CTRL_EN_PROG_MODE_SHIFT 4 | ||
8208 | |||
8209 | /* MISC2 :: GLOBAL_CTRL :: reserved4 [03:01] */ | ||
8210 | #define MISC2_GLOBAL_CTRL_reserved4_MASK 0x0000000e | ||
8211 | #define MISC2_GLOBAL_CTRL_reserved4_ALIGN 0 | ||
8212 | #define MISC2_GLOBAL_CTRL_reserved4_BITS 3 | ||
8213 | #define MISC2_GLOBAL_CTRL_reserved4_SHIFT 1 | ||
8214 | |||
8215 | /* MISC2 :: GLOBAL_CTRL :: EN_188B [00:00] */ | ||
8216 | #define MISC2_GLOBAL_CTRL_EN_188B_MASK 0x00000001 | ||
8217 | #define MISC2_GLOBAL_CTRL_EN_188B_ALIGN 0 | ||
8218 | #define MISC2_GLOBAL_CTRL_EN_188B_BITS 1 | ||
8219 | #define MISC2_GLOBAL_CTRL_EN_188B_SHIFT 0 | ||
8220 | |||
8221 | |||
8222 | /**************************************************************************** | ||
8223 | * MISC2 :: INTERNAL_STATUS | ||
8224 | ***************************************************************************/ | ||
8225 | /* MISC2 :: INTERNAL_STATUS :: reserved0 [31:12] */ | ||
8226 | #define MISC2_INTERNAL_STATUS_reserved0_MASK 0xfffff000 | ||
8227 | #define MISC2_INTERNAL_STATUS_reserved0_ALIGN 0 | ||
8228 | #define MISC2_INTERNAL_STATUS_reserved0_BITS 20 | ||
8229 | #define MISC2_INTERNAL_STATUS_reserved0_SHIFT 12 | ||
8230 | |||
8231 | /* MISC2 :: INTERNAL_STATUS :: UV_BYTE_COUNT_FIFO_FULL [11:11] */ | ||
8232 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_FULL_MASK 0x00000800 | ||
8233 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_FULL_ALIGN 0 | ||
8234 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_FULL_BITS 1 | ||
8235 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_FULL_SHIFT 11 | ||
8236 | |||
8237 | /* MISC2 :: INTERNAL_STATUS :: UV_DATA_FIFO_FULL [10:10] */ | ||
8238 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_FULL_MASK 0x00000400 | ||
8239 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_FULL_ALIGN 0 | ||
8240 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_FULL_BITS 1 | ||
8241 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_FULL_SHIFT 10 | ||
8242 | |||
8243 | /* MISC2 :: INTERNAL_STATUS :: Y_BYTE_COUNT_FIFO_FULL [09:09] */ | ||
8244 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_FULL_MASK 0x00000200 | ||
8245 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_FULL_ALIGN 0 | ||
8246 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_FULL_BITS 1 | ||
8247 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_FULL_SHIFT 9 | ||
8248 | |||
8249 | /* MISC2 :: INTERNAL_STATUS :: Y_DATA_FIFO_FULL [08:08] */ | ||
8250 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_FULL_MASK 0x00000100 | ||
8251 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_FULL_ALIGN 0 | ||
8252 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_FULL_BITS 1 | ||
8253 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_FULL_SHIFT 8 | ||
8254 | |||
8255 | /* MISC2 :: INTERNAL_STATUS :: UV_BYTE_COUNT_FIFO_EMPTY [07:07] */ | ||
8256 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_EMPTY_MASK 0x00000080 | ||
8257 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_EMPTY_ALIGN 0 | ||
8258 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_EMPTY_BITS 1 | ||
8259 | #define MISC2_INTERNAL_STATUS_UV_BYTE_COUNT_FIFO_EMPTY_SHIFT 7 | ||
8260 | |||
8261 | /* MISC2 :: INTERNAL_STATUS :: UV_DATA_FIFO_EMPTY [06:06] */ | ||
8262 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_EMPTY_MASK 0x00000040 | ||
8263 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_EMPTY_ALIGN 0 | ||
8264 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_EMPTY_BITS 1 | ||
8265 | #define MISC2_INTERNAL_STATUS_UV_DATA_FIFO_EMPTY_SHIFT 6 | ||
8266 | |||
8267 | /* MISC2 :: INTERNAL_STATUS :: Y_BYTE_COUNT_FIFO_EMPTY [05:05] */ | ||
8268 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_EMPTY_MASK 0x00000020 | ||
8269 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_EMPTY_ALIGN 0 | ||
8270 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_EMPTY_BITS 1 | ||
8271 | #define MISC2_INTERNAL_STATUS_Y_BYTE_COUNT_FIFO_EMPTY_SHIFT 5 | ||
8272 | |||
8273 | /* MISC2 :: INTERNAL_STATUS :: Y_DATA_FIFO_EMPTY [04:04] */ | ||
8274 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_EMPTY_MASK 0x00000010 | ||
8275 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_EMPTY_ALIGN 0 | ||
8276 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_EMPTY_BITS 1 | ||
8277 | #define MISC2_INTERNAL_STATUS_Y_DATA_FIFO_EMPTY_SHIFT 4 | ||
8278 | |||
8279 | /* MISC2 :: INTERNAL_STATUS :: reserved1 [03:00] */ | ||
8280 | #define MISC2_INTERNAL_STATUS_reserved1_MASK 0x0000000f | ||
8281 | #define MISC2_INTERNAL_STATUS_reserved1_ALIGN 0 | ||
8282 | #define MISC2_INTERNAL_STATUS_reserved1_BITS 4 | ||
8283 | #define MISC2_INTERNAL_STATUS_reserved1_SHIFT 0 | ||
8284 | |||
8285 | |||
8286 | /**************************************************************************** | ||
8287 | * MISC2 :: INTERNAL_STATUS_MUX_CTRL | ||
8288 | ***************************************************************************/ | ||
8289 | /* MISC2 :: INTERNAL_STATUS_MUX_CTRL :: reserved0 [31:16] */ | ||
8290 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved0_MASK 0xffff0000 | ||
8291 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved0_ALIGN 0 | ||
8292 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved0_BITS 16 | ||
8293 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved0_SHIFT 16 | ||
8294 | |||
8295 | /* MISC2 :: INTERNAL_STATUS_MUX_CTRL :: CLK_OUT_ALT_SRC [15:15] */ | ||
8296 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_CLK_OUT_ALT_SRC_MASK 0x00008000 | ||
8297 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_CLK_OUT_ALT_SRC_ALIGN 0 | ||
8298 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_CLK_OUT_ALT_SRC_BITS 1 | ||
8299 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_CLK_OUT_ALT_SRC_SHIFT 15 | ||
8300 | |||
8301 | /* MISC2 :: INTERNAL_STATUS_MUX_CTRL :: DEBUG_CLK_SEL [14:12] */ | ||
8302 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CLK_SEL_MASK 0x00007000 | ||
8303 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CLK_SEL_ALIGN 0 | ||
8304 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CLK_SEL_BITS 3 | ||
8305 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CLK_SEL_SHIFT 12 | ||
8306 | |||
8307 | /* MISC2 :: INTERNAL_STATUS_MUX_CTRL :: reserved1 [11:09] */ | ||
8308 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved1_MASK 0x00000e00 | ||
8309 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved1_ALIGN 0 | ||
8310 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved1_BITS 3 | ||
8311 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_reserved1_SHIFT 9 | ||
8312 | |||
8313 | /* MISC2 :: INTERNAL_STATUS_MUX_CTRL :: DEBUG_TOP_CORE_SEL [08:08] */ | ||
8314 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_TOP_CORE_SEL_MASK 0x00000100 | ||
8315 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_TOP_CORE_SEL_ALIGN 0 | ||
8316 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_TOP_CORE_SEL_BITS 1 | ||
8317 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_TOP_CORE_SEL_SHIFT 8 | ||
8318 | |||
8319 | /* MISC2 :: INTERNAL_STATUS_MUX_CTRL :: DEBUG_CORE_BLK_SEL [07:04] */ | ||
8320 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CORE_BLK_SEL_MASK 0x000000f0 | ||
8321 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CORE_BLK_SEL_ALIGN 0 | ||
8322 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CORE_BLK_SEL_BITS 4 | ||
8323 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_CORE_BLK_SEL_SHIFT 4 | ||
8324 | |||
8325 | /* MISC2 :: INTERNAL_STATUS_MUX_CTRL :: DEBUG_VECTOR_SEL [03:00] */ | ||
8326 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_VECTOR_SEL_MASK 0x0000000f | ||
8327 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_VECTOR_SEL_ALIGN 0 | ||
8328 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_VECTOR_SEL_BITS 4 | ||
8329 | #define MISC2_INTERNAL_STATUS_MUX_CTRL_DEBUG_VECTOR_SEL_SHIFT 0 | ||
8330 | |||
8331 | |||
8332 | /**************************************************************************** | ||
8333 | * MISC2 :: DEBUG_FIFO_LENGTH | ||
8334 | ***************************************************************************/ | ||
8335 | /* MISC2 :: DEBUG_FIFO_LENGTH :: reserved0 [31:21] */ | ||
8336 | #define MISC2_DEBUG_FIFO_LENGTH_reserved0_MASK 0xffe00000 | ||
8337 | #define MISC2_DEBUG_FIFO_LENGTH_reserved0_ALIGN 0 | ||
8338 | #define MISC2_DEBUG_FIFO_LENGTH_reserved0_BITS 11 | ||
8339 | #define MISC2_DEBUG_FIFO_LENGTH_reserved0_SHIFT 21 | ||
8340 | |||
8341 | /* MISC2 :: DEBUG_FIFO_LENGTH :: FIFO_LENGTH [20:00] */ | ||
8342 | #define MISC2_DEBUG_FIFO_LENGTH_FIFO_LENGTH_MASK 0x001fffff | ||
8343 | #define MISC2_DEBUG_FIFO_LENGTH_FIFO_LENGTH_ALIGN 0 | ||
8344 | #define MISC2_DEBUG_FIFO_LENGTH_FIFO_LENGTH_BITS 21 | ||
8345 | #define MISC2_DEBUG_FIFO_LENGTH_FIFO_LENGTH_SHIFT 0 | ||
8346 | |||
8347 | |||
8348 | /**************************************************************************** | ||
8349 | * BCM70012_MISC_TOP_MISC3 | ||
8350 | ***************************************************************************/ | ||
8351 | /**************************************************************************** | ||
8352 | * MISC3 :: RESET_CTRL | ||
8353 | ***************************************************************************/ | ||
8354 | /* MISC3 :: RESET_CTRL :: reserved0 [31:09] */ | ||
8355 | #define MISC3_RESET_CTRL_reserved0_MASK 0xfffffe00 | ||
8356 | #define MISC3_RESET_CTRL_reserved0_ALIGN 0 | ||
8357 | #define MISC3_RESET_CTRL_reserved0_BITS 23 | ||
8358 | #define MISC3_RESET_CTRL_reserved0_SHIFT 9 | ||
8359 | |||
8360 | /* MISC3 :: RESET_CTRL :: PLL_RESET [08:08] */ | ||
8361 | #define MISC3_RESET_CTRL_PLL_RESET_MASK 0x00000100 | ||
8362 | #define MISC3_RESET_CTRL_PLL_RESET_ALIGN 0 | ||
8363 | #define MISC3_RESET_CTRL_PLL_RESET_BITS 1 | ||
8364 | #define MISC3_RESET_CTRL_PLL_RESET_SHIFT 8 | ||
8365 | |||
8366 | /* MISC3 :: RESET_CTRL :: reserved1 [07:02] */ | ||
8367 | #define MISC3_RESET_CTRL_reserved1_MASK 0x000000fc | ||
8368 | #define MISC3_RESET_CTRL_reserved1_ALIGN 0 | ||
8369 | #define MISC3_RESET_CTRL_reserved1_BITS 6 | ||
8370 | #define MISC3_RESET_CTRL_reserved1_SHIFT 2 | ||
8371 | |||
8372 | /* MISC3 :: RESET_CTRL :: POR_RESET [01:01] */ | ||
8373 | #define MISC3_RESET_CTRL_POR_RESET_MASK 0x00000002 | ||
8374 | #define MISC3_RESET_CTRL_POR_RESET_ALIGN 0 | ||
8375 | #define MISC3_RESET_CTRL_POR_RESET_BITS 1 | ||
8376 | #define MISC3_RESET_CTRL_POR_RESET_SHIFT 1 | ||
8377 | |||
8378 | /* MISC3 :: RESET_CTRL :: CORE_RESET [00:00] */ | ||
8379 | #define MISC3_RESET_CTRL_CORE_RESET_MASK 0x00000001 | ||
8380 | #define MISC3_RESET_CTRL_CORE_RESET_ALIGN 0 | ||
8381 | #define MISC3_RESET_CTRL_CORE_RESET_BITS 1 | ||
8382 | #define MISC3_RESET_CTRL_CORE_RESET_SHIFT 0 | ||
8383 | |||
8384 | |||
8385 | /**************************************************************************** | ||
8386 | * MISC3 :: BIST_CTRL | ||
8387 | ***************************************************************************/ | ||
8388 | /* MISC3 :: BIST_CTRL :: MBIST_OVERRIDE [31:31] */ | ||
8389 | #define MISC3_BIST_CTRL_MBIST_OVERRIDE_MASK 0x80000000 | ||
8390 | #define MISC3_BIST_CTRL_MBIST_OVERRIDE_ALIGN 0 | ||
8391 | #define MISC3_BIST_CTRL_MBIST_OVERRIDE_BITS 1 | ||
8392 | #define MISC3_BIST_CTRL_MBIST_OVERRIDE_SHIFT 31 | ||
8393 | |||
8394 | /* MISC3 :: BIST_CTRL :: reserved0 [30:15] */ | ||
8395 | #define MISC3_BIST_CTRL_reserved0_MASK 0x7fff8000 | ||
8396 | #define MISC3_BIST_CTRL_reserved0_ALIGN 0 | ||
8397 | #define MISC3_BIST_CTRL_reserved0_BITS 16 | ||
8398 | #define MISC3_BIST_CTRL_reserved0_SHIFT 15 | ||
8399 | |||
8400 | /* MISC3 :: BIST_CTRL :: MBIST_EN_2 [14:14] */ | ||
8401 | #define MISC3_BIST_CTRL_MBIST_EN_2_MASK 0x00004000 | ||
8402 | #define MISC3_BIST_CTRL_MBIST_EN_2_ALIGN 0 | ||
8403 | #define MISC3_BIST_CTRL_MBIST_EN_2_BITS 1 | ||
8404 | #define MISC3_BIST_CTRL_MBIST_EN_2_SHIFT 14 | ||
8405 | |||
8406 | /* MISC3 :: BIST_CTRL :: MBIST_EN_1 [13:13] */ | ||
8407 | #define MISC3_BIST_CTRL_MBIST_EN_1_MASK 0x00002000 | ||
8408 | #define MISC3_BIST_CTRL_MBIST_EN_1_ALIGN 0 | ||
8409 | #define MISC3_BIST_CTRL_MBIST_EN_1_BITS 1 | ||
8410 | #define MISC3_BIST_CTRL_MBIST_EN_1_SHIFT 13 | ||
8411 | |||
8412 | /* MISC3 :: BIST_CTRL :: MBIST_EN_0 [12:12] */ | ||
8413 | #define MISC3_BIST_CTRL_MBIST_EN_0_MASK 0x00001000 | ||
8414 | #define MISC3_BIST_CTRL_MBIST_EN_0_ALIGN 0 | ||
8415 | #define MISC3_BIST_CTRL_MBIST_EN_0_BITS 1 | ||
8416 | #define MISC3_BIST_CTRL_MBIST_EN_0_SHIFT 12 | ||
8417 | |||
8418 | /* MISC3 :: BIST_CTRL :: reserved1 [11:06] */ | ||
8419 | #define MISC3_BIST_CTRL_reserved1_MASK 0x00000fc0 | ||
8420 | #define MISC3_BIST_CTRL_reserved1_ALIGN 0 | ||
8421 | #define MISC3_BIST_CTRL_reserved1_BITS 6 | ||
8422 | #define MISC3_BIST_CTRL_reserved1_SHIFT 6 | ||
8423 | |||
8424 | /* MISC3 :: BIST_CTRL :: MBIST_SETUP [05:04] */ | ||
8425 | #define MISC3_BIST_CTRL_MBIST_SETUP_MASK 0x00000030 | ||
8426 | #define MISC3_BIST_CTRL_MBIST_SETUP_ALIGN 0 | ||
8427 | #define MISC3_BIST_CTRL_MBIST_SETUP_BITS 2 | ||
8428 | #define MISC3_BIST_CTRL_MBIST_SETUP_SHIFT 4 | ||
8429 | |||
8430 | /* MISC3 :: BIST_CTRL :: reserved2 [03:01] */ | ||
8431 | #define MISC3_BIST_CTRL_reserved2_MASK 0x0000000e | ||
8432 | #define MISC3_BIST_CTRL_reserved2_ALIGN 0 | ||
8433 | #define MISC3_BIST_CTRL_reserved2_BITS 3 | ||
8434 | #define MISC3_BIST_CTRL_reserved2_SHIFT 1 | ||
8435 | |||
8436 | /* MISC3 :: BIST_CTRL :: MBIST_ASYNC_RESET [00:00] */ | ||
8437 | #define MISC3_BIST_CTRL_MBIST_ASYNC_RESET_MASK 0x00000001 | ||
8438 | #define MISC3_BIST_CTRL_MBIST_ASYNC_RESET_ALIGN 0 | ||
8439 | #define MISC3_BIST_CTRL_MBIST_ASYNC_RESET_BITS 1 | ||
8440 | #define MISC3_BIST_CTRL_MBIST_ASYNC_RESET_SHIFT 0 | ||
8441 | |||
8442 | |||
8443 | /**************************************************************************** | ||
8444 | * MISC3 :: BIST_STATUS | ||
8445 | ***************************************************************************/ | ||
8446 | /* MISC3 :: BIST_STATUS :: reserved0 [31:31] */ | ||
8447 | #define MISC3_BIST_STATUS_reserved0_MASK 0x80000000 | ||
8448 | #define MISC3_BIST_STATUS_reserved0_ALIGN 0 | ||
8449 | #define MISC3_BIST_STATUS_reserved0_BITS 1 | ||
8450 | #define MISC3_BIST_STATUS_reserved0_SHIFT 31 | ||
8451 | |||
8452 | /* MISC3 :: BIST_STATUS :: MBIST_GO_2 [30:30] */ | ||
8453 | #define MISC3_BIST_STATUS_MBIST_GO_2_MASK 0x40000000 | ||
8454 | #define MISC3_BIST_STATUS_MBIST_GO_2_ALIGN 0 | ||
8455 | #define MISC3_BIST_STATUS_MBIST_GO_2_BITS 1 | ||
8456 | #define MISC3_BIST_STATUS_MBIST_GO_2_SHIFT 30 | ||
8457 | |||
8458 | /* MISC3 :: BIST_STATUS :: MBIST_GO_1 [29:29] */ | ||
8459 | #define MISC3_BIST_STATUS_MBIST_GO_1_MASK 0x20000000 | ||
8460 | #define MISC3_BIST_STATUS_MBIST_GO_1_ALIGN 0 | ||
8461 | #define MISC3_BIST_STATUS_MBIST_GO_1_BITS 1 | ||
8462 | #define MISC3_BIST_STATUS_MBIST_GO_1_SHIFT 29 | ||
8463 | |||
8464 | /* MISC3 :: BIST_STATUS :: MBIST_GO_0 [28:28] */ | ||
8465 | #define MISC3_BIST_STATUS_MBIST_GO_0_MASK 0x10000000 | ||
8466 | #define MISC3_BIST_STATUS_MBIST_GO_0_ALIGN 0 | ||
8467 | #define MISC3_BIST_STATUS_MBIST_GO_0_BITS 1 | ||
8468 | #define MISC3_BIST_STATUS_MBIST_GO_0_SHIFT 28 | ||
8469 | |||
8470 | /* MISC3 :: BIST_STATUS :: reserved1 [27:27] */ | ||
8471 | #define MISC3_BIST_STATUS_reserved1_MASK 0x08000000 | ||
8472 | #define MISC3_BIST_STATUS_reserved1_ALIGN 0 | ||
8473 | #define MISC3_BIST_STATUS_reserved1_BITS 1 | ||
8474 | #define MISC3_BIST_STATUS_reserved1_SHIFT 27 | ||
8475 | |||
8476 | /* MISC3 :: BIST_STATUS :: MBIST_DONE_2 [26:26] */ | ||
8477 | #define MISC3_BIST_STATUS_MBIST_DONE_2_MASK 0x04000000 | ||
8478 | #define MISC3_BIST_STATUS_MBIST_DONE_2_ALIGN 0 | ||
8479 | #define MISC3_BIST_STATUS_MBIST_DONE_2_BITS 1 | ||
8480 | #define MISC3_BIST_STATUS_MBIST_DONE_2_SHIFT 26 | ||
8481 | |||
8482 | /* MISC3 :: BIST_STATUS :: MBIST_DONE_1 [25:25] */ | ||
8483 | #define MISC3_BIST_STATUS_MBIST_DONE_1_MASK 0x02000000 | ||
8484 | #define MISC3_BIST_STATUS_MBIST_DONE_1_ALIGN 0 | ||
8485 | #define MISC3_BIST_STATUS_MBIST_DONE_1_BITS 1 | ||
8486 | #define MISC3_BIST_STATUS_MBIST_DONE_1_SHIFT 25 | ||
8487 | |||
8488 | /* MISC3 :: BIST_STATUS :: MBIST_DONE_0 [24:24] */ | ||
8489 | #define MISC3_BIST_STATUS_MBIST_DONE_0_MASK 0x01000000 | ||
8490 | #define MISC3_BIST_STATUS_MBIST_DONE_0_ALIGN 0 | ||
8491 | #define MISC3_BIST_STATUS_MBIST_DONE_0_BITS 1 | ||
8492 | #define MISC3_BIST_STATUS_MBIST_DONE_0_SHIFT 24 | ||
8493 | |||
8494 | /* MISC3 :: BIST_STATUS :: reserved2 [23:06] */ | ||
8495 | #define MISC3_BIST_STATUS_reserved2_MASK 0x00ffffc0 | ||
8496 | #define MISC3_BIST_STATUS_reserved2_ALIGN 0 | ||
8497 | #define MISC3_BIST_STATUS_reserved2_BITS 18 | ||
8498 | #define MISC3_BIST_STATUS_reserved2_SHIFT 6 | ||
8499 | |||
8500 | /* MISC3 :: BIST_STATUS :: MBIST_MBIST_MEMORY_GO_2 [05:04] */ | ||
8501 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_2_MASK 0x00000030 | ||
8502 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_2_ALIGN 0 | ||
8503 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_2_BITS 2 | ||
8504 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_2_SHIFT 4 | ||
8505 | |||
8506 | /* MISC3 :: BIST_STATUS :: MBIST_MBIST_MEMORY_GO_1 [03:02] */ | ||
8507 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_1_MASK 0x0000000c | ||
8508 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_1_ALIGN 0 | ||
8509 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_1_BITS 2 | ||
8510 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_1_SHIFT 2 | ||
8511 | |||
8512 | /* MISC3 :: BIST_STATUS :: MBIST_MBIST_MEMORY_GO_0 [01:00] */ | ||
8513 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_0_MASK 0x00000003 | ||
8514 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_0_ALIGN 0 | ||
8515 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_0_BITS 2 | ||
8516 | #define MISC3_BIST_STATUS_MBIST_MBIST_MEMORY_GO_0_SHIFT 0 | ||
8517 | |||
8518 | |||
8519 | /**************************************************************************** | ||
8520 | * MISC3 :: RX_CHECKSUM | ||
8521 | ***************************************************************************/ | ||
8522 | /* MISC3 :: RX_CHECKSUM :: RX_CHECKSUM [31:00] */ | ||
8523 | #define MISC3_RX_CHECKSUM_RX_CHECKSUM_MASK 0xffffffff | ||
8524 | #define MISC3_RX_CHECKSUM_RX_CHECKSUM_ALIGN 0 | ||
8525 | #define MISC3_RX_CHECKSUM_RX_CHECKSUM_BITS 32 | ||
8526 | #define MISC3_RX_CHECKSUM_RX_CHECKSUM_SHIFT 0 | ||
8527 | |||
8528 | |||
8529 | /**************************************************************************** | ||
8530 | * MISC3 :: TX_CHECKSUM | ||
8531 | ***************************************************************************/ | ||
8532 | /* MISC3 :: TX_CHECKSUM :: TX_CHECKSUM [31:00] */ | ||
8533 | #define MISC3_TX_CHECKSUM_TX_CHECKSUM_MASK 0xffffffff | ||
8534 | #define MISC3_TX_CHECKSUM_TX_CHECKSUM_ALIGN 0 | ||
8535 | #define MISC3_TX_CHECKSUM_TX_CHECKSUM_BITS 32 | ||
8536 | #define MISC3_TX_CHECKSUM_TX_CHECKSUM_SHIFT 0 | ||
8537 | |||
8538 | |||
8539 | /**************************************************************************** | ||
8540 | * MISC3 :: ECO_CTRL_CORE | ||
8541 | ***************************************************************************/ | ||
8542 | /* MISC3 :: ECO_CTRL_CORE :: reserved0 [31:16] */ | ||
8543 | #define MISC3_ECO_CTRL_CORE_reserved0_MASK 0xffff0000 | ||
8544 | #define MISC3_ECO_CTRL_CORE_reserved0_ALIGN 0 | ||
8545 | #define MISC3_ECO_CTRL_CORE_reserved0_BITS 16 | ||
8546 | #define MISC3_ECO_CTRL_CORE_reserved0_SHIFT 16 | ||
8547 | |||
8548 | /* MISC3 :: ECO_CTRL_CORE :: ECO_CORE_RST_N [15:00] */ | ||
8549 | #define MISC3_ECO_CTRL_CORE_ECO_CORE_RST_N_MASK 0x0000ffff | ||
8550 | #define MISC3_ECO_CTRL_CORE_ECO_CORE_RST_N_ALIGN 0 | ||
8551 | #define MISC3_ECO_CTRL_CORE_ECO_CORE_RST_N_BITS 16 | ||
8552 | #define MISC3_ECO_CTRL_CORE_ECO_CORE_RST_N_SHIFT 0 | ||
8553 | |||
8554 | |||
8555 | /**************************************************************************** | ||
8556 | * MISC3 :: CSI_TEST_CTRL | ||
8557 | ***************************************************************************/ | ||
8558 | /* MISC3 :: CSI_TEST_CTRL :: ENABLE_CSI_TEST [31:31] */ | ||
8559 | #define MISC3_CSI_TEST_CTRL_ENABLE_CSI_TEST_MASK 0x80000000 | ||
8560 | #define MISC3_CSI_TEST_CTRL_ENABLE_CSI_TEST_ALIGN 0 | ||
8561 | #define MISC3_CSI_TEST_CTRL_ENABLE_CSI_TEST_BITS 1 | ||
8562 | #define MISC3_CSI_TEST_CTRL_ENABLE_CSI_TEST_SHIFT 31 | ||
8563 | |||
8564 | /* MISC3 :: CSI_TEST_CTRL :: reserved0 [30:24] */ | ||
8565 | #define MISC3_CSI_TEST_CTRL_reserved0_MASK 0x7f000000 | ||
8566 | #define MISC3_CSI_TEST_CTRL_reserved0_ALIGN 0 | ||
8567 | #define MISC3_CSI_TEST_CTRL_reserved0_BITS 7 | ||
8568 | #define MISC3_CSI_TEST_CTRL_reserved0_SHIFT 24 | ||
8569 | |||
8570 | /* MISC3 :: CSI_TEST_CTRL :: CSI_CLOCK_ENABLE [23:16] */ | ||
8571 | #define MISC3_CSI_TEST_CTRL_CSI_CLOCK_ENABLE_MASK 0x00ff0000 | ||
8572 | #define MISC3_CSI_TEST_CTRL_CSI_CLOCK_ENABLE_ALIGN 0 | ||
8573 | #define MISC3_CSI_TEST_CTRL_CSI_CLOCK_ENABLE_BITS 8 | ||
8574 | #define MISC3_CSI_TEST_CTRL_CSI_CLOCK_ENABLE_SHIFT 16 | ||
8575 | |||
8576 | /* MISC3 :: CSI_TEST_CTRL :: CSI_SYNC [15:08] */ | ||
8577 | #define MISC3_CSI_TEST_CTRL_CSI_SYNC_MASK 0x0000ff00 | ||
8578 | #define MISC3_CSI_TEST_CTRL_CSI_SYNC_ALIGN 0 | ||
8579 | #define MISC3_CSI_TEST_CTRL_CSI_SYNC_BITS 8 | ||
8580 | #define MISC3_CSI_TEST_CTRL_CSI_SYNC_SHIFT 8 | ||
8581 | |||
8582 | /* MISC3 :: CSI_TEST_CTRL :: CSI_DATA [07:00] */ | ||
8583 | #define MISC3_CSI_TEST_CTRL_CSI_DATA_MASK 0x000000ff | ||
8584 | #define MISC3_CSI_TEST_CTRL_CSI_DATA_ALIGN 0 | ||
8585 | #define MISC3_CSI_TEST_CTRL_CSI_DATA_BITS 8 | ||
8586 | #define MISC3_CSI_TEST_CTRL_CSI_DATA_SHIFT 0 | ||
8587 | |||
8588 | |||
8589 | /**************************************************************************** | ||
8590 | * MISC3 :: HD_DVI_TEST_CTRL | ||
8591 | ***************************************************************************/ | ||
8592 | /* MISC3 :: HD_DVI_TEST_CTRL :: reserved0 [31:25] */ | ||
8593 | #define MISC3_HD_DVI_TEST_CTRL_reserved0_MASK 0xfe000000 | ||
8594 | #define MISC3_HD_DVI_TEST_CTRL_reserved0_ALIGN 0 | ||
8595 | #define MISC3_HD_DVI_TEST_CTRL_reserved0_BITS 7 | ||
8596 | #define MISC3_HD_DVI_TEST_CTRL_reserved0_SHIFT 25 | ||
8597 | |||
8598 | /* MISC3 :: HD_DVI_TEST_CTRL :: POS_VIDO_VBLANK_N [24:24] */ | ||
8599 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_VBLANK_N_MASK 0x01000000 | ||
8600 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_VBLANK_N_ALIGN 0 | ||
8601 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_VBLANK_N_BITS 1 | ||
8602 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_VBLANK_N_SHIFT 24 | ||
8603 | |||
8604 | /* MISC3 :: HD_DVI_TEST_CTRL :: NEG_VIDO_DVI_DATA [23:12] */ | ||
8605 | #define MISC3_HD_DVI_TEST_CTRL_NEG_VIDO_DVI_DATA_MASK 0x00fff000 | ||
8606 | #define MISC3_HD_DVI_TEST_CTRL_NEG_VIDO_DVI_DATA_ALIGN 0 | ||
8607 | #define MISC3_HD_DVI_TEST_CTRL_NEG_VIDO_DVI_DATA_BITS 12 | ||
8608 | #define MISC3_HD_DVI_TEST_CTRL_NEG_VIDO_DVI_DATA_SHIFT 12 | ||
8609 | |||
8610 | /* MISC3 :: HD_DVI_TEST_CTRL :: POS_VIDO_DVI_DATA [11:00] */ | ||
8611 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_DVI_DATA_MASK 0x00000fff | ||
8612 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_DVI_DATA_ALIGN 0 | ||
8613 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_DVI_DATA_BITS 12 | ||
8614 | #define MISC3_HD_DVI_TEST_CTRL_POS_VIDO_DVI_DATA_SHIFT 0 | ||
8615 | |||
8616 | |||
8617 | /**************************************************************************** | ||
8618 | * BCM70012_MISC_TOP_MISC_PERST | ||
8619 | ***************************************************************************/ | ||
8620 | /**************************************************************************** | ||
8621 | * MISC_PERST :: ECO_CTRL_PERST | ||
8622 | ***************************************************************************/ | ||
8623 | /* MISC_PERST :: ECO_CTRL_PERST :: reserved0 [31:16] */ | ||
8624 | #define MISC_PERST_ECO_CTRL_PERST_reserved0_MASK 0xffff0000 | ||
8625 | #define MISC_PERST_ECO_CTRL_PERST_reserved0_ALIGN 0 | ||
8626 | #define MISC_PERST_ECO_CTRL_PERST_reserved0_BITS 16 | ||
8627 | #define MISC_PERST_ECO_CTRL_PERST_reserved0_SHIFT 16 | ||
8628 | |||
8629 | /* MISC_PERST :: ECO_CTRL_PERST :: ECO_PERST_N [15:00] */ | ||
8630 | #define MISC_PERST_ECO_CTRL_PERST_ECO_PERST_N_MASK 0x0000ffff | ||
8631 | #define MISC_PERST_ECO_CTRL_PERST_ECO_PERST_N_ALIGN 0 | ||
8632 | #define MISC_PERST_ECO_CTRL_PERST_ECO_PERST_N_BITS 16 | ||
8633 | #define MISC_PERST_ECO_CTRL_PERST_ECO_PERST_N_SHIFT 0 | ||
8634 | |||
8635 | |||
8636 | /**************************************************************************** | ||
8637 | * MISC_PERST :: DECODER_CTRL | ||
8638 | ***************************************************************************/ | ||
8639 | /* MISC_PERST :: DECODER_CTRL :: reserved0 [31:05] */ | ||
8640 | #define MISC_PERST_DECODER_CTRL_reserved0_MASK 0xffffffe0 | ||
8641 | #define MISC_PERST_DECODER_CTRL_reserved0_ALIGN 0 | ||
8642 | #define MISC_PERST_DECODER_CTRL_reserved0_BITS 27 | ||
8643 | #define MISC_PERST_DECODER_CTRL_reserved0_SHIFT 5 | ||
8644 | |||
8645 | /* MISC_PERST :: DECODER_CTRL :: STOP_BCM7412_CLK [04:04] */ | ||
8646 | #define MISC_PERST_DECODER_CTRL_STOP_BCM7412_CLK_MASK 0x00000010 | ||
8647 | #define MISC_PERST_DECODER_CTRL_STOP_BCM7412_CLK_ALIGN 0 | ||
8648 | #define MISC_PERST_DECODER_CTRL_STOP_BCM7412_CLK_BITS 1 | ||
8649 | #define MISC_PERST_DECODER_CTRL_STOP_BCM7412_CLK_SHIFT 4 | ||
8650 | |||
8651 | /* MISC_PERST :: DECODER_CTRL :: reserved1 [03:01] */ | ||
8652 | #define MISC_PERST_DECODER_CTRL_reserved1_MASK 0x0000000e | ||
8653 | #define MISC_PERST_DECODER_CTRL_reserved1_ALIGN 0 | ||
8654 | #define MISC_PERST_DECODER_CTRL_reserved1_BITS 3 | ||
8655 | #define MISC_PERST_DECODER_CTRL_reserved1_SHIFT 1 | ||
8656 | |||
8657 | /* MISC_PERST :: DECODER_CTRL :: BCM7412_RESET [00:00] */ | ||
8658 | #define MISC_PERST_DECODER_CTRL_BCM7412_RESET_MASK 0x00000001 | ||
8659 | #define MISC_PERST_DECODER_CTRL_BCM7412_RESET_ALIGN 0 | ||
8660 | #define MISC_PERST_DECODER_CTRL_BCM7412_RESET_BITS 1 | ||
8661 | #define MISC_PERST_DECODER_CTRL_BCM7412_RESET_SHIFT 0 | ||
8662 | |||
8663 | |||
8664 | /**************************************************************************** | ||
8665 | * MISC_PERST :: CCE_STATUS | ||
8666 | ***************************************************************************/ | ||
8667 | /* MISC_PERST :: CCE_STATUS :: CCE_DONE [31:31] */ | ||
8668 | #define MISC_PERST_CCE_STATUS_CCE_DONE_MASK 0x80000000 | ||
8669 | #define MISC_PERST_CCE_STATUS_CCE_DONE_ALIGN 0 | ||
8670 | #define MISC_PERST_CCE_STATUS_CCE_DONE_BITS 1 | ||
8671 | #define MISC_PERST_CCE_STATUS_CCE_DONE_SHIFT 31 | ||
8672 | |||
8673 | /* MISC_PERST :: CCE_STATUS :: reserved0 [30:03] */ | ||
8674 | #define MISC_PERST_CCE_STATUS_reserved0_MASK 0x7ffffff8 | ||
8675 | #define MISC_PERST_CCE_STATUS_reserved0_ALIGN 0 | ||
8676 | #define MISC_PERST_CCE_STATUS_reserved0_BITS 28 | ||
8677 | #define MISC_PERST_CCE_STATUS_reserved0_SHIFT 3 | ||
8678 | |||
8679 | /* MISC_PERST :: CCE_STATUS :: CCE_BAD_GISB_ACCESS [02:02] */ | ||
8680 | #define MISC_PERST_CCE_STATUS_CCE_BAD_GISB_ACCESS_MASK 0x00000004 | ||
8681 | #define MISC_PERST_CCE_STATUS_CCE_BAD_GISB_ACCESS_ALIGN 0 | ||
8682 | #define MISC_PERST_CCE_STATUS_CCE_BAD_GISB_ACCESS_BITS 1 | ||
8683 | #define MISC_PERST_CCE_STATUS_CCE_BAD_GISB_ACCESS_SHIFT 2 | ||
8684 | |||
8685 | /* MISC_PERST :: CCE_STATUS :: CCE_BAD_I2C_ACCESS [01:01] */ | ||
8686 | #define MISC_PERST_CCE_STATUS_CCE_BAD_I2C_ACCESS_MASK 0x00000002 | ||
8687 | #define MISC_PERST_CCE_STATUS_CCE_BAD_I2C_ACCESS_ALIGN 0 | ||
8688 | #define MISC_PERST_CCE_STATUS_CCE_BAD_I2C_ACCESS_BITS 1 | ||
8689 | #define MISC_PERST_CCE_STATUS_CCE_BAD_I2C_ACCESS_SHIFT 1 | ||
8690 | |||
8691 | /* MISC_PERST :: CCE_STATUS :: CCE_BAD_SECTION_ID [00:00] */ | ||
8692 | #define MISC_PERST_CCE_STATUS_CCE_BAD_SECTION_ID_MASK 0x00000001 | ||
8693 | #define MISC_PERST_CCE_STATUS_CCE_BAD_SECTION_ID_ALIGN 0 | ||
8694 | #define MISC_PERST_CCE_STATUS_CCE_BAD_SECTION_ID_BITS 1 | ||
8695 | #define MISC_PERST_CCE_STATUS_CCE_BAD_SECTION_ID_SHIFT 0 | ||
8696 | |||
8697 | |||
8698 | /**************************************************************************** | ||
8699 | * MISC_PERST :: PCIE_DEBUG | ||
8700 | ***************************************************************************/ | ||
8701 | /* MISC_PERST :: PCIE_DEBUG :: SERDES_TERM_CNT [31:16] */ | ||
8702 | #define MISC_PERST_PCIE_DEBUG_SERDES_TERM_CNT_MASK 0xffff0000 | ||
8703 | #define MISC_PERST_PCIE_DEBUG_SERDES_TERM_CNT_ALIGN 0 | ||
8704 | #define MISC_PERST_PCIE_DEBUG_SERDES_TERM_CNT_BITS 16 | ||
8705 | #define MISC_PERST_PCIE_DEBUG_SERDES_TERM_CNT_SHIFT 16 | ||
8706 | |||
8707 | /* MISC_PERST :: PCIE_DEBUG :: reserved0 [15:11] */ | ||
8708 | #define MISC_PERST_PCIE_DEBUG_reserved0_MASK 0x0000f800 | ||
8709 | #define MISC_PERST_PCIE_DEBUG_reserved0_ALIGN 0 | ||
8710 | #define MISC_PERST_PCIE_DEBUG_reserved0_BITS 5 | ||
8711 | #define MISC_PERST_PCIE_DEBUG_reserved0_SHIFT 11 | ||
8712 | |||
8713 | /* MISC_PERST :: PCIE_DEBUG :: PLL_VCO_RESCUE [10:10] */ | ||
8714 | #define MISC_PERST_PCIE_DEBUG_PLL_VCO_RESCUE_MASK 0x00000400 | ||
8715 | #define MISC_PERST_PCIE_DEBUG_PLL_VCO_RESCUE_ALIGN 0 | ||
8716 | #define MISC_PERST_PCIE_DEBUG_PLL_VCO_RESCUE_BITS 1 | ||
8717 | #define MISC_PERST_PCIE_DEBUG_PLL_VCO_RESCUE_SHIFT 10 | ||
8718 | |||
8719 | /* MISC_PERST :: PCIE_DEBUG :: PLL_PDN_OVERRIDE [09:09] */ | ||
8720 | #define MISC_PERST_PCIE_DEBUG_PLL_PDN_OVERRIDE_MASK 0x00000200 | ||
8721 | #define MISC_PERST_PCIE_DEBUG_PLL_PDN_OVERRIDE_ALIGN 0 | ||
8722 | #define MISC_PERST_PCIE_DEBUG_PLL_PDN_OVERRIDE_BITS 1 | ||
8723 | #define MISC_PERST_PCIE_DEBUG_PLL_PDN_OVERRIDE_SHIFT 9 | ||
8724 | |||
8725 | /* MISC_PERST :: PCIE_DEBUG :: CORE_CLOCK_OVR [08:08] */ | ||
8726 | #define MISC_PERST_PCIE_DEBUG_CORE_CLOCK_OVR_MASK 0x00000100 | ||
8727 | #define MISC_PERST_PCIE_DEBUG_CORE_CLOCK_OVR_ALIGN 0 | ||
8728 | #define MISC_PERST_PCIE_DEBUG_CORE_CLOCK_OVR_BITS 1 | ||
8729 | #define MISC_PERST_PCIE_DEBUG_CORE_CLOCK_OVR_SHIFT 8 | ||
8730 | |||
8731 | /* MISC_PERST :: PCIE_DEBUG :: reserved1 [07:04] */ | ||
8732 | #define MISC_PERST_PCIE_DEBUG_reserved1_MASK 0x000000f0 | ||
8733 | #define MISC_PERST_PCIE_DEBUG_reserved1_ALIGN 0 | ||
8734 | #define MISC_PERST_PCIE_DEBUG_reserved1_BITS 4 | ||
8735 | #define MISC_PERST_PCIE_DEBUG_reserved1_SHIFT 4 | ||
8736 | |||
8737 | /* MISC_PERST :: PCIE_DEBUG :: PCIE_TMUX_SEL [03:00] */ | ||
8738 | #define MISC_PERST_PCIE_DEBUG_PCIE_TMUX_SEL_MASK 0x0000000f | ||
8739 | #define MISC_PERST_PCIE_DEBUG_PCIE_TMUX_SEL_ALIGN 0 | ||
8740 | #define MISC_PERST_PCIE_DEBUG_PCIE_TMUX_SEL_BITS 4 | ||
8741 | #define MISC_PERST_PCIE_DEBUG_PCIE_TMUX_SEL_SHIFT 0 | ||
8742 | |||
8743 | |||
8744 | /**************************************************************************** | ||
8745 | * MISC_PERST :: PCIE_DEBUG_STATUS | ||
8746 | ***************************************************************************/ | ||
8747 | /* MISC_PERST :: PCIE_DEBUG_STATUS :: reserved0 [31:06] */ | ||
8748 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved0_MASK 0xffffffc0 | ||
8749 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved0_ALIGN 0 | ||
8750 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved0_BITS 26 | ||
8751 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved0_SHIFT 6 | ||
8752 | |||
8753 | /* MISC_PERST :: PCIE_DEBUG_STATUS :: DATALINKATTN [05:05] */ | ||
8754 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATALINKATTN_MASK 0x00000020 | ||
8755 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATALINKATTN_ALIGN 0 | ||
8756 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATALINKATTN_BITS 1 | ||
8757 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATALINKATTN_SHIFT 5 | ||
8758 | |||
8759 | /* MISC_PERST :: PCIE_DEBUG_STATUS :: PHYLINKATTN [04:04] */ | ||
8760 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHYLINKATTN_MASK 0x00000010 | ||
8761 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHYLINKATTN_ALIGN 0 | ||
8762 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHYLINKATTN_BITS 1 | ||
8763 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHYLINKATTN_SHIFT 4 | ||
8764 | |||
8765 | /* MISC_PERST :: PCIE_DEBUG_STATUS :: reserved1 [03:02] */ | ||
8766 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved1_MASK 0x0000000c | ||
8767 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved1_ALIGN 0 | ||
8768 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved1_BITS 2 | ||
8769 | #define MISC_PERST_PCIE_DEBUG_STATUS_reserved1_SHIFT 2 | ||
8770 | |||
8771 | /* MISC_PERST :: PCIE_DEBUG_STATUS :: DATA_LINKUP [01:01] */ | ||
8772 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATA_LINKUP_MASK 0x00000002 | ||
8773 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATA_LINKUP_ALIGN 0 | ||
8774 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATA_LINKUP_BITS 1 | ||
8775 | #define MISC_PERST_PCIE_DEBUG_STATUS_DATA_LINKUP_SHIFT 1 | ||
8776 | |||
8777 | /* MISC_PERST :: PCIE_DEBUG_STATUS :: PHY_LINKUP [00:00] */ | ||
8778 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHY_LINKUP_MASK 0x00000001 | ||
8779 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHY_LINKUP_ALIGN 0 | ||
8780 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHY_LINKUP_BITS 1 | ||
8781 | #define MISC_PERST_PCIE_DEBUG_STATUS_PHY_LINKUP_SHIFT 0 | ||
8782 | |||
8783 | |||
8784 | /**************************************************************************** | ||
8785 | * MISC_PERST :: VREG_CTRL | ||
8786 | ***************************************************************************/ | ||
8787 | /* MISC_PERST :: VREG_CTRL :: reserved0 [31:08] */ | ||
8788 | #define MISC_PERST_VREG_CTRL_reserved0_MASK 0xffffff00 | ||
8789 | #define MISC_PERST_VREG_CTRL_reserved0_ALIGN 0 | ||
8790 | #define MISC_PERST_VREG_CTRL_reserved0_BITS 24 | ||
8791 | #define MISC_PERST_VREG_CTRL_reserved0_SHIFT 8 | ||
8792 | |||
8793 | /* MISC_PERST :: VREG_CTRL :: VREG1P2_SEL [07:04] */ | ||
8794 | #define MISC_PERST_VREG_CTRL_VREG1P2_SEL_MASK 0x000000f0 | ||
8795 | #define MISC_PERST_VREG_CTRL_VREG1P2_SEL_ALIGN 0 | ||
8796 | #define MISC_PERST_VREG_CTRL_VREG1P2_SEL_BITS 4 | ||
8797 | #define MISC_PERST_VREG_CTRL_VREG1P2_SEL_SHIFT 4 | ||
8798 | |||
8799 | /* MISC_PERST :: VREG_CTRL :: VREG2P5_SEL [03:00] */ | ||
8800 | #define MISC_PERST_VREG_CTRL_VREG2P5_SEL_MASK 0x0000000f | ||
8801 | #define MISC_PERST_VREG_CTRL_VREG2P5_SEL_ALIGN 0 | ||
8802 | #define MISC_PERST_VREG_CTRL_VREG2P5_SEL_BITS 4 | ||
8803 | #define MISC_PERST_VREG_CTRL_VREG2P5_SEL_SHIFT 0 | ||
8804 | |||
8805 | |||
8806 | /**************************************************************************** | ||
8807 | * MISC_PERST :: MEM_CTRL | ||
8808 | ***************************************************************************/ | ||
8809 | /* MISC_PERST :: MEM_CTRL :: reserved0 [31:04] */ | ||
8810 | #define MISC_PERST_MEM_CTRL_reserved0_MASK 0xfffffff0 | ||
8811 | #define MISC_PERST_MEM_CTRL_reserved0_ALIGN 0 | ||
8812 | #define MISC_PERST_MEM_CTRL_reserved0_BITS 28 | ||
8813 | #define MISC_PERST_MEM_CTRL_reserved0_SHIFT 4 | ||
8814 | |||
8815 | /* MISC_PERST :: MEM_CTRL :: Y_RM [03:03] */ | ||
8816 | #define MISC_PERST_MEM_CTRL_Y_RM_MASK 0x00000008 | ||
8817 | #define MISC_PERST_MEM_CTRL_Y_RM_ALIGN 0 | ||
8818 | #define MISC_PERST_MEM_CTRL_Y_RM_BITS 1 | ||
8819 | #define MISC_PERST_MEM_CTRL_Y_RM_SHIFT 3 | ||
8820 | |||
8821 | /* MISC_PERST :: MEM_CTRL :: Y_CCM [02:02] */ | ||
8822 | #define MISC_PERST_MEM_CTRL_Y_CCM_MASK 0x00000004 | ||
8823 | #define MISC_PERST_MEM_CTRL_Y_CCM_ALIGN 0 | ||
8824 | #define MISC_PERST_MEM_CTRL_Y_CCM_BITS 1 | ||
8825 | #define MISC_PERST_MEM_CTRL_Y_CCM_SHIFT 2 | ||
8826 | |||
8827 | /* MISC_PERST :: MEM_CTRL :: UV_RM [01:01] */ | ||
8828 | #define MISC_PERST_MEM_CTRL_UV_RM_MASK 0x00000002 | ||
8829 | #define MISC_PERST_MEM_CTRL_UV_RM_ALIGN 0 | ||
8830 | #define MISC_PERST_MEM_CTRL_UV_RM_BITS 1 | ||
8831 | #define MISC_PERST_MEM_CTRL_UV_RM_SHIFT 1 | ||
8832 | |||
8833 | /* MISC_PERST :: MEM_CTRL :: UV_CCM [00:00] */ | ||
8834 | #define MISC_PERST_MEM_CTRL_UV_CCM_MASK 0x00000001 | ||
8835 | #define MISC_PERST_MEM_CTRL_UV_CCM_ALIGN 0 | ||
8836 | #define MISC_PERST_MEM_CTRL_UV_CCM_BITS 1 | ||
8837 | #define MISC_PERST_MEM_CTRL_UV_CCM_SHIFT 0 | ||
8838 | |||
8839 | |||
8840 | /**************************************************************************** | ||
8841 | * MISC_PERST :: CLOCK_CTRL | ||
8842 | ***************************************************************************/ | ||
8843 | /* MISC_PERST :: CLOCK_CTRL :: reserved0 [31:20] */ | ||
8844 | #define MISC_PERST_CLOCK_CTRL_reserved0_MASK 0xfff00000 | ||
8845 | #define MISC_PERST_CLOCK_CTRL_reserved0_ALIGN 0 | ||
8846 | #define MISC_PERST_CLOCK_CTRL_reserved0_BITS 12 | ||
8847 | #define MISC_PERST_CLOCK_CTRL_reserved0_SHIFT 20 | ||
8848 | |||
8849 | /* MISC_PERST :: CLOCK_CTRL :: PLL_DIV [19:16] */ | ||
8850 | #define MISC_PERST_CLOCK_CTRL_PLL_DIV_MASK 0x000f0000 | ||
8851 | #define MISC_PERST_CLOCK_CTRL_PLL_DIV_ALIGN 0 | ||
8852 | #define MISC_PERST_CLOCK_CTRL_PLL_DIV_BITS 4 | ||
8853 | #define MISC_PERST_CLOCK_CTRL_PLL_DIV_SHIFT 16 | ||
8854 | |||
8855 | /* MISC_PERST :: CLOCK_CTRL :: PLL_MULT [15:08] */ | ||
8856 | #define MISC_PERST_CLOCK_CTRL_PLL_MULT_MASK 0x0000ff00 | ||
8857 | #define MISC_PERST_CLOCK_CTRL_PLL_MULT_ALIGN 0 | ||
8858 | #define MISC_PERST_CLOCK_CTRL_PLL_MULT_BITS 8 | ||
8859 | #define MISC_PERST_CLOCK_CTRL_PLL_MULT_SHIFT 8 | ||
8860 | |||
8861 | /* MISC_PERST :: CLOCK_CTRL :: reserved1 [07:03] */ | ||
8862 | #define MISC_PERST_CLOCK_CTRL_reserved1_MASK 0x000000f8 | ||
8863 | #define MISC_PERST_CLOCK_CTRL_reserved1_ALIGN 0 | ||
8864 | #define MISC_PERST_CLOCK_CTRL_reserved1_BITS 5 | ||
8865 | #define MISC_PERST_CLOCK_CTRL_reserved1_SHIFT 3 | ||
8866 | |||
8867 | /* MISC_PERST :: CLOCK_CTRL :: PLL_PWRDOWN [02:02] */ | ||
8868 | #define MISC_PERST_CLOCK_CTRL_PLL_PWRDOWN_MASK 0x00000004 | ||
8869 | #define MISC_PERST_CLOCK_CTRL_PLL_PWRDOWN_ALIGN 0 | ||
8870 | #define MISC_PERST_CLOCK_CTRL_PLL_PWRDOWN_BITS 1 | ||
8871 | #define MISC_PERST_CLOCK_CTRL_PLL_PWRDOWN_SHIFT 2 | ||
8872 | |||
8873 | /* MISC_PERST :: CLOCK_CTRL :: STOP_CORE_CLK [01:01] */ | ||
8874 | #define MISC_PERST_CLOCK_CTRL_STOP_CORE_CLK_MASK 0x00000002 | ||
8875 | #define MISC_PERST_CLOCK_CTRL_STOP_CORE_CLK_ALIGN 0 | ||
8876 | #define MISC_PERST_CLOCK_CTRL_STOP_CORE_CLK_BITS 1 | ||
8877 | #define MISC_PERST_CLOCK_CTRL_STOP_CORE_CLK_SHIFT 1 | ||
8878 | |||
8879 | /* MISC_PERST :: CLOCK_CTRL :: SEL_ALT_CLK [00:00] */ | ||
8880 | #define MISC_PERST_CLOCK_CTRL_SEL_ALT_CLK_MASK 0x00000001 | ||
8881 | #define MISC_PERST_CLOCK_CTRL_SEL_ALT_CLK_ALIGN 0 | ||
8882 | #define MISC_PERST_CLOCK_CTRL_SEL_ALT_CLK_BITS 1 | ||
8883 | #define MISC_PERST_CLOCK_CTRL_SEL_ALT_CLK_SHIFT 0 | ||
8884 | |||
8885 | |||
8886 | /**************************************************************************** | ||
8887 | * BCM70012_MISC_TOP_GISB_ARBITER | ||
8888 | ***************************************************************************/ | ||
8889 | /**************************************************************************** | ||
8890 | * GISB_ARBITER :: REVISION | ||
8891 | ***************************************************************************/ | ||
8892 | /* GISB_ARBITER :: REVISION :: reserved0 [31:16] */ | ||
8893 | #define GISB_ARBITER_REVISION_reserved0_MASK 0xffff0000 | ||
8894 | #define GISB_ARBITER_REVISION_reserved0_ALIGN 0 | ||
8895 | #define GISB_ARBITER_REVISION_reserved0_BITS 16 | ||
8896 | #define GISB_ARBITER_REVISION_reserved0_SHIFT 16 | ||
8897 | |||
8898 | /* GISB_ARBITER :: REVISION :: MAJOR [15:08] */ | ||
8899 | #define GISB_ARBITER_REVISION_MAJOR_MASK 0x0000ff00 | ||
8900 | #define GISB_ARBITER_REVISION_MAJOR_ALIGN 0 | ||
8901 | #define GISB_ARBITER_REVISION_MAJOR_BITS 8 | ||
8902 | #define GISB_ARBITER_REVISION_MAJOR_SHIFT 8 | ||
8903 | |||
8904 | /* GISB_ARBITER :: REVISION :: MINOR [07:00] */ | ||
8905 | #define GISB_ARBITER_REVISION_MINOR_MASK 0x000000ff | ||
8906 | #define GISB_ARBITER_REVISION_MINOR_ALIGN 0 | ||
8907 | #define GISB_ARBITER_REVISION_MINOR_BITS 8 | ||
8908 | #define GISB_ARBITER_REVISION_MINOR_SHIFT 0 | ||
8909 | |||
8910 | |||
8911 | /**************************************************************************** | ||
8912 | * GISB_ARBITER :: SCRATCH | ||
8913 | ***************************************************************************/ | ||
8914 | /* GISB_ARBITER :: SCRATCH :: scratch_bit [31:00] */ | ||
8915 | #define GISB_ARBITER_SCRATCH_scratch_bit_MASK 0xffffffff | ||
8916 | #define GISB_ARBITER_SCRATCH_scratch_bit_ALIGN 0 | ||
8917 | #define GISB_ARBITER_SCRATCH_scratch_bit_BITS 32 | ||
8918 | #define GISB_ARBITER_SCRATCH_scratch_bit_SHIFT 0 | ||
8919 | |||
8920 | |||
8921 | /**************************************************************************** | ||
8922 | * GISB_ARBITER :: REQ_MASK | ||
8923 | ***************************************************************************/ | ||
8924 | /* GISB_ARBITER :: REQ_MASK :: reserved0 [31:06] */ | ||
8925 | #define GISB_ARBITER_REQ_MASK_reserved0_MASK 0xffffffc0 | ||
8926 | #define GISB_ARBITER_REQ_MASK_reserved0_ALIGN 0 | ||
8927 | #define GISB_ARBITER_REQ_MASK_reserved0_BITS 26 | ||
8928 | #define GISB_ARBITER_REQ_MASK_reserved0_SHIFT 6 | ||
8929 | |||
8930 | /* GISB_ARBITER :: REQ_MASK :: bsp [05:05] */ | ||
8931 | #define GISB_ARBITER_REQ_MASK_bsp_MASK 0x00000020 | ||
8932 | #define GISB_ARBITER_REQ_MASK_bsp_ALIGN 0 | ||
8933 | #define GISB_ARBITER_REQ_MASK_bsp_BITS 1 | ||
8934 | #define GISB_ARBITER_REQ_MASK_bsp_SHIFT 5 | ||
8935 | #define GISB_ARBITER_REQ_MASK_bsp_UNMASK 0 | ||
8936 | |||
8937 | /* GISB_ARBITER :: REQ_MASK :: tgt [04:04] */ | ||
8938 | #define GISB_ARBITER_REQ_MASK_tgt_MASK 0x00000010 | ||
8939 | #define GISB_ARBITER_REQ_MASK_tgt_ALIGN 0 | ||
8940 | #define GISB_ARBITER_REQ_MASK_tgt_BITS 1 | ||
8941 | #define GISB_ARBITER_REQ_MASK_tgt_SHIFT 4 | ||
8942 | #define GISB_ARBITER_REQ_MASK_tgt_UNMASK 0 | ||
8943 | |||
8944 | /* GISB_ARBITER :: REQ_MASK :: aes [03:03] */ | ||
8945 | #define GISB_ARBITER_REQ_MASK_aes_MASK 0x00000008 | ||
8946 | #define GISB_ARBITER_REQ_MASK_aes_ALIGN 0 | ||
8947 | #define GISB_ARBITER_REQ_MASK_aes_BITS 1 | ||
8948 | #define GISB_ARBITER_REQ_MASK_aes_SHIFT 3 | ||
8949 | #define GISB_ARBITER_REQ_MASK_aes_UNMASK 0 | ||
8950 | |||
8951 | /* GISB_ARBITER :: REQ_MASK :: dci [02:02] */ | ||
8952 | #define GISB_ARBITER_REQ_MASK_dci_MASK 0x00000004 | ||
8953 | #define GISB_ARBITER_REQ_MASK_dci_ALIGN 0 | ||
8954 | #define GISB_ARBITER_REQ_MASK_dci_BITS 1 | ||
8955 | #define GISB_ARBITER_REQ_MASK_dci_SHIFT 2 | ||
8956 | #define GISB_ARBITER_REQ_MASK_dci_UNMASK 0 | ||
8957 | |||
8958 | /* GISB_ARBITER :: REQ_MASK :: cce [01:01] */ | ||
8959 | #define GISB_ARBITER_REQ_MASK_cce_MASK 0x00000002 | ||
8960 | #define GISB_ARBITER_REQ_MASK_cce_ALIGN 0 | ||
8961 | #define GISB_ARBITER_REQ_MASK_cce_BITS 1 | ||
8962 | #define GISB_ARBITER_REQ_MASK_cce_SHIFT 1 | ||
8963 | #define GISB_ARBITER_REQ_MASK_cce_UNMASK 0 | ||
8964 | |||
8965 | /* GISB_ARBITER :: REQ_MASK :: dbu [00:00] */ | ||
8966 | #define GISB_ARBITER_REQ_MASK_dbu_MASK 0x00000001 | ||
8967 | #define GISB_ARBITER_REQ_MASK_dbu_ALIGN 0 | ||
8968 | #define GISB_ARBITER_REQ_MASK_dbu_BITS 1 | ||
8969 | #define GISB_ARBITER_REQ_MASK_dbu_SHIFT 0 | ||
8970 | #define GISB_ARBITER_REQ_MASK_dbu_UNMASK 0 | ||
8971 | |||
8972 | |||
8973 | /**************************************************************************** | ||
8974 | * GISB_ARBITER :: TIMER | ||
8975 | ***************************************************************************/ | ||
8976 | /* GISB_ARBITER :: TIMER :: hi_count [31:16] */ | ||
8977 | #define GISB_ARBITER_TIMER_hi_count_MASK 0xffff0000 | ||
8978 | #define GISB_ARBITER_TIMER_hi_count_ALIGN 0 | ||
8979 | #define GISB_ARBITER_TIMER_hi_count_BITS 16 | ||
8980 | #define GISB_ARBITER_TIMER_hi_count_SHIFT 16 | ||
8981 | |||
8982 | /* GISB_ARBITER :: TIMER :: lo_count [15:00] */ | ||
8983 | #define GISB_ARBITER_TIMER_lo_count_MASK 0x0000ffff | ||
8984 | #define GISB_ARBITER_TIMER_lo_count_ALIGN 0 | ||
8985 | #define GISB_ARBITER_TIMER_lo_count_BITS 16 | ||
8986 | #define GISB_ARBITER_TIMER_lo_count_SHIFT 0 | ||
8987 | |||
8988 | |||
8989 | /**************************************************************************** | ||
8990 | * GISB_ARBITER :: BP_CTRL | ||
8991 | ***************************************************************************/ | ||
8992 | /* GISB_ARBITER :: BP_CTRL :: reserved0 [31:02] */ | ||
8993 | #define GISB_ARBITER_BP_CTRL_reserved0_MASK 0xfffffffc | ||
8994 | #define GISB_ARBITER_BP_CTRL_reserved0_ALIGN 0 | ||
8995 | #define GISB_ARBITER_BP_CTRL_reserved0_BITS 30 | ||
8996 | #define GISB_ARBITER_BP_CTRL_reserved0_SHIFT 2 | ||
8997 | |||
8998 | /* GISB_ARBITER :: BP_CTRL :: breakpoint_tea [01:01] */ | ||
8999 | #define GISB_ARBITER_BP_CTRL_breakpoint_tea_MASK 0x00000002 | ||
9000 | #define GISB_ARBITER_BP_CTRL_breakpoint_tea_ALIGN 0 | ||
9001 | #define GISB_ARBITER_BP_CTRL_breakpoint_tea_BITS 1 | ||
9002 | #define GISB_ARBITER_BP_CTRL_breakpoint_tea_SHIFT 1 | ||
9003 | #define GISB_ARBITER_BP_CTRL_breakpoint_tea_DISABLE 0 | ||
9004 | #define GISB_ARBITER_BP_CTRL_breakpoint_tea_ENABLE 1 | ||
9005 | |||
9006 | /* GISB_ARBITER :: BP_CTRL :: repeat_capture [00:00] */ | ||
9007 | #define GISB_ARBITER_BP_CTRL_repeat_capture_MASK 0x00000001 | ||
9008 | #define GISB_ARBITER_BP_CTRL_repeat_capture_ALIGN 0 | ||
9009 | #define GISB_ARBITER_BP_CTRL_repeat_capture_BITS 1 | ||
9010 | #define GISB_ARBITER_BP_CTRL_repeat_capture_SHIFT 0 | ||
9011 | #define GISB_ARBITER_BP_CTRL_repeat_capture_DISABLE 0 | ||
9012 | #define GISB_ARBITER_BP_CTRL_repeat_capture_ENABLE 1 | ||
9013 | |||
9014 | |||
9015 | /**************************************************************************** | ||
9016 | * GISB_ARBITER :: BP_CAP_CLR | ||
9017 | ***************************************************************************/ | ||
9018 | /* GISB_ARBITER :: BP_CAP_CLR :: reserved0 [31:01] */ | ||
9019 | #define GISB_ARBITER_BP_CAP_CLR_reserved0_MASK 0xfffffffe | ||
9020 | #define GISB_ARBITER_BP_CAP_CLR_reserved0_ALIGN 0 | ||
9021 | #define GISB_ARBITER_BP_CAP_CLR_reserved0_BITS 31 | ||
9022 | #define GISB_ARBITER_BP_CAP_CLR_reserved0_SHIFT 1 | ||
9023 | |||
9024 | /* GISB_ARBITER :: BP_CAP_CLR :: clear [00:00] */ | ||
9025 | #define GISB_ARBITER_BP_CAP_CLR_clear_MASK 0x00000001 | ||
9026 | #define GISB_ARBITER_BP_CAP_CLR_clear_ALIGN 0 | ||
9027 | #define GISB_ARBITER_BP_CAP_CLR_clear_BITS 1 | ||
9028 | #define GISB_ARBITER_BP_CAP_CLR_clear_SHIFT 0 | ||
9029 | |||
9030 | |||
9031 | /**************************************************************************** | ||
9032 | * GISB_ARBITER :: BP_START_ADDR_0 | ||
9033 | ***************************************************************************/ | ||
9034 | /* GISB_ARBITER :: BP_START_ADDR_0 :: start [31:00] */ | ||
9035 | #define GISB_ARBITER_BP_START_ADDR_0_start_MASK 0xffffffff | ||
9036 | #define GISB_ARBITER_BP_START_ADDR_0_start_ALIGN 0 | ||
9037 | #define GISB_ARBITER_BP_START_ADDR_0_start_BITS 32 | ||
9038 | #define GISB_ARBITER_BP_START_ADDR_0_start_SHIFT 0 | ||
9039 | |||
9040 | |||
9041 | /**************************************************************************** | ||
9042 | * GISB_ARBITER :: BP_END_ADDR_0 | ||
9043 | ***************************************************************************/ | ||
9044 | /* GISB_ARBITER :: BP_END_ADDR_0 :: end [31:00] */ | ||
9045 | #define GISB_ARBITER_BP_END_ADDR_0_end_MASK 0xffffffff | ||
9046 | #define GISB_ARBITER_BP_END_ADDR_0_end_ALIGN 0 | ||
9047 | #define GISB_ARBITER_BP_END_ADDR_0_end_BITS 32 | ||
9048 | #define GISB_ARBITER_BP_END_ADDR_0_end_SHIFT 0 | ||
9049 | |||
9050 | |||
9051 | /**************************************************************************** | ||
9052 | * GISB_ARBITER :: BP_READ_0 | ||
9053 | ***************************************************************************/ | ||
9054 | /* GISB_ARBITER :: BP_READ_0 :: reserved0 [31:06] */ | ||
9055 | #define GISB_ARBITER_BP_READ_0_reserved0_MASK 0xffffffc0 | ||
9056 | #define GISB_ARBITER_BP_READ_0_reserved0_ALIGN 0 | ||
9057 | #define GISB_ARBITER_BP_READ_0_reserved0_BITS 26 | ||
9058 | #define GISB_ARBITER_BP_READ_0_reserved0_SHIFT 6 | ||
9059 | |||
9060 | /* GISB_ARBITER :: BP_READ_0 :: bsp [05:05] */ | ||
9061 | #define GISB_ARBITER_BP_READ_0_bsp_MASK 0x00000020 | ||
9062 | #define GISB_ARBITER_BP_READ_0_bsp_ALIGN 0 | ||
9063 | #define GISB_ARBITER_BP_READ_0_bsp_BITS 1 | ||
9064 | #define GISB_ARBITER_BP_READ_0_bsp_SHIFT 5 | ||
9065 | #define GISB_ARBITER_BP_READ_0_bsp_DISABLE 0 | ||
9066 | #define GISB_ARBITER_BP_READ_0_bsp_ENABLE 1 | ||
9067 | |||
9068 | /* GISB_ARBITER :: BP_READ_0 :: aes [04:04] */ | ||
9069 | #define GISB_ARBITER_BP_READ_0_aes_MASK 0x00000010 | ||
9070 | #define GISB_ARBITER_BP_READ_0_aes_ALIGN 0 | ||
9071 | #define GISB_ARBITER_BP_READ_0_aes_BITS 1 | ||
9072 | #define GISB_ARBITER_BP_READ_0_aes_SHIFT 4 | ||
9073 | #define GISB_ARBITER_BP_READ_0_aes_DISABLE 0 | ||
9074 | #define GISB_ARBITER_BP_READ_0_aes_ENABLE 1 | ||
9075 | |||
9076 | /* GISB_ARBITER :: BP_READ_0 :: fve [03:03] */ | ||
9077 | #define GISB_ARBITER_BP_READ_0_fve_MASK 0x00000008 | ||
9078 | #define GISB_ARBITER_BP_READ_0_fve_ALIGN 0 | ||
9079 | #define GISB_ARBITER_BP_READ_0_fve_BITS 1 | ||
9080 | #define GISB_ARBITER_BP_READ_0_fve_SHIFT 3 | ||
9081 | #define GISB_ARBITER_BP_READ_0_fve_DISABLE 0 | ||
9082 | #define GISB_ARBITER_BP_READ_0_fve_ENABLE 1 | ||
9083 | |||
9084 | /* GISB_ARBITER :: BP_READ_0 :: tgt [02:02] */ | ||
9085 | #define GISB_ARBITER_BP_READ_0_tgt_MASK 0x00000004 | ||
9086 | #define GISB_ARBITER_BP_READ_0_tgt_ALIGN 0 | ||
9087 | #define GISB_ARBITER_BP_READ_0_tgt_BITS 1 | ||
9088 | #define GISB_ARBITER_BP_READ_0_tgt_SHIFT 2 | ||
9089 | #define GISB_ARBITER_BP_READ_0_tgt_DISABLE 0 | ||
9090 | #define GISB_ARBITER_BP_READ_0_tgt_ENABLE 1 | ||
9091 | |||
9092 | /* GISB_ARBITER :: BP_READ_0 :: dbu [01:01] */ | ||
9093 | #define GISB_ARBITER_BP_READ_0_dbu_MASK 0x00000002 | ||
9094 | #define GISB_ARBITER_BP_READ_0_dbu_ALIGN 0 | ||
9095 | #define GISB_ARBITER_BP_READ_0_dbu_BITS 1 | ||
9096 | #define GISB_ARBITER_BP_READ_0_dbu_SHIFT 1 | ||
9097 | #define GISB_ARBITER_BP_READ_0_dbu_DISABLE 0 | ||
9098 | #define GISB_ARBITER_BP_READ_0_dbu_ENABLE 1 | ||
9099 | |||
9100 | /* GISB_ARBITER :: BP_READ_0 :: cce [00:00] */ | ||
9101 | #define GISB_ARBITER_BP_READ_0_cce_MASK 0x00000001 | ||
9102 | #define GISB_ARBITER_BP_READ_0_cce_ALIGN 0 | ||
9103 | #define GISB_ARBITER_BP_READ_0_cce_BITS 1 | ||
9104 | #define GISB_ARBITER_BP_READ_0_cce_SHIFT 0 | ||
9105 | #define GISB_ARBITER_BP_READ_0_cce_DISABLE 0 | ||
9106 | #define GISB_ARBITER_BP_READ_0_cce_ENABLE 1 | ||
9107 | |||
9108 | |||
9109 | /**************************************************************************** | ||
9110 | * GISB_ARBITER :: BP_WRITE_0 | ||
9111 | ***************************************************************************/ | ||
9112 | /* GISB_ARBITER :: BP_WRITE_0 :: reserved0 [31:06] */ | ||
9113 | #define GISB_ARBITER_BP_WRITE_0_reserved0_MASK 0xffffffc0 | ||
9114 | #define GISB_ARBITER_BP_WRITE_0_reserved0_ALIGN 0 | ||
9115 | #define GISB_ARBITER_BP_WRITE_0_reserved0_BITS 26 | ||
9116 | #define GISB_ARBITER_BP_WRITE_0_reserved0_SHIFT 6 | ||
9117 | |||
9118 | /* GISB_ARBITER :: BP_WRITE_0 :: bsp [05:05] */ | ||
9119 | #define GISB_ARBITER_BP_WRITE_0_bsp_MASK 0x00000020 | ||
9120 | #define GISB_ARBITER_BP_WRITE_0_bsp_ALIGN 0 | ||
9121 | #define GISB_ARBITER_BP_WRITE_0_bsp_BITS 1 | ||
9122 | #define GISB_ARBITER_BP_WRITE_0_bsp_SHIFT 5 | ||
9123 | #define GISB_ARBITER_BP_WRITE_0_bsp_DISABLE 0 | ||
9124 | #define GISB_ARBITER_BP_WRITE_0_bsp_ENABLE 1 | ||
9125 | |||
9126 | /* GISB_ARBITER :: BP_WRITE_0 :: aes [04:04] */ | ||
9127 | #define GISB_ARBITER_BP_WRITE_0_aes_MASK 0x00000010 | ||
9128 | #define GISB_ARBITER_BP_WRITE_0_aes_ALIGN 0 | ||
9129 | #define GISB_ARBITER_BP_WRITE_0_aes_BITS 1 | ||
9130 | #define GISB_ARBITER_BP_WRITE_0_aes_SHIFT 4 | ||
9131 | #define GISB_ARBITER_BP_WRITE_0_aes_DISABLE 0 | ||
9132 | #define GISB_ARBITER_BP_WRITE_0_aes_ENABLE 1 | ||
9133 | |||
9134 | /* GISB_ARBITER :: BP_WRITE_0 :: fve [03:03] */ | ||
9135 | #define GISB_ARBITER_BP_WRITE_0_fve_MASK 0x00000008 | ||
9136 | #define GISB_ARBITER_BP_WRITE_0_fve_ALIGN 0 | ||
9137 | #define GISB_ARBITER_BP_WRITE_0_fve_BITS 1 | ||
9138 | #define GISB_ARBITER_BP_WRITE_0_fve_SHIFT 3 | ||
9139 | #define GISB_ARBITER_BP_WRITE_0_fve_DISABLE 0 | ||
9140 | #define GISB_ARBITER_BP_WRITE_0_fve_ENABLE 1 | ||
9141 | |||
9142 | /* GISB_ARBITER :: BP_WRITE_0 :: tgt [02:02] */ | ||
9143 | #define GISB_ARBITER_BP_WRITE_0_tgt_MASK 0x00000004 | ||
9144 | #define GISB_ARBITER_BP_WRITE_0_tgt_ALIGN 0 | ||
9145 | #define GISB_ARBITER_BP_WRITE_0_tgt_BITS 1 | ||
9146 | #define GISB_ARBITER_BP_WRITE_0_tgt_SHIFT 2 | ||
9147 | #define GISB_ARBITER_BP_WRITE_0_tgt_DISABLE 0 | ||
9148 | #define GISB_ARBITER_BP_WRITE_0_tgt_ENABLE 1 | ||
9149 | |||
9150 | /* GISB_ARBITER :: BP_WRITE_0 :: dbu [01:01] */ | ||
9151 | #define GISB_ARBITER_BP_WRITE_0_dbu_MASK 0x00000002 | ||
9152 | #define GISB_ARBITER_BP_WRITE_0_dbu_ALIGN 0 | ||
9153 | #define GISB_ARBITER_BP_WRITE_0_dbu_BITS 1 | ||
9154 | #define GISB_ARBITER_BP_WRITE_0_dbu_SHIFT 1 | ||
9155 | #define GISB_ARBITER_BP_WRITE_0_dbu_DISABLE 0 | ||
9156 | #define GISB_ARBITER_BP_WRITE_0_dbu_ENABLE 1 | ||
9157 | |||
9158 | /* GISB_ARBITER :: BP_WRITE_0 :: cce [00:00] */ | ||
9159 | #define GISB_ARBITER_BP_WRITE_0_cce_MASK 0x00000001 | ||
9160 | #define GISB_ARBITER_BP_WRITE_0_cce_ALIGN 0 | ||
9161 | #define GISB_ARBITER_BP_WRITE_0_cce_BITS 1 | ||
9162 | #define GISB_ARBITER_BP_WRITE_0_cce_SHIFT 0 | ||
9163 | #define GISB_ARBITER_BP_WRITE_0_cce_DISABLE 0 | ||
9164 | #define GISB_ARBITER_BP_WRITE_0_cce_ENABLE 1 | ||
9165 | |||
9166 | |||
9167 | /**************************************************************************** | ||
9168 | * GISB_ARBITER :: BP_ENABLE_0 | ||
9169 | ***************************************************************************/ | ||
9170 | /* GISB_ARBITER :: BP_ENABLE_0 :: reserved0 [31:03] */ | ||
9171 | #define GISB_ARBITER_BP_ENABLE_0_reserved0_MASK 0xfffffff8 | ||
9172 | #define GISB_ARBITER_BP_ENABLE_0_reserved0_ALIGN 0 | ||
9173 | #define GISB_ARBITER_BP_ENABLE_0_reserved0_BITS 29 | ||
9174 | #define GISB_ARBITER_BP_ENABLE_0_reserved0_SHIFT 3 | ||
9175 | |||
9176 | /* GISB_ARBITER :: BP_ENABLE_0 :: block [02:02] */ | ||
9177 | #define GISB_ARBITER_BP_ENABLE_0_block_MASK 0x00000004 | ||
9178 | #define GISB_ARBITER_BP_ENABLE_0_block_ALIGN 0 | ||
9179 | #define GISB_ARBITER_BP_ENABLE_0_block_BITS 1 | ||
9180 | #define GISB_ARBITER_BP_ENABLE_0_block_SHIFT 2 | ||
9181 | #define GISB_ARBITER_BP_ENABLE_0_block_DISABLE 0 | ||
9182 | #define GISB_ARBITER_BP_ENABLE_0_block_ENABLE 1 | ||
9183 | |||
9184 | /* GISB_ARBITER :: BP_ENABLE_0 :: address [01:01] */ | ||
9185 | #define GISB_ARBITER_BP_ENABLE_0_address_MASK 0x00000002 | ||
9186 | #define GISB_ARBITER_BP_ENABLE_0_address_ALIGN 0 | ||
9187 | #define GISB_ARBITER_BP_ENABLE_0_address_BITS 1 | ||
9188 | #define GISB_ARBITER_BP_ENABLE_0_address_SHIFT 1 | ||
9189 | #define GISB_ARBITER_BP_ENABLE_0_address_DISABLE 0 | ||
9190 | #define GISB_ARBITER_BP_ENABLE_0_address_ENABLE 1 | ||
9191 | |||
9192 | /* GISB_ARBITER :: BP_ENABLE_0 :: access [00:00] */ | ||
9193 | #define GISB_ARBITER_BP_ENABLE_0_access_MASK 0x00000001 | ||
9194 | #define GISB_ARBITER_BP_ENABLE_0_access_ALIGN 0 | ||
9195 | #define GISB_ARBITER_BP_ENABLE_0_access_BITS 1 | ||
9196 | #define GISB_ARBITER_BP_ENABLE_0_access_SHIFT 0 | ||
9197 | #define GISB_ARBITER_BP_ENABLE_0_access_DISABLE 0 | ||
9198 | #define GISB_ARBITER_BP_ENABLE_0_access_ENABLE 1 | ||
9199 | |||
9200 | |||
9201 | /**************************************************************************** | ||
9202 | * GISB_ARBITER :: BP_START_ADDR_1 | ||
9203 | ***************************************************************************/ | ||
9204 | /* GISB_ARBITER :: BP_START_ADDR_1 :: start [31:00] */ | ||
9205 | #define GISB_ARBITER_BP_START_ADDR_1_start_MASK 0xffffffff | ||
9206 | #define GISB_ARBITER_BP_START_ADDR_1_start_ALIGN 0 | ||
9207 | #define GISB_ARBITER_BP_START_ADDR_1_start_BITS 32 | ||
9208 | #define GISB_ARBITER_BP_START_ADDR_1_start_SHIFT 0 | ||
9209 | |||
9210 | |||
9211 | /**************************************************************************** | ||
9212 | * GISB_ARBITER :: BP_END_ADDR_1 | ||
9213 | ***************************************************************************/ | ||
9214 | /* GISB_ARBITER :: BP_END_ADDR_1 :: end [31:00] */ | ||
9215 | #define GISB_ARBITER_BP_END_ADDR_1_end_MASK 0xffffffff | ||
9216 | #define GISB_ARBITER_BP_END_ADDR_1_end_ALIGN 0 | ||
9217 | #define GISB_ARBITER_BP_END_ADDR_1_end_BITS 32 | ||
9218 | #define GISB_ARBITER_BP_END_ADDR_1_end_SHIFT 0 | ||
9219 | |||
9220 | |||
9221 | /**************************************************************************** | ||
9222 | * GISB_ARBITER :: BP_READ_1 | ||
9223 | ***************************************************************************/ | ||
9224 | /* GISB_ARBITER :: BP_READ_1 :: reserved0 [31:06] */ | ||
9225 | #define GISB_ARBITER_BP_READ_1_reserved0_MASK 0xffffffc0 | ||
9226 | #define GISB_ARBITER_BP_READ_1_reserved0_ALIGN 0 | ||
9227 | #define GISB_ARBITER_BP_READ_1_reserved0_BITS 26 | ||
9228 | #define GISB_ARBITER_BP_READ_1_reserved0_SHIFT 6 | ||
9229 | |||
9230 | /* GISB_ARBITER :: BP_READ_1 :: bsp [05:05] */ | ||
9231 | #define GISB_ARBITER_BP_READ_1_bsp_MASK 0x00000020 | ||
9232 | #define GISB_ARBITER_BP_READ_1_bsp_ALIGN 0 | ||
9233 | #define GISB_ARBITER_BP_READ_1_bsp_BITS 1 | ||
9234 | #define GISB_ARBITER_BP_READ_1_bsp_SHIFT 5 | ||
9235 | #define GISB_ARBITER_BP_READ_1_bsp_DISABLE 0 | ||
9236 | #define GISB_ARBITER_BP_READ_1_bsp_ENABLE 1 | ||
9237 | |||
9238 | /* GISB_ARBITER :: BP_READ_1 :: aes [04:04] */ | ||
9239 | #define GISB_ARBITER_BP_READ_1_aes_MASK 0x00000010 | ||
9240 | #define GISB_ARBITER_BP_READ_1_aes_ALIGN 0 | ||
9241 | #define GISB_ARBITER_BP_READ_1_aes_BITS 1 | ||
9242 | #define GISB_ARBITER_BP_READ_1_aes_SHIFT 4 | ||
9243 | #define GISB_ARBITER_BP_READ_1_aes_DISABLE 0 | ||
9244 | #define GISB_ARBITER_BP_READ_1_aes_ENABLE 1 | ||
9245 | |||
9246 | /* GISB_ARBITER :: BP_READ_1 :: fve [03:03] */ | ||
9247 | #define GISB_ARBITER_BP_READ_1_fve_MASK 0x00000008 | ||
9248 | #define GISB_ARBITER_BP_READ_1_fve_ALIGN 0 | ||
9249 | #define GISB_ARBITER_BP_READ_1_fve_BITS 1 | ||
9250 | #define GISB_ARBITER_BP_READ_1_fve_SHIFT 3 | ||
9251 | #define GISB_ARBITER_BP_READ_1_fve_DISABLE 0 | ||
9252 | #define GISB_ARBITER_BP_READ_1_fve_ENABLE 1 | ||
9253 | |||
9254 | /* GISB_ARBITER :: BP_READ_1 :: tgt [02:02] */ | ||
9255 | #define GISB_ARBITER_BP_READ_1_tgt_MASK 0x00000004 | ||
9256 | #define GISB_ARBITER_BP_READ_1_tgt_ALIGN 0 | ||
9257 | #define GISB_ARBITER_BP_READ_1_tgt_BITS 1 | ||
9258 | #define GISB_ARBITER_BP_READ_1_tgt_SHIFT 2 | ||
9259 | #define GISB_ARBITER_BP_READ_1_tgt_DISABLE 0 | ||
9260 | #define GISB_ARBITER_BP_READ_1_tgt_ENABLE 1 | ||
9261 | |||
9262 | /* GISB_ARBITER :: BP_READ_1 :: dbu [01:01] */ | ||
9263 | #define GISB_ARBITER_BP_READ_1_dbu_MASK 0x00000002 | ||
9264 | #define GISB_ARBITER_BP_READ_1_dbu_ALIGN 0 | ||
9265 | #define GISB_ARBITER_BP_READ_1_dbu_BITS 1 | ||
9266 | #define GISB_ARBITER_BP_READ_1_dbu_SHIFT 1 | ||
9267 | #define GISB_ARBITER_BP_READ_1_dbu_DISABLE 0 | ||
9268 | #define GISB_ARBITER_BP_READ_1_dbu_ENABLE 1 | ||
9269 | |||
9270 | /* GISB_ARBITER :: BP_READ_1 :: cce [00:00] */ | ||
9271 | #define GISB_ARBITER_BP_READ_1_cce_MASK 0x00000001 | ||
9272 | #define GISB_ARBITER_BP_READ_1_cce_ALIGN 0 | ||
9273 | #define GISB_ARBITER_BP_READ_1_cce_BITS 1 | ||
9274 | #define GISB_ARBITER_BP_READ_1_cce_SHIFT 0 | ||
9275 | #define GISB_ARBITER_BP_READ_1_cce_DISABLE 0 | ||
9276 | #define GISB_ARBITER_BP_READ_1_cce_ENABLE 1 | ||
9277 | |||
9278 | |||
9279 | /**************************************************************************** | ||
9280 | * GISB_ARBITER :: BP_WRITE_1 | ||
9281 | ***************************************************************************/ | ||
9282 | /* GISB_ARBITER :: BP_WRITE_1 :: reserved0 [31:06] */ | ||
9283 | #define GISB_ARBITER_BP_WRITE_1_reserved0_MASK 0xffffffc0 | ||
9284 | #define GISB_ARBITER_BP_WRITE_1_reserved0_ALIGN 0 | ||
9285 | #define GISB_ARBITER_BP_WRITE_1_reserved0_BITS 26 | ||
9286 | #define GISB_ARBITER_BP_WRITE_1_reserved0_SHIFT 6 | ||
9287 | |||
9288 | /* GISB_ARBITER :: BP_WRITE_1 :: bsp [05:05] */ | ||
9289 | #define GISB_ARBITER_BP_WRITE_1_bsp_MASK 0x00000020 | ||
9290 | #define GISB_ARBITER_BP_WRITE_1_bsp_ALIGN 0 | ||
9291 | #define GISB_ARBITER_BP_WRITE_1_bsp_BITS 1 | ||
9292 | #define GISB_ARBITER_BP_WRITE_1_bsp_SHIFT 5 | ||
9293 | #define GISB_ARBITER_BP_WRITE_1_bsp_DISABLE 0 | ||
9294 | #define GISB_ARBITER_BP_WRITE_1_bsp_ENABLE 1 | ||
9295 | |||
9296 | /* GISB_ARBITER :: BP_WRITE_1 :: aes [04:04] */ | ||
9297 | #define GISB_ARBITER_BP_WRITE_1_aes_MASK 0x00000010 | ||
9298 | #define GISB_ARBITER_BP_WRITE_1_aes_ALIGN 0 | ||
9299 | #define GISB_ARBITER_BP_WRITE_1_aes_BITS 1 | ||
9300 | #define GISB_ARBITER_BP_WRITE_1_aes_SHIFT 4 | ||
9301 | #define GISB_ARBITER_BP_WRITE_1_aes_DISABLE 0 | ||
9302 | #define GISB_ARBITER_BP_WRITE_1_aes_ENABLE 1 | ||
9303 | |||
9304 | /* GISB_ARBITER :: BP_WRITE_1 :: fve [03:03] */ | ||
9305 | #define GISB_ARBITER_BP_WRITE_1_fve_MASK 0x00000008 | ||
9306 | #define GISB_ARBITER_BP_WRITE_1_fve_ALIGN 0 | ||
9307 | #define GISB_ARBITER_BP_WRITE_1_fve_BITS 1 | ||
9308 | #define GISB_ARBITER_BP_WRITE_1_fve_SHIFT 3 | ||
9309 | #define GISB_ARBITER_BP_WRITE_1_fve_DISABLE 0 | ||
9310 | #define GISB_ARBITER_BP_WRITE_1_fve_ENABLE 1 | ||
9311 | |||
9312 | /* GISB_ARBITER :: BP_WRITE_1 :: tgt [02:02] */ | ||
9313 | #define GISB_ARBITER_BP_WRITE_1_tgt_MASK 0x00000004 | ||
9314 | #define GISB_ARBITER_BP_WRITE_1_tgt_ALIGN 0 | ||
9315 | #define GISB_ARBITER_BP_WRITE_1_tgt_BITS 1 | ||
9316 | #define GISB_ARBITER_BP_WRITE_1_tgt_SHIFT 2 | ||
9317 | #define GISB_ARBITER_BP_WRITE_1_tgt_DISABLE 0 | ||
9318 | #define GISB_ARBITER_BP_WRITE_1_tgt_ENABLE 1 | ||
9319 | |||
9320 | /* GISB_ARBITER :: BP_WRITE_1 :: dbu [01:01] */ | ||
9321 | #define GISB_ARBITER_BP_WRITE_1_dbu_MASK 0x00000002 | ||
9322 | #define GISB_ARBITER_BP_WRITE_1_dbu_ALIGN 0 | ||
9323 | #define GISB_ARBITER_BP_WRITE_1_dbu_BITS 1 | ||
9324 | #define GISB_ARBITER_BP_WRITE_1_dbu_SHIFT 1 | ||
9325 | #define GISB_ARBITER_BP_WRITE_1_dbu_DISABLE 0 | ||
9326 | #define GISB_ARBITER_BP_WRITE_1_dbu_ENABLE 1 | ||
9327 | |||
9328 | /* GISB_ARBITER :: BP_WRITE_1 :: cce [00:00] */ | ||
9329 | #define GISB_ARBITER_BP_WRITE_1_cce_MASK 0x00000001 | ||
9330 | #define GISB_ARBITER_BP_WRITE_1_cce_ALIGN 0 | ||
9331 | #define GISB_ARBITER_BP_WRITE_1_cce_BITS 1 | ||
9332 | #define GISB_ARBITER_BP_WRITE_1_cce_SHIFT 0 | ||
9333 | #define GISB_ARBITER_BP_WRITE_1_cce_DISABLE 0 | ||
9334 | #define GISB_ARBITER_BP_WRITE_1_cce_ENABLE 1 | ||
9335 | |||
9336 | |||
9337 | /**************************************************************************** | ||
9338 | * GISB_ARBITER :: BP_ENABLE_1 | ||
9339 | ***************************************************************************/ | ||
9340 | /* GISB_ARBITER :: BP_ENABLE_1 :: reserved0 [31:03] */ | ||
9341 | #define GISB_ARBITER_BP_ENABLE_1_reserved0_MASK 0xfffffff8 | ||
9342 | #define GISB_ARBITER_BP_ENABLE_1_reserved0_ALIGN 0 | ||
9343 | #define GISB_ARBITER_BP_ENABLE_1_reserved0_BITS 29 | ||
9344 | #define GISB_ARBITER_BP_ENABLE_1_reserved0_SHIFT 3 | ||
9345 | |||
9346 | /* GISB_ARBITER :: BP_ENABLE_1 :: block [02:02] */ | ||
9347 | #define GISB_ARBITER_BP_ENABLE_1_block_MASK 0x00000004 | ||
9348 | #define GISB_ARBITER_BP_ENABLE_1_block_ALIGN 0 | ||
9349 | #define GISB_ARBITER_BP_ENABLE_1_block_BITS 1 | ||
9350 | #define GISB_ARBITER_BP_ENABLE_1_block_SHIFT 2 | ||
9351 | #define GISB_ARBITER_BP_ENABLE_1_block_DISABLE 0 | ||
9352 | #define GISB_ARBITER_BP_ENABLE_1_block_ENABLE 1 | ||
9353 | |||
9354 | /* GISB_ARBITER :: BP_ENABLE_1 :: address [01:01] */ | ||
9355 | #define GISB_ARBITER_BP_ENABLE_1_address_MASK 0x00000002 | ||
9356 | #define GISB_ARBITER_BP_ENABLE_1_address_ALIGN 0 | ||
9357 | #define GISB_ARBITER_BP_ENABLE_1_address_BITS 1 | ||
9358 | #define GISB_ARBITER_BP_ENABLE_1_address_SHIFT 1 | ||
9359 | #define GISB_ARBITER_BP_ENABLE_1_address_DISABLE 0 | ||
9360 | #define GISB_ARBITER_BP_ENABLE_1_address_ENABLE 1 | ||
9361 | |||
9362 | /* GISB_ARBITER :: BP_ENABLE_1 :: access [00:00] */ | ||
9363 | #define GISB_ARBITER_BP_ENABLE_1_access_MASK 0x00000001 | ||
9364 | #define GISB_ARBITER_BP_ENABLE_1_access_ALIGN 0 | ||
9365 | #define GISB_ARBITER_BP_ENABLE_1_access_BITS 1 | ||
9366 | #define GISB_ARBITER_BP_ENABLE_1_access_SHIFT 0 | ||
9367 | #define GISB_ARBITER_BP_ENABLE_1_access_DISABLE 0 | ||
9368 | #define GISB_ARBITER_BP_ENABLE_1_access_ENABLE 1 | ||
9369 | |||
9370 | |||
9371 | /**************************************************************************** | ||
9372 | * GISB_ARBITER :: BP_START_ADDR_2 | ||
9373 | ***************************************************************************/ | ||
9374 | /* GISB_ARBITER :: BP_START_ADDR_2 :: start [31:00] */ | ||
9375 | #define GISB_ARBITER_BP_START_ADDR_2_start_MASK 0xffffffff | ||
9376 | #define GISB_ARBITER_BP_START_ADDR_2_start_ALIGN 0 | ||
9377 | #define GISB_ARBITER_BP_START_ADDR_2_start_BITS 32 | ||
9378 | #define GISB_ARBITER_BP_START_ADDR_2_start_SHIFT 0 | ||
9379 | |||
9380 | |||
9381 | /**************************************************************************** | ||
9382 | * GISB_ARBITER :: BP_END_ADDR_2 | ||
9383 | ***************************************************************************/ | ||
9384 | /* GISB_ARBITER :: BP_END_ADDR_2 :: end [31:00] */ | ||
9385 | #define GISB_ARBITER_BP_END_ADDR_2_end_MASK 0xffffffff | ||
9386 | #define GISB_ARBITER_BP_END_ADDR_2_end_ALIGN 0 | ||
9387 | #define GISB_ARBITER_BP_END_ADDR_2_end_BITS 32 | ||
9388 | #define GISB_ARBITER_BP_END_ADDR_2_end_SHIFT 0 | ||
9389 | |||
9390 | |||
9391 | /**************************************************************************** | ||
9392 | * GISB_ARBITER :: BP_READ_2 | ||
9393 | ***************************************************************************/ | ||
9394 | /* GISB_ARBITER :: BP_READ_2 :: reserved0 [31:06] */ | ||
9395 | #define GISB_ARBITER_BP_READ_2_reserved0_MASK 0xffffffc0 | ||
9396 | #define GISB_ARBITER_BP_READ_2_reserved0_ALIGN 0 | ||
9397 | #define GISB_ARBITER_BP_READ_2_reserved0_BITS 26 | ||
9398 | #define GISB_ARBITER_BP_READ_2_reserved0_SHIFT 6 | ||
9399 | |||
9400 | /* GISB_ARBITER :: BP_READ_2 :: bsp [05:05] */ | ||
9401 | #define GISB_ARBITER_BP_READ_2_bsp_MASK 0x00000020 | ||
9402 | #define GISB_ARBITER_BP_READ_2_bsp_ALIGN 0 | ||
9403 | #define GISB_ARBITER_BP_READ_2_bsp_BITS 1 | ||
9404 | #define GISB_ARBITER_BP_READ_2_bsp_SHIFT 5 | ||
9405 | #define GISB_ARBITER_BP_READ_2_bsp_DISABLE 0 | ||
9406 | #define GISB_ARBITER_BP_READ_2_bsp_ENABLE 1 | ||
9407 | |||
9408 | /* GISB_ARBITER :: BP_READ_2 :: aes [04:04] */ | ||
9409 | #define GISB_ARBITER_BP_READ_2_aes_MASK 0x00000010 | ||
9410 | #define GISB_ARBITER_BP_READ_2_aes_ALIGN 0 | ||
9411 | #define GISB_ARBITER_BP_READ_2_aes_BITS 1 | ||
9412 | #define GISB_ARBITER_BP_READ_2_aes_SHIFT 4 | ||
9413 | #define GISB_ARBITER_BP_READ_2_aes_DISABLE 0 | ||
9414 | #define GISB_ARBITER_BP_READ_2_aes_ENABLE 1 | ||
9415 | |||
9416 | /* GISB_ARBITER :: BP_READ_2 :: fve [03:03] */ | ||
9417 | #define GISB_ARBITER_BP_READ_2_fve_MASK 0x00000008 | ||
9418 | #define GISB_ARBITER_BP_READ_2_fve_ALIGN 0 | ||
9419 | #define GISB_ARBITER_BP_READ_2_fve_BITS 1 | ||
9420 | #define GISB_ARBITER_BP_READ_2_fve_SHIFT 3 | ||
9421 | #define GISB_ARBITER_BP_READ_2_fve_DISABLE 0 | ||
9422 | #define GISB_ARBITER_BP_READ_2_fve_ENABLE 1 | ||
9423 | |||
9424 | /* GISB_ARBITER :: BP_READ_2 :: tgt [02:02] */ | ||
9425 | #define GISB_ARBITER_BP_READ_2_tgt_MASK 0x00000004 | ||
9426 | #define GISB_ARBITER_BP_READ_2_tgt_ALIGN 0 | ||
9427 | #define GISB_ARBITER_BP_READ_2_tgt_BITS 1 | ||
9428 | #define GISB_ARBITER_BP_READ_2_tgt_SHIFT 2 | ||
9429 | #define GISB_ARBITER_BP_READ_2_tgt_DISABLE 0 | ||
9430 | #define GISB_ARBITER_BP_READ_2_tgt_ENABLE 1 | ||
9431 | |||
9432 | /* GISB_ARBITER :: BP_READ_2 :: dbu [01:01] */ | ||
9433 | #define GISB_ARBITER_BP_READ_2_dbu_MASK 0x00000002 | ||
9434 | #define GISB_ARBITER_BP_READ_2_dbu_ALIGN 0 | ||
9435 | #define GISB_ARBITER_BP_READ_2_dbu_BITS 1 | ||
9436 | #define GISB_ARBITER_BP_READ_2_dbu_SHIFT 1 | ||
9437 | #define GISB_ARBITER_BP_READ_2_dbu_DISABLE 0 | ||
9438 | #define GISB_ARBITER_BP_READ_2_dbu_ENABLE 1 | ||
9439 | |||
9440 | /* GISB_ARBITER :: BP_READ_2 :: cce [00:00] */ | ||
9441 | #define GISB_ARBITER_BP_READ_2_cce_MASK 0x00000001 | ||
9442 | #define GISB_ARBITER_BP_READ_2_cce_ALIGN 0 | ||
9443 | #define GISB_ARBITER_BP_READ_2_cce_BITS 1 | ||
9444 | #define GISB_ARBITER_BP_READ_2_cce_SHIFT 0 | ||
9445 | #define GISB_ARBITER_BP_READ_2_cce_DISABLE 0 | ||
9446 | #define GISB_ARBITER_BP_READ_2_cce_ENABLE 1 | ||
9447 | |||
9448 | |||
9449 | /**************************************************************************** | ||
9450 | * GISB_ARBITER :: BP_WRITE_2 | ||
9451 | ***************************************************************************/ | ||
9452 | /* GISB_ARBITER :: BP_WRITE_2 :: reserved0 [31:06] */ | ||
9453 | #define GISB_ARBITER_BP_WRITE_2_reserved0_MASK 0xffffffc0 | ||
9454 | #define GISB_ARBITER_BP_WRITE_2_reserved0_ALIGN 0 | ||
9455 | #define GISB_ARBITER_BP_WRITE_2_reserved0_BITS 26 | ||
9456 | #define GISB_ARBITER_BP_WRITE_2_reserved0_SHIFT 6 | ||
9457 | |||
9458 | /* GISB_ARBITER :: BP_WRITE_2 :: bsp [05:05] */ | ||
9459 | #define GISB_ARBITER_BP_WRITE_2_bsp_MASK 0x00000020 | ||
9460 | #define GISB_ARBITER_BP_WRITE_2_bsp_ALIGN 0 | ||
9461 | #define GISB_ARBITER_BP_WRITE_2_bsp_BITS 1 | ||
9462 | #define GISB_ARBITER_BP_WRITE_2_bsp_SHIFT 5 | ||
9463 | #define GISB_ARBITER_BP_WRITE_2_bsp_DISABLE 0 | ||
9464 | #define GISB_ARBITER_BP_WRITE_2_bsp_ENABLE 1 | ||
9465 | |||
9466 | /* GISB_ARBITER :: BP_WRITE_2 :: aes [04:04] */ | ||
9467 | #define GISB_ARBITER_BP_WRITE_2_aes_MASK 0x00000010 | ||
9468 | #define GISB_ARBITER_BP_WRITE_2_aes_ALIGN 0 | ||
9469 | #define GISB_ARBITER_BP_WRITE_2_aes_BITS 1 | ||
9470 | #define GISB_ARBITER_BP_WRITE_2_aes_SHIFT 4 | ||
9471 | #define GISB_ARBITER_BP_WRITE_2_aes_DISABLE 0 | ||
9472 | #define GISB_ARBITER_BP_WRITE_2_aes_ENABLE 1 | ||
9473 | |||
9474 | /* GISB_ARBITER :: BP_WRITE_2 :: fve [03:03] */ | ||
9475 | #define GISB_ARBITER_BP_WRITE_2_fve_MASK 0x00000008 | ||
9476 | #define GISB_ARBITER_BP_WRITE_2_fve_ALIGN 0 | ||
9477 | #define GISB_ARBITER_BP_WRITE_2_fve_BITS 1 | ||
9478 | #define GISB_ARBITER_BP_WRITE_2_fve_SHIFT 3 | ||
9479 | #define GISB_ARBITER_BP_WRITE_2_fve_DISABLE 0 | ||
9480 | #define GISB_ARBITER_BP_WRITE_2_fve_ENABLE 1 | ||
9481 | |||
9482 | /* GISB_ARBITER :: BP_WRITE_2 :: tgt [02:02] */ | ||
9483 | #define GISB_ARBITER_BP_WRITE_2_tgt_MASK 0x00000004 | ||
9484 | #define GISB_ARBITER_BP_WRITE_2_tgt_ALIGN 0 | ||
9485 | #define GISB_ARBITER_BP_WRITE_2_tgt_BITS 1 | ||
9486 | #define GISB_ARBITER_BP_WRITE_2_tgt_SHIFT 2 | ||
9487 | #define GISB_ARBITER_BP_WRITE_2_tgt_DISABLE 0 | ||
9488 | #define GISB_ARBITER_BP_WRITE_2_tgt_ENABLE 1 | ||
9489 | |||
9490 | /* GISB_ARBITER :: BP_WRITE_2 :: dbu [01:01] */ | ||
9491 | #define GISB_ARBITER_BP_WRITE_2_dbu_MASK 0x00000002 | ||
9492 | #define GISB_ARBITER_BP_WRITE_2_dbu_ALIGN 0 | ||
9493 | #define GISB_ARBITER_BP_WRITE_2_dbu_BITS 1 | ||
9494 | #define GISB_ARBITER_BP_WRITE_2_dbu_SHIFT 1 | ||
9495 | #define GISB_ARBITER_BP_WRITE_2_dbu_DISABLE 0 | ||
9496 | #define GISB_ARBITER_BP_WRITE_2_dbu_ENABLE 1 | ||
9497 | |||
9498 | /* GISB_ARBITER :: BP_WRITE_2 :: cce [00:00] */ | ||
9499 | #define GISB_ARBITER_BP_WRITE_2_cce_MASK 0x00000001 | ||
9500 | #define GISB_ARBITER_BP_WRITE_2_cce_ALIGN 0 | ||
9501 | #define GISB_ARBITER_BP_WRITE_2_cce_BITS 1 | ||
9502 | #define GISB_ARBITER_BP_WRITE_2_cce_SHIFT 0 | ||
9503 | #define GISB_ARBITER_BP_WRITE_2_cce_DISABLE 0 | ||
9504 | #define GISB_ARBITER_BP_WRITE_2_cce_ENABLE 1 | ||
9505 | |||
9506 | |||
9507 | /**************************************************************************** | ||
9508 | * GISB_ARBITER :: BP_ENABLE_2 | ||
9509 | ***************************************************************************/ | ||
9510 | /* GISB_ARBITER :: BP_ENABLE_2 :: reserved0 [31:03] */ | ||
9511 | #define GISB_ARBITER_BP_ENABLE_2_reserved0_MASK 0xfffffff8 | ||
9512 | #define GISB_ARBITER_BP_ENABLE_2_reserved0_ALIGN 0 | ||
9513 | #define GISB_ARBITER_BP_ENABLE_2_reserved0_BITS 29 | ||
9514 | #define GISB_ARBITER_BP_ENABLE_2_reserved0_SHIFT 3 | ||
9515 | |||
9516 | /* GISB_ARBITER :: BP_ENABLE_2 :: block [02:02] */ | ||
9517 | #define GISB_ARBITER_BP_ENABLE_2_block_MASK 0x00000004 | ||
9518 | #define GISB_ARBITER_BP_ENABLE_2_block_ALIGN 0 | ||
9519 | #define GISB_ARBITER_BP_ENABLE_2_block_BITS 1 | ||
9520 | #define GISB_ARBITER_BP_ENABLE_2_block_SHIFT 2 | ||
9521 | #define GISB_ARBITER_BP_ENABLE_2_block_DISABLE 0 | ||
9522 | #define GISB_ARBITER_BP_ENABLE_2_block_ENABLE 1 | ||
9523 | |||
9524 | /* GISB_ARBITER :: BP_ENABLE_2 :: address [01:01] */ | ||
9525 | #define GISB_ARBITER_BP_ENABLE_2_address_MASK 0x00000002 | ||
9526 | #define GISB_ARBITER_BP_ENABLE_2_address_ALIGN 0 | ||
9527 | #define GISB_ARBITER_BP_ENABLE_2_address_BITS 1 | ||
9528 | #define GISB_ARBITER_BP_ENABLE_2_address_SHIFT 1 | ||
9529 | #define GISB_ARBITER_BP_ENABLE_2_address_DISABLE 0 | ||
9530 | #define GISB_ARBITER_BP_ENABLE_2_address_ENABLE 1 | ||
9531 | |||
9532 | /* GISB_ARBITER :: BP_ENABLE_2 :: access [00:00] */ | ||
9533 | #define GISB_ARBITER_BP_ENABLE_2_access_MASK 0x00000001 | ||
9534 | #define GISB_ARBITER_BP_ENABLE_2_access_ALIGN 0 | ||
9535 | #define GISB_ARBITER_BP_ENABLE_2_access_BITS 1 | ||
9536 | #define GISB_ARBITER_BP_ENABLE_2_access_SHIFT 0 | ||
9537 | #define GISB_ARBITER_BP_ENABLE_2_access_DISABLE 0 | ||
9538 | #define GISB_ARBITER_BP_ENABLE_2_access_ENABLE 1 | ||
9539 | |||
9540 | |||
9541 | /**************************************************************************** | ||
9542 | * GISB_ARBITER :: BP_START_ADDR_3 | ||
9543 | ***************************************************************************/ | ||
9544 | /* GISB_ARBITER :: BP_START_ADDR_3 :: start [31:00] */ | ||
9545 | #define GISB_ARBITER_BP_START_ADDR_3_start_MASK 0xffffffff | ||
9546 | #define GISB_ARBITER_BP_START_ADDR_3_start_ALIGN 0 | ||
9547 | #define GISB_ARBITER_BP_START_ADDR_3_start_BITS 32 | ||
9548 | #define GISB_ARBITER_BP_START_ADDR_3_start_SHIFT 0 | ||
9549 | |||
9550 | |||
9551 | /**************************************************************************** | ||
9552 | * GISB_ARBITER :: BP_END_ADDR_3 | ||
9553 | ***************************************************************************/ | ||
9554 | /* GISB_ARBITER :: BP_END_ADDR_3 :: end [31:00] */ | ||
9555 | #define GISB_ARBITER_BP_END_ADDR_3_end_MASK 0xffffffff | ||
9556 | #define GISB_ARBITER_BP_END_ADDR_3_end_ALIGN 0 | ||
9557 | #define GISB_ARBITER_BP_END_ADDR_3_end_BITS 32 | ||
9558 | #define GISB_ARBITER_BP_END_ADDR_3_end_SHIFT 0 | ||
9559 | |||
9560 | |||
9561 | /**************************************************************************** | ||
9562 | * GISB_ARBITER :: BP_READ_3 | ||
9563 | ***************************************************************************/ | ||
9564 | /* GISB_ARBITER :: BP_READ_3 :: reserved0 [31:06] */ | ||
9565 | #define GISB_ARBITER_BP_READ_3_reserved0_MASK 0xffffffc0 | ||
9566 | #define GISB_ARBITER_BP_READ_3_reserved0_ALIGN 0 | ||
9567 | #define GISB_ARBITER_BP_READ_3_reserved0_BITS 26 | ||
9568 | #define GISB_ARBITER_BP_READ_3_reserved0_SHIFT 6 | ||
9569 | |||
9570 | /* GISB_ARBITER :: BP_READ_3 :: bsp [05:05] */ | ||
9571 | #define GISB_ARBITER_BP_READ_3_bsp_MASK 0x00000020 | ||
9572 | #define GISB_ARBITER_BP_READ_3_bsp_ALIGN 0 | ||
9573 | #define GISB_ARBITER_BP_READ_3_bsp_BITS 1 | ||
9574 | #define GISB_ARBITER_BP_READ_3_bsp_SHIFT 5 | ||
9575 | #define GISB_ARBITER_BP_READ_3_bsp_DISABLE 0 | ||
9576 | #define GISB_ARBITER_BP_READ_3_bsp_ENABLE 1 | ||
9577 | |||
9578 | /* GISB_ARBITER :: BP_READ_3 :: aes [04:04] */ | ||
9579 | #define GISB_ARBITER_BP_READ_3_aes_MASK 0x00000010 | ||
9580 | #define GISB_ARBITER_BP_READ_3_aes_ALIGN 0 | ||
9581 | #define GISB_ARBITER_BP_READ_3_aes_BITS 1 | ||
9582 | #define GISB_ARBITER_BP_READ_3_aes_SHIFT 4 | ||
9583 | #define GISB_ARBITER_BP_READ_3_aes_DISABLE 0 | ||
9584 | #define GISB_ARBITER_BP_READ_3_aes_ENABLE 1 | ||
9585 | |||
9586 | /* GISB_ARBITER :: BP_READ_3 :: fve [03:03] */ | ||
9587 | #define GISB_ARBITER_BP_READ_3_fve_MASK 0x00000008 | ||
9588 | #define GISB_ARBITER_BP_READ_3_fve_ALIGN 0 | ||
9589 | #define GISB_ARBITER_BP_READ_3_fve_BITS 1 | ||
9590 | #define GISB_ARBITER_BP_READ_3_fve_SHIFT 3 | ||
9591 | #define GISB_ARBITER_BP_READ_3_fve_DISABLE 0 | ||
9592 | #define GISB_ARBITER_BP_READ_3_fve_ENABLE 1 | ||
9593 | |||
9594 | /* GISB_ARBITER :: BP_READ_3 :: tgt [02:02] */ | ||
9595 | #define GISB_ARBITER_BP_READ_3_tgt_MASK 0x00000004 | ||
9596 | #define GISB_ARBITER_BP_READ_3_tgt_ALIGN 0 | ||
9597 | #define GISB_ARBITER_BP_READ_3_tgt_BITS 1 | ||
9598 | #define GISB_ARBITER_BP_READ_3_tgt_SHIFT 2 | ||
9599 | #define GISB_ARBITER_BP_READ_3_tgt_DISABLE 0 | ||
9600 | #define GISB_ARBITER_BP_READ_3_tgt_ENABLE 1 | ||
9601 | |||
9602 | /* GISB_ARBITER :: BP_READ_3 :: dbu [01:01] */ | ||
9603 | #define GISB_ARBITER_BP_READ_3_dbu_MASK 0x00000002 | ||
9604 | #define GISB_ARBITER_BP_READ_3_dbu_ALIGN 0 | ||
9605 | #define GISB_ARBITER_BP_READ_3_dbu_BITS 1 | ||
9606 | #define GISB_ARBITER_BP_READ_3_dbu_SHIFT 1 | ||
9607 | #define GISB_ARBITER_BP_READ_3_dbu_DISABLE 0 | ||
9608 | #define GISB_ARBITER_BP_READ_3_dbu_ENABLE 1 | ||
9609 | |||
9610 | /* GISB_ARBITER :: BP_READ_3 :: cce [00:00] */ | ||
9611 | #define GISB_ARBITER_BP_READ_3_cce_MASK 0x00000001 | ||
9612 | #define GISB_ARBITER_BP_READ_3_cce_ALIGN 0 | ||
9613 | #define GISB_ARBITER_BP_READ_3_cce_BITS 1 | ||
9614 | #define GISB_ARBITER_BP_READ_3_cce_SHIFT 0 | ||
9615 | #define GISB_ARBITER_BP_READ_3_cce_DISABLE 0 | ||
9616 | #define GISB_ARBITER_BP_READ_3_cce_ENABLE 1 | ||
9617 | |||
9618 | |||
9619 | /**************************************************************************** | ||
9620 | * GISB_ARBITER :: BP_WRITE_3 | ||
9621 | ***************************************************************************/ | ||
9622 | /* GISB_ARBITER :: BP_WRITE_3 :: reserved0 [31:06] */ | ||
9623 | #define GISB_ARBITER_BP_WRITE_3_reserved0_MASK 0xffffffc0 | ||
9624 | #define GISB_ARBITER_BP_WRITE_3_reserved0_ALIGN 0 | ||
9625 | #define GISB_ARBITER_BP_WRITE_3_reserved0_BITS 26 | ||
9626 | #define GISB_ARBITER_BP_WRITE_3_reserved0_SHIFT 6 | ||
9627 | |||
9628 | /* GISB_ARBITER :: BP_WRITE_3 :: bsp [05:05] */ | ||
9629 | #define GISB_ARBITER_BP_WRITE_3_bsp_MASK 0x00000020 | ||
9630 | #define GISB_ARBITER_BP_WRITE_3_bsp_ALIGN 0 | ||
9631 | #define GISB_ARBITER_BP_WRITE_3_bsp_BITS 1 | ||
9632 | #define GISB_ARBITER_BP_WRITE_3_bsp_SHIFT 5 | ||
9633 | #define GISB_ARBITER_BP_WRITE_3_bsp_DISABLE 0 | ||
9634 | #define GISB_ARBITER_BP_WRITE_3_bsp_ENABLE 1 | ||
9635 | |||
9636 | /* GISB_ARBITER :: BP_WRITE_3 :: aes [04:04] */ | ||
9637 | #define GISB_ARBITER_BP_WRITE_3_aes_MASK 0x00000010 | ||
9638 | #define GISB_ARBITER_BP_WRITE_3_aes_ALIGN 0 | ||
9639 | #define GISB_ARBITER_BP_WRITE_3_aes_BITS 1 | ||
9640 | #define GISB_ARBITER_BP_WRITE_3_aes_SHIFT 4 | ||
9641 | #define GISB_ARBITER_BP_WRITE_3_aes_DISABLE 0 | ||
9642 | #define GISB_ARBITER_BP_WRITE_3_aes_ENABLE 1 | ||
9643 | |||
9644 | /* GISB_ARBITER :: BP_WRITE_3 :: fve [03:03] */ | ||
9645 | #define GISB_ARBITER_BP_WRITE_3_fve_MASK 0x00000008 | ||
9646 | #define GISB_ARBITER_BP_WRITE_3_fve_ALIGN 0 | ||
9647 | #define GISB_ARBITER_BP_WRITE_3_fve_BITS 1 | ||
9648 | #define GISB_ARBITER_BP_WRITE_3_fve_SHIFT 3 | ||
9649 | #define GISB_ARBITER_BP_WRITE_3_fve_DISABLE 0 | ||
9650 | #define GISB_ARBITER_BP_WRITE_3_fve_ENABLE 1 | ||
9651 | |||
9652 | /* GISB_ARBITER :: BP_WRITE_3 :: tgt [02:02] */ | ||
9653 | #define GISB_ARBITER_BP_WRITE_3_tgt_MASK 0x00000004 | ||
9654 | #define GISB_ARBITER_BP_WRITE_3_tgt_ALIGN 0 | ||
9655 | #define GISB_ARBITER_BP_WRITE_3_tgt_BITS 1 | ||
9656 | #define GISB_ARBITER_BP_WRITE_3_tgt_SHIFT 2 | ||
9657 | #define GISB_ARBITER_BP_WRITE_3_tgt_DISABLE 0 | ||
9658 | #define GISB_ARBITER_BP_WRITE_3_tgt_ENABLE 1 | ||
9659 | |||
9660 | /* GISB_ARBITER :: BP_WRITE_3 :: dbu [01:01] */ | ||
9661 | #define GISB_ARBITER_BP_WRITE_3_dbu_MASK 0x00000002 | ||
9662 | #define GISB_ARBITER_BP_WRITE_3_dbu_ALIGN 0 | ||
9663 | #define GISB_ARBITER_BP_WRITE_3_dbu_BITS 1 | ||
9664 | #define GISB_ARBITER_BP_WRITE_3_dbu_SHIFT 1 | ||
9665 | #define GISB_ARBITER_BP_WRITE_3_dbu_DISABLE 0 | ||
9666 | #define GISB_ARBITER_BP_WRITE_3_dbu_ENABLE 1 | ||
9667 | |||
9668 | /* GISB_ARBITER :: BP_WRITE_3 :: cce [00:00] */ | ||
9669 | #define GISB_ARBITER_BP_WRITE_3_cce_MASK 0x00000001 | ||
9670 | #define GISB_ARBITER_BP_WRITE_3_cce_ALIGN 0 | ||
9671 | #define GISB_ARBITER_BP_WRITE_3_cce_BITS 1 | ||
9672 | #define GISB_ARBITER_BP_WRITE_3_cce_SHIFT 0 | ||
9673 | #define GISB_ARBITER_BP_WRITE_3_cce_DISABLE 0 | ||
9674 | #define GISB_ARBITER_BP_WRITE_3_cce_ENABLE 1 | ||
9675 | |||
9676 | |||
9677 | /**************************************************************************** | ||
9678 | * GISB_ARBITER :: BP_ENABLE_3 | ||
9679 | ***************************************************************************/ | ||
9680 | /* GISB_ARBITER :: BP_ENABLE_3 :: reserved0 [31:03] */ | ||
9681 | #define GISB_ARBITER_BP_ENABLE_3_reserved0_MASK 0xfffffff8 | ||
9682 | #define GISB_ARBITER_BP_ENABLE_3_reserved0_ALIGN 0 | ||
9683 | #define GISB_ARBITER_BP_ENABLE_3_reserved0_BITS 29 | ||
9684 | #define GISB_ARBITER_BP_ENABLE_3_reserved0_SHIFT 3 | ||
9685 | |||
9686 | /* GISB_ARBITER :: BP_ENABLE_3 :: block [02:02] */ | ||
9687 | #define GISB_ARBITER_BP_ENABLE_3_block_MASK 0x00000004 | ||
9688 | #define GISB_ARBITER_BP_ENABLE_3_block_ALIGN 0 | ||
9689 | #define GISB_ARBITER_BP_ENABLE_3_block_BITS 1 | ||
9690 | #define GISB_ARBITER_BP_ENABLE_3_block_SHIFT 2 | ||
9691 | #define GISB_ARBITER_BP_ENABLE_3_block_DISABLE 0 | ||
9692 | #define GISB_ARBITER_BP_ENABLE_3_block_ENABLE 1 | ||
9693 | |||
9694 | /* GISB_ARBITER :: BP_ENABLE_3 :: address [01:01] */ | ||
9695 | #define GISB_ARBITER_BP_ENABLE_3_address_MASK 0x00000002 | ||
9696 | #define GISB_ARBITER_BP_ENABLE_3_address_ALIGN 0 | ||
9697 | #define GISB_ARBITER_BP_ENABLE_3_address_BITS 1 | ||
9698 | #define GISB_ARBITER_BP_ENABLE_3_address_SHIFT 1 | ||
9699 | #define GISB_ARBITER_BP_ENABLE_3_address_DISABLE 0 | ||
9700 | #define GISB_ARBITER_BP_ENABLE_3_address_ENABLE 1 | ||
9701 | |||
9702 | /* GISB_ARBITER :: BP_ENABLE_3 :: access [00:00] */ | ||
9703 | #define GISB_ARBITER_BP_ENABLE_3_access_MASK 0x00000001 | ||
9704 | #define GISB_ARBITER_BP_ENABLE_3_access_ALIGN 0 | ||
9705 | #define GISB_ARBITER_BP_ENABLE_3_access_BITS 1 | ||
9706 | #define GISB_ARBITER_BP_ENABLE_3_access_SHIFT 0 | ||
9707 | #define GISB_ARBITER_BP_ENABLE_3_access_DISABLE 0 | ||
9708 | #define GISB_ARBITER_BP_ENABLE_3_access_ENABLE 1 | ||
9709 | |||
9710 | |||
9711 | /**************************************************************************** | ||
9712 | * GISB_ARBITER :: BP_START_ADDR_4 | ||
9713 | ***************************************************************************/ | ||
9714 | /* GISB_ARBITER :: BP_START_ADDR_4 :: start [31:00] */ | ||
9715 | #define GISB_ARBITER_BP_START_ADDR_4_start_MASK 0xffffffff | ||
9716 | #define GISB_ARBITER_BP_START_ADDR_4_start_ALIGN 0 | ||
9717 | #define GISB_ARBITER_BP_START_ADDR_4_start_BITS 32 | ||
9718 | #define GISB_ARBITER_BP_START_ADDR_4_start_SHIFT 0 | ||
9719 | |||
9720 | |||
9721 | /**************************************************************************** | ||
9722 | * GISB_ARBITER :: BP_END_ADDR_4 | ||
9723 | ***************************************************************************/ | ||
9724 | /* GISB_ARBITER :: BP_END_ADDR_4 :: end [31:00] */ | ||
9725 | #define GISB_ARBITER_BP_END_ADDR_4_end_MASK 0xffffffff | ||
9726 | #define GISB_ARBITER_BP_END_ADDR_4_end_ALIGN 0 | ||
9727 | #define GISB_ARBITER_BP_END_ADDR_4_end_BITS 32 | ||
9728 | #define GISB_ARBITER_BP_END_ADDR_4_end_SHIFT 0 | ||
9729 | |||
9730 | |||
9731 | /**************************************************************************** | ||
9732 | * GISB_ARBITER :: BP_READ_4 | ||
9733 | ***************************************************************************/ | ||
9734 | /* GISB_ARBITER :: BP_READ_4 :: reserved0 [31:06] */ | ||
9735 | #define GISB_ARBITER_BP_READ_4_reserved0_MASK 0xffffffc0 | ||
9736 | #define GISB_ARBITER_BP_READ_4_reserved0_ALIGN 0 | ||
9737 | #define GISB_ARBITER_BP_READ_4_reserved0_BITS 26 | ||
9738 | #define GISB_ARBITER_BP_READ_4_reserved0_SHIFT 6 | ||
9739 | |||
9740 | /* GISB_ARBITER :: BP_READ_4 :: bsp [05:05] */ | ||
9741 | #define GISB_ARBITER_BP_READ_4_bsp_MASK 0x00000020 | ||
9742 | #define GISB_ARBITER_BP_READ_4_bsp_ALIGN 0 | ||
9743 | #define GISB_ARBITER_BP_READ_4_bsp_BITS 1 | ||
9744 | #define GISB_ARBITER_BP_READ_4_bsp_SHIFT 5 | ||
9745 | #define GISB_ARBITER_BP_READ_4_bsp_DISABLE 0 | ||
9746 | #define GISB_ARBITER_BP_READ_4_bsp_ENABLE 1 | ||
9747 | |||
9748 | /* GISB_ARBITER :: BP_READ_4 :: aes [04:04] */ | ||
9749 | #define GISB_ARBITER_BP_READ_4_aes_MASK 0x00000010 | ||
9750 | #define GISB_ARBITER_BP_READ_4_aes_ALIGN 0 | ||
9751 | #define GISB_ARBITER_BP_READ_4_aes_BITS 1 | ||
9752 | #define GISB_ARBITER_BP_READ_4_aes_SHIFT 4 | ||
9753 | #define GISB_ARBITER_BP_READ_4_aes_DISABLE 0 | ||
9754 | #define GISB_ARBITER_BP_READ_4_aes_ENABLE 1 | ||
9755 | |||
9756 | /* GISB_ARBITER :: BP_READ_4 :: fve [03:03] */ | ||
9757 | #define GISB_ARBITER_BP_READ_4_fve_MASK 0x00000008 | ||
9758 | #define GISB_ARBITER_BP_READ_4_fve_ALIGN 0 | ||
9759 | #define GISB_ARBITER_BP_READ_4_fve_BITS 1 | ||
9760 | #define GISB_ARBITER_BP_READ_4_fve_SHIFT 3 | ||
9761 | #define GISB_ARBITER_BP_READ_4_fve_DISABLE 0 | ||
9762 | #define GISB_ARBITER_BP_READ_4_fve_ENABLE 1 | ||
9763 | |||
9764 | /* GISB_ARBITER :: BP_READ_4 :: tgt [02:02] */ | ||
9765 | #define GISB_ARBITER_BP_READ_4_tgt_MASK 0x00000004 | ||
9766 | #define GISB_ARBITER_BP_READ_4_tgt_ALIGN 0 | ||
9767 | #define GISB_ARBITER_BP_READ_4_tgt_BITS 1 | ||
9768 | #define GISB_ARBITER_BP_READ_4_tgt_SHIFT 2 | ||
9769 | #define GISB_ARBITER_BP_READ_4_tgt_DISABLE 0 | ||
9770 | #define GISB_ARBITER_BP_READ_4_tgt_ENABLE 1 | ||
9771 | |||
9772 | /* GISB_ARBITER :: BP_READ_4 :: dbu [01:01] */ | ||
9773 | #define GISB_ARBITER_BP_READ_4_dbu_MASK 0x00000002 | ||
9774 | #define GISB_ARBITER_BP_READ_4_dbu_ALIGN 0 | ||
9775 | #define GISB_ARBITER_BP_READ_4_dbu_BITS 1 | ||
9776 | #define GISB_ARBITER_BP_READ_4_dbu_SHIFT 1 | ||
9777 | #define GISB_ARBITER_BP_READ_4_dbu_DISABLE 0 | ||
9778 | #define GISB_ARBITER_BP_READ_4_dbu_ENABLE 1 | ||
9779 | |||
9780 | /* GISB_ARBITER :: BP_READ_4 :: cce [00:00] */ | ||
9781 | #define GISB_ARBITER_BP_READ_4_cce_MASK 0x00000001 | ||
9782 | #define GISB_ARBITER_BP_READ_4_cce_ALIGN 0 | ||
9783 | #define GISB_ARBITER_BP_READ_4_cce_BITS 1 | ||
9784 | #define GISB_ARBITER_BP_READ_4_cce_SHIFT 0 | ||
9785 | #define GISB_ARBITER_BP_READ_4_cce_DISABLE 0 | ||
9786 | #define GISB_ARBITER_BP_READ_4_cce_ENABLE 1 | ||
9787 | |||
9788 | |||
9789 | /**************************************************************************** | ||
9790 | * GISB_ARBITER :: BP_WRITE_4 | ||
9791 | ***************************************************************************/ | ||
9792 | /* GISB_ARBITER :: BP_WRITE_4 :: reserved0 [31:06] */ | ||
9793 | #define GISB_ARBITER_BP_WRITE_4_reserved0_MASK 0xffffffc0 | ||
9794 | #define GISB_ARBITER_BP_WRITE_4_reserved0_ALIGN 0 | ||
9795 | #define GISB_ARBITER_BP_WRITE_4_reserved0_BITS 26 | ||
9796 | #define GISB_ARBITER_BP_WRITE_4_reserved0_SHIFT 6 | ||
9797 | |||
9798 | /* GISB_ARBITER :: BP_WRITE_4 :: bsp [05:05] */ | ||
9799 | #define GISB_ARBITER_BP_WRITE_4_bsp_MASK 0x00000020 | ||
9800 | #define GISB_ARBITER_BP_WRITE_4_bsp_ALIGN 0 | ||
9801 | #define GISB_ARBITER_BP_WRITE_4_bsp_BITS 1 | ||
9802 | #define GISB_ARBITER_BP_WRITE_4_bsp_SHIFT 5 | ||
9803 | #define GISB_ARBITER_BP_WRITE_4_bsp_DISABLE 0 | ||
9804 | #define GISB_ARBITER_BP_WRITE_4_bsp_ENABLE 1 | ||
9805 | |||
9806 | /* GISB_ARBITER :: BP_WRITE_4 :: aes [04:04] */ | ||
9807 | #define GISB_ARBITER_BP_WRITE_4_aes_MASK 0x00000010 | ||
9808 | #define GISB_ARBITER_BP_WRITE_4_aes_ALIGN 0 | ||
9809 | #define GISB_ARBITER_BP_WRITE_4_aes_BITS 1 | ||
9810 | #define GISB_ARBITER_BP_WRITE_4_aes_SHIFT 4 | ||
9811 | #define GISB_ARBITER_BP_WRITE_4_aes_DISABLE 0 | ||
9812 | #define GISB_ARBITER_BP_WRITE_4_aes_ENABLE 1 | ||
9813 | |||
9814 | /* GISB_ARBITER :: BP_WRITE_4 :: fve [03:03] */ | ||
9815 | #define GISB_ARBITER_BP_WRITE_4_fve_MASK 0x00000008 | ||
9816 | #define GISB_ARBITER_BP_WRITE_4_fve_ALIGN 0 | ||
9817 | #define GISB_ARBITER_BP_WRITE_4_fve_BITS 1 | ||
9818 | #define GISB_ARBITER_BP_WRITE_4_fve_SHIFT 3 | ||
9819 | #define GISB_ARBITER_BP_WRITE_4_fve_DISABLE 0 | ||
9820 | #define GISB_ARBITER_BP_WRITE_4_fve_ENABLE 1 | ||
9821 | |||
9822 | /* GISB_ARBITER :: BP_WRITE_4 :: tgt [02:02] */ | ||
9823 | #define GISB_ARBITER_BP_WRITE_4_tgt_MASK 0x00000004 | ||
9824 | #define GISB_ARBITER_BP_WRITE_4_tgt_ALIGN 0 | ||
9825 | #define GISB_ARBITER_BP_WRITE_4_tgt_BITS 1 | ||
9826 | #define GISB_ARBITER_BP_WRITE_4_tgt_SHIFT 2 | ||
9827 | #define GISB_ARBITER_BP_WRITE_4_tgt_DISABLE 0 | ||
9828 | #define GISB_ARBITER_BP_WRITE_4_tgt_ENABLE 1 | ||
9829 | |||
9830 | /* GISB_ARBITER :: BP_WRITE_4 :: dbu [01:01] */ | ||
9831 | #define GISB_ARBITER_BP_WRITE_4_dbu_MASK 0x00000002 | ||
9832 | #define GISB_ARBITER_BP_WRITE_4_dbu_ALIGN 0 | ||
9833 | #define GISB_ARBITER_BP_WRITE_4_dbu_BITS 1 | ||
9834 | #define GISB_ARBITER_BP_WRITE_4_dbu_SHIFT 1 | ||
9835 | #define GISB_ARBITER_BP_WRITE_4_dbu_DISABLE 0 | ||
9836 | #define GISB_ARBITER_BP_WRITE_4_dbu_ENABLE 1 | ||
9837 | |||
9838 | /* GISB_ARBITER :: BP_WRITE_4 :: cce [00:00] */ | ||
9839 | #define GISB_ARBITER_BP_WRITE_4_cce_MASK 0x00000001 | ||
9840 | #define GISB_ARBITER_BP_WRITE_4_cce_ALIGN 0 | ||
9841 | #define GISB_ARBITER_BP_WRITE_4_cce_BITS 1 | ||
9842 | #define GISB_ARBITER_BP_WRITE_4_cce_SHIFT 0 | ||
9843 | #define GISB_ARBITER_BP_WRITE_4_cce_DISABLE 0 | ||
9844 | #define GISB_ARBITER_BP_WRITE_4_cce_ENABLE 1 | ||
9845 | |||
9846 | |||
9847 | /**************************************************************************** | ||
9848 | * GISB_ARBITER :: BP_ENABLE_4 | ||
9849 | ***************************************************************************/ | ||
9850 | /* GISB_ARBITER :: BP_ENABLE_4 :: reserved0 [31:03] */ | ||
9851 | #define GISB_ARBITER_BP_ENABLE_4_reserved0_MASK 0xfffffff8 | ||
9852 | #define GISB_ARBITER_BP_ENABLE_4_reserved0_ALIGN 0 | ||
9853 | #define GISB_ARBITER_BP_ENABLE_4_reserved0_BITS 29 | ||
9854 | #define GISB_ARBITER_BP_ENABLE_4_reserved0_SHIFT 3 | ||
9855 | |||
9856 | /* GISB_ARBITER :: BP_ENABLE_4 :: block [02:02] */ | ||
9857 | #define GISB_ARBITER_BP_ENABLE_4_block_MASK 0x00000004 | ||
9858 | #define GISB_ARBITER_BP_ENABLE_4_block_ALIGN 0 | ||
9859 | #define GISB_ARBITER_BP_ENABLE_4_block_BITS 1 | ||
9860 | #define GISB_ARBITER_BP_ENABLE_4_block_SHIFT 2 | ||
9861 | #define GISB_ARBITER_BP_ENABLE_4_block_DISABLE 0 | ||
9862 | #define GISB_ARBITER_BP_ENABLE_4_block_ENABLE 1 | ||
9863 | |||
9864 | /* GISB_ARBITER :: BP_ENABLE_4 :: address [01:01] */ | ||
9865 | #define GISB_ARBITER_BP_ENABLE_4_address_MASK 0x00000002 | ||
9866 | #define GISB_ARBITER_BP_ENABLE_4_address_ALIGN 0 | ||
9867 | #define GISB_ARBITER_BP_ENABLE_4_address_BITS 1 | ||
9868 | #define GISB_ARBITER_BP_ENABLE_4_address_SHIFT 1 | ||
9869 | #define GISB_ARBITER_BP_ENABLE_4_address_DISABLE 0 | ||
9870 | #define GISB_ARBITER_BP_ENABLE_4_address_ENABLE 1 | ||
9871 | |||
9872 | /* GISB_ARBITER :: BP_ENABLE_4 :: access [00:00] */ | ||
9873 | #define GISB_ARBITER_BP_ENABLE_4_access_MASK 0x00000001 | ||
9874 | #define GISB_ARBITER_BP_ENABLE_4_access_ALIGN 0 | ||
9875 | #define GISB_ARBITER_BP_ENABLE_4_access_BITS 1 | ||
9876 | #define GISB_ARBITER_BP_ENABLE_4_access_SHIFT 0 | ||
9877 | #define GISB_ARBITER_BP_ENABLE_4_access_DISABLE 0 | ||
9878 | #define GISB_ARBITER_BP_ENABLE_4_access_ENABLE 1 | ||
9879 | |||
9880 | |||
9881 | /**************************************************************************** | ||
9882 | * GISB_ARBITER :: BP_START_ADDR_5 | ||
9883 | ***************************************************************************/ | ||
9884 | /* GISB_ARBITER :: BP_START_ADDR_5 :: start [31:00] */ | ||
9885 | #define GISB_ARBITER_BP_START_ADDR_5_start_MASK 0xffffffff | ||
9886 | #define GISB_ARBITER_BP_START_ADDR_5_start_ALIGN 0 | ||
9887 | #define GISB_ARBITER_BP_START_ADDR_5_start_BITS 32 | ||
9888 | #define GISB_ARBITER_BP_START_ADDR_5_start_SHIFT 0 | ||
9889 | |||
9890 | |||
9891 | /**************************************************************************** | ||
9892 | * GISB_ARBITER :: BP_END_ADDR_5 | ||
9893 | ***************************************************************************/ | ||
9894 | /* GISB_ARBITER :: BP_END_ADDR_5 :: end [31:00] */ | ||
9895 | #define GISB_ARBITER_BP_END_ADDR_5_end_MASK 0xffffffff | ||
9896 | #define GISB_ARBITER_BP_END_ADDR_5_end_ALIGN 0 | ||
9897 | #define GISB_ARBITER_BP_END_ADDR_5_end_BITS 32 | ||
9898 | #define GISB_ARBITER_BP_END_ADDR_5_end_SHIFT 0 | ||
9899 | |||
9900 | |||
9901 | /**************************************************************************** | ||
9902 | * GISB_ARBITER :: BP_READ_5 | ||
9903 | ***************************************************************************/ | ||
9904 | /* GISB_ARBITER :: BP_READ_5 :: reserved0 [31:06] */ | ||
9905 | #define GISB_ARBITER_BP_READ_5_reserved0_MASK 0xffffffc0 | ||
9906 | #define GISB_ARBITER_BP_READ_5_reserved0_ALIGN 0 | ||
9907 | #define GISB_ARBITER_BP_READ_5_reserved0_BITS 26 | ||
9908 | #define GISB_ARBITER_BP_READ_5_reserved0_SHIFT 6 | ||
9909 | |||
9910 | /* GISB_ARBITER :: BP_READ_5 :: bsp [05:05] */ | ||
9911 | #define GISB_ARBITER_BP_READ_5_bsp_MASK 0x00000020 | ||
9912 | #define GISB_ARBITER_BP_READ_5_bsp_ALIGN 0 | ||
9913 | #define GISB_ARBITER_BP_READ_5_bsp_BITS 1 | ||
9914 | #define GISB_ARBITER_BP_READ_5_bsp_SHIFT 5 | ||
9915 | #define GISB_ARBITER_BP_READ_5_bsp_DISABLE 0 | ||
9916 | #define GISB_ARBITER_BP_READ_5_bsp_ENABLE 1 | ||
9917 | |||
9918 | /* GISB_ARBITER :: BP_READ_5 :: aes [04:04] */ | ||
9919 | #define GISB_ARBITER_BP_READ_5_aes_MASK 0x00000010 | ||
9920 | #define GISB_ARBITER_BP_READ_5_aes_ALIGN 0 | ||
9921 | #define GISB_ARBITER_BP_READ_5_aes_BITS 1 | ||
9922 | #define GISB_ARBITER_BP_READ_5_aes_SHIFT 4 | ||
9923 | #define GISB_ARBITER_BP_READ_5_aes_DISABLE 0 | ||
9924 | #define GISB_ARBITER_BP_READ_5_aes_ENABLE 1 | ||
9925 | |||
9926 | /* GISB_ARBITER :: BP_READ_5 :: fve [03:03] */ | ||
9927 | #define GISB_ARBITER_BP_READ_5_fve_MASK 0x00000008 | ||
9928 | #define GISB_ARBITER_BP_READ_5_fve_ALIGN 0 | ||
9929 | #define GISB_ARBITER_BP_READ_5_fve_BITS 1 | ||
9930 | #define GISB_ARBITER_BP_READ_5_fve_SHIFT 3 | ||
9931 | #define GISB_ARBITER_BP_READ_5_fve_DISABLE 0 | ||
9932 | #define GISB_ARBITER_BP_READ_5_fve_ENABLE 1 | ||
9933 | |||
9934 | /* GISB_ARBITER :: BP_READ_5 :: tgt [02:02] */ | ||
9935 | #define GISB_ARBITER_BP_READ_5_tgt_MASK 0x00000004 | ||
9936 | #define GISB_ARBITER_BP_READ_5_tgt_ALIGN 0 | ||
9937 | #define GISB_ARBITER_BP_READ_5_tgt_BITS 1 | ||
9938 | #define GISB_ARBITER_BP_READ_5_tgt_SHIFT 2 | ||
9939 | #define GISB_ARBITER_BP_READ_5_tgt_DISABLE 0 | ||
9940 | #define GISB_ARBITER_BP_READ_5_tgt_ENABLE 1 | ||
9941 | |||
9942 | /* GISB_ARBITER :: BP_READ_5 :: dbu [01:01] */ | ||
9943 | #define GISB_ARBITER_BP_READ_5_dbu_MASK 0x00000002 | ||
9944 | #define GISB_ARBITER_BP_READ_5_dbu_ALIGN 0 | ||
9945 | #define GISB_ARBITER_BP_READ_5_dbu_BITS 1 | ||
9946 | #define GISB_ARBITER_BP_READ_5_dbu_SHIFT 1 | ||
9947 | #define GISB_ARBITER_BP_READ_5_dbu_DISABLE 0 | ||
9948 | #define GISB_ARBITER_BP_READ_5_dbu_ENABLE 1 | ||
9949 | |||
9950 | /* GISB_ARBITER :: BP_READ_5 :: cce [00:00] */ | ||
9951 | #define GISB_ARBITER_BP_READ_5_cce_MASK 0x00000001 | ||
9952 | #define GISB_ARBITER_BP_READ_5_cce_ALIGN 0 | ||
9953 | #define GISB_ARBITER_BP_READ_5_cce_BITS 1 | ||
9954 | #define GISB_ARBITER_BP_READ_5_cce_SHIFT 0 | ||
9955 | #define GISB_ARBITER_BP_READ_5_cce_DISABLE 0 | ||
9956 | #define GISB_ARBITER_BP_READ_5_cce_ENABLE 1 | ||
9957 | |||
9958 | |||
9959 | /**************************************************************************** | ||
9960 | * GISB_ARBITER :: BP_WRITE_5 | ||
9961 | ***************************************************************************/ | ||
9962 | /* GISB_ARBITER :: BP_WRITE_5 :: reserved0 [31:06] */ | ||
9963 | #define GISB_ARBITER_BP_WRITE_5_reserved0_MASK 0xffffffc0 | ||
9964 | #define GISB_ARBITER_BP_WRITE_5_reserved0_ALIGN 0 | ||
9965 | #define GISB_ARBITER_BP_WRITE_5_reserved0_BITS 26 | ||
9966 | #define GISB_ARBITER_BP_WRITE_5_reserved0_SHIFT 6 | ||
9967 | |||
9968 | /* GISB_ARBITER :: BP_WRITE_5 :: bsp [05:05] */ | ||
9969 | #define GISB_ARBITER_BP_WRITE_5_bsp_MASK 0x00000020 | ||
9970 | #define GISB_ARBITER_BP_WRITE_5_bsp_ALIGN 0 | ||
9971 | #define GISB_ARBITER_BP_WRITE_5_bsp_BITS 1 | ||
9972 | #define GISB_ARBITER_BP_WRITE_5_bsp_SHIFT 5 | ||
9973 | #define GISB_ARBITER_BP_WRITE_5_bsp_DISABLE 0 | ||
9974 | #define GISB_ARBITER_BP_WRITE_5_bsp_ENABLE 1 | ||
9975 | |||
9976 | /* GISB_ARBITER :: BP_WRITE_5 :: aes [04:04] */ | ||
9977 | #define GISB_ARBITER_BP_WRITE_5_aes_MASK 0x00000010 | ||
9978 | #define GISB_ARBITER_BP_WRITE_5_aes_ALIGN 0 | ||
9979 | #define GISB_ARBITER_BP_WRITE_5_aes_BITS 1 | ||
9980 | #define GISB_ARBITER_BP_WRITE_5_aes_SHIFT 4 | ||
9981 | #define GISB_ARBITER_BP_WRITE_5_aes_DISABLE 0 | ||
9982 | #define GISB_ARBITER_BP_WRITE_5_aes_ENABLE 1 | ||
9983 | |||
9984 | /* GISB_ARBITER :: BP_WRITE_5 :: fve [03:03] */ | ||
9985 | #define GISB_ARBITER_BP_WRITE_5_fve_MASK 0x00000008 | ||
9986 | #define GISB_ARBITER_BP_WRITE_5_fve_ALIGN 0 | ||
9987 | #define GISB_ARBITER_BP_WRITE_5_fve_BITS 1 | ||
9988 | #define GISB_ARBITER_BP_WRITE_5_fve_SHIFT 3 | ||
9989 | #define GISB_ARBITER_BP_WRITE_5_fve_DISABLE 0 | ||
9990 | #define GISB_ARBITER_BP_WRITE_5_fve_ENABLE 1 | ||
9991 | |||
9992 | /* GISB_ARBITER :: BP_WRITE_5 :: tgt [02:02] */ | ||
9993 | #define GISB_ARBITER_BP_WRITE_5_tgt_MASK 0x00000004 | ||
9994 | #define GISB_ARBITER_BP_WRITE_5_tgt_ALIGN 0 | ||
9995 | #define GISB_ARBITER_BP_WRITE_5_tgt_BITS 1 | ||
9996 | #define GISB_ARBITER_BP_WRITE_5_tgt_SHIFT 2 | ||
9997 | #define GISB_ARBITER_BP_WRITE_5_tgt_DISABLE 0 | ||
9998 | #define GISB_ARBITER_BP_WRITE_5_tgt_ENABLE 1 | ||
9999 | |||
10000 | /* GISB_ARBITER :: BP_WRITE_5 :: dbu [01:01] */ | ||
10001 | #define GISB_ARBITER_BP_WRITE_5_dbu_MASK 0x00000002 | ||
10002 | #define GISB_ARBITER_BP_WRITE_5_dbu_ALIGN 0 | ||
10003 | #define GISB_ARBITER_BP_WRITE_5_dbu_BITS 1 | ||
10004 | #define GISB_ARBITER_BP_WRITE_5_dbu_SHIFT 1 | ||
10005 | #define GISB_ARBITER_BP_WRITE_5_dbu_DISABLE 0 | ||
10006 | #define GISB_ARBITER_BP_WRITE_5_dbu_ENABLE 1 | ||
10007 | |||
10008 | /* GISB_ARBITER :: BP_WRITE_5 :: cce [00:00] */ | ||
10009 | #define GISB_ARBITER_BP_WRITE_5_cce_MASK 0x00000001 | ||
10010 | #define GISB_ARBITER_BP_WRITE_5_cce_ALIGN 0 | ||
10011 | #define GISB_ARBITER_BP_WRITE_5_cce_BITS 1 | ||
10012 | #define GISB_ARBITER_BP_WRITE_5_cce_SHIFT 0 | ||
10013 | #define GISB_ARBITER_BP_WRITE_5_cce_DISABLE 0 | ||
10014 | #define GISB_ARBITER_BP_WRITE_5_cce_ENABLE 1 | ||
10015 | |||
10016 | |||
10017 | /**************************************************************************** | ||
10018 | * GISB_ARBITER :: BP_ENABLE_5 | ||
10019 | ***************************************************************************/ | ||
10020 | /* GISB_ARBITER :: BP_ENABLE_5 :: reserved0 [31:03] */ | ||
10021 | #define GISB_ARBITER_BP_ENABLE_5_reserved0_MASK 0xfffffff8 | ||
10022 | #define GISB_ARBITER_BP_ENABLE_5_reserved0_ALIGN 0 | ||
10023 | #define GISB_ARBITER_BP_ENABLE_5_reserved0_BITS 29 | ||
10024 | #define GISB_ARBITER_BP_ENABLE_5_reserved0_SHIFT 3 | ||
10025 | |||
10026 | /* GISB_ARBITER :: BP_ENABLE_5 :: block [02:02] */ | ||
10027 | #define GISB_ARBITER_BP_ENABLE_5_block_MASK 0x00000004 | ||
10028 | #define GISB_ARBITER_BP_ENABLE_5_block_ALIGN 0 | ||
10029 | #define GISB_ARBITER_BP_ENABLE_5_block_BITS 1 | ||
10030 | #define GISB_ARBITER_BP_ENABLE_5_block_SHIFT 2 | ||
10031 | #define GISB_ARBITER_BP_ENABLE_5_block_DISABLE 0 | ||
10032 | #define GISB_ARBITER_BP_ENABLE_5_block_ENABLE 1 | ||
10033 | |||
10034 | /* GISB_ARBITER :: BP_ENABLE_5 :: address [01:01] */ | ||
10035 | #define GISB_ARBITER_BP_ENABLE_5_address_MASK 0x00000002 | ||
10036 | #define GISB_ARBITER_BP_ENABLE_5_address_ALIGN 0 | ||
10037 | #define GISB_ARBITER_BP_ENABLE_5_address_BITS 1 | ||
10038 | #define GISB_ARBITER_BP_ENABLE_5_address_SHIFT 1 | ||
10039 | #define GISB_ARBITER_BP_ENABLE_5_address_DISABLE 0 | ||
10040 | #define GISB_ARBITER_BP_ENABLE_5_address_ENABLE 1 | ||
10041 | |||
10042 | /* GISB_ARBITER :: BP_ENABLE_5 :: access [00:00] */ | ||
10043 | #define GISB_ARBITER_BP_ENABLE_5_access_MASK 0x00000001 | ||
10044 | #define GISB_ARBITER_BP_ENABLE_5_access_ALIGN 0 | ||
10045 | #define GISB_ARBITER_BP_ENABLE_5_access_BITS 1 | ||
10046 | #define GISB_ARBITER_BP_ENABLE_5_access_SHIFT 0 | ||
10047 | #define GISB_ARBITER_BP_ENABLE_5_access_DISABLE 0 | ||
10048 | #define GISB_ARBITER_BP_ENABLE_5_access_ENABLE 1 | ||
10049 | |||
10050 | |||
10051 | /**************************************************************************** | ||
10052 | * GISB_ARBITER :: BP_START_ADDR_6 | ||
10053 | ***************************************************************************/ | ||
10054 | /* GISB_ARBITER :: BP_START_ADDR_6 :: start [31:00] */ | ||
10055 | #define GISB_ARBITER_BP_START_ADDR_6_start_MASK 0xffffffff | ||
10056 | #define GISB_ARBITER_BP_START_ADDR_6_start_ALIGN 0 | ||
10057 | #define GISB_ARBITER_BP_START_ADDR_6_start_BITS 32 | ||
10058 | #define GISB_ARBITER_BP_START_ADDR_6_start_SHIFT 0 | ||
10059 | |||
10060 | |||
10061 | /**************************************************************************** | ||
10062 | * GISB_ARBITER :: BP_END_ADDR_6 | ||
10063 | ***************************************************************************/ | ||
10064 | /* GISB_ARBITER :: BP_END_ADDR_6 :: end [31:00] */ | ||
10065 | #define GISB_ARBITER_BP_END_ADDR_6_end_MASK 0xffffffff | ||
10066 | #define GISB_ARBITER_BP_END_ADDR_6_end_ALIGN 0 | ||
10067 | #define GISB_ARBITER_BP_END_ADDR_6_end_BITS 32 | ||
10068 | #define GISB_ARBITER_BP_END_ADDR_6_end_SHIFT 0 | ||
10069 | |||
10070 | |||
10071 | /**************************************************************************** | ||
10072 | * GISB_ARBITER :: BP_READ_6 | ||
10073 | ***************************************************************************/ | ||
10074 | /* GISB_ARBITER :: BP_READ_6 :: reserved0 [31:06] */ | ||
10075 | #define GISB_ARBITER_BP_READ_6_reserved0_MASK 0xffffffc0 | ||
10076 | #define GISB_ARBITER_BP_READ_6_reserved0_ALIGN 0 | ||
10077 | #define GISB_ARBITER_BP_READ_6_reserved0_BITS 26 | ||
10078 | #define GISB_ARBITER_BP_READ_6_reserved0_SHIFT 6 | ||
10079 | |||
10080 | /* GISB_ARBITER :: BP_READ_6 :: bsp [05:05] */ | ||
10081 | #define GISB_ARBITER_BP_READ_6_bsp_MASK 0x00000020 | ||
10082 | #define GISB_ARBITER_BP_READ_6_bsp_ALIGN 0 | ||
10083 | #define GISB_ARBITER_BP_READ_6_bsp_BITS 1 | ||
10084 | #define GISB_ARBITER_BP_READ_6_bsp_SHIFT 5 | ||
10085 | #define GISB_ARBITER_BP_READ_6_bsp_DISABLE 0 | ||
10086 | #define GISB_ARBITER_BP_READ_6_bsp_ENABLE 1 | ||
10087 | |||
10088 | /* GISB_ARBITER :: BP_READ_6 :: aes [04:04] */ | ||
10089 | #define GISB_ARBITER_BP_READ_6_aes_MASK 0x00000010 | ||
10090 | #define GISB_ARBITER_BP_READ_6_aes_ALIGN 0 | ||
10091 | #define GISB_ARBITER_BP_READ_6_aes_BITS 1 | ||
10092 | #define GISB_ARBITER_BP_READ_6_aes_SHIFT 4 | ||
10093 | #define GISB_ARBITER_BP_READ_6_aes_DISABLE 0 | ||
10094 | #define GISB_ARBITER_BP_READ_6_aes_ENABLE 1 | ||
10095 | |||
10096 | /* GISB_ARBITER :: BP_READ_6 :: fve [03:03] */ | ||
10097 | #define GISB_ARBITER_BP_READ_6_fve_MASK 0x00000008 | ||
10098 | #define GISB_ARBITER_BP_READ_6_fve_ALIGN 0 | ||
10099 | #define GISB_ARBITER_BP_READ_6_fve_BITS 1 | ||
10100 | #define GISB_ARBITER_BP_READ_6_fve_SHIFT 3 | ||
10101 | #define GISB_ARBITER_BP_READ_6_fve_DISABLE 0 | ||
10102 | #define GISB_ARBITER_BP_READ_6_fve_ENABLE 1 | ||
10103 | |||
10104 | /* GISB_ARBITER :: BP_READ_6 :: tgt [02:02] */ | ||
10105 | #define GISB_ARBITER_BP_READ_6_tgt_MASK 0x00000004 | ||
10106 | #define GISB_ARBITER_BP_READ_6_tgt_ALIGN 0 | ||
10107 | #define GISB_ARBITER_BP_READ_6_tgt_BITS 1 | ||
10108 | #define GISB_ARBITER_BP_READ_6_tgt_SHIFT 2 | ||
10109 | #define GISB_ARBITER_BP_READ_6_tgt_DISABLE 0 | ||
10110 | #define GISB_ARBITER_BP_READ_6_tgt_ENABLE 1 | ||
10111 | |||
10112 | /* GISB_ARBITER :: BP_READ_6 :: dbu [01:01] */ | ||
10113 | #define GISB_ARBITER_BP_READ_6_dbu_MASK 0x00000002 | ||
10114 | #define GISB_ARBITER_BP_READ_6_dbu_ALIGN 0 | ||
10115 | #define GISB_ARBITER_BP_READ_6_dbu_BITS 1 | ||
10116 | #define GISB_ARBITER_BP_READ_6_dbu_SHIFT 1 | ||
10117 | #define GISB_ARBITER_BP_READ_6_dbu_DISABLE 0 | ||
10118 | #define GISB_ARBITER_BP_READ_6_dbu_ENABLE 1 | ||
10119 | |||
10120 | /* GISB_ARBITER :: BP_READ_6 :: cce [00:00] */ | ||
10121 | #define GISB_ARBITER_BP_READ_6_cce_MASK 0x00000001 | ||
10122 | #define GISB_ARBITER_BP_READ_6_cce_ALIGN 0 | ||
10123 | #define GISB_ARBITER_BP_READ_6_cce_BITS 1 | ||
10124 | #define GISB_ARBITER_BP_READ_6_cce_SHIFT 0 | ||
10125 | #define GISB_ARBITER_BP_READ_6_cce_DISABLE 0 | ||
10126 | #define GISB_ARBITER_BP_READ_6_cce_ENABLE 1 | ||
10127 | |||
10128 | |||
10129 | /**************************************************************************** | ||
10130 | * GISB_ARBITER :: BP_WRITE_6 | ||
10131 | ***************************************************************************/ | ||
10132 | /* GISB_ARBITER :: BP_WRITE_6 :: reserved0 [31:06] */ | ||
10133 | #define GISB_ARBITER_BP_WRITE_6_reserved0_MASK 0xffffffc0 | ||
10134 | #define GISB_ARBITER_BP_WRITE_6_reserved0_ALIGN 0 | ||
10135 | #define GISB_ARBITER_BP_WRITE_6_reserved0_BITS 26 | ||
10136 | #define GISB_ARBITER_BP_WRITE_6_reserved0_SHIFT 6 | ||
10137 | |||
10138 | /* GISB_ARBITER :: BP_WRITE_6 :: bsp [05:05] */ | ||
10139 | #define GISB_ARBITER_BP_WRITE_6_bsp_MASK 0x00000020 | ||
10140 | #define GISB_ARBITER_BP_WRITE_6_bsp_ALIGN 0 | ||
10141 | #define GISB_ARBITER_BP_WRITE_6_bsp_BITS 1 | ||
10142 | #define GISB_ARBITER_BP_WRITE_6_bsp_SHIFT 5 | ||
10143 | #define GISB_ARBITER_BP_WRITE_6_bsp_DISABLE 0 | ||
10144 | #define GISB_ARBITER_BP_WRITE_6_bsp_ENABLE 1 | ||
10145 | |||
10146 | /* GISB_ARBITER :: BP_WRITE_6 :: aes [04:04] */ | ||
10147 | #define GISB_ARBITER_BP_WRITE_6_aes_MASK 0x00000010 | ||
10148 | #define GISB_ARBITER_BP_WRITE_6_aes_ALIGN 0 | ||
10149 | #define GISB_ARBITER_BP_WRITE_6_aes_BITS 1 | ||
10150 | #define GISB_ARBITER_BP_WRITE_6_aes_SHIFT 4 | ||
10151 | #define GISB_ARBITER_BP_WRITE_6_aes_DISABLE 0 | ||
10152 | #define GISB_ARBITER_BP_WRITE_6_aes_ENABLE 1 | ||
10153 | |||
10154 | /* GISB_ARBITER :: BP_WRITE_6 :: fve [03:03] */ | ||
10155 | #define GISB_ARBITER_BP_WRITE_6_fve_MASK 0x00000008 | ||
10156 | #define GISB_ARBITER_BP_WRITE_6_fve_ALIGN 0 | ||
10157 | #define GISB_ARBITER_BP_WRITE_6_fve_BITS 1 | ||
10158 | #define GISB_ARBITER_BP_WRITE_6_fve_SHIFT 3 | ||
10159 | #define GISB_ARBITER_BP_WRITE_6_fve_DISABLE 0 | ||
10160 | #define GISB_ARBITER_BP_WRITE_6_fve_ENABLE 1 | ||
10161 | |||
10162 | /* GISB_ARBITER :: BP_WRITE_6 :: tgt [02:02] */ | ||
10163 | #define GISB_ARBITER_BP_WRITE_6_tgt_MASK 0x00000004 | ||
10164 | #define GISB_ARBITER_BP_WRITE_6_tgt_ALIGN 0 | ||
10165 | #define GISB_ARBITER_BP_WRITE_6_tgt_BITS 1 | ||
10166 | #define GISB_ARBITER_BP_WRITE_6_tgt_SHIFT 2 | ||
10167 | #define GISB_ARBITER_BP_WRITE_6_tgt_DISABLE 0 | ||
10168 | #define GISB_ARBITER_BP_WRITE_6_tgt_ENABLE 1 | ||
10169 | |||
10170 | /* GISB_ARBITER :: BP_WRITE_6 :: dbu [01:01] */ | ||
10171 | #define GISB_ARBITER_BP_WRITE_6_dbu_MASK 0x00000002 | ||
10172 | #define GISB_ARBITER_BP_WRITE_6_dbu_ALIGN 0 | ||
10173 | #define GISB_ARBITER_BP_WRITE_6_dbu_BITS 1 | ||
10174 | #define GISB_ARBITER_BP_WRITE_6_dbu_SHIFT 1 | ||
10175 | #define GISB_ARBITER_BP_WRITE_6_dbu_DISABLE 0 | ||
10176 | #define GISB_ARBITER_BP_WRITE_6_dbu_ENABLE 1 | ||
10177 | |||
10178 | /* GISB_ARBITER :: BP_WRITE_6 :: cce [00:00] */ | ||
10179 | #define GISB_ARBITER_BP_WRITE_6_cce_MASK 0x00000001 | ||
10180 | #define GISB_ARBITER_BP_WRITE_6_cce_ALIGN 0 | ||
10181 | #define GISB_ARBITER_BP_WRITE_6_cce_BITS 1 | ||
10182 | #define GISB_ARBITER_BP_WRITE_6_cce_SHIFT 0 | ||
10183 | #define GISB_ARBITER_BP_WRITE_6_cce_DISABLE 0 | ||
10184 | #define GISB_ARBITER_BP_WRITE_6_cce_ENABLE 1 | ||
10185 | |||
10186 | |||
10187 | /**************************************************************************** | ||
10188 | * GISB_ARBITER :: BP_ENABLE_6 | ||
10189 | ***************************************************************************/ | ||
10190 | /* GISB_ARBITER :: BP_ENABLE_6 :: reserved0 [31:03] */ | ||
10191 | #define GISB_ARBITER_BP_ENABLE_6_reserved0_MASK 0xfffffff8 | ||
10192 | #define GISB_ARBITER_BP_ENABLE_6_reserved0_ALIGN 0 | ||
10193 | #define GISB_ARBITER_BP_ENABLE_6_reserved0_BITS 29 | ||
10194 | #define GISB_ARBITER_BP_ENABLE_6_reserved0_SHIFT 3 | ||
10195 | |||
10196 | /* GISB_ARBITER :: BP_ENABLE_6 :: block [02:02] */ | ||
10197 | #define GISB_ARBITER_BP_ENABLE_6_block_MASK 0x00000004 | ||
10198 | #define GISB_ARBITER_BP_ENABLE_6_block_ALIGN 0 | ||
10199 | #define GISB_ARBITER_BP_ENABLE_6_block_BITS 1 | ||
10200 | #define GISB_ARBITER_BP_ENABLE_6_block_SHIFT 2 | ||
10201 | #define GISB_ARBITER_BP_ENABLE_6_block_DISABLE 0 | ||
10202 | #define GISB_ARBITER_BP_ENABLE_6_block_ENABLE 1 | ||
10203 | |||
10204 | /* GISB_ARBITER :: BP_ENABLE_6 :: address [01:01] */ | ||
10205 | #define GISB_ARBITER_BP_ENABLE_6_address_MASK 0x00000002 | ||
10206 | #define GISB_ARBITER_BP_ENABLE_6_address_ALIGN 0 | ||
10207 | #define GISB_ARBITER_BP_ENABLE_6_address_BITS 1 | ||
10208 | #define GISB_ARBITER_BP_ENABLE_6_address_SHIFT 1 | ||
10209 | #define GISB_ARBITER_BP_ENABLE_6_address_DISABLE 0 | ||
10210 | #define GISB_ARBITER_BP_ENABLE_6_address_ENABLE 1 | ||
10211 | |||
10212 | /* GISB_ARBITER :: BP_ENABLE_6 :: access [00:00] */ | ||
10213 | #define GISB_ARBITER_BP_ENABLE_6_access_MASK 0x00000001 | ||
10214 | #define GISB_ARBITER_BP_ENABLE_6_access_ALIGN 0 | ||
10215 | #define GISB_ARBITER_BP_ENABLE_6_access_BITS 1 | ||
10216 | #define GISB_ARBITER_BP_ENABLE_6_access_SHIFT 0 | ||
10217 | #define GISB_ARBITER_BP_ENABLE_6_access_DISABLE 0 | ||
10218 | #define GISB_ARBITER_BP_ENABLE_6_access_ENABLE 1 | ||
10219 | |||
10220 | |||
10221 | /**************************************************************************** | ||
10222 | * GISB_ARBITER :: BP_START_ADDR_7 | ||
10223 | ***************************************************************************/ | ||
10224 | /* GISB_ARBITER :: BP_START_ADDR_7 :: start [31:00] */ | ||
10225 | #define GISB_ARBITER_BP_START_ADDR_7_start_MASK 0xffffffff | ||
10226 | #define GISB_ARBITER_BP_START_ADDR_7_start_ALIGN 0 | ||
10227 | #define GISB_ARBITER_BP_START_ADDR_7_start_BITS 32 | ||
10228 | #define GISB_ARBITER_BP_START_ADDR_7_start_SHIFT 0 | ||
10229 | |||
10230 | |||
10231 | /**************************************************************************** | ||
10232 | * GISB_ARBITER :: BP_END_ADDR_7 | ||
10233 | ***************************************************************************/ | ||
10234 | /* GISB_ARBITER :: BP_END_ADDR_7 :: end [31:00] */ | ||
10235 | #define GISB_ARBITER_BP_END_ADDR_7_end_MASK 0xffffffff | ||
10236 | #define GISB_ARBITER_BP_END_ADDR_7_end_ALIGN 0 | ||
10237 | #define GISB_ARBITER_BP_END_ADDR_7_end_BITS 32 | ||
10238 | #define GISB_ARBITER_BP_END_ADDR_7_end_SHIFT 0 | ||
10239 | |||
10240 | |||
10241 | /**************************************************************************** | ||
10242 | * GISB_ARBITER :: BP_READ_7 | ||
10243 | ***************************************************************************/ | ||
10244 | /* GISB_ARBITER :: BP_READ_7 :: reserved0 [31:06] */ | ||
10245 | #define GISB_ARBITER_BP_READ_7_reserved0_MASK 0xffffffc0 | ||
10246 | #define GISB_ARBITER_BP_READ_7_reserved0_ALIGN 0 | ||
10247 | #define GISB_ARBITER_BP_READ_7_reserved0_BITS 26 | ||
10248 | #define GISB_ARBITER_BP_READ_7_reserved0_SHIFT 6 | ||
10249 | |||
10250 | /* GISB_ARBITER :: BP_READ_7 :: bsp [05:05] */ | ||
10251 | #define GISB_ARBITER_BP_READ_7_bsp_MASK 0x00000020 | ||
10252 | #define GISB_ARBITER_BP_READ_7_bsp_ALIGN 0 | ||
10253 | #define GISB_ARBITER_BP_READ_7_bsp_BITS 1 | ||
10254 | #define GISB_ARBITER_BP_READ_7_bsp_SHIFT 5 | ||
10255 | #define GISB_ARBITER_BP_READ_7_bsp_DISABLE 0 | ||
10256 | #define GISB_ARBITER_BP_READ_7_bsp_ENABLE 1 | ||
10257 | |||
10258 | /* GISB_ARBITER :: BP_READ_7 :: aes [04:04] */ | ||
10259 | #define GISB_ARBITER_BP_READ_7_aes_MASK 0x00000010 | ||
10260 | #define GISB_ARBITER_BP_READ_7_aes_ALIGN 0 | ||
10261 | #define GISB_ARBITER_BP_READ_7_aes_BITS 1 | ||
10262 | #define GISB_ARBITER_BP_READ_7_aes_SHIFT 4 | ||
10263 | #define GISB_ARBITER_BP_READ_7_aes_DISABLE 0 | ||
10264 | #define GISB_ARBITER_BP_READ_7_aes_ENABLE 1 | ||
10265 | |||
10266 | /* GISB_ARBITER :: BP_READ_7 :: fve [03:03] */ | ||
10267 | #define GISB_ARBITER_BP_READ_7_fve_MASK 0x00000008 | ||
10268 | #define GISB_ARBITER_BP_READ_7_fve_ALIGN 0 | ||
10269 | #define GISB_ARBITER_BP_READ_7_fve_BITS 1 | ||
10270 | #define GISB_ARBITER_BP_READ_7_fve_SHIFT 3 | ||
10271 | #define GISB_ARBITER_BP_READ_7_fve_DISABLE 0 | ||
10272 | #define GISB_ARBITER_BP_READ_7_fve_ENABLE 1 | ||
10273 | |||
10274 | /* GISB_ARBITER :: BP_READ_7 :: tgt [02:02] */ | ||
10275 | #define GISB_ARBITER_BP_READ_7_tgt_MASK 0x00000004 | ||
10276 | #define GISB_ARBITER_BP_READ_7_tgt_ALIGN 0 | ||
10277 | #define GISB_ARBITER_BP_READ_7_tgt_BITS 1 | ||
10278 | #define GISB_ARBITER_BP_READ_7_tgt_SHIFT 2 | ||
10279 | #define GISB_ARBITER_BP_READ_7_tgt_DISABLE 0 | ||
10280 | #define GISB_ARBITER_BP_READ_7_tgt_ENABLE 1 | ||
10281 | |||
10282 | /* GISB_ARBITER :: BP_READ_7 :: dbu [01:01] */ | ||
10283 | #define GISB_ARBITER_BP_READ_7_dbu_MASK 0x00000002 | ||
10284 | #define GISB_ARBITER_BP_READ_7_dbu_ALIGN 0 | ||
10285 | #define GISB_ARBITER_BP_READ_7_dbu_BITS 1 | ||
10286 | #define GISB_ARBITER_BP_READ_7_dbu_SHIFT 1 | ||
10287 | #define GISB_ARBITER_BP_READ_7_dbu_DISABLE 0 | ||
10288 | #define GISB_ARBITER_BP_READ_7_dbu_ENABLE 1 | ||
10289 | |||
10290 | /* GISB_ARBITER :: BP_READ_7 :: cce [00:00] */ | ||
10291 | #define GISB_ARBITER_BP_READ_7_cce_MASK 0x00000001 | ||
10292 | #define GISB_ARBITER_BP_READ_7_cce_ALIGN 0 | ||
10293 | #define GISB_ARBITER_BP_READ_7_cce_BITS 1 | ||
10294 | #define GISB_ARBITER_BP_READ_7_cce_SHIFT 0 | ||
10295 | #define GISB_ARBITER_BP_READ_7_cce_DISABLE 0 | ||
10296 | #define GISB_ARBITER_BP_READ_7_cce_ENABLE 1 | ||
10297 | |||
10298 | |||
10299 | /**************************************************************************** | ||
10300 | * GISB_ARBITER :: BP_WRITE_7 | ||
10301 | ***************************************************************************/ | ||
10302 | /* GISB_ARBITER :: BP_WRITE_7 :: reserved0 [31:06] */ | ||
10303 | #define GISB_ARBITER_BP_WRITE_7_reserved0_MASK 0xffffffc0 | ||
10304 | #define GISB_ARBITER_BP_WRITE_7_reserved0_ALIGN 0 | ||
10305 | #define GISB_ARBITER_BP_WRITE_7_reserved0_BITS 26 | ||
10306 | #define GISB_ARBITER_BP_WRITE_7_reserved0_SHIFT 6 | ||
10307 | |||
10308 | /* GISB_ARBITER :: BP_WRITE_7 :: bsp [05:05] */ | ||
10309 | #define GISB_ARBITER_BP_WRITE_7_bsp_MASK 0x00000020 | ||
10310 | #define GISB_ARBITER_BP_WRITE_7_bsp_ALIGN 0 | ||
10311 | #define GISB_ARBITER_BP_WRITE_7_bsp_BITS 1 | ||
10312 | #define GISB_ARBITER_BP_WRITE_7_bsp_SHIFT 5 | ||
10313 | #define GISB_ARBITER_BP_WRITE_7_bsp_DISABLE 0 | ||
10314 | #define GISB_ARBITER_BP_WRITE_7_bsp_ENABLE 1 | ||
10315 | |||
10316 | /* GISB_ARBITER :: BP_WRITE_7 :: aes [04:04] */ | ||
10317 | #define GISB_ARBITER_BP_WRITE_7_aes_MASK 0x00000010 | ||
10318 | #define GISB_ARBITER_BP_WRITE_7_aes_ALIGN 0 | ||
10319 | #define GISB_ARBITER_BP_WRITE_7_aes_BITS 1 | ||
10320 | #define GISB_ARBITER_BP_WRITE_7_aes_SHIFT 4 | ||
10321 | #define GISB_ARBITER_BP_WRITE_7_aes_DISABLE 0 | ||
10322 | #define GISB_ARBITER_BP_WRITE_7_aes_ENABLE 1 | ||
10323 | |||
10324 | /* GISB_ARBITER :: BP_WRITE_7 :: fve [03:03] */ | ||
10325 | #define GISB_ARBITER_BP_WRITE_7_fve_MASK 0x00000008 | ||
10326 | #define GISB_ARBITER_BP_WRITE_7_fve_ALIGN 0 | ||
10327 | #define GISB_ARBITER_BP_WRITE_7_fve_BITS 1 | ||
10328 | #define GISB_ARBITER_BP_WRITE_7_fve_SHIFT 3 | ||
10329 | #define GISB_ARBITER_BP_WRITE_7_fve_DISABLE 0 | ||
10330 | #define GISB_ARBITER_BP_WRITE_7_fve_ENABLE 1 | ||
10331 | |||
10332 | /* GISB_ARBITER :: BP_WRITE_7 :: tgt [02:02] */ | ||
10333 | #define GISB_ARBITER_BP_WRITE_7_tgt_MASK 0x00000004 | ||
10334 | #define GISB_ARBITER_BP_WRITE_7_tgt_ALIGN 0 | ||
10335 | #define GISB_ARBITER_BP_WRITE_7_tgt_BITS 1 | ||
10336 | #define GISB_ARBITER_BP_WRITE_7_tgt_SHIFT 2 | ||
10337 | #define GISB_ARBITER_BP_WRITE_7_tgt_DISABLE 0 | ||
10338 | #define GISB_ARBITER_BP_WRITE_7_tgt_ENABLE 1 | ||
10339 | |||
10340 | /* GISB_ARBITER :: BP_WRITE_7 :: dbu [01:01] */ | ||
10341 | #define GISB_ARBITER_BP_WRITE_7_dbu_MASK 0x00000002 | ||
10342 | #define GISB_ARBITER_BP_WRITE_7_dbu_ALIGN 0 | ||
10343 | #define GISB_ARBITER_BP_WRITE_7_dbu_BITS 1 | ||
10344 | #define GISB_ARBITER_BP_WRITE_7_dbu_SHIFT 1 | ||
10345 | #define GISB_ARBITER_BP_WRITE_7_dbu_DISABLE 0 | ||
10346 | #define GISB_ARBITER_BP_WRITE_7_dbu_ENABLE 1 | ||
10347 | |||
10348 | /* GISB_ARBITER :: BP_WRITE_7 :: cce [00:00] */ | ||
10349 | #define GISB_ARBITER_BP_WRITE_7_cce_MASK 0x00000001 | ||
10350 | #define GISB_ARBITER_BP_WRITE_7_cce_ALIGN 0 | ||
10351 | #define GISB_ARBITER_BP_WRITE_7_cce_BITS 1 | ||
10352 | #define GISB_ARBITER_BP_WRITE_7_cce_SHIFT 0 | ||
10353 | #define GISB_ARBITER_BP_WRITE_7_cce_DISABLE 0 | ||
10354 | #define GISB_ARBITER_BP_WRITE_7_cce_ENABLE 1 | ||
10355 | |||
10356 | |||
10357 | /**************************************************************************** | ||
10358 | * GISB_ARBITER :: BP_ENABLE_7 | ||
10359 | ***************************************************************************/ | ||
10360 | /* GISB_ARBITER :: BP_ENABLE_7 :: reserved0 [31:03] */ | ||
10361 | #define GISB_ARBITER_BP_ENABLE_7_reserved0_MASK 0xfffffff8 | ||
10362 | #define GISB_ARBITER_BP_ENABLE_7_reserved0_ALIGN 0 | ||
10363 | #define GISB_ARBITER_BP_ENABLE_7_reserved0_BITS 29 | ||
10364 | #define GISB_ARBITER_BP_ENABLE_7_reserved0_SHIFT 3 | ||
10365 | |||
10366 | /* GISB_ARBITER :: BP_ENABLE_7 :: block [02:02] */ | ||
10367 | #define GISB_ARBITER_BP_ENABLE_7_block_MASK 0x00000004 | ||
10368 | #define GISB_ARBITER_BP_ENABLE_7_block_ALIGN 0 | ||
10369 | #define GISB_ARBITER_BP_ENABLE_7_block_BITS 1 | ||
10370 | #define GISB_ARBITER_BP_ENABLE_7_block_SHIFT 2 | ||
10371 | #define GISB_ARBITER_BP_ENABLE_7_block_DISABLE 0 | ||
10372 | #define GISB_ARBITER_BP_ENABLE_7_block_ENABLE 1 | ||
10373 | |||
10374 | /* GISB_ARBITER :: BP_ENABLE_7 :: address [01:01] */ | ||
10375 | #define GISB_ARBITER_BP_ENABLE_7_address_MASK 0x00000002 | ||
10376 | #define GISB_ARBITER_BP_ENABLE_7_address_ALIGN 0 | ||
10377 | #define GISB_ARBITER_BP_ENABLE_7_address_BITS 1 | ||
10378 | #define GISB_ARBITER_BP_ENABLE_7_address_SHIFT 1 | ||
10379 | #define GISB_ARBITER_BP_ENABLE_7_address_DISABLE 0 | ||
10380 | #define GISB_ARBITER_BP_ENABLE_7_address_ENABLE 1 | ||
10381 | |||
10382 | /* GISB_ARBITER :: BP_ENABLE_7 :: access [00:00] */ | ||
10383 | #define GISB_ARBITER_BP_ENABLE_7_access_MASK 0x00000001 | ||
10384 | #define GISB_ARBITER_BP_ENABLE_7_access_ALIGN 0 | ||
10385 | #define GISB_ARBITER_BP_ENABLE_7_access_BITS 1 | ||
10386 | #define GISB_ARBITER_BP_ENABLE_7_access_SHIFT 0 | ||
10387 | #define GISB_ARBITER_BP_ENABLE_7_access_DISABLE 0 | ||
10388 | #define GISB_ARBITER_BP_ENABLE_7_access_ENABLE 1 | ||
10389 | |||
10390 | |||
10391 | /**************************************************************************** | ||
10392 | * GISB_ARBITER :: BP_CAP_ADDR | ||
10393 | ***************************************************************************/ | ||
10394 | /* GISB_ARBITER :: BP_CAP_ADDR :: address [31:00] */ | ||
10395 | #define GISB_ARBITER_BP_CAP_ADDR_address_MASK 0xffffffff | ||
10396 | #define GISB_ARBITER_BP_CAP_ADDR_address_ALIGN 0 | ||
10397 | #define GISB_ARBITER_BP_CAP_ADDR_address_BITS 32 | ||
10398 | #define GISB_ARBITER_BP_CAP_ADDR_address_SHIFT 0 | ||
10399 | |||
10400 | |||
10401 | /**************************************************************************** | ||
10402 | * GISB_ARBITER :: BP_CAP_DATA | ||
10403 | ***************************************************************************/ | ||
10404 | /* GISB_ARBITER :: BP_CAP_DATA :: data [31:00] */ | ||
10405 | #define GISB_ARBITER_BP_CAP_DATA_data_MASK 0xffffffff | ||
10406 | #define GISB_ARBITER_BP_CAP_DATA_data_ALIGN 0 | ||
10407 | #define GISB_ARBITER_BP_CAP_DATA_data_BITS 32 | ||
10408 | #define GISB_ARBITER_BP_CAP_DATA_data_SHIFT 0 | ||
10409 | |||
10410 | |||
10411 | /**************************************************************************** | ||
10412 | * GISB_ARBITER :: BP_CAP_STATUS | ||
10413 | ***************************************************************************/ | ||
10414 | /* GISB_ARBITER :: BP_CAP_STATUS :: reserved0 [31:06] */ | ||
10415 | #define GISB_ARBITER_BP_CAP_STATUS_reserved0_MASK 0xffffffc0 | ||
10416 | #define GISB_ARBITER_BP_CAP_STATUS_reserved0_ALIGN 0 | ||
10417 | #define GISB_ARBITER_BP_CAP_STATUS_reserved0_BITS 26 | ||
10418 | #define GISB_ARBITER_BP_CAP_STATUS_reserved0_SHIFT 6 | ||
10419 | |||
10420 | /* GISB_ARBITER :: BP_CAP_STATUS :: bs_b [05:02] */ | ||
10421 | #define GISB_ARBITER_BP_CAP_STATUS_bs_b_MASK 0x0000003c | ||
10422 | #define GISB_ARBITER_BP_CAP_STATUS_bs_b_ALIGN 0 | ||
10423 | #define GISB_ARBITER_BP_CAP_STATUS_bs_b_BITS 4 | ||
10424 | #define GISB_ARBITER_BP_CAP_STATUS_bs_b_SHIFT 2 | ||
10425 | |||
10426 | /* GISB_ARBITER :: BP_CAP_STATUS :: write [01:01] */ | ||
10427 | #define GISB_ARBITER_BP_CAP_STATUS_write_MASK 0x00000002 | ||
10428 | #define GISB_ARBITER_BP_CAP_STATUS_write_ALIGN 0 | ||
10429 | #define GISB_ARBITER_BP_CAP_STATUS_write_BITS 1 | ||
10430 | #define GISB_ARBITER_BP_CAP_STATUS_write_SHIFT 1 | ||
10431 | |||
10432 | /* GISB_ARBITER :: BP_CAP_STATUS :: valid [00:00] */ | ||
10433 | #define GISB_ARBITER_BP_CAP_STATUS_valid_MASK 0x00000001 | ||
10434 | #define GISB_ARBITER_BP_CAP_STATUS_valid_ALIGN 0 | ||
10435 | #define GISB_ARBITER_BP_CAP_STATUS_valid_BITS 1 | ||
10436 | #define GISB_ARBITER_BP_CAP_STATUS_valid_SHIFT 0 | ||
10437 | |||
10438 | |||
10439 | /**************************************************************************** | ||
10440 | * GISB_ARBITER :: BP_CAP_MASTER | ||
10441 | ***************************************************************************/ | ||
10442 | /* GISB_ARBITER :: BP_CAP_MASTER :: reserved0 [31:06] */ | ||
10443 | #define GISB_ARBITER_BP_CAP_MASTER_reserved0_MASK 0xffffffc0 | ||
10444 | #define GISB_ARBITER_BP_CAP_MASTER_reserved0_ALIGN 0 | ||
10445 | #define GISB_ARBITER_BP_CAP_MASTER_reserved0_BITS 26 | ||
10446 | #define GISB_ARBITER_BP_CAP_MASTER_reserved0_SHIFT 6 | ||
10447 | |||
10448 | /* GISB_ARBITER :: BP_CAP_MASTER :: bsp [05:05] */ | ||
10449 | #define GISB_ARBITER_BP_CAP_MASTER_bsp_MASK 0x00000020 | ||
10450 | #define GISB_ARBITER_BP_CAP_MASTER_bsp_ALIGN 0 | ||
10451 | #define GISB_ARBITER_BP_CAP_MASTER_bsp_BITS 1 | ||
10452 | #define GISB_ARBITER_BP_CAP_MASTER_bsp_SHIFT 5 | ||
10453 | |||
10454 | /* GISB_ARBITER :: BP_CAP_MASTER :: aes [04:04] */ | ||
10455 | #define GISB_ARBITER_BP_CAP_MASTER_aes_MASK 0x00000010 | ||
10456 | #define GISB_ARBITER_BP_CAP_MASTER_aes_ALIGN 0 | ||
10457 | #define GISB_ARBITER_BP_CAP_MASTER_aes_BITS 1 | ||
10458 | #define GISB_ARBITER_BP_CAP_MASTER_aes_SHIFT 4 | ||
10459 | |||
10460 | /* GISB_ARBITER :: BP_CAP_MASTER :: fve [03:03] */ | ||
10461 | #define GISB_ARBITER_BP_CAP_MASTER_fve_MASK 0x00000008 | ||
10462 | #define GISB_ARBITER_BP_CAP_MASTER_fve_ALIGN 0 | ||
10463 | #define GISB_ARBITER_BP_CAP_MASTER_fve_BITS 1 | ||
10464 | #define GISB_ARBITER_BP_CAP_MASTER_fve_SHIFT 3 | ||
10465 | |||
10466 | /* GISB_ARBITER :: BP_CAP_MASTER :: tgt [02:02] */ | ||
10467 | #define GISB_ARBITER_BP_CAP_MASTER_tgt_MASK 0x00000004 | ||
10468 | #define GISB_ARBITER_BP_CAP_MASTER_tgt_ALIGN 0 | ||
10469 | #define GISB_ARBITER_BP_CAP_MASTER_tgt_BITS 1 | ||
10470 | #define GISB_ARBITER_BP_CAP_MASTER_tgt_SHIFT 2 | ||
10471 | |||
10472 | /* GISB_ARBITER :: BP_CAP_MASTER :: dbu [01:01] */ | ||
10473 | #define GISB_ARBITER_BP_CAP_MASTER_dbu_MASK 0x00000002 | ||
10474 | #define GISB_ARBITER_BP_CAP_MASTER_dbu_ALIGN 0 | ||
10475 | #define GISB_ARBITER_BP_CAP_MASTER_dbu_BITS 1 | ||
10476 | #define GISB_ARBITER_BP_CAP_MASTER_dbu_SHIFT 1 | ||
10477 | |||
10478 | /* GISB_ARBITER :: BP_CAP_MASTER :: cce [00:00] */ | ||
10479 | #define GISB_ARBITER_BP_CAP_MASTER_cce_MASK 0x00000001 | ||
10480 | #define GISB_ARBITER_BP_CAP_MASTER_cce_ALIGN 0 | ||
10481 | #define GISB_ARBITER_BP_CAP_MASTER_cce_BITS 1 | ||
10482 | #define GISB_ARBITER_BP_CAP_MASTER_cce_SHIFT 0 | ||
10483 | |||
10484 | |||
10485 | /**************************************************************************** | ||
10486 | * GISB_ARBITER :: ERR_CAP_CLR | ||
10487 | ***************************************************************************/ | ||
10488 | /* GISB_ARBITER :: ERR_CAP_CLR :: reserved0 [31:01] */ | ||
10489 | #define GISB_ARBITER_ERR_CAP_CLR_reserved0_MASK 0xfffffffe | ||
10490 | #define GISB_ARBITER_ERR_CAP_CLR_reserved0_ALIGN 0 | ||
10491 | #define GISB_ARBITER_ERR_CAP_CLR_reserved0_BITS 31 | ||
10492 | #define GISB_ARBITER_ERR_CAP_CLR_reserved0_SHIFT 1 | ||
10493 | |||
10494 | /* GISB_ARBITER :: ERR_CAP_CLR :: clear [00:00] */ | ||
10495 | #define GISB_ARBITER_ERR_CAP_CLR_clear_MASK 0x00000001 | ||
10496 | #define GISB_ARBITER_ERR_CAP_CLR_clear_ALIGN 0 | ||
10497 | #define GISB_ARBITER_ERR_CAP_CLR_clear_BITS 1 | ||
10498 | #define GISB_ARBITER_ERR_CAP_CLR_clear_SHIFT 0 | ||
10499 | |||
10500 | |||
10501 | /**************************************************************************** | ||
10502 | * GISB_ARBITER :: ERR_CAP_ADDR | ||
10503 | ***************************************************************************/ | ||
10504 | /* GISB_ARBITER :: ERR_CAP_ADDR :: address [31:00] */ | ||
10505 | #define GISB_ARBITER_ERR_CAP_ADDR_address_MASK 0xffffffff | ||
10506 | #define GISB_ARBITER_ERR_CAP_ADDR_address_ALIGN 0 | ||
10507 | #define GISB_ARBITER_ERR_CAP_ADDR_address_BITS 32 | ||
10508 | #define GISB_ARBITER_ERR_CAP_ADDR_address_SHIFT 0 | ||
10509 | |||
10510 | |||
10511 | /**************************************************************************** | ||
10512 | * GISB_ARBITER :: ERR_CAP_DATA | ||
10513 | ***************************************************************************/ | ||
10514 | /* GISB_ARBITER :: ERR_CAP_DATA :: data [31:00] */ | ||
10515 | #define GISB_ARBITER_ERR_CAP_DATA_data_MASK 0xffffffff | ||
10516 | #define GISB_ARBITER_ERR_CAP_DATA_data_ALIGN 0 | ||
10517 | #define GISB_ARBITER_ERR_CAP_DATA_data_BITS 32 | ||
10518 | #define GISB_ARBITER_ERR_CAP_DATA_data_SHIFT 0 | ||
10519 | |||
10520 | |||
10521 | /**************************************************************************** | ||
10522 | * GISB_ARBITER :: ERR_CAP_STATUS | ||
10523 | ***************************************************************************/ | ||
10524 | /* GISB_ARBITER :: ERR_CAP_STATUS :: reserved0 [31:13] */ | ||
10525 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved0_MASK 0xffffe000 | ||
10526 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved0_ALIGN 0 | ||
10527 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved0_BITS 19 | ||
10528 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved0_SHIFT 13 | ||
10529 | |||
10530 | /* GISB_ARBITER :: ERR_CAP_STATUS :: timeout [12:12] */ | ||
10531 | #define GISB_ARBITER_ERR_CAP_STATUS_timeout_MASK 0x00001000 | ||
10532 | #define GISB_ARBITER_ERR_CAP_STATUS_timeout_ALIGN 0 | ||
10533 | #define GISB_ARBITER_ERR_CAP_STATUS_timeout_BITS 1 | ||
10534 | #define GISB_ARBITER_ERR_CAP_STATUS_timeout_SHIFT 12 | ||
10535 | |||
10536 | /* GISB_ARBITER :: ERR_CAP_STATUS :: tea [11:11] */ | ||
10537 | #define GISB_ARBITER_ERR_CAP_STATUS_tea_MASK 0x00000800 | ||
10538 | #define GISB_ARBITER_ERR_CAP_STATUS_tea_ALIGN 0 | ||
10539 | #define GISB_ARBITER_ERR_CAP_STATUS_tea_BITS 1 | ||
10540 | #define GISB_ARBITER_ERR_CAP_STATUS_tea_SHIFT 11 | ||
10541 | |||
10542 | /* GISB_ARBITER :: ERR_CAP_STATUS :: reserved1 [10:06] */ | ||
10543 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved1_MASK 0x000007c0 | ||
10544 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved1_ALIGN 0 | ||
10545 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved1_BITS 5 | ||
10546 | #define GISB_ARBITER_ERR_CAP_STATUS_reserved1_SHIFT 6 | ||
10547 | |||
10548 | /* GISB_ARBITER :: ERR_CAP_STATUS :: bs_b [05:02] */ | ||
10549 | #define GISB_ARBITER_ERR_CAP_STATUS_bs_b_MASK 0x0000003c | ||
10550 | #define GISB_ARBITER_ERR_CAP_STATUS_bs_b_ALIGN 0 | ||
10551 | #define GISB_ARBITER_ERR_CAP_STATUS_bs_b_BITS 4 | ||
10552 | #define GISB_ARBITER_ERR_CAP_STATUS_bs_b_SHIFT 2 | ||
10553 | |||
10554 | /* GISB_ARBITER :: ERR_CAP_STATUS :: write [01:01] */ | ||
10555 | #define GISB_ARBITER_ERR_CAP_STATUS_write_MASK 0x00000002 | ||
10556 | #define GISB_ARBITER_ERR_CAP_STATUS_write_ALIGN 0 | ||
10557 | #define GISB_ARBITER_ERR_CAP_STATUS_write_BITS 1 | ||
10558 | #define GISB_ARBITER_ERR_CAP_STATUS_write_SHIFT 1 | ||
10559 | |||
10560 | /* GISB_ARBITER :: ERR_CAP_STATUS :: valid [00:00] */ | ||
10561 | #define GISB_ARBITER_ERR_CAP_STATUS_valid_MASK 0x00000001 | ||
10562 | #define GISB_ARBITER_ERR_CAP_STATUS_valid_ALIGN 0 | ||
10563 | #define GISB_ARBITER_ERR_CAP_STATUS_valid_BITS 1 | ||
10564 | #define GISB_ARBITER_ERR_CAP_STATUS_valid_SHIFT 0 | ||
10565 | |||
10566 | |||
10567 | /**************************************************************************** | ||
10568 | * GISB_ARBITER :: ERR_CAP_MASTER | ||
10569 | ***************************************************************************/ | ||
10570 | /* GISB_ARBITER :: ERR_CAP_MASTER :: reserved0 [31:06] */ | ||
10571 | #define GISB_ARBITER_ERR_CAP_MASTER_reserved0_MASK 0xffffffc0 | ||
10572 | #define GISB_ARBITER_ERR_CAP_MASTER_reserved0_ALIGN 0 | ||
10573 | #define GISB_ARBITER_ERR_CAP_MASTER_reserved0_BITS 26 | ||
10574 | #define GISB_ARBITER_ERR_CAP_MASTER_reserved0_SHIFT 6 | ||
10575 | |||
10576 | /* GISB_ARBITER :: ERR_CAP_MASTER :: bsp [05:05] */ | ||
10577 | #define GISB_ARBITER_ERR_CAP_MASTER_bsp_MASK 0x00000020 | ||
10578 | #define GISB_ARBITER_ERR_CAP_MASTER_bsp_ALIGN 0 | ||
10579 | #define GISB_ARBITER_ERR_CAP_MASTER_bsp_BITS 1 | ||
10580 | #define GISB_ARBITER_ERR_CAP_MASTER_bsp_SHIFT 5 | ||
10581 | |||
10582 | /* GISB_ARBITER :: ERR_CAP_MASTER :: aes [04:04] */ | ||
10583 | #define GISB_ARBITER_ERR_CAP_MASTER_aes_MASK 0x00000010 | ||
10584 | #define GISB_ARBITER_ERR_CAP_MASTER_aes_ALIGN 0 | ||
10585 | #define GISB_ARBITER_ERR_CAP_MASTER_aes_BITS 1 | ||
10586 | #define GISB_ARBITER_ERR_CAP_MASTER_aes_SHIFT 4 | ||
10587 | |||
10588 | /* GISB_ARBITER :: ERR_CAP_MASTER :: fve [03:03] */ | ||
10589 | #define GISB_ARBITER_ERR_CAP_MASTER_fve_MASK 0x00000008 | ||
10590 | #define GISB_ARBITER_ERR_CAP_MASTER_fve_ALIGN 0 | ||
10591 | #define GISB_ARBITER_ERR_CAP_MASTER_fve_BITS 1 | ||
10592 | #define GISB_ARBITER_ERR_CAP_MASTER_fve_SHIFT 3 | ||
10593 | |||
10594 | /* GISB_ARBITER :: ERR_CAP_MASTER :: tgt [02:02] */ | ||
10595 | #define GISB_ARBITER_ERR_CAP_MASTER_tgt_MASK 0x00000004 | ||
10596 | #define GISB_ARBITER_ERR_CAP_MASTER_tgt_ALIGN 0 | ||
10597 | #define GISB_ARBITER_ERR_CAP_MASTER_tgt_BITS 1 | ||
10598 | #define GISB_ARBITER_ERR_CAP_MASTER_tgt_SHIFT 2 | ||
10599 | |||
10600 | /* GISB_ARBITER :: ERR_CAP_MASTER :: dbu [01:01] */ | ||
10601 | #define GISB_ARBITER_ERR_CAP_MASTER_dbu_MASK 0x00000002 | ||
10602 | #define GISB_ARBITER_ERR_CAP_MASTER_dbu_ALIGN 0 | ||
10603 | #define GISB_ARBITER_ERR_CAP_MASTER_dbu_BITS 1 | ||
10604 | #define GISB_ARBITER_ERR_CAP_MASTER_dbu_SHIFT 1 | ||
10605 | |||
10606 | /* GISB_ARBITER :: ERR_CAP_MASTER :: cce [00:00] */ | ||
10607 | #define GISB_ARBITER_ERR_CAP_MASTER_cce_MASK 0x00000001 | ||
10608 | #define GISB_ARBITER_ERR_CAP_MASTER_cce_ALIGN 0 | ||
10609 | #define GISB_ARBITER_ERR_CAP_MASTER_cce_BITS 1 | ||
10610 | #define GISB_ARBITER_ERR_CAP_MASTER_cce_SHIFT 0 | ||
10611 | |||
10612 | |||
10613 | /**************************************************************************** | ||
10614 | * BCM70012_MISC_TOP_MISC_GR_BRIDGE | ||
10615 | ***************************************************************************/ | ||
10616 | /**************************************************************************** | ||
10617 | * MISC_GR_BRIDGE :: REVISION | ||
10618 | ***************************************************************************/ | ||
10619 | /* MISC_GR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
10620 | #define MISC_GR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
10621 | #define MISC_GR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
10622 | #define MISC_GR_BRIDGE_REVISION_reserved0_BITS 16 | ||
10623 | #define MISC_GR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
10624 | |||
10625 | /* MISC_GR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
10626 | #define MISC_GR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
10627 | #define MISC_GR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
10628 | #define MISC_GR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
10629 | #define MISC_GR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
10630 | |||
10631 | /* MISC_GR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
10632 | #define MISC_GR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
10633 | #define MISC_GR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
10634 | #define MISC_GR_BRIDGE_REVISION_MINOR_BITS 8 | ||
10635 | #define MISC_GR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
10636 | |||
10637 | |||
10638 | /**************************************************************************** | ||
10639 | * MISC_GR_BRIDGE :: CTRL | ||
10640 | ***************************************************************************/ | ||
10641 | /* MISC_GR_BRIDGE :: CTRL :: reserved0 [31:01] */ | ||
10642 | #define MISC_GR_BRIDGE_CTRL_reserved0_MASK 0xfffffffe | ||
10643 | #define MISC_GR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
10644 | #define MISC_GR_BRIDGE_CTRL_reserved0_BITS 31 | ||
10645 | #define MISC_GR_BRIDGE_CTRL_reserved0_SHIFT 1 | ||
10646 | |||
10647 | /* MISC_GR_BRIDGE :: CTRL :: gisb_error_intr [00:00] */ | ||
10648 | #define MISC_GR_BRIDGE_CTRL_gisb_error_intr_MASK 0x00000001 | ||
10649 | #define MISC_GR_BRIDGE_CTRL_gisb_error_intr_ALIGN 0 | ||
10650 | #define MISC_GR_BRIDGE_CTRL_gisb_error_intr_BITS 1 | ||
10651 | #define MISC_GR_BRIDGE_CTRL_gisb_error_intr_SHIFT 0 | ||
10652 | #define MISC_GR_BRIDGE_CTRL_gisb_error_intr_INTR_DISABLE 0 | ||
10653 | #define MISC_GR_BRIDGE_CTRL_gisb_error_intr_INTR_ENABLE 1 | ||
10654 | |||
10655 | |||
10656 | /**************************************************************************** | ||
10657 | * MISC_GR_BRIDGE :: SPARE_SW_RESET_0 | ||
10658 | ***************************************************************************/ | ||
10659 | /* MISC_GR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
10660 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
10661 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
10662 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
10663 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
10664 | |||
10665 | /* MISC_GR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
10666 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
10667 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
10668 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
10669 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
10670 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_DEASSERT 0 | ||
10671 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ASSERT 1 | ||
10672 | |||
10673 | |||
10674 | /**************************************************************************** | ||
10675 | * MISC_GR_BRIDGE :: SPARE_SW_RESET_1 | ||
10676 | ***************************************************************************/ | ||
10677 | /* MISC_GR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
10678 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
10679 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
10680 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
10681 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
10682 | |||
10683 | /* MISC_GR_BRIDGE :: SPARE_SW_RESET_1 :: SPARE_SW_RESET [00:00] */ | ||
10684 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_MASK 0x00000001 | ||
10685 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ALIGN 0 | ||
10686 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_BITS 1 | ||
10687 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_SHIFT 0 | ||
10688 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_DEASSERT 0 | ||
10689 | #define MISC_GR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ASSERT 1 | ||
10690 | |||
10691 | |||
10692 | /**************************************************************************** | ||
10693 | * BCM70012_DBU_TOP_DBU | ||
10694 | ***************************************************************************/ | ||
10695 | /**************************************************************************** | ||
10696 | * DBU :: DBU_CMD | ||
10697 | ***************************************************************************/ | ||
10698 | /* DBU :: DBU_CMD :: reserved0 [31:03] */ | ||
10699 | #define DBU_DBU_CMD_reserved0_MASK 0xfffffff8 | ||
10700 | #define DBU_DBU_CMD_reserved0_ALIGN 0 | ||
10701 | #define DBU_DBU_CMD_reserved0_BITS 29 | ||
10702 | #define DBU_DBU_CMD_reserved0_SHIFT 3 | ||
10703 | |||
10704 | /* DBU :: DBU_CMD :: RX_OVERFLOW [02:02] */ | ||
10705 | #define DBU_DBU_CMD_RX_OVERFLOW_MASK 0x00000004 | ||
10706 | #define DBU_DBU_CMD_RX_OVERFLOW_ALIGN 0 | ||
10707 | #define DBU_DBU_CMD_RX_OVERFLOW_BITS 1 | ||
10708 | #define DBU_DBU_CMD_RX_OVERFLOW_SHIFT 2 | ||
10709 | |||
10710 | /* DBU :: DBU_CMD :: RX_ERROR [01:01] */ | ||
10711 | #define DBU_DBU_CMD_RX_ERROR_MASK 0x00000002 | ||
10712 | #define DBU_DBU_CMD_RX_ERROR_ALIGN 0 | ||
10713 | #define DBU_DBU_CMD_RX_ERROR_BITS 1 | ||
10714 | #define DBU_DBU_CMD_RX_ERROR_SHIFT 1 | ||
10715 | |||
10716 | /* DBU :: DBU_CMD :: ENABLE [00:00] */ | ||
10717 | #define DBU_DBU_CMD_ENABLE_MASK 0x00000001 | ||
10718 | #define DBU_DBU_CMD_ENABLE_ALIGN 0 | ||
10719 | #define DBU_DBU_CMD_ENABLE_BITS 1 | ||
10720 | #define DBU_DBU_CMD_ENABLE_SHIFT 0 | ||
10721 | |||
10722 | |||
10723 | /**************************************************************************** | ||
10724 | * DBU :: DBU_STATUS | ||
10725 | ***************************************************************************/ | ||
10726 | /* DBU :: DBU_STATUS :: reserved0 [31:02] */ | ||
10727 | #define DBU_DBU_STATUS_reserved0_MASK 0xfffffffc | ||
10728 | #define DBU_DBU_STATUS_reserved0_ALIGN 0 | ||
10729 | #define DBU_DBU_STATUS_reserved0_BITS 30 | ||
10730 | #define DBU_DBU_STATUS_reserved0_SHIFT 2 | ||
10731 | |||
10732 | /* DBU :: DBU_STATUS :: TXDATA_OCCUPIED [01:01] */ | ||
10733 | #define DBU_DBU_STATUS_TXDATA_OCCUPIED_MASK 0x00000002 | ||
10734 | #define DBU_DBU_STATUS_TXDATA_OCCUPIED_ALIGN 0 | ||
10735 | #define DBU_DBU_STATUS_TXDATA_OCCUPIED_BITS 1 | ||
10736 | #define DBU_DBU_STATUS_TXDATA_OCCUPIED_SHIFT 1 | ||
10737 | |||
10738 | /* DBU :: DBU_STATUS :: RXDATA_VALID [00:00] */ | ||
10739 | #define DBU_DBU_STATUS_RXDATA_VALID_MASK 0x00000001 | ||
10740 | #define DBU_DBU_STATUS_RXDATA_VALID_ALIGN 0 | ||
10741 | #define DBU_DBU_STATUS_RXDATA_VALID_BITS 1 | ||
10742 | #define DBU_DBU_STATUS_RXDATA_VALID_SHIFT 0 | ||
10743 | |||
10744 | |||
10745 | /**************************************************************************** | ||
10746 | * DBU :: DBU_CONFIG | ||
10747 | ***************************************************************************/ | ||
10748 | /* DBU :: DBU_CONFIG :: reserved0 [31:03] */ | ||
10749 | #define DBU_DBU_CONFIG_reserved0_MASK 0xfffffff8 | ||
10750 | #define DBU_DBU_CONFIG_reserved0_ALIGN 0 | ||
10751 | #define DBU_DBU_CONFIG_reserved0_BITS 29 | ||
10752 | #define DBU_DBU_CONFIG_reserved0_SHIFT 3 | ||
10753 | |||
10754 | /* DBU :: DBU_CONFIG :: CRLF_ENABLE [02:02] */ | ||
10755 | #define DBU_DBU_CONFIG_CRLF_ENABLE_MASK 0x00000004 | ||
10756 | #define DBU_DBU_CONFIG_CRLF_ENABLE_ALIGN 0 | ||
10757 | #define DBU_DBU_CONFIG_CRLF_ENABLE_BITS 1 | ||
10758 | #define DBU_DBU_CONFIG_CRLF_ENABLE_SHIFT 2 | ||
10759 | |||
10760 | /* DBU :: DBU_CONFIG :: DEBUGSM_ENABLE [01:01] */ | ||
10761 | #define DBU_DBU_CONFIG_DEBUGSM_ENABLE_MASK 0x00000002 | ||
10762 | #define DBU_DBU_CONFIG_DEBUGSM_ENABLE_ALIGN 0 | ||
10763 | #define DBU_DBU_CONFIG_DEBUGSM_ENABLE_BITS 1 | ||
10764 | #define DBU_DBU_CONFIG_DEBUGSM_ENABLE_SHIFT 1 | ||
10765 | |||
10766 | /* DBU :: DBU_CONFIG :: TIMING_OVERRIDE [00:00] */ | ||
10767 | #define DBU_DBU_CONFIG_TIMING_OVERRIDE_MASK 0x00000001 | ||
10768 | #define DBU_DBU_CONFIG_TIMING_OVERRIDE_ALIGN 0 | ||
10769 | #define DBU_DBU_CONFIG_TIMING_OVERRIDE_BITS 1 | ||
10770 | #define DBU_DBU_CONFIG_TIMING_OVERRIDE_SHIFT 0 | ||
10771 | |||
10772 | |||
10773 | /**************************************************************************** | ||
10774 | * DBU :: DBU_TIMING | ||
10775 | ***************************************************************************/ | ||
10776 | /* DBU :: DBU_TIMING :: BIT_INTERVAL [31:16] */ | ||
10777 | #define DBU_DBU_TIMING_BIT_INTERVAL_MASK 0xffff0000 | ||
10778 | #define DBU_DBU_TIMING_BIT_INTERVAL_ALIGN 0 | ||
10779 | #define DBU_DBU_TIMING_BIT_INTERVAL_BITS 16 | ||
10780 | #define DBU_DBU_TIMING_BIT_INTERVAL_SHIFT 16 | ||
10781 | |||
10782 | /* DBU :: DBU_TIMING :: FB_SMPL_OFFSET [15:00] */ | ||
10783 | #define DBU_DBU_TIMING_FB_SMPL_OFFSET_MASK 0x0000ffff | ||
10784 | #define DBU_DBU_TIMING_FB_SMPL_OFFSET_ALIGN 0 | ||
10785 | #define DBU_DBU_TIMING_FB_SMPL_OFFSET_BITS 16 | ||
10786 | #define DBU_DBU_TIMING_FB_SMPL_OFFSET_SHIFT 0 | ||
10787 | |||
10788 | |||
10789 | /**************************************************************************** | ||
10790 | * DBU :: DBU_RXDATA | ||
10791 | ***************************************************************************/ | ||
10792 | /* DBU :: DBU_RXDATA :: reserved0 [31:09] */ | ||
10793 | #define DBU_DBU_RXDATA_reserved0_MASK 0xfffffe00 | ||
10794 | #define DBU_DBU_RXDATA_reserved0_ALIGN 0 | ||
10795 | #define DBU_DBU_RXDATA_reserved0_BITS 23 | ||
10796 | #define DBU_DBU_RXDATA_reserved0_SHIFT 9 | ||
10797 | |||
10798 | /* DBU :: DBU_RXDATA :: ERROR [08:08] */ | ||
10799 | #define DBU_DBU_RXDATA_ERROR_MASK 0x00000100 | ||
10800 | #define DBU_DBU_RXDATA_ERROR_ALIGN 0 | ||
10801 | #define DBU_DBU_RXDATA_ERROR_BITS 1 | ||
10802 | #define DBU_DBU_RXDATA_ERROR_SHIFT 8 | ||
10803 | |||
10804 | /* DBU :: DBU_RXDATA :: VALUE [07:00] */ | ||
10805 | #define DBU_DBU_RXDATA_VALUE_MASK 0x000000ff | ||
10806 | #define DBU_DBU_RXDATA_VALUE_ALIGN 0 | ||
10807 | #define DBU_DBU_RXDATA_VALUE_BITS 8 | ||
10808 | #define DBU_DBU_RXDATA_VALUE_SHIFT 0 | ||
10809 | |||
10810 | |||
10811 | /**************************************************************************** | ||
10812 | * DBU :: DBU_TXDATA | ||
10813 | ***************************************************************************/ | ||
10814 | /* DBU :: DBU_TXDATA :: reserved0 [31:08] */ | ||
10815 | #define DBU_DBU_TXDATA_reserved0_MASK 0xffffff00 | ||
10816 | #define DBU_DBU_TXDATA_reserved0_ALIGN 0 | ||
10817 | #define DBU_DBU_TXDATA_reserved0_BITS 24 | ||
10818 | #define DBU_DBU_TXDATA_reserved0_SHIFT 8 | ||
10819 | |||
10820 | /* DBU :: DBU_TXDATA :: VALUE [07:00] */ | ||
10821 | #define DBU_DBU_TXDATA_VALUE_MASK 0x000000ff | ||
10822 | #define DBU_DBU_TXDATA_VALUE_ALIGN 0 | ||
10823 | #define DBU_DBU_TXDATA_VALUE_BITS 8 | ||
10824 | #define DBU_DBU_TXDATA_VALUE_SHIFT 0 | ||
10825 | |||
10826 | |||
10827 | /**************************************************************************** | ||
10828 | * BCM70012_DBU_TOP_DBU_RGR_BRIDGE | ||
10829 | ***************************************************************************/ | ||
10830 | /**************************************************************************** | ||
10831 | * DBU_RGR_BRIDGE :: REVISION | ||
10832 | ***************************************************************************/ | ||
10833 | /* DBU_RGR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
10834 | #define DBU_RGR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
10835 | #define DBU_RGR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
10836 | #define DBU_RGR_BRIDGE_REVISION_reserved0_BITS 16 | ||
10837 | #define DBU_RGR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
10838 | |||
10839 | /* DBU_RGR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
10840 | #define DBU_RGR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
10841 | #define DBU_RGR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
10842 | #define DBU_RGR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
10843 | #define DBU_RGR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
10844 | |||
10845 | /* DBU_RGR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
10846 | #define DBU_RGR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
10847 | #define DBU_RGR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
10848 | #define DBU_RGR_BRIDGE_REVISION_MINOR_BITS 8 | ||
10849 | #define DBU_RGR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
10850 | |||
10851 | |||
10852 | /**************************************************************************** | ||
10853 | * DBU_RGR_BRIDGE :: CTRL | ||
10854 | ***************************************************************************/ | ||
10855 | /* DBU_RGR_BRIDGE :: CTRL :: reserved0 [31:02] */ | ||
10856 | #define DBU_RGR_BRIDGE_CTRL_reserved0_MASK 0xfffffffc | ||
10857 | #define DBU_RGR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
10858 | #define DBU_RGR_BRIDGE_CTRL_reserved0_BITS 30 | ||
10859 | #define DBU_RGR_BRIDGE_CTRL_reserved0_SHIFT 2 | ||
10860 | |||
10861 | /* DBU_RGR_BRIDGE :: CTRL :: rbus_error_intr [01:01] */ | ||
10862 | #define DBU_RGR_BRIDGE_CTRL_rbus_error_intr_MASK 0x00000002 | ||
10863 | #define DBU_RGR_BRIDGE_CTRL_rbus_error_intr_ALIGN 0 | ||
10864 | #define DBU_RGR_BRIDGE_CTRL_rbus_error_intr_BITS 1 | ||
10865 | #define DBU_RGR_BRIDGE_CTRL_rbus_error_intr_SHIFT 1 | ||
10866 | #define DBU_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_DISABLE 0 | ||
10867 | #define DBU_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_ENABLE 1 | ||
10868 | |||
10869 | /* DBU_RGR_BRIDGE :: CTRL :: gisb_error_intr [00:00] */ | ||
10870 | #define DBU_RGR_BRIDGE_CTRL_gisb_error_intr_MASK 0x00000001 | ||
10871 | #define DBU_RGR_BRIDGE_CTRL_gisb_error_intr_ALIGN 0 | ||
10872 | #define DBU_RGR_BRIDGE_CTRL_gisb_error_intr_BITS 1 | ||
10873 | #define DBU_RGR_BRIDGE_CTRL_gisb_error_intr_SHIFT 0 | ||
10874 | #define DBU_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_DISABLE 0 | ||
10875 | #define DBU_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_ENABLE 1 | ||
10876 | |||
10877 | |||
10878 | /**************************************************************************** | ||
10879 | * DBU_RGR_BRIDGE :: RBUS_TIMER | ||
10880 | ***************************************************************************/ | ||
10881 | /* DBU_RGR_BRIDGE :: RBUS_TIMER :: reserved0 [31:16] */ | ||
10882 | #define DBU_RGR_BRIDGE_RBUS_TIMER_reserved0_MASK 0xffff0000 | ||
10883 | #define DBU_RGR_BRIDGE_RBUS_TIMER_reserved0_ALIGN 0 | ||
10884 | #define DBU_RGR_BRIDGE_RBUS_TIMER_reserved0_BITS 16 | ||
10885 | #define DBU_RGR_BRIDGE_RBUS_TIMER_reserved0_SHIFT 16 | ||
10886 | |||
10887 | /* DBU_RGR_BRIDGE :: RBUS_TIMER :: timer_value [15:00] */ | ||
10888 | #define DBU_RGR_BRIDGE_RBUS_TIMER_timer_value_MASK 0x0000ffff | ||
10889 | #define DBU_RGR_BRIDGE_RBUS_TIMER_timer_value_ALIGN 0 | ||
10890 | #define DBU_RGR_BRIDGE_RBUS_TIMER_timer_value_BITS 16 | ||
10891 | #define DBU_RGR_BRIDGE_RBUS_TIMER_timer_value_SHIFT 0 | ||
10892 | |||
10893 | |||
10894 | /**************************************************************************** | ||
10895 | * DBU_RGR_BRIDGE :: SPARE_SW_RESET_0 | ||
10896 | ***************************************************************************/ | ||
10897 | /* DBU_RGR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
10898 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
10899 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
10900 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
10901 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
10902 | |||
10903 | /* DBU_RGR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
10904 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
10905 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
10906 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
10907 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
10908 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_DEASSERT 0 | ||
10909 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ASSERT 1 | ||
10910 | |||
10911 | |||
10912 | /**************************************************************************** | ||
10913 | * DBU_RGR_BRIDGE :: SPARE_SW_RESET_1 | ||
10914 | ***************************************************************************/ | ||
10915 | /* DBU_RGR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
10916 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
10917 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
10918 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
10919 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
10920 | |||
10921 | /* DBU_RGR_BRIDGE :: SPARE_SW_RESET_1 :: SPARE_SW_RESET [00:00] */ | ||
10922 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_MASK 0x00000001 | ||
10923 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ALIGN 0 | ||
10924 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_BITS 1 | ||
10925 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_SHIFT 0 | ||
10926 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_DEASSERT 0 | ||
10927 | #define DBU_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ASSERT 1 | ||
10928 | |||
10929 | |||
10930 | /**************************************************************************** | ||
10931 | * BCM70012_OTP_TOP_OTP | ||
10932 | ***************************************************************************/ | ||
10933 | /**************************************************************************** | ||
10934 | * OTP :: CONFIG_INFO | ||
10935 | ***************************************************************************/ | ||
10936 | /* OTP :: CONFIG_INFO :: reserved0 [31:22] */ | ||
10937 | #define OTP_CONFIG_INFO_reserved0_MASK 0xffc00000 | ||
10938 | #define OTP_CONFIG_INFO_reserved0_ALIGN 0 | ||
10939 | #define OTP_CONFIG_INFO_reserved0_BITS 10 | ||
10940 | #define OTP_CONFIG_INFO_reserved0_SHIFT 22 | ||
10941 | |||
10942 | /* OTP :: CONFIG_INFO :: SELVL [21:20] */ | ||
10943 | #define OTP_CONFIG_INFO_SELVL_MASK 0x00300000 | ||
10944 | #define OTP_CONFIG_INFO_SELVL_ALIGN 0 | ||
10945 | #define OTP_CONFIG_INFO_SELVL_BITS 2 | ||
10946 | #define OTP_CONFIG_INFO_SELVL_SHIFT 20 | ||
10947 | |||
10948 | /* OTP :: CONFIG_INFO :: reserved1 [19:17] */ | ||
10949 | #define OTP_CONFIG_INFO_reserved1_MASK 0x000e0000 | ||
10950 | #define OTP_CONFIG_INFO_reserved1_ALIGN 0 | ||
10951 | #define OTP_CONFIG_INFO_reserved1_BITS 3 | ||
10952 | #define OTP_CONFIG_INFO_reserved1_SHIFT 17 | ||
10953 | |||
10954 | /* OTP :: CONFIG_INFO :: PTEST [16:16] */ | ||
10955 | #define OTP_CONFIG_INFO_PTEST_MASK 0x00010000 | ||
10956 | #define OTP_CONFIG_INFO_PTEST_ALIGN 0 | ||
10957 | #define OTP_CONFIG_INFO_PTEST_BITS 1 | ||
10958 | #define OTP_CONFIG_INFO_PTEST_SHIFT 16 | ||
10959 | |||
10960 | /* OTP :: CONFIG_INFO :: reserved2 [15:13] */ | ||
10961 | #define OTP_CONFIG_INFO_reserved2_MASK 0x0000e000 | ||
10962 | #define OTP_CONFIG_INFO_reserved2_ALIGN 0 | ||
10963 | #define OTP_CONFIG_INFO_reserved2_BITS 3 | ||
10964 | #define OTP_CONFIG_INFO_reserved2_SHIFT 13 | ||
10965 | |||
10966 | /* OTP :: CONFIG_INFO :: MAX_REDUNDANT_ROWS [12:08] */ | ||
10967 | #define OTP_CONFIG_INFO_MAX_REDUNDANT_ROWS_MASK 0x00001f00 | ||
10968 | #define OTP_CONFIG_INFO_MAX_REDUNDANT_ROWS_ALIGN 0 | ||
10969 | #define OTP_CONFIG_INFO_MAX_REDUNDANT_ROWS_BITS 5 | ||
10970 | #define OTP_CONFIG_INFO_MAX_REDUNDANT_ROWS_SHIFT 8 | ||
10971 | |||
10972 | /* OTP :: CONFIG_INFO :: MAX_RETRY [07:04] */ | ||
10973 | #define OTP_CONFIG_INFO_MAX_RETRY_MASK 0x000000f0 | ||
10974 | #define OTP_CONFIG_INFO_MAX_RETRY_ALIGN 0 | ||
10975 | #define OTP_CONFIG_INFO_MAX_RETRY_BITS 4 | ||
10976 | #define OTP_CONFIG_INFO_MAX_RETRY_SHIFT 4 | ||
10977 | |||
10978 | /* OTP :: CONFIG_INFO :: reserved3 [03:01] */ | ||
10979 | #define OTP_CONFIG_INFO_reserved3_MASK 0x0000000e | ||
10980 | #define OTP_CONFIG_INFO_reserved3_ALIGN 0 | ||
10981 | #define OTP_CONFIG_INFO_reserved3_BITS 3 | ||
10982 | #define OTP_CONFIG_INFO_reserved3_SHIFT 1 | ||
10983 | |||
10984 | /* OTP :: CONFIG_INFO :: PROG_MODE [00:00] */ | ||
10985 | #define OTP_CONFIG_INFO_PROG_MODE_MASK 0x00000001 | ||
10986 | #define OTP_CONFIG_INFO_PROG_MODE_ALIGN 0 | ||
10987 | #define OTP_CONFIG_INFO_PROG_MODE_BITS 1 | ||
10988 | #define OTP_CONFIG_INFO_PROG_MODE_SHIFT 0 | ||
10989 | |||
10990 | |||
10991 | /**************************************************************************** | ||
10992 | * OTP :: CMD | ||
10993 | ***************************************************************************/ | ||
10994 | /* OTP :: CMD :: reserved0 [31:02] */ | ||
10995 | #define OTP_CMD_reserved0_MASK 0xfffffffc | ||
10996 | #define OTP_CMD_reserved0_ALIGN 0 | ||
10997 | #define OTP_CMD_reserved0_BITS 30 | ||
10998 | #define OTP_CMD_reserved0_SHIFT 2 | ||
10999 | |||
11000 | /* OTP :: CMD :: KEYS_AVAIL [01:01] */ | ||
11001 | #define OTP_CMD_KEYS_AVAIL_MASK 0x00000002 | ||
11002 | #define OTP_CMD_KEYS_AVAIL_ALIGN 0 | ||
11003 | #define OTP_CMD_KEYS_AVAIL_BITS 1 | ||
11004 | #define OTP_CMD_KEYS_AVAIL_SHIFT 1 | ||
11005 | |||
11006 | /* OTP :: CMD :: PROGRAM_OTP [00:00] */ | ||
11007 | #define OTP_CMD_PROGRAM_OTP_MASK 0x00000001 | ||
11008 | #define OTP_CMD_PROGRAM_OTP_ALIGN 0 | ||
11009 | #define OTP_CMD_PROGRAM_OTP_BITS 1 | ||
11010 | #define OTP_CMD_PROGRAM_OTP_SHIFT 0 | ||
11011 | |||
11012 | |||
11013 | /**************************************************************************** | ||
11014 | * OTP :: STATUS | ||
11015 | ***************************************************************************/ | ||
11016 | /* OTP :: STATUS :: reserved0 [31:30] */ | ||
11017 | #define OTP_STATUS_reserved0_MASK 0xc0000000 | ||
11018 | #define OTP_STATUS_reserved0_ALIGN 0 | ||
11019 | #define OTP_STATUS_reserved0_BITS 2 | ||
11020 | #define OTP_STATUS_reserved0_SHIFT 30 | ||
11021 | |||
11022 | /* OTP :: STATUS :: TOTAL_RETRIES [29:17] */ | ||
11023 | #define OTP_STATUS_TOTAL_RETRIES_MASK 0x3ffe0000 | ||
11024 | #define OTP_STATUS_TOTAL_RETRIES_ALIGN 0 | ||
11025 | #define OTP_STATUS_TOTAL_RETRIES_BITS 13 | ||
11026 | #define OTP_STATUS_TOTAL_RETRIES_SHIFT 17 | ||
11027 | |||
11028 | /* OTP :: STATUS :: ROWS_USED [16:12] */ | ||
11029 | #define OTP_STATUS_ROWS_USED_MASK 0x0001f000 | ||
11030 | #define OTP_STATUS_ROWS_USED_ALIGN 0 | ||
11031 | #define OTP_STATUS_ROWS_USED_BITS 5 | ||
11032 | #define OTP_STATUS_ROWS_USED_SHIFT 12 | ||
11033 | |||
11034 | /* OTP :: STATUS :: MAX_RETRIES [11:08] */ | ||
11035 | #define OTP_STATUS_MAX_RETRIES_MASK 0x00000f00 | ||
11036 | #define OTP_STATUS_MAX_RETRIES_ALIGN 0 | ||
11037 | #define OTP_STATUS_MAX_RETRIES_BITS 4 | ||
11038 | #define OTP_STATUS_MAX_RETRIES_SHIFT 8 | ||
11039 | |||
11040 | /* OTP :: STATUS :: PROG_STATUS [07:04] */ | ||
11041 | #define OTP_STATUS_PROG_STATUS_MASK 0x000000f0 | ||
11042 | #define OTP_STATUS_PROG_STATUS_ALIGN 0 | ||
11043 | #define OTP_STATUS_PROG_STATUS_BITS 4 | ||
11044 | #define OTP_STATUS_PROG_STATUS_SHIFT 4 | ||
11045 | |||
11046 | /* OTP :: STATUS :: reserved1 [03:03] */ | ||
11047 | #define OTP_STATUS_reserved1_MASK 0x00000008 | ||
11048 | #define OTP_STATUS_reserved1_ALIGN 0 | ||
11049 | #define OTP_STATUS_reserved1_BITS 1 | ||
11050 | #define OTP_STATUS_reserved1_SHIFT 3 | ||
11051 | |||
11052 | /* OTP :: STATUS :: CHECKSUM_MISMATCH [02:02] */ | ||
11053 | #define OTP_STATUS_CHECKSUM_MISMATCH_MASK 0x00000004 | ||
11054 | #define OTP_STATUS_CHECKSUM_MISMATCH_ALIGN 0 | ||
11055 | #define OTP_STATUS_CHECKSUM_MISMATCH_BITS 1 | ||
11056 | #define OTP_STATUS_CHECKSUM_MISMATCH_SHIFT 2 | ||
11057 | |||
11058 | /* OTP :: STATUS :: INSUFFICIENT_ROWS [01:01] */ | ||
11059 | #define OTP_STATUS_INSUFFICIENT_ROWS_MASK 0x00000002 | ||
11060 | #define OTP_STATUS_INSUFFICIENT_ROWS_ALIGN 0 | ||
11061 | #define OTP_STATUS_INSUFFICIENT_ROWS_BITS 1 | ||
11062 | #define OTP_STATUS_INSUFFICIENT_ROWS_SHIFT 1 | ||
11063 | |||
11064 | /* OTP :: STATUS :: PROGRAMMED [00:00] */ | ||
11065 | #define OTP_STATUS_PROGRAMMED_MASK 0x00000001 | ||
11066 | #define OTP_STATUS_PROGRAMMED_ALIGN 0 | ||
11067 | #define OTP_STATUS_PROGRAMMED_BITS 1 | ||
11068 | #define OTP_STATUS_PROGRAMMED_SHIFT 0 | ||
11069 | |||
11070 | |||
11071 | /**************************************************************************** | ||
11072 | * OTP :: CONTENT_MISC | ||
11073 | ***************************************************************************/ | ||
11074 | /* OTP :: CONTENT_MISC :: reserved0 [31:06] */ | ||
11075 | #define OTP_CONTENT_MISC_reserved0_MASK 0xffffffc0 | ||
11076 | #define OTP_CONTENT_MISC_reserved0_ALIGN 0 | ||
11077 | #define OTP_CONTENT_MISC_reserved0_BITS 26 | ||
11078 | #define OTP_CONTENT_MISC_reserved0_SHIFT 6 | ||
11079 | |||
11080 | /* OTP :: CONTENT_MISC :: DCI_SECURITY_ENABLE [05:05] */ | ||
11081 | #define OTP_CONTENT_MISC_DCI_SECURITY_ENABLE_MASK 0x00000020 | ||
11082 | #define OTP_CONTENT_MISC_DCI_SECURITY_ENABLE_ALIGN 0 | ||
11083 | #define OTP_CONTENT_MISC_DCI_SECURITY_ENABLE_BITS 1 | ||
11084 | #define OTP_CONTENT_MISC_DCI_SECURITY_ENABLE_SHIFT 5 | ||
11085 | |||
11086 | /* OTP :: CONTENT_MISC :: AES_SECURITY_ENABLE [04:04] */ | ||
11087 | #define OTP_CONTENT_MISC_AES_SECURITY_ENABLE_MASK 0x00000010 | ||
11088 | #define OTP_CONTENT_MISC_AES_SECURITY_ENABLE_ALIGN 0 | ||
11089 | #define OTP_CONTENT_MISC_AES_SECURITY_ENABLE_BITS 1 | ||
11090 | #define OTP_CONTENT_MISC_AES_SECURITY_ENABLE_SHIFT 4 | ||
11091 | |||
11092 | /* OTP :: CONTENT_MISC :: DISABLE_JTAG [03:03] */ | ||
11093 | #define OTP_CONTENT_MISC_DISABLE_JTAG_MASK 0x00000008 | ||
11094 | #define OTP_CONTENT_MISC_DISABLE_JTAG_ALIGN 0 | ||
11095 | #define OTP_CONTENT_MISC_DISABLE_JTAG_BITS 1 | ||
11096 | #define OTP_CONTENT_MISC_DISABLE_JTAG_SHIFT 3 | ||
11097 | |||
11098 | /* OTP :: CONTENT_MISC :: DISABLE_UART [02:02] */ | ||
11099 | #define OTP_CONTENT_MISC_DISABLE_UART_MASK 0x00000004 | ||
11100 | #define OTP_CONTENT_MISC_DISABLE_UART_ALIGN 0 | ||
11101 | #define OTP_CONTENT_MISC_DISABLE_UART_BITS 1 | ||
11102 | #define OTP_CONTENT_MISC_DISABLE_UART_SHIFT 2 | ||
11103 | |||
11104 | /* OTP :: CONTENT_MISC :: ENABLE_RANDOMIZATION [01:01] */ | ||
11105 | #define OTP_CONTENT_MISC_ENABLE_RANDOMIZATION_MASK 0x00000002 | ||
11106 | #define OTP_CONTENT_MISC_ENABLE_RANDOMIZATION_ALIGN 0 | ||
11107 | #define OTP_CONTENT_MISC_ENABLE_RANDOMIZATION_BITS 1 | ||
11108 | #define OTP_CONTENT_MISC_ENABLE_RANDOMIZATION_SHIFT 1 | ||
11109 | |||
11110 | /* OTP :: CONTENT_MISC :: OTP_SECURITY_ENABLE [00:00] */ | ||
11111 | #define OTP_CONTENT_MISC_OTP_SECURITY_ENABLE_MASK 0x00000001 | ||
11112 | #define OTP_CONTENT_MISC_OTP_SECURITY_ENABLE_ALIGN 0 | ||
11113 | #define OTP_CONTENT_MISC_OTP_SECURITY_ENABLE_BITS 1 | ||
11114 | #define OTP_CONTENT_MISC_OTP_SECURITY_ENABLE_SHIFT 0 | ||
11115 | |||
11116 | |||
11117 | /**************************************************************************** | ||
11118 | * OTP :: CONTENT_AES_0 | ||
11119 | ***************************************************************************/ | ||
11120 | /* OTP :: CONTENT_AES_0 :: AES_KEY_0 [31:00] */ | ||
11121 | #define OTP_CONTENT_AES_0_AES_KEY_0_MASK 0xffffffff | ||
11122 | #define OTP_CONTENT_AES_0_AES_KEY_0_ALIGN 0 | ||
11123 | #define OTP_CONTENT_AES_0_AES_KEY_0_BITS 32 | ||
11124 | #define OTP_CONTENT_AES_0_AES_KEY_0_SHIFT 0 | ||
11125 | |||
11126 | |||
11127 | /**************************************************************************** | ||
11128 | * OTP :: CONTENT_AES_1 | ||
11129 | ***************************************************************************/ | ||
11130 | /* OTP :: CONTENT_AES_1 :: AES_KEY_1 [31:00] */ | ||
11131 | #define OTP_CONTENT_AES_1_AES_KEY_1_MASK 0xffffffff | ||
11132 | #define OTP_CONTENT_AES_1_AES_KEY_1_ALIGN 0 | ||
11133 | #define OTP_CONTENT_AES_1_AES_KEY_1_BITS 32 | ||
11134 | #define OTP_CONTENT_AES_1_AES_KEY_1_SHIFT 0 | ||
11135 | |||
11136 | |||
11137 | /**************************************************************************** | ||
11138 | * OTP :: CONTENT_AES_2 | ||
11139 | ***************************************************************************/ | ||
11140 | /* OTP :: CONTENT_AES_2 :: AES_KEY_2 [31:00] */ | ||
11141 | #define OTP_CONTENT_AES_2_AES_KEY_2_MASK 0xffffffff | ||
11142 | #define OTP_CONTENT_AES_2_AES_KEY_2_ALIGN 0 | ||
11143 | #define OTP_CONTENT_AES_2_AES_KEY_2_BITS 32 | ||
11144 | #define OTP_CONTENT_AES_2_AES_KEY_2_SHIFT 0 | ||
11145 | |||
11146 | |||
11147 | /**************************************************************************** | ||
11148 | * OTP :: CONTENT_AES_3 | ||
11149 | ***************************************************************************/ | ||
11150 | /* OTP :: CONTENT_AES_3 :: AES_KEY_3 [31:00] */ | ||
11151 | #define OTP_CONTENT_AES_3_AES_KEY_3_MASK 0xffffffff | ||
11152 | #define OTP_CONTENT_AES_3_AES_KEY_3_ALIGN 0 | ||
11153 | #define OTP_CONTENT_AES_3_AES_KEY_3_BITS 32 | ||
11154 | #define OTP_CONTENT_AES_3_AES_KEY_3_SHIFT 0 | ||
11155 | |||
11156 | |||
11157 | /**************************************************************************** | ||
11158 | * OTP :: CONTENT_SHA_0 | ||
11159 | ***************************************************************************/ | ||
11160 | /* OTP :: CONTENT_SHA_0 :: SHA_KEY_0 [31:00] */ | ||
11161 | #define OTP_CONTENT_SHA_0_SHA_KEY_0_MASK 0xffffffff | ||
11162 | #define OTP_CONTENT_SHA_0_SHA_KEY_0_ALIGN 0 | ||
11163 | #define OTP_CONTENT_SHA_0_SHA_KEY_0_BITS 32 | ||
11164 | #define OTP_CONTENT_SHA_0_SHA_KEY_0_SHIFT 0 | ||
11165 | |||
11166 | |||
11167 | /**************************************************************************** | ||
11168 | * OTP :: CONTENT_SHA_1 | ||
11169 | ***************************************************************************/ | ||
11170 | /* OTP :: CONTENT_SHA_1 :: SHA_KEY_1 [31:00] */ | ||
11171 | #define OTP_CONTENT_SHA_1_SHA_KEY_1_MASK 0xffffffff | ||
11172 | #define OTP_CONTENT_SHA_1_SHA_KEY_1_ALIGN 0 | ||
11173 | #define OTP_CONTENT_SHA_1_SHA_KEY_1_BITS 32 | ||
11174 | #define OTP_CONTENT_SHA_1_SHA_KEY_1_SHIFT 0 | ||
11175 | |||
11176 | |||
11177 | /**************************************************************************** | ||
11178 | * OTP :: CONTENT_SHA_2 | ||
11179 | ***************************************************************************/ | ||
11180 | /* OTP :: CONTENT_SHA_2 :: SHA_KEY_2 [31:00] */ | ||
11181 | #define OTP_CONTENT_SHA_2_SHA_KEY_2_MASK 0xffffffff | ||
11182 | #define OTP_CONTENT_SHA_2_SHA_KEY_2_ALIGN 0 | ||
11183 | #define OTP_CONTENT_SHA_2_SHA_KEY_2_BITS 32 | ||
11184 | #define OTP_CONTENT_SHA_2_SHA_KEY_2_SHIFT 0 | ||
11185 | |||
11186 | |||
11187 | /**************************************************************************** | ||
11188 | * OTP :: CONTENT_SHA_3 | ||
11189 | ***************************************************************************/ | ||
11190 | /* OTP :: CONTENT_SHA_3 :: SHA_KEY_3 [31:00] */ | ||
11191 | #define OTP_CONTENT_SHA_3_SHA_KEY_3_MASK 0xffffffff | ||
11192 | #define OTP_CONTENT_SHA_3_SHA_KEY_3_ALIGN 0 | ||
11193 | #define OTP_CONTENT_SHA_3_SHA_KEY_3_BITS 32 | ||
11194 | #define OTP_CONTENT_SHA_3_SHA_KEY_3_SHIFT 0 | ||
11195 | |||
11196 | |||
11197 | /**************************************************************************** | ||
11198 | * OTP :: CONTENT_SHA_4 | ||
11199 | ***************************************************************************/ | ||
11200 | /* OTP :: CONTENT_SHA_4 :: SHA_KEY_4 [31:00] */ | ||
11201 | #define OTP_CONTENT_SHA_4_SHA_KEY_4_MASK 0xffffffff | ||
11202 | #define OTP_CONTENT_SHA_4_SHA_KEY_4_ALIGN 0 | ||
11203 | #define OTP_CONTENT_SHA_4_SHA_KEY_4_BITS 32 | ||
11204 | #define OTP_CONTENT_SHA_4_SHA_KEY_4_SHIFT 0 | ||
11205 | |||
11206 | |||
11207 | /**************************************************************************** | ||
11208 | * OTP :: CONTENT_SHA_5 | ||
11209 | ***************************************************************************/ | ||
11210 | /* OTP :: CONTENT_SHA_5 :: SHA_KEY_5 [31:00] */ | ||
11211 | #define OTP_CONTENT_SHA_5_SHA_KEY_5_MASK 0xffffffff | ||
11212 | #define OTP_CONTENT_SHA_5_SHA_KEY_5_ALIGN 0 | ||
11213 | #define OTP_CONTENT_SHA_5_SHA_KEY_5_BITS 32 | ||
11214 | #define OTP_CONTENT_SHA_5_SHA_KEY_5_SHIFT 0 | ||
11215 | |||
11216 | |||
11217 | /**************************************************************************** | ||
11218 | * OTP :: CONTENT_SHA_6 | ||
11219 | ***************************************************************************/ | ||
11220 | /* OTP :: CONTENT_SHA_6 :: SHA_KEY_6 [31:00] */ | ||
11221 | #define OTP_CONTENT_SHA_6_SHA_KEY_6_MASK 0xffffffff | ||
11222 | #define OTP_CONTENT_SHA_6_SHA_KEY_6_ALIGN 0 | ||
11223 | #define OTP_CONTENT_SHA_6_SHA_KEY_6_BITS 32 | ||
11224 | #define OTP_CONTENT_SHA_6_SHA_KEY_6_SHIFT 0 | ||
11225 | |||
11226 | |||
11227 | /**************************************************************************** | ||
11228 | * OTP :: CONTENT_SHA_7 | ||
11229 | ***************************************************************************/ | ||
11230 | /* OTP :: CONTENT_SHA_7 :: SHA_KEY_7 [31:00] */ | ||
11231 | #define OTP_CONTENT_SHA_7_SHA_KEY_7_MASK 0xffffffff | ||
11232 | #define OTP_CONTENT_SHA_7_SHA_KEY_7_ALIGN 0 | ||
11233 | #define OTP_CONTENT_SHA_7_SHA_KEY_7_BITS 32 | ||
11234 | #define OTP_CONTENT_SHA_7_SHA_KEY_7_SHIFT 0 | ||
11235 | |||
11236 | |||
11237 | /**************************************************************************** | ||
11238 | * OTP :: CONTENT_CHECKSUM | ||
11239 | ***************************************************************************/ | ||
11240 | /* OTP :: CONTENT_CHECKSUM :: reserved0 [31:16] */ | ||
11241 | #define OTP_CONTENT_CHECKSUM_reserved0_MASK 0xffff0000 | ||
11242 | #define OTP_CONTENT_CHECKSUM_reserved0_ALIGN 0 | ||
11243 | #define OTP_CONTENT_CHECKSUM_reserved0_BITS 16 | ||
11244 | #define OTP_CONTENT_CHECKSUM_reserved0_SHIFT 16 | ||
11245 | |||
11246 | /* OTP :: CONTENT_CHECKSUM :: CHECKSUM [15:00] */ | ||
11247 | #define OTP_CONTENT_CHECKSUM_CHECKSUM_MASK 0x0000ffff | ||
11248 | #define OTP_CONTENT_CHECKSUM_CHECKSUM_ALIGN 0 | ||
11249 | #define OTP_CONTENT_CHECKSUM_CHECKSUM_BITS 16 | ||
11250 | #define OTP_CONTENT_CHECKSUM_CHECKSUM_SHIFT 0 | ||
11251 | |||
11252 | |||
11253 | /**************************************************************************** | ||
11254 | * OTP :: PROG_CTRL | ||
11255 | ***************************************************************************/ | ||
11256 | /* OTP :: PROG_CTRL :: reserved0 [31:02] */ | ||
11257 | #define OTP_PROG_CTRL_reserved0_MASK 0xfffffffc | ||
11258 | #define OTP_PROG_CTRL_reserved0_ALIGN 0 | ||
11259 | #define OTP_PROG_CTRL_reserved0_BITS 30 | ||
11260 | #define OTP_PROG_CTRL_reserved0_SHIFT 2 | ||
11261 | |||
11262 | /* OTP :: PROG_CTRL :: ENABLE [01:01] */ | ||
11263 | #define OTP_PROG_CTRL_ENABLE_MASK 0x00000002 | ||
11264 | #define OTP_PROG_CTRL_ENABLE_ALIGN 0 | ||
11265 | #define OTP_PROG_CTRL_ENABLE_BITS 1 | ||
11266 | #define OTP_PROG_CTRL_ENABLE_SHIFT 1 | ||
11267 | |||
11268 | /* OTP :: PROG_CTRL :: RST [00:00] */ | ||
11269 | #define OTP_PROG_CTRL_RST_MASK 0x00000001 | ||
11270 | #define OTP_PROG_CTRL_RST_ALIGN 0 | ||
11271 | #define OTP_PROG_CTRL_RST_BITS 1 | ||
11272 | #define OTP_PROG_CTRL_RST_SHIFT 0 | ||
11273 | |||
11274 | |||
11275 | /**************************************************************************** | ||
11276 | * OTP :: PROG_STATUS | ||
11277 | ***************************************************************************/ | ||
11278 | /* OTP :: PROG_STATUS :: reserved0 [31:02] */ | ||
11279 | #define OTP_PROG_STATUS_reserved0_MASK 0xfffffffc | ||
11280 | #define OTP_PROG_STATUS_reserved0_ALIGN 0 | ||
11281 | #define OTP_PROG_STATUS_reserved0_BITS 30 | ||
11282 | #define OTP_PROG_STATUS_reserved0_SHIFT 2 | ||
11283 | |||
11284 | /* OTP :: PROG_STATUS :: ORDY [01:01] */ | ||
11285 | #define OTP_PROG_STATUS_ORDY_MASK 0x00000002 | ||
11286 | #define OTP_PROG_STATUS_ORDY_ALIGN 0 | ||
11287 | #define OTP_PROG_STATUS_ORDY_BITS 1 | ||
11288 | #define OTP_PROG_STATUS_ORDY_SHIFT 1 | ||
11289 | |||
11290 | /* OTP :: PROG_STATUS :: IRDY [00:00] */ | ||
11291 | #define OTP_PROG_STATUS_IRDY_MASK 0x00000001 | ||
11292 | #define OTP_PROG_STATUS_IRDY_ALIGN 0 | ||
11293 | #define OTP_PROG_STATUS_IRDY_BITS 1 | ||
11294 | #define OTP_PROG_STATUS_IRDY_SHIFT 0 | ||
11295 | |||
11296 | |||
11297 | /**************************************************************************** | ||
11298 | * OTP :: PROG_PULSE | ||
11299 | ***************************************************************************/ | ||
11300 | /* OTP :: PROG_PULSE :: PROG_HI [31:00] */ | ||
11301 | #define OTP_PROG_PULSE_PROG_HI_MASK 0xffffffff | ||
11302 | #define OTP_PROG_PULSE_PROG_HI_ALIGN 0 | ||
11303 | #define OTP_PROG_PULSE_PROG_HI_BITS 32 | ||
11304 | #define OTP_PROG_PULSE_PROG_HI_SHIFT 0 | ||
11305 | |||
11306 | |||
11307 | /**************************************************************************** | ||
11308 | * OTP :: VERIFY_PULSE | ||
11309 | ***************************************************************************/ | ||
11310 | /* OTP :: VERIFY_PULSE :: PROG_LOW [31:16] */ | ||
11311 | #define OTP_VERIFY_PULSE_PROG_LOW_MASK 0xffff0000 | ||
11312 | #define OTP_VERIFY_PULSE_PROG_LOW_ALIGN 0 | ||
11313 | #define OTP_VERIFY_PULSE_PROG_LOW_BITS 16 | ||
11314 | #define OTP_VERIFY_PULSE_PROG_LOW_SHIFT 16 | ||
11315 | |||
11316 | /* OTP :: VERIFY_PULSE :: VERIFY [15:00] */ | ||
11317 | #define OTP_VERIFY_PULSE_VERIFY_MASK 0x0000ffff | ||
11318 | #define OTP_VERIFY_PULSE_VERIFY_ALIGN 0 | ||
11319 | #define OTP_VERIFY_PULSE_VERIFY_BITS 16 | ||
11320 | #define OTP_VERIFY_PULSE_VERIFY_SHIFT 0 | ||
11321 | |||
11322 | |||
11323 | /**************************************************************************** | ||
11324 | * OTP :: PROG_MASK | ||
11325 | ***************************************************************************/ | ||
11326 | /* OTP :: PROG_MASK :: reserved0 [31:17] */ | ||
11327 | #define OTP_PROG_MASK_reserved0_MASK 0xfffe0000 | ||
11328 | #define OTP_PROG_MASK_reserved0_ALIGN 0 | ||
11329 | #define OTP_PROG_MASK_reserved0_BITS 15 | ||
11330 | #define OTP_PROG_MASK_reserved0_SHIFT 17 | ||
11331 | |||
11332 | /* OTP :: PROG_MASK :: PROG_MASK [16:00] */ | ||
11333 | #define OTP_PROG_MASK_PROG_MASK_MASK 0x0001ffff | ||
11334 | #define OTP_PROG_MASK_PROG_MASK_ALIGN 0 | ||
11335 | #define OTP_PROG_MASK_PROG_MASK_BITS 17 | ||
11336 | #define OTP_PROG_MASK_PROG_MASK_SHIFT 0 | ||
11337 | |||
11338 | |||
11339 | /**************************************************************************** | ||
11340 | * OTP :: DATA_INPUT | ||
11341 | ***************************************************************************/ | ||
11342 | /* OTP :: DATA_INPUT :: reserved0 [31:31] */ | ||
11343 | #define OTP_DATA_INPUT_reserved0_MASK 0x80000000 | ||
11344 | #define OTP_DATA_INPUT_reserved0_ALIGN 0 | ||
11345 | #define OTP_DATA_INPUT_reserved0_BITS 1 | ||
11346 | #define OTP_DATA_INPUT_reserved0_SHIFT 31 | ||
11347 | |||
11348 | /* OTP :: DATA_INPUT :: CMD [30:28] */ | ||
11349 | #define OTP_DATA_INPUT_CMD_MASK 0x70000000 | ||
11350 | #define OTP_DATA_INPUT_CMD_ALIGN 0 | ||
11351 | #define OTP_DATA_INPUT_CMD_BITS 3 | ||
11352 | #define OTP_DATA_INPUT_CMD_SHIFT 28 | ||
11353 | |||
11354 | /* OTP :: DATA_INPUT :: reserved1 [27:26] */ | ||
11355 | #define OTP_DATA_INPUT_reserved1_MASK 0x0c000000 | ||
11356 | #define OTP_DATA_INPUT_reserved1_ALIGN 0 | ||
11357 | #define OTP_DATA_INPUT_reserved1_BITS 2 | ||
11358 | #define OTP_DATA_INPUT_reserved1_SHIFT 26 | ||
11359 | |||
11360 | /* OTP :: DATA_INPUT :: ADDR [25:20] */ | ||
11361 | #define OTP_DATA_INPUT_ADDR_MASK 0x03f00000 | ||
11362 | #define OTP_DATA_INPUT_ADDR_ALIGN 0 | ||
11363 | #define OTP_DATA_INPUT_ADDR_BITS 6 | ||
11364 | #define OTP_DATA_INPUT_ADDR_SHIFT 20 | ||
11365 | |||
11366 | /* OTP :: DATA_INPUT :: reserved2 [19:18] */ | ||
11367 | #define OTP_DATA_INPUT_reserved2_MASK 0x000c0000 | ||
11368 | #define OTP_DATA_INPUT_reserved2_ALIGN 0 | ||
11369 | #define OTP_DATA_INPUT_reserved2_BITS 2 | ||
11370 | #define OTP_DATA_INPUT_reserved2_SHIFT 18 | ||
11371 | |||
11372 | /* OTP :: DATA_INPUT :: WRCOL [17:17] */ | ||
11373 | #define OTP_DATA_INPUT_WRCOL_MASK 0x00020000 | ||
11374 | #define OTP_DATA_INPUT_WRCOL_ALIGN 0 | ||
11375 | #define OTP_DATA_INPUT_WRCOL_BITS 1 | ||
11376 | #define OTP_DATA_INPUT_WRCOL_SHIFT 17 | ||
11377 | |||
11378 | /* OTP :: DATA_INPUT :: DIN [16:00] */ | ||
11379 | #define OTP_DATA_INPUT_DIN_MASK 0x0001ffff | ||
11380 | #define OTP_DATA_INPUT_DIN_ALIGN 0 | ||
11381 | #define OTP_DATA_INPUT_DIN_BITS 17 | ||
11382 | #define OTP_DATA_INPUT_DIN_SHIFT 0 | ||
11383 | |||
11384 | |||
11385 | /**************************************************************************** | ||
11386 | * OTP :: DATA_OUTPUT | ||
11387 | ***************************************************************************/ | ||
11388 | /* OTP :: DATA_OUTPUT :: reserved0 [31:17] */ | ||
11389 | #define OTP_DATA_OUTPUT_reserved0_MASK 0xfffe0000 | ||
11390 | #define OTP_DATA_OUTPUT_reserved0_ALIGN 0 | ||
11391 | #define OTP_DATA_OUTPUT_reserved0_BITS 15 | ||
11392 | #define OTP_DATA_OUTPUT_reserved0_SHIFT 17 | ||
11393 | |||
11394 | /* OTP :: DATA_OUTPUT :: DOUT [16:00] */ | ||
11395 | #define OTP_DATA_OUTPUT_DOUT_MASK 0x0001ffff | ||
11396 | #define OTP_DATA_OUTPUT_DOUT_ALIGN 0 | ||
11397 | #define OTP_DATA_OUTPUT_DOUT_BITS 17 | ||
11398 | #define OTP_DATA_OUTPUT_DOUT_SHIFT 0 | ||
11399 | |||
11400 | |||
11401 | /**************************************************************************** | ||
11402 | * BCM70012_OTP_TOP_OTP_GR_BRIDGE | ||
11403 | ***************************************************************************/ | ||
11404 | /**************************************************************************** | ||
11405 | * OTP_GR_BRIDGE :: REVISION | ||
11406 | ***************************************************************************/ | ||
11407 | /* OTP_GR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
11408 | #define OTP_GR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
11409 | #define OTP_GR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
11410 | #define OTP_GR_BRIDGE_REVISION_reserved0_BITS 16 | ||
11411 | #define OTP_GR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
11412 | |||
11413 | /* OTP_GR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
11414 | #define OTP_GR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
11415 | #define OTP_GR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
11416 | #define OTP_GR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
11417 | #define OTP_GR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
11418 | |||
11419 | /* OTP_GR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
11420 | #define OTP_GR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
11421 | #define OTP_GR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
11422 | #define OTP_GR_BRIDGE_REVISION_MINOR_BITS 8 | ||
11423 | #define OTP_GR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
11424 | |||
11425 | |||
11426 | /**************************************************************************** | ||
11427 | * OTP_GR_BRIDGE :: CTRL | ||
11428 | ***************************************************************************/ | ||
11429 | /* OTP_GR_BRIDGE :: CTRL :: reserved0 [31:01] */ | ||
11430 | #define OTP_GR_BRIDGE_CTRL_reserved0_MASK 0xfffffffe | ||
11431 | #define OTP_GR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
11432 | #define OTP_GR_BRIDGE_CTRL_reserved0_BITS 31 | ||
11433 | #define OTP_GR_BRIDGE_CTRL_reserved0_SHIFT 1 | ||
11434 | |||
11435 | /* OTP_GR_BRIDGE :: CTRL :: gisb_error_intr [00:00] */ | ||
11436 | #define OTP_GR_BRIDGE_CTRL_gisb_error_intr_MASK 0x00000001 | ||
11437 | #define OTP_GR_BRIDGE_CTRL_gisb_error_intr_ALIGN 0 | ||
11438 | #define OTP_GR_BRIDGE_CTRL_gisb_error_intr_BITS 1 | ||
11439 | #define OTP_GR_BRIDGE_CTRL_gisb_error_intr_SHIFT 0 | ||
11440 | #define OTP_GR_BRIDGE_CTRL_gisb_error_intr_INTR_DISABLE 0 | ||
11441 | #define OTP_GR_BRIDGE_CTRL_gisb_error_intr_INTR_ENABLE 1 | ||
11442 | |||
11443 | |||
11444 | /**************************************************************************** | ||
11445 | * OTP_GR_BRIDGE :: SPARE_SW_RESET_0 | ||
11446 | ***************************************************************************/ | ||
11447 | /* OTP_GR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
11448 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
11449 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
11450 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
11451 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
11452 | |||
11453 | /* OTP_GR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
11454 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
11455 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
11456 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
11457 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
11458 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_DEASSERT 0 | ||
11459 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ASSERT 1 | ||
11460 | |||
11461 | |||
11462 | /**************************************************************************** | ||
11463 | * OTP_GR_BRIDGE :: SPARE_SW_RESET_1 | ||
11464 | ***************************************************************************/ | ||
11465 | /* OTP_GR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
11466 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
11467 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
11468 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
11469 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
11470 | |||
11471 | /* OTP_GR_BRIDGE :: SPARE_SW_RESET_1 :: OTP_00_SW_RESET [00:00] */ | ||
11472 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_OTP_00_SW_RESET_MASK 0x00000001 | ||
11473 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_OTP_00_SW_RESET_ALIGN 0 | ||
11474 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_OTP_00_SW_RESET_BITS 1 | ||
11475 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_OTP_00_SW_RESET_SHIFT 0 | ||
11476 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_OTP_00_SW_RESET_DEASSERT 0 | ||
11477 | #define OTP_GR_BRIDGE_SPARE_SW_RESET_1_OTP_00_SW_RESET_ASSERT 1 | ||
11478 | |||
11479 | |||
11480 | /**************************************************************************** | ||
11481 | * BCM70012_AES_TOP_AES | ||
11482 | ***************************************************************************/ | ||
11483 | /**************************************************************************** | ||
11484 | * AES :: CONFIG_INFO | ||
11485 | ***************************************************************************/ | ||
11486 | /* AES :: CONFIG_INFO :: SWAP [31:31] */ | ||
11487 | #define AES_CONFIG_INFO_SWAP_MASK 0x80000000 | ||
11488 | #define AES_CONFIG_INFO_SWAP_ALIGN 0 | ||
11489 | #define AES_CONFIG_INFO_SWAP_BITS 1 | ||
11490 | #define AES_CONFIG_INFO_SWAP_SHIFT 31 | ||
11491 | |||
11492 | /* AES :: CONFIG_INFO :: reserved0 [30:19] */ | ||
11493 | #define AES_CONFIG_INFO_reserved0_MASK 0x7ff80000 | ||
11494 | #define AES_CONFIG_INFO_reserved0_ALIGN 0 | ||
11495 | #define AES_CONFIG_INFO_reserved0_BITS 12 | ||
11496 | #define AES_CONFIG_INFO_reserved0_SHIFT 19 | ||
11497 | |||
11498 | /* AES :: CONFIG_INFO :: OFFSET [18:02] */ | ||
11499 | #define AES_CONFIG_INFO_OFFSET_MASK 0x0007fffc | ||
11500 | #define AES_CONFIG_INFO_OFFSET_ALIGN 0 | ||
11501 | #define AES_CONFIG_INFO_OFFSET_BITS 17 | ||
11502 | #define AES_CONFIG_INFO_OFFSET_SHIFT 2 | ||
11503 | |||
11504 | /* AES :: CONFIG_INFO :: reserved1 [01:00] */ | ||
11505 | #define AES_CONFIG_INFO_reserved1_MASK 0x00000003 | ||
11506 | #define AES_CONFIG_INFO_reserved1_ALIGN 0 | ||
11507 | #define AES_CONFIG_INFO_reserved1_BITS 2 | ||
11508 | #define AES_CONFIG_INFO_reserved1_SHIFT 0 | ||
11509 | |||
11510 | |||
11511 | /**************************************************************************** | ||
11512 | * AES :: CMD | ||
11513 | ***************************************************************************/ | ||
11514 | /* AES :: CMD :: reserved0 [31:13] */ | ||
11515 | #define AES_CMD_reserved0_MASK 0xffffe000 | ||
11516 | #define AES_CMD_reserved0_ALIGN 0 | ||
11517 | #define AES_CMD_reserved0_BITS 19 | ||
11518 | #define AES_CMD_reserved0_SHIFT 13 | ||
11519 | |||
11520 | /* AES :: CMD :: WRITE_EEPROM [12:12] */ | ||
11521 | #define AES_CMD_WRITE_EEPROM_MASK 0x00001000 | ||
11522 | #define AES_CMD_WRITE_EEPROM_ALIGN 0 | ||
11523 | #define AES_CMD_WRITE_EEPROM_BITS 1 | ||
11524 | #define AES_CMD_WRITE_EEPROM_SHIFT 12 | ||
11525 | |||
11526 | /* AES :: CMD :: reserved1 [11:09] */ | ||
11527 | #define AES_CMD_reserved1_MASK 0x00000e00 | ||
11528 | #define AES_CMD_reserved1_ALIGN 0 | ||
11529 | #define AES_CMD_reserved1_BITS 3 | ||
11530 | #define AES_CMD_reserved1_SHIFT 9 | ||
11531 | |||
11532 | /* AES :: CMD :: START_EEPROM_COPY [08:08] */ | ||
11533 | #define AES_CMD_START_EEPROM_COPY_MASK 0x00000100 | ||
11534 | #define AES_CMD_START_EEPROM_COPY_ALIGN 0 | ||
11535 | #define AES_CMD_START_EEPROM_COPY_BITS 1 | ||
11536 | #define AES_CMD_START_EEPROM_COPY_SHIFT 8 | ||
11537 | |||
11538 | /* AES :: CMD :: reserved2 [07:05] */ | ||
11539 | #define AES_CMD_reserved2_MASK 0x000000e0 | ||
11540 | #define AES_CMD_reserved2_ALIGN 0 | ||
11541 | #define AES_CMD_reserved2_BITS 3 | ||
11542 | #define AES_CMD_reserved2_SHIFT 5 | ||
11543 | |||
11544 | /* AES :: CMD :: PREPARE_ENCRYPTION [04:04] */ | ||
11545 | #define AES_CMD_PREPARE_ENCRYPTION_MASK 0x00000010 | ||
11546 | #define AES_CMD_PREPARE_ENCRYPTION_ALIGN 0 | ||
11547 | #define AES_CMD_PREPARE_ENCRYPTION_BITS 1 | ||
11548 | #define AES_CMD_PREPARE_ENCRYPTION_SHIFT 4 | ||
11549 | |||
11550 | /* AES :: CMD :: reserved3 [03:01] */ | ||
11551 | #define AES_CMD_reserved3_MASK 0x0000000e | ||
11552 | #define AES_CMD_reserved3_ALIGN 0 | ||
11553 | #define AES_CMD_reserved3_BITS 3 | ||
11554 | #define AES_CMD_reserved3_SHIFT 1 | ||
11555 | |||
11556 | /* AES :: CMD :: START_KEY_LOAD [00:00] */ | ||
11557 | #define AES_CMD_START_KEY_LOAD_MASK 0x00000001 | ||
11558 | #define AES_CMD_START_KEY_LOAD_ALIGN 0 | ||
11559 | #define AES_CMD_START_KEY_LOAD_BITS 1 | ||
11560 | #define AES_CMD_START_KEY_LOAD_SHIFT 0 | ||
11561 | |||
11562 | |||
11563 | /**************************************************************************** | ||
11564 | * AES :: STATUS | ||
11565 | ***************************************************************************/ | ||
11566 | /* AES :: STATUS :: reserved0 [31:23] */ | ||
11567 | #define AES_STATUS_reserved0_MASK 0xff800000 | ||
11568 | #define AES_STATUS_reserved0_ALIGN 0 | ||
11569 | #define AES_STATUS_reserved0_BITS 9 | ||
11570 | #define AES_STATUS_reserved0_SHIFT 23 | ||
11571 | |||
11572 | /* AES :: STATUS :: STUCK_AT_ZERO [22:22] */ | ||
11573 | #define AES_STATUS_STUCK_AT_ZERO_MASK 0x00400000 | ||
11574 | #define AES_STATUS_STUCK_AT_ZERO_ALIGN 0 | ||
11575 | #define AES_STATUS_STUCK_AT_ZERO_BITS 1 | ||
11576 | #define AES_STATUS_STUCK_AT_ZERO_SHIFT 22 | ||
11577 | |||
11578 | /* AES :: STATUS :: STUCK_AT_ONE [21:21] */ | ||
11579 | #define AES_STATUS_STUCK_AT_ONE_MASK 0x00200000 | ||
11580 | #define AES_STATUS_STUCK_AT_ONE_ALIGN 0 | ||
11581 | #define AES_STATUS_STUCK_AT_ONE_BITS 1 | ||
11582 | #define AES_STATUS_STUCK_AT_ONE_SHIFT 21 | ||
11583 | |||
11584 | /* AES :: STATUS :: RANDOM_READY [20:20] */ | ||
11585 | #define AES_STATUS_RANDOM_READY_MASK 0x00100000 | ||
11586 | #define AES_STATUS_RANDOM_READY_ALIGN 0 | ||
11587 | #define AES_STATUS_RANDOM_READY_BITS 1 | ||
11588 | #define AES_STATUS_RANDOM_READY_SHIFT 20 | ||
11589 | |||
11590 | /* AES :: STATUS :: reserved1 [19:16] */ | ||
11591 | #define AES_STATUS_reserved1_MASK 0x000f0000 | ||
11592 | #define AES_STATUS_reserved1_ALIGN 0 | ||
11593 | #define AES_STATUS_reserved1_BITS 4 | ||
11594 | #define AES_STATUS_reserved1_SHIFT 16 | ||
11595 | |||
11596 | /* AES :: STATUS :: WRITE_EEPROM_TIMEOUT [15:15] */ | ||
11597 | #define AES_STATUS_WRITE_EEPROM_TIMEOUT_MASK 0x00008000 | ||
11598 | #define AES_STATUS_WRITE_EEPROM_TIMEOUT_ALIGN 0 | ||
11599 | #define AES_STATUS_WRITE_EEPROM_TIMEOUT_BITS 1 | ||
11600 | #define AES_STATUS_WRITE_EEPROM_TIMEOUT_SHIFT 15 | ||
11601 | |||
11602 | /* AES :: STATUS :: WRITE_DATA_MISMATCH [14:14] */ | ||
11603 | #define AES_STATUS_WRITE_DATA_MISMATCH_MASK 0x00004000 | ||
11604 | #define AES_STATUS_WRITE_DATA_MISMATCH_ALIGN 0 | ||
11605 | #define AES_STATUS_WRITE_DATA_MISMATCH_BITS 1 | ||
11606 | #define AES_STATUS_WRITE_DATA_MISMATCH_SHIFT 14 | ||
11607 | |||
11608 | /* AES :: STATUS :: WRITE_GISB_ERROR [13:13] */ | ||
11609 | #define AES_STATUS_WRITE_GISB_ERROR_MASK 0x00002000 | ||
11610 | #define AES_STATUS_WRITE_GISB_ERROR_ALIGN 0 | ||
11611 | #define AES_STATUS_WRITE_GISB_ERROR_BITS 1 | ||
11612 | #define AES_STATUS_WRITE_GISB_ERROR_SHIFT 13 | ||
11613 | |||
11614 | /* AES :: STATUS :: WRITE_DONE [12:12] */ | ||
11615 | #define AES_STATUS_WRITE_DONE_MASK 0x00001000 | ||
11616 | #define AES_STATUS_WRITE_DONE_ALIGN 0 | ||
11617 | #define AES_STATUS_WRITE_DONE_BITS 1 | ||
11618 | #define AES_STATUS_WRITE_DONE_SHIFT 12 | ||
11619 | |||
11620 | /* AES :: STATUS :: reserved2 [11:11] */ | ||
11621 | #define AES_STATUS_reserved2_MASK 0x00000800 | ||
11622 | #define AES_STATUS_reserved2_ALIGN 0 | ||
11623 | #define AES_STATUS_reserved2_BITS 1 | ||
11624 | #define AES_STATUS_reserved2_SHIFT 11 | ||
11625 | |||
11626 | /* AES :: STATUS :: COPY_EEPROM_ERROR [10:10] */ | ||
11627 | #define AES_STATUS_COPY_EEPROM_ERROR_MASK 0x00000400 | ||
11628 | #define AES_STATUS_COPY_EEPROM_ERROR_ALIGN 0 | ||
11629 | #define AES_STATUS_COPY_EEPROM_ERROR_BITS 1 | ||
11630 | #define AES_STATUS_COPY_EEPROM_ERROR_SHIFT 10 | ||
11631 | |||
11632 | /* AES :: STATUS :: COPY_GISB_ERROR [09:09] */ | ||
11633 | #define AES_STATUS_COPY_GISB_ERROR_MASK 0x00000200 | ||
11634 | #define AES_STATUS_COPY_GISB_ERROR_ALIGN 0 | ||
11635 | #define AES_STATUS_COPY_GISB_ERROR_BITS 1 | ||
11636 | #define AES_STATUS_COPY_GISB_ERROR_SHIFT 9 | ||
11637 | |||
11638 | /* AES :: STATUS :: COPY_DONE [08:08] */ | ||
11639 | #define AES_STATUS_COPY_DONE_MASK 0x00000100 | ||
11640 | #define AES_STATUS_COPY_DONE_ALIGN 0 | ||
11641 | #define AES_STATUS_COPY_DONE_BITS 1 | ||
11642 | #define AES_STATUS_COPY_DONE_SHIFT 8 | ||
11643 | |||
11644 | /* AES :: STATUS :: PREPARE_EEPROM_TIMEOUT [07:07] */ | ||
11645 | #define AES_STATUS_PREPARE_EEPROM_TIMEOUT_MASK 0x00000080 | ||
11646 | #define AES_STATUS_PREPARE_EEPROM_TIMEOUT_ALIGN 0 | ||
11647 | #define AES_STATUS_PREPARE_EEPROM_TIMEOUT_BITS 1 | ||
11648 | #define AES_STATUS_PREPARE_EEPROM_TIMEOUT_SHIFT 7 | ||
11649 | |||
11650 | /* AES :: STATUS :: PREPARE_DATA_MISMATCH [06:06] */ | ||
11651 | #define AES_STATUS_PREPARE_DATA_MISMATCH_MASK 0x00000040 | ||
11652 | #define AES_STATUS_PREPARE_DATA_MISMATCH_ALIGN 0 | ||
11653 | #define AES_STATUS_PREPARE_DATA_MISMATCH_BITS 1 | ||
11654 | #define AES_STATUS_PREPARE_DATA_MISMATCH_SHIFT 6 | ||
11655 | |||
11656 | /* AES :: STATUS :: PREPARE_GISB_ERROR [05:05] */ | ||
11657 | #define AES_STATUS_PREPARE_GISB_ERROR_MASK 0x00000020 | ||
11658 | #define AES_STATUS_PREPARE_GISB_ERROR_ALIGN 0 | ||
11659 | #define AES_STATUS_PREPARE_GISB_ERROR_BITS 1 | ||
11660 | #define AES_STATUS_PREPARE_GISB_ERROR_SHIFT 5 | ||
11661 | |||
11662 | /* AES :: STATUS :: PREPARE_DONE [04:04] */ | ||
11663 | #define AES_STATUS_PREPARE_DONE_MASK 0x00000010 | ||
11664 | #define AES_STATUS_PREPARE_DONE_ALIGN 0 | ||
11665 | #define AES_STATUS_PREPARE_DONE_BITS 1 | ||
11666 | #define AES_STATUS_PREPARE_DONE_SHIFT 4 | ||
11667 | |||
11668 | /* AES :: STATUS :: reserved3 [03:02] */ | ||
11669 | #define AES_STATUS_reserved3_MASK 0x0000000c | ||
11670 | #define AES_STATUS_reserved3_ALIGN 0 | ||
11671 | #define AES_STATUS_reserved3_BITS 2 | ||
11672 | #define AES_STATUS_reserved3_SHIFT 2 | ||
11673 | |||
11674 | /* AES :: STATUS :: KEY_LOAD_GISB_ERROR [01:01] */ | ||
11675 | #define AES_STATUS_KEY_LOAD_GISB_ERROR_MASK 0x00000002 | ||
11676 | #define AES_STATUS_KEY_LOAD_GISB_ERROR_ALIGN 0 | ||
11677 | #define AES_STATUS_KEY_LOAD_GISB_ERROR_BITS 1 | ||
11678 | #define AES_STATUS_KEY_LOAD_GISB_ERROR_SHIFT 1 | ||
11679 | |||
11680 | /* AES :: STATUS :: KEY_LOAD_DONE [00:00] */ | ||
11681 | #define AES_STATUS_KEY_LOAD_DONE_MASK 0x00000001 | ||
11682 | #define AES_STATUS_KEY_LOAD_DONE_ALIGN 0 | ||
11683 | #define AES_STATUS_KEY_LOAD_DONE_BITS 1 | ||
11684 | #define AES_STATUS_KEY_LOAD_DONE_SHIFT 0 | ||
11685 | |||
11686 | |||
11687 | /**************************************************************************** | ||
11688 | * AES :: EEPROM_CONFIG | ||
11689 | ***************************************************************************/ | ||
11690 | /* AES :: EEPROM_CONFIG :: LENGTH [31:20] */ | ||
11691 | #define AES_EEPROM_CONFIG_LENGTH_MASK 0xfff00000 | ||
11692 | #define AES_EEPROM_CONFIG_LENGTH_ALIGN 0 | ||
11693 | #define AES_EEPROM_CONFIG_LENGTH_BITS 12 | ||
11694 | #define AES_EEPROM_CONFIG_LENGTH_SHIFT 20 | ||
11695 | |||
11696 | /* AES :: EEPROM_CONFIG :: reserved0 [19:16] */ | ||
11697 | #define AES_EEPROM_CONFIG_reserved0_MASK 0x000f0000 | ||
11698 | #define AES_EEPROM_CONFIG_reserved0_ALIGN 0 | ||
11699 | #define AES_EEPROM_CONFIG_reserved0_BITS 4 | ||
11700 | #define AES_EEPROM_CONFIG_reserved0_SHIFT 16 | ||
11701 | |||
11702 | /* AES :: EEPROM_CONFIG :: START_ADDR [15:02] */ | ||
11703 | #define AES_EEPROM_CONFIG_START_ADDR_MASK 0x0000fffc | ||
11704 | #define AES_EEPROM_CONFIG_START_ADDR_ALIGN 0 | ||
11705 | #define AES_EEPROM_CONFIG_START_ADDR_BITS 14 | ||
11706 | #define AES_EEPROM_CONFIG_START_ADDR_SHIFT 2 | ||
11707 | |||
11708 | /* AES :: EEPROM_CONFIG :: reserved1 [01:00] */ | ||
11709 | #define AES_EEPROM_CONFIG_reserved1_MASK 0x00000003 | ||
11710 | #define AES_EEPROM_CONFIG_reserved1_ALIGN 0 | ||
11711 | #define AES_EEPROM_CONFIG_reserved1_BITS 2 | ||
11712 | #define AES_EEPROM_CONFIG_reserved1_SHIFT 0 | ||
11713 | |||
11714 | |||
11715 | /**************************************************************************** | ||
11716 | * AES :: EEPROM_DATA_0 | ||
11717 | ***************************************************************************/ | ||
11718 | /* AES :: EEPROM_DATA_0 :: DATA [31:00] */ | ||
11719 | #define AES_EEPROM_DATA_0_DATA_MASK 0xffffffff | ||
11720 | #define AES_EEPROM_DATA_0_DATA_ALIGN 0 | ||
11721 | #define AES_EEPROM_DATA_0_DATA_BITS 32 | ||
11722 | #define AES_EEPROM_DATA_0_DATA_SHIFT 0 | ||
11723 | |||
11724 | |||
11725 | /**************************************************************************** | ||
11726 | * AES :: EEPROM_DATA_1 | ||
11727 | ***************************************************************************/ | ||
11728 | /* AES :: EEPROM_DATA_1 :: DATA [31:00] */ | ||
11729 | #define AES_EEPROM_DATA_1_DATA_MASK 0xffffffff | ||
11730 | #define AES_EEPROM_DATA_1_DATA_ALIGN 0 | ||
11731 | #define AES_EEPROM_DATA_1_DATA_BITS 32 | ||
11732 | #define AES_EEPROM_DATA_1_DATA_SHIFT 0 | ||
11733 | |||
11734 | |||
11735 | /**************************************************************************** | ||
11736 | * AES :: EEPROM_DATA_2 | ||
11737 | ***************************************************************************/ | ||
11738 | /* AES :: EEPROM_DATA_2 :: DATA [31:00] */ | ||
11739 | #define AES_EEPROM_DATA_2_DATA_MASK 0xffffffff | ||
11740 | #define AES_EEPROM_DATA_2_DATA_ALIGN 0 | ||
11741 | #define AES_EEPROM_DATA_2_DATA_BITS 32 | ||
11742 | #define AES_EEPROM_DATA_2_DATA_SHIFT 0 | ||
11743 | |||
11744 | |||
11745 | /**************************************************************************** | ||
11746 | * AES :: EEPROM_DATA_3 | ||
11747 | ***************************************************************************/ | ||
11748 | /* AES :: EEPROM_DATA_3 :: DATA [31:00] */ | ||
11749 | #define AES_EEPROM_DATA_3_DATA_MASK 0xffffffff | ||
11750 | #define AES_EEPROM_DATA_3_DATA_ALIGN 0 | ||
11751 | #define AES_EEPROM_DATA_3_DATA_BITS 32 | ||
11752 | #define AES_EEPROM_DATA_3_DATA_SHIFT 0 | ||
11753 | |||
11754 | |||
11755 | /**************************************************************************** | ||
11756 | * BCM70012_AES_TOP_AES_RGR_BRIDGE | ||
11757 | ***************************************************************************/ | ||
11758 | /**************************************************************************** | ||
11759 | * AES_RGR_BRIDGE :: REVISION | ||
11760 | ***************************************************************************/ | ||
11761 | /* AES_RGR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
11762 | #define AES_RGR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
11763 | #define AES_RGR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
11764 | #define AES_RGR_BRIDGE_REVISION_reserved0_BITS 16 | ||
11765 | #define AES_RGR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
11766 | |||
11767 | /* AES_RGR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
11768 | #define AES_RGR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
11769 | #define AES_RGR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
11770 | #define AES_RGR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
11771 | #define AES_RGR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
11772 | |||
11773 | /* AES_RGR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
11774 | #define AES_RGR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
11775 | #define AES_RGR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
11776 | #define AES_RGR_BRIDGE_REVISION_MINOR_BITS 8 | ||
11777 | #define AES_RGR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
11778 | |||
11779 | |||
11780 | /**************************************************************************** | ||
11781 | * AES_RGR_BRIDGE :: CTRL | ||
11782 | ***************************************************************************/ | ||
11783 | /* AES_RGR_BRIDGE :: CTRL :: reserved0 [31:02] */ | ||
11784 | #define AES_RGR_BRIDGE_CTRL_reserved0_MASK 0xfffffffc | ||
11785 | #define AES_RGR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
11786 | #define AES_RGR_BRIDGE_CTRL_reserved0_BITS 30 | ||
11787 | #define AES_RGR_BRIDGE_CTRL_reserved0_SHIFT 2 | ||
11788 | |||
11789 | /* AES_RGR_BRIDGE :: CTRL :: rbus_error_intr [01:01] */ | ||
11790 | #define AES_RGR_BRIDGE_CTRL_rbus_error_intr_MASK 0x00000002 | ||
11791 | #define AES_RGR_BRIDGE_CTRL_rbus_error_intr_ALIGN 0 | ||
11792 | #define AES_RGR_BRIDGE_CTRL_rbus_error_intr_BITS 1 | ||
11793 | #define AES_RGR_BRIDGE_CTRL_rbus_error_intr_SHIFT 1 | ||
11794 | #define AES_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_DISABLE 0 | ||
11795 | #define AES_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_ENABLE 1 | ||
11796 | |||
11797 | /* AES_RGR_BRIDGE :: CTRL :: gisb_error_intr [00:00] */ | ||
11798 | #define AES_RGR_BRIDGE_CTRL_gisb_error_intr_MASK 0x00000001 | ||
11799 | #define AES_RGR_BRIDGE_CTRL_gisb_error_intr_ALIGN 0 | ||
11800 | #define AES_RGR_BRIDGE_CTRL_gisb_error_intr_BITS 1 | ||
11801 | #define AES_RGR_BRIDGE_CTRL_gisb_error_intr_SHIFT 0 | ||
11802 | #define AES_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_DISABLE 0 | ||
11803 | #define AES_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_ENABLE 1 | ||
11804 | |||
11805 | |||
11806 | /**************************************************************************** | ||
11807 | * AES_RGR_BRIDGE :: RBUS_TIMER | ||
11808 | ***************************************************************************/ | ||
11809 | /* AES_RGR_BRIDGE :: RBUS_TIMER :: reserved0 [31:16] */ | ||
11810 | #define AES_RGR_BRIDGE_RBUS_TIMER_reserved0_MASK 0xffff0000 | ||
11811 | #define AES_RGR_BRIDGE_RBUS_TIMER_reserved0_ALIGN 0 | ||
11812 | #define AES_RGR_BRIDGE_RBUS_TIMER_reserved0_BITS 16 | ||
11813 | #define AES_RGR_BRIDGE_RBUS_TIMER_reserved0_SHIFT 16 | ||
11814 | |||
11815 | /* AES_RGR_BRIDGE :: RBUS_TIMER :: timer_value [15:00] */ | ||
11816 | #define AES_RGR_BRIDGE_RBUS_TIMER_timer_value_MASK 0x0000ffff | ||
11817 | #define AES_RGR_BRIDGE_RBUS_TIMER_timer_value_ALIGN 0 | ||
11818 | #define AES_RGR_BRIDGE_RBUS_TIMER_timer_value_BITS 16 | ||
11819 | #define AES_RGR_BRIDGE_RBUS_TIMER_timer_value_SHIFT 0 | ||
11820 | |||
11821 | |||
11822 | /**************************************************************************** | ||
11823 | * AES_RGR_BRIDGE :: SPARE_SW_RESET_0 | ||
11824 | ***************************************************************************/ | ||
11825 | /* AES_RGR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
11826 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
11827 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
11828 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
11829 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
11830 | |||
11831 | /* AES_RGR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
11832 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
11833 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
11834 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
11835 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
11836 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_DEASSERT 0 | ||
11837 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ASSERT 1 | ||
11838 | |||
11839 | |||
11840 | /**************************************************************************** | ||
11841 | * AES_RGR_BRIDGE :: SPARE_SW_RESET_1 | ||
11842 | ***************************************************************************/ | ||
11843 | /* AES_RGR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
11844 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
11845 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
11846 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
11847 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
11848 | |||
11849 | /* AES_RGR_BRIDGE :: SPARE_SW_RESET_1 :: SPARE_SW_RESET [00:00] */ | ||
11850 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_MASK 0x00000001 | ||
11851 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ALIGN 0 | ||
11852 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_BITS 1 | ||
11853 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_SHIFT 0 | ||
11854 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_DEASSERT 0 | ||
11855 | #define AES_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ASSERT 1 | ||
11856 | |||
11857 | |||
11858 | /**************************************************************************** | ||
11859 | * BCM70012_DCI_TOP_DCI | ||
11860 | ***************************************************************************/ | ||
11861 | /**************************************************************************** | ||
11862 | * DCI :: CMD | ||
11863 | ***************************************************************************/ | ||
11864 | /* DCI :: CMD :: reserved0 [31:09] */ | ||
11865 | #define DCI_CMD_reserved0_MASK 0xfffffe00 | ||
11866 | #define DCI_CMD_reserved0_ALIGN 0 | ||
11867 | #define DCI_CMD_reserved0_BITS 23 | ||
11868 | #define DCI_CMD_reserved0_SHIFT 9 | ||
11869 | |||
11870 | /* DCI :: CMD :: FORCE_FW_VALIDATED [08:08] */ | ||
11871 | #define DCI_CMD_FORCE_FW_VALIDATED_MASK 0x00000100 | ||
11872 | #define DCI_CMD_FORCE_FW_VALIDATED_ALIGN 0 | ||
11873 | #define DCI_CMD_FORCE_FW_VALIDATED_BITS 1 | ||
11874 | #define DCI_CMD_FORCE_FW_VALIDATED_SHIFT 8 | ||
11875 | |||
11876 | /* DCI :: CMD :: reserved1 [07:05] */ | ||
11877 | #define DCI_CMD_reserved1_MASK 0x000000e0 | ||
11878 | #define DCI_CMD_reserved1_ALIGN 0 | ||
11879 | #define DCI_CMD_reserved1_BITS 3 | ||
11880 | #define DCI_CMD_reserved1_SHIFT 5 | ||
11881 | |||
11882 | /* DCI :: CMD :: START_PROCESSOR [04:04] */ | ||
11883 | #define DCI_CMD_START_PROCESSOR_MASK 0x00000010 | ||
11884 | #define DCI_CMD_START_PROCESSOR_ALIGN 0 | ||
11885 | #define DCI_CMD_START_PROCESSOR_BITS 1 | ||
11886 | #define DCI_CMD_START_PROCESSOR_SHIFT 4 | ||
11887 | |||
11888 | /* DCI :: CMD :: reserved2 [03:02] */ | ||
11889 | #define DCI_CMD_reserved2_MASK 0x0000000c | ||
11890 | #define DCI_CMD_reserved2_ALIGN 0 | ||
11891 | #define DCI_CMD_reserved2_BITS 2 | ||
11892 | #define DCI_CMD_reserved2_SHIFT 2 | ||
11893 | |||
11894 | /* DCI :: CMD :: DOWNLOAD_COMPLETE [01:01] */ | ||
11895 | #define DCI_CMD_DOWNLOAD_COMPLETE_MASK 0x00000002 | ||
11896 | #define DCI_CMD_DOWNLOAD_COMPLETE_ALIGN 0 | ||
11897 | #define DCI_CMD_DOWNLOAD_COMPLETE_BITS 1 | ||
11898 | #define DCI_CMD_DOWNLOAD_COMPLETE_SHIFT 1 | ||
11899 | |||
11900 | /* DCI :: CMD :: INITIATE_FW_DOWNLOAD [00:00] */ | ||
11901 | #define DCI_CMD_INITIATE_FW_DOWNLOAD_MASK 0x00000001 | ||
11902 | #define DCI_CMD_INITIATE_FW_DOWNLOAD_ALIGN 0 | ||
11903 | #define DCI_CMD_INITIATE_FW_DOWNLOAD_BITS 1 | ||
11904 | #define DCI_CMD_INITIATE_FW_DOWNLOAD_SHIFT 0 | ||
11905 | |||
11906 | |||
11907 | /**************************************************************************** | ||
11908 | * DCI :: STATUS | ||
11909 | ***************************************************************************/ | ||
11910 | /* DCI :: STATUS :: reserved0 [31:10] */ | ||
11911 | #define DCI_STATUS_reserved0_MASK 0xfffffc00 | ||
11912 | #define DCI_STATUS_reserved0_ALIGN 0 | ||
11913 | #define DCI_STATUS_reserved0_BITS 22 | ||
11914 | #define DCI_STATUS_reserved0_SHIFT 10 | ||
11915 | |||
11916 | /* DCI :: STATUS :: SIGNATURE_MATCHED [09:09] */ | ||
11917 | #define DCI_STATUS_SIGNATURE_MATCHED_MASK 0x00000200 | ||
11918 | #define DCI_STATUS_SIGNATURE_MATCHED_ALIGN 0 | ||
11919 | #define DCI_STATUS_SIGNATURE_MATCHED_BITS 1 | ||
11920 | #define DCI_STATUS_SIGNATURE_MATCHED_SHIFT 9 | ||
11921 | |||
11922 | /* DCI :: STATUS :: SIGNATURE_MISMATCH [08:08] */ | ||
11923 | #define DCI_STATUS_SIGNATURE_MISMATCH_MASK 0x00000100 | ||
11924 | #define DCI_STATUS_SIGNATURE_MISMATCH_ALIGN 0 | ||
11925 | #define DCI_STATUS_SIGNATURE_MISMATCH_BITS 1 | ||
11926 | #define DCI_STATUS_SIGNATURE_MISMATCH_SHIFT 8 | ||
11927 | |||
11928 | /* DCI :: STATUS :: reserved1 [07:06] */ | ||
11929 | #define DCI_STATUS_reserved1_MASK 0x000000c0 | ||
11930 | #define DCI_STATUS_reserved1_ALIGN 0 | ||
11931 | #define DCI_STATUS_reserved1_BITS 2 | ||
11932 | #define DCI_STATUS_reserved1_SHIFT 6 | ||
11933 | |||
11934 | /* DCI :: STATUS :: GISB_ERROR [05:05] */ | ||
11935 | #define DCI_STATUS_GISB_ERROR_MASK 0x00000020 | ||
11936 | #define DCI_STATUS_GISB_ERROR_ALIGN 0 | ||
11937 | #define DCI_STATUS_GISB_ERROR_BITS 1 | ||
11938 | #define DCI_STATUS_GISB_ERROR_SHIFT 5 | ||
11939 | |||
11940 | /* DCI :: STATUS :: DOWNLOAD_READY [04:04] */ | ||
11941 | #define DCI_STATUS_DOWNLOAD_READY_MASK 0x00000010 | ||
11942 | #define DCI_STATUS_DOWNLOAD_READY_ALIGN 0 | ||
11943 | #define DCI_STATUS_DOWNLOAD_READY_BITS 1 | ||
11944 | #define DCI_STATUS_DOWNLOAD_READY_SHIFT 4 | ||
11945 | |||
11946 | /* DCI :: STATUS :: reserved2 [03:01] */ | ||
11947 | #define DCI_STATUS_reserved2_MASK 0x0000000e | ||
11948 | #define DCI_STATUS_reserved2_ALIGN 0 | ||
11949 | #define DCI_STATUS_reserved2_BITS 3 | ||
11950 | #define DCI_STATUS_reserved2_SHIFT 1 | ||
11951 | |||
11952 | /* DCI :: STATUS :: FIRMWARE_VALIDATED [00:00] */ | ||
11953 | #define DCI_STATUS_FIRMWARE_VALIDATED_MASK 0x00000001 | ||
11954 | #define DCI_STATUS_FIRMWARE_VALIDATED_ALIGN 0 | ||
11955 | #define DCI_STATUS_FIRMWARE_VALIDATED_BITS 1 | ||
11956 | #define DCI_STATUS_FIRMWARE_VALIDATED_SHIFT 0 | ||
11957 | |||
11958 | |||
11959 | /**************************************************************************** | ||
11960 | * DCI :: DRAM_BASE_ADDR | ||
11961 | ***************************************************************************/ | ||
11962 | /* DCI :: DRAM_BASE_ADDR :: reserved0 [31:13] */ | ||
11963 | #define DCI_DRAM_BASE_ADDR_reserved0_MASK 0xffffe000 | ||
11964 | #define DCI_DRAM_BASE_ADDR_reserved0_ALIGN 0 | ||
11965 | #define DCI_DRAM_BASE_ADDR_reserved0_BITS 19 | ||
11966 | #define DCI_DRAM_BASE_ADDR_reserved0_SHIFT 13 | ||
11967 | |||
11968 | /* DCI :: DRAM_BASE_ADDR :: BASE_ADDR [12:00] */ | ||
11969 | #define DCI_DRAM_BASE_ADDR_BASE_ADDR_MASK 0x00001fff | ||
11970 | #define DCI_DRAM_BASE_ADDR_BASE_ADDR_ALIGN 0 | ||
11971 | #define DCI_DRAM_BASE_ADDR_BASE_ADDR_BITS 13 | ||
11972 | #define DCI_DRAM_BASE_ADDR_BASE_ADDR_SHIFT 0 | ||
11973 | |||
11974 | |||
11975 | /**************************************************************************** | ||
11976 | * DCI :: FIRMWARE_ADDR | ||
11977 | ***************************************************************************/ | ||
11978 | /* DCI :: FIRMWARE_ADDR :: reserved0 [31:19] */ | ||
11979 | #define DCI_FIRMWARE_ADDR_reserved0_MASK 0xfff80000 | ||
11980 | #define DCI_FIRMWARE_ADDR_reserved0_ALIGN 0 | ||
11981 | #define DCI_FIRMWARE_ADDR_reserved0_BITS 13 | ||
11982 | #define DCI_FIRMWARE_ADDR_reserved0_SHIFT 19 | ||
11983 | |||
11984 | /* DCI :: FIRMWARE_ADDR :: FW_ADDR [18:02] */ | ||
11985 | #define DCI_FIRMWARE_ADDR_FW_ADDR_MASK 0x0007fffc | ||
11986 | #define DCI_FIRMWARE_ADDR_FW_ADDR_ALIGN 0 | ||
11987 | #define DCI_FIRMWARE_ADDR_FW_ADDR_BITS 17 | ||
11988 | #define DCI_FIRMWARE_ADDR_FW_ADDR_SHIFT 2 | ||
11989 | |||
11990 | /* DCI :: FIRMWARE_ADDR :: reserved1 [01:00] */ | ||
11991 | #define DCI_FIRMWARE_ADDR_reserved1_MASK 0x00000003 | ||
11992 | #define DCI_FIRMWARE_ADDR_reserved1_ALIGN 0 | ||
11993 | #define DCI_FIRMWARE_ADDR_reserved1_BITS 2 | ||
11994 | #define DCI_FIRMWARE_ADDR_reserved1_SHIFT 0 | ||
11995 | |||
11996 | |||
11997 | /**************************************************************************** | ||
11998 | * DCI :: FIRMWARE_DATA | ||
11999 | ***************************************************************************/ | ||
12000 | /* DCI :: FIRMWARE_DATA :: FW_DATA [31:00] */ | ||
12001 | #define DCI_FIRMWARE_DATA_FW_DATA_MASK 0xffffffff | ||
12002 | #define DCI_FIRMWARE_DATA_FW_DATA_ALIGN 0 | ||
12003 | #define DCI_FIRMWARE_DATA_FW_DATA_BITS 32 | ||
12004 | #define DCI_FIRMWARE_DATA_FW_DATA_SHIFT 0 | ||
12005 | |||
12006 | |||
12007 | /**************************************************************************** | ||
12008 | * DCI :: SIGNATURE_DATA_0 | ||
12009 | ***************************************************************************/ | ||
12010 | /* DCI :: SIGNATURE_DATA_0 :: SIG_DATA_0 [31:00] */ | ||
12011 | #define DCI_SIGNATURE_DATA_0_SIG_DATA_0_MASK 0xffffffff | ||
12012 | #define DCI_SIGNATURE_DATA_0_SIG_DATA_0_ALIGN 0 | ||
12013 | #define DCI_SIGNATURE_DATA_0_SIG_DATA_0_BITS 32 | ||
12014 | #define DCI_SIGNATURE_DATA_0_SIG_DATA_0_SHIFT 0 | ||
12015 | |||
12016 | |||
12017 | /**************************************************************************** | ||
12018 | * DCI :: SIGNATURE_DATA_1 | ||
12019 | ***************************************************************************/ | ||
12020 | /* DCI :: SIGNATURE_DATA_1 :: SIG_DATA_1 [31:00] */ | ||
12021 | #define DCI_SIGNATURE_DATA_1_SIG_DATA_1_MASK 0xffffffff | ||
12022 | #define DCI_SIGNATURE_DATA_1_SIG_DATA_1_ALIGN 0 | ||
12023 | #define DCI_SIGNATURE_DATA_1_SIG_DATA_1_BITS 32 | ||
12024 | #define DCI_SIGNATURE_DATA_1_SIG_DATA_1_SHIFT 0 | ||
12025 | |||
12026 | |||
12027 | /**************************************************************************** | ||
12028 | * DCI :: SIGNATURE_DATA_2 | ||
12029 | ***************************************************************************/ | ||
12030 | /* DCI :: SIGNATURE_DATA_2 :: SIG_DATA_2 [31:00] */ | ||
12031 | #define DCI_SIGNATURE_DATA_2_SIG_DATA_2_MASK 0xffffffff | ||
12032 | #define DCI_SIGNATURE_DATA_2_SIG_DATA_2_ALIGN 0 | ||
12033 | #define DCI_SIGNATURE_DATA_2_SIG_DATA_2_BITS 32 | ||
12034 | #define DCI_SIGNATURE_DATA_2_SIG_DATA_2_SHIFT 0 | ||
12035 | |||
12036 | |||
12037 | /**************************************************************************** | ||
12038 | * DCI :: SIGNATURE_DATA_3 | ||
12039 | ***************************************************************************/ | ||
12040 | /* DCI :: SIGNATURE_DATA_3 :: SIG_DATA_3 [31:00] */ | ||
12041 | #define DCI_SIGNATURE_DATA_3_SIG_DATA_3_MASK 0xffffffff | ||
12042 | #define DCI_SIGNATURE_DATA_3_SIG_DATA_3_ALIGN 0 | ||
12043 | #define DCI_SIGNATURE_DATA_3_SIG_DATA_3_BITS 32 | ||
12044 | #define DCI_SIGNATURE_DATA_3_SIG_DATA_3_SHIFT 0 | ||
12045 | |||
12046 | |||
12047 | /**************************************************************************** | ||
12048 | * DCI :: SIGNATURE_DATA_4 | ||
12049 | ***************************************************************************/ | ||
12050 | /* DCI :: SIGNATURE_DATA_4 :: SIG_DATA_4 [31:00] */ | ||
12051 | #define DCI_SIGNATURE_DATA_4_SIG_DATA_4_MASK 0xffffffff | ||
12052 | #define DCI_SIGNATURE_DATA_4_SIG_DATA_4_ALIGN 0 | ||
12053 | #define DCI_SIGNATURE_DATA_4_SIG_DATA_4_BITS 32 | ||
12054 | #define DCI_SIGNATURE_DATA_4_SIG_DATA_4_SHIFT 0 | ||
12055 | |||
12056 | |||
12057 | /**************************************************************************** | ||
12058 | * DCI :: SIGNATURE_DATA_5 | ||
12059 | ***************************************************************************/ | ||
12060 | /* DCI :: SIGNATURE_DATA_5 :: SIG_DATA_5 [31:00] */ | ||
12061 | #define DCI_SIGNATURE_DATA_5_SIG_DATA_5_MASK 0xffffffff | ||
12062 | #define DCI_SIGNATURE_DATA_5_SIG_DATA_5_ALIGN 0 | ||
12063 | #define DCI_SIGNATURE_DATA_5_SIG_DATA_5_BITS 32 | ||
12064 | #define DCI_SIGNATURE_DATA_5_SIG_DATA_5_SHIFT 0 | ||
12065 | |||
12066 | |||
12067 | /**************************************************************************** | ||
12068 | * DCI :: SIGNATURE_DATA_6 | ||
12069 | ***************************************************************************/ | ||
12070 | /* DCI :: SIGNATURE_DATA_6 :: SIG_DATA_6 [31:00] */ | ||
12071 | #define DCI_SIGNATURE_DATA_6_SIG_DATA_6_MASK 0xffffffff | ||
12072 | #define DCI_SIGNATURE_DATA_6_SIG_DATA_6_ALIGN 0 | ||
12073 | #define DCI_SIGNATURE_DATA_6_SIG_DATA_6_BITS 32 | ||
12074 | #define DCI_SIGNATURE_DATA_6_SIG_DATA_6_SHIFT 0 | ||
12075 | |||
12076 | |||
12077 | /**************************************************************************** | ||
12078 | * DCI :: SIGNATURE_DATA_7 | ||
12079 | ***************************************************************************/ | ||
12080 | /* DCI :: SIGNATURE_DATA_7 :: SIG_DATA_7 [31:00] */ | ||
12081 | #define DCI_SIGNATURE_DATA_7_SIG_DATA_7_MASK 0xffffffff | ||
12082 | #define DCI_SIGNATURE_DATA_7_SIG_DATA_7_ALIGN 0 | ||
12083 | #define DCI_SIGNATURE_DATA_7_SIG_DATA_7_BITS 32 | ||
12084 | #define DCI_SIGNATURE_DATA_7_SIG_DATA_7_SHIFT 0 | ||
12085 | |||
12086 | |||
12087 | /**************************************************************************** | ||
12088 | * BCM70012_DCI_TOP_DCI_RGR_BRIDGE | ||
12089 | ***************************************************************************/ | ||
12090 | /**************************************************************************** | ||
12091 | * DCI_RGR_BRIDGE :: REVISION | ||
12092 | ***************************************************************************/ | ||
12093 | /* DCI_RGR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
12094 | #define DCI_RGR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
12095 | #define DCI_RGR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
12096 | #define DCI_RGR_BRIDGE_REVISION_reserved0_BITS 16 | ||
12097 | #define DCI_RGR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
12098 | |||
12099 | /* DCI_RGR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
12100 | #define DCI_RGR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
12101 | #define DCI_RGR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
12102 | #define DCI_RGR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
12103 | #define DCI_RGR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
12104 | |||
12105 | /* DCI_RGR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
12106 | #define DCI_RGR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
12107 | #define DCI_RGR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
12108 | #define DCI_RGR_BRIDGE_REVISION_MINOR_BITS 8 | ||
12109 | #define DCI_RGR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
12110 | |||
12111 | |||
12112 | /**************************************************************************** | ||
12113 | * DCI_RGR_BRIDGE :: CTRL | ||
12114 | ***************************************************************************/ | ||
12115 | /* DCI_RGR_BRIDGE :: CTRL :: reserved0 [31:02] */ | ||
12116 | #define DCI_RGR_BRIDGE_CTRL_reserved0_MASK 0xfffffffc | ||
12117 | #define DCI_RGR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
12118 | #define DCI_RGR_BRIDGE_CTRL_reserved0_BITS 30 | ||
12119 | #define DCI_RGR_BRIDGE_CTRL_reserved0_SHIFT 2 | ||
12120 | |||
12121 | /* DCI_RGR_BRIDGE :: CTRL :: rbus_error_intr [01:01] */ | ||
12122 | #define DCI_RGR_BRIDGE_CTRL_rbus_error_intr_MASK 0x00000002 | ||
12123 | #define DCI_RGR_BRIDGE_CTRL_rbus_error_intr_ALIGN 0 | ||
12124 | #define DCI_RGR_BRIDGE_CTRL_rbus_error_intr_BITS 1 | ||
12125 | #define DCI_RGR_BRIDGE_CTRL_rbus_error_intr_SHIFT 1 | ||
12126 | #define DCI_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_DISABLE 0 | ||
12127 | #define DCI_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_ENABLE 1 | ||
12128 | |||
12129 | /* DCI_RGR_BRIDGE :: CTRL :: gisb_error_intr [00:00] */ | ||
12130 | #define DCI_RGR_BRIDGE_CTRL_gisb_error_intr_MASK 0x00000001 | ||
12131 | #define DCI_RGR_BRIDGE_CTRL_gisb_error_intr_ALIGN 0 | ||
12132 | #define DCI_RGR_BRIDGE_CTRL_gisb_error_intr_BITS 1 | ||
12133 | #define DCI_RGR_BRIDGE_CTRL_gisb_error_intr_SHIFT 0 | ||
12134 | #define DCI_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_DISABLE 0 | ||
12135 | #define DCI_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_ENABLE 1 | ||
12136 | |||
12137 | |||
12138 | /**************************************************************************** | ||
12139 | * DCI_RGR_BRIDGE :: RBUS_TIMER | ||
12140 | ***************************************************************************/ | ||
12141 | /* DCI_RGR_BRIDGE :: RBUS_TIMER :: reserved0 [31:16] */ | ||
12142 | #define DCI_RGR_BRIDGE_RBUS_TIMER_reserved0_MASK 0xffff0000 | ||
12143 | #define DCI_RGR_BRIDGE_RBUS_TIMER_reserved0_ALIGN 0 | ||
12144 | #define DCI_RGR_BRIDGE_RBUS_TIMER_reserved0_BITS 16 | ||
12145 | #define DCI_RGR_BRIDGE_RBUS_TIMER_reserved0_SHIFT 16 | ||
12146 | |||
12147 | /* DCI_RGR_BRIDGE :: RBUS_TIMER :: timer_value [15:00] */ | ||
12148 | #define DCI_RGR_BRIDGE_RBUS_TIMER_timer_value_MASK 0x0000ffff | ||
12149 | #define DCI_RGR_BRIDGE_RBUS_TIMER_timer_value_ALIGN 0 | ||
12150 | #define DCI_RGR_BRIDGE_RBUS_TIMER_timer_value_BITS 16 | ||
12151 | #define DCI_RGR_BRIDGE_RBUS_TIMER_timer_value_SHIFT 0 | ||
12152 | |||
12153 | |||
12154 | /**************************************************************************** | ||
12155 | * DCI_RGR_BRIDGE :: SPARE_SW_RESET_0 | ||
12156 | ***************************************************************************/ | ||
12157 | /* DCI_RGR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
12158 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
12159 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
12160 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
12161 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
12162 | |||
12163 | /* DCI_RGR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
12164 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
12165 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
12166 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
12167 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
12168 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_DEASSERT 0 | ||
12169 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ASSERT 1 | ||
12170 | |||
12171 | |||
12172 | /**************************************************************************** | ||
12173 | * DCI_RGR_BRIDGE :: SPARE_SW_RESET_1 | ||
12174 | ***************************************************************************/ | ||
12175 | /* DCI_RGR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
12176 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
12177 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
12178 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
12179 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
12180 | |||
12181 | /* DCI_RGR_BRIDGE :: SPARE_SW_RESET_1 :: SPARE_SW_RESET [00:00] */ | ||
12182 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_MASK 0x00000001 | ||
12183 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ALIGN 0 | ||
12184 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_BITS 1 | ||
12185 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_SHIFT 0 | ||
12186 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_DEASSERT 0 | ||
12187 | #define DCI_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ASSERT 1 | ||
12188 | |||
12189 | |||
12190 | /**************************************************************************** | ||
12191 | * BCM70012_CCE_TOP_CCE_RGR_BRIDGE | ||
12192 | ***************************************************************************/ | ||
12193 | /**************************************************************************** | ||
12194 | * CCE_RGR_BRIDGE :: REVISION | ||
12195 | ***************************************************************************/ | ||
12196 | /* CCE_RGR_BRIDGE :: REVISION :: reserved0 [31:16] */ | ||
12197 | #define CCE_RGR_BRIDGE_REVISION_reserved0_MASK 0xffff0000 | ||
12198 | #define CCE_RGR_BRIDGE_REVISION_reserved0_ALIGN 0 | ||
12199 | #define CCE_RGR_BRIDGE_REVISION_reserved0_BITS 16 | ||
12200 | #define CCE_RGR_BRIDGE_REVISION_reserved0_SHIFT 16 | ||
12201 | |||
12202 | /* CCE_RGR_BRIDGE :: REVISION :: MAJOR [15:08] */ | ||
12203 | #define CCE_RGR_BRIDGE_REVISION_MAJOR_MASK 0x0000ff00 | ||
12204 | #define CCE_RGR_BRIDGE_REVISION_MAJOR_ALIGN 0 | ||
12205 | #define CCE_RGR_BRIDGE_REVISION_MAJOR_BITS 8 | ||
12206 | #define CCE_RGR_BRIDGE_REVISION_MAJOR_SHIFT 8 | ||
12207 | |||
12208 | /* CCE_RGR_BRIDGE :: REVISION :: MINOR [07:00] */ | ||
12209 | #define CCE_RGR_BRIDGE_REVISION_MINOR_MASK 0x000000ff | ||
12210 | #define CCE_RGR_BRIDGE_REVISION_MINOR_ALIGN 0 | ||
12211 | #define CCE_RGR_BRIDGE_REVISION_MINOR_BITS 8 | ||
12212 | #define CCE_RGR_BRIDGE_REVISION_MINOR_SHIFT 0 | ||
12213 | |||
12214 | |||
12215 | /**************************************************************************** | ||
12216 | * CCE_RGR_BRIDGE :: CTRL | ||
12217 | ***************************************************************************/ | ||
12218 | /* CCE_RGR_BRIDGE :: CTRL :: reserved0 [31:02] */ | ||
12219 | #define CCE_RGR_BRIDGE_CTRL_reserved0_MASK 0xfffffffc | ||
12220 | #define CCE_RGR_BRIDGE_CTRL_reserved0_ALIGN 0 | ||
12221 | #define CCE_RGR_BRIDGE_CTRL_reserved0_BITS 30 | ||
12222 | #define CCE_RGR_BRIDGE_CTRL_reserved0_SHIFT 2 | ||
12223 | |||
12224 | /* CCE_RGR_BRIDGE :: CTRL :: rbus_error_intr [01:01] */ | ||
12225 | #define CCE_RGR_BRIDGE_CTRL_rbus_error_intr_MASK 0x00000002 | ||
12226 | #define CCE_RGR_BRIDGE_CTRL_rbus_error_intr_ALIGN 0 | ||
12227 | #define CCE_RGR_BRIDGE_CTRL_rbus_error_intr_BITS 1 | ||
12228 | #define CCE_RGR_BRIDGE_CTRL_rbus_error_intr_SHIFT 1 | ||
12229 | #define CCE_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_DISABLE 0 | ||
12230 | #define CCE_RGR_BRIDGE_CTRL_rbus_error_intr_INTR_ENABLE 1 | ||
12231 | |||
12232 | /* CCE_RGR_BRIDGE :: CTRL :: gisb_error_intr [00:00] */ | ||
12233 | #define CCE_RGR_BRIDGE_CTRL_gisb_error_intr_MASK 0x00000001 | ||
12234 | #define CCE_RGR_BRIDGE_CTRL_gisb_error_intr_ALIGN 0 | ||
12235 | #define CCE_RGR_BRIDGE_CTRL_gisb_error_intr_BITS 1 | ||
12236 | #define CCE_RGR_BRIDGE_CTRL_gisb_error_intr_SHIFT 0 | ||
12237 | #define CCE_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_DISABLE 0 | ||
12238 | #define CCE_RGR_BRIDGE_CTRL_gisb_error_intr_INTR_ENABLE 1 | ||
12239 | |||
12240 | |||
12241 | /**************************************************************************** | ||
12242 | * CCE_RGR_BRIDGE :: RBUS_TIMER | ||
12243 | ***************************************************************************/ | ||
12244 | /* CCE_RGR_BRIDGE :: RBUS_TIMER :: reserved0 [31:16] */ | ||
12245 | #define CCE_RGR_BRIDGE_RBUS_TIMER_reserved0_MASK 0xffff0000 | ||
12246 | #define CCE_RGR_BRIDGE_RBUS_TIMER_reserved0_ALIGN 0 | ||
12247 | #define CCE_RGR_BRIDGE_RBUS_TIMER_reserved0_BITS 16 | ||
12248 | #define CCE_RGR_BRIDGE_RBUS_TIMER_reserved0_SHIFT 16 | ||
12249 | |||
12250 | /* CCE_RGR_BRIDGE :: RBUS_TIMER :: timer_value [15:00] */ | ||
12251 | #define CCE_RGR_BRIDGE_RBUS_TIMER_timer_value_MASK 0x0000ffff | ||
12252 | #define CCE_RGR_BRIDGE_RBUS_TIMER_timer_value_ALIGN 0 | ||
12253 | #define CCE_RGR_BRIDGE_RBUS_TIMER_timer_value_BITS 16 | ||
12254 | #define CCE_RGR_BRIDGE_RBUS_TIMER_timer_value_SHIFT 0 | ||
12255 | |||
12256 | |||
12257 | /**************************************************************************** | ||
12258 | * CCE_RGR_BRIDGE :: SPARE_SW_RESET_0 | ||
12259 | ***************************************************************************/ | ||
12260 | /* CCE_RGR_BRIDGE :: SPARE_SW_RESET_0 :: reserved0 [31:01] */ | ||
12261 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_MASK 0xfffffffe | ||
12262 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_ALIGN 0 | ||
12263 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_BITS 31 | ||
12264 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_reserved0_SHIFT 1 | ||
12265 | |||
12266 | /* CCE_RGR_BRIDGE :: SPARE_SW_RESET_0 :: SPARE_SW_RESET [00:00] */ | ||
12267 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_MASK 0x00000001 | ||
12268 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ALIGN 0 | ||
12269 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_BITS 1 | ||
12270 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_SHIFT 0 | ||
12271 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_DEASSERT 0 | ||
12272 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_0_SPARE_SW_RESET_ASSERT 1 | ||
12273 | |||
12274 | |||
12275 | /**************************************************************************** | ||
12276 | * CCE_RGR_BRIDGE :: SPARE_SW_RESET_1 | ||
12277 | ***************************************************************************/ | ||
12278 | /* CCE_RGR_BRIDGE :: SPARE_SW_RESET_1 :: reserved0 [31:01] */ | ||
12279 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_MASK 0xfffffffe | ||
12280 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_ALIGN 0 | ||
12281 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_BITS 31 | ||
12282 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_reserved0_SHIFT 1 | ||
12283 | |||
12284 | /* CCE_RGR_BRIDGE :: SPARE_SW_RESET_1 :: SPARE_SW_RESET [00:00] */ | ||
12285 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_MASK 0x00000001 | ||
12286 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ALIGN 0 | ||
12287 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_BITS 1 | ||
12288 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_SHIFT 0 | ||
12289 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_DEASSERT 0 | ||
12290 | #define CCE_RGR_BRIDGE_SPARE_SW_RESET_1_SPARE_SW_RESET_ASSERT 1 | ||
12291 | |||
12292 | |||
12293 | /**************************************************************************** | ||
12294 | * Datatype Definitions. | ||
12295 | ***************************************************************************/ | ||
12296 | #endif /* #ifndef MACFILE_H__ */ | ||
12297 | |||
12298 | /* End of File */ | ||
12299 | |||
diff --git a/drivers/staging/crystalhd/crystalhd_cmds.c b/drivers/staging/crystalhd/crystalhd_cmds.c new file mode 100644 index 00000000000..39c641d6b67 --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_cmds.c | |||
@@ -0,0 +1,1058 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_cmds . c | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70010 Linux driver user command interfaces. | ||
8 | * | ||
9 | * HISTORY: | ||
10 | * | ||
11 | ********************************************************************** | ||
12 | * This file is part of the crystalhd device driver. | ||
13 | * | ||
14 | * This driver is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation, version 2 of the License. | ||
17 | * | ||
18 | * This driver is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU General Public License for more details. | ||
22 | * | ||
23 | * You should have received a copy of the GNU General Public License | ||
24 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
25 | **********************************************************************/ | ||
26 | |||
27 | #include "crystalhd_cmds.h" | ||
28 | #include "crystalhd_hw.h" | ||
29 | |||
30 | static struct crystalhd_user *bc_cproc_get_uid(struct crystalhd_cmd *ctx) | ||
31 | { | ||
32 | struct crystalhd_user *user = NULL; | ||
33 | int i; | ||
34 | |||
35 | for (i = 0; i < BC_LINK_MAX_OPENS; i++) { | ||
36 | if (!ctx->user[i].in_use) { | ||
37 | user = &ctx->user[i]; | ||
38 | break; | ||
39 | } | ||
40 | } | ||
41 | |||
42 | return user; | ||
43 | } | ||
44 | |||
45 | static int bc_cproc_get_user_count(struct crystalhd_cmd *ctx) | ||
46 | { | ||
47 | int i, count = 0; | ||
48 | |||
49 | for (i = 0; i < BC_LINK_MAX_OPENS; i++) { | ||
50 | if (ctx->user[i].in_use) | ||
51 | count++; | ||
52 | } | ||
53 | |||
54 | return count; | ||
55 | } | ||
56 | |||
57 | static void bc_cproc_mark_pwr_state(struct crystalhd_cmd *ctx) | ||
58 | { | ||
59 | int i; | ||
60 | |||
61 | for (i = 0; i < BC_LINK_MAX_OPENS; i++) { | ||
62 | if (!ctx->user[i].in_use) | ||
63 | continue; | ||
64 | if (ctx->user[i].mode == DTS_DIAG_MODE || | ||
65 | ctx->user[i].mode == DTS_PLAYBACK_MODE) { | ||
66 | ctx->pwr_state_change = 1; | ||
67 | break; | ||
68 | } | ||
69 | } | ||
70 | } | ||
71 | |||
72 | static BC_STATUS bc_cproc_notify_mode(struct crystalhd_cmd *ctx, | ||
73 | crystalhd_ioctl_data *idata) | ||
74 | { | ||
75 | int rc = 0, i = 0; | ||
76 | |||
77 | if (!ctx || !idata) { | ||
78 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
79 | return BC_STS_INV_ARG; | ||
80 | } | ||
81 | |||
82 | if (ctx->user[idata->u_id].mode != DTS_MODE_INV) { | ||
83 | BCMLOG_ERR("Close the handle first..\n"); | ||
84 | return BC_STS_ERR_USAGE; | ||
85 | } | ||
86 | if (idata->udata.u.NotifyMode.Mode == DTS_MONITOR_MODE) { | ||
87 | ctx->user[idata->u_id].mode = idata->udata.u.NotifyMode.Mode; | ||
88 | return BC_STS_SUCCESS; | ||
89 | } | ||
90 | if (ctx->state != BC_LINK_INVALID) { | ||
91 | BCMLOG_ERR("Link invalid state %d \n", ctx->state); | ||
92 | return BC_STS_ERR_USAGE; | ||
93 | } | ||
94 | /* Check for duplicate playback sessions..*/ | ||
95 | for (i = 0; i < BC_LINK_MAX_OPENS; i++) { | ||
96 | if (ctx->user[i].mode == DTS_DIAG_MODE || | ||
97 | ctx->user[i].mode == DTS_PLAYBACK_MODE) { | ||
98 | BCMLOG_ERR("multiple playback sessions are not " | ||
99 | "supported..\n"); | ||
100 | return BC_STS_ERR_USAGE; | ||
101 | } | ||
102 | } | ||
103 | ctx->cin_wait_exit = 0; | ||
104 | ctx->user[idata->u_id].mode = idata->udata.u.NotifyMode.Mode; | ||
105 | /* Setup mmap pool for uaddr sgl mapping..*/ | ||
106 | rc = crystalhd_create_dio_pool(ctx->adp, BC_LINK_MAX_SGLS); | ||
107 | if (rc) | ||
108 | return BC_STS_ERROR; | ||
109 | |||
110 | /* Setup Hardware DMA rings */ | ||
111 | return crystalhd_hw_setup_dma_rings(&ctx->hw_ctx); | ||
112 | } | ||
113 | |||
114 | static BC_STATUS bc_cproc_get_version(struct crystalhd_cmd *ctx, | ||
115 | crystalhd_ioctl_data *idata) | ||
116 | { | ||
117 | |||
118 | if (!ctx || !idata) { | ||
119 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
120 | return BC_STS_INV_ARG; | ||
121 | } | ||
122 | idata->udata.u.VerInfo.DriverMajor = crystalhd_kmod_major; | ||
123 | idata->udata.u.VerInfo.DriverMinor = crystalhd_kmod_minor; | ||
124 | idata->udata.u.VerInfo.DriverRevision = crystalhd_kmod_rev; | ||
125 | return BC_STS_SUCCESS; | ||
126 | } | ||
127 | |||
128 | |||
129 | static BC_STATUS bc_cproc_get_hwtype(struct crystalhd_cmd *ctx, crystalhd_ioctl_data *idata) | ||
130 | { | ||
131 | if (!ctx || !idata) { | ||
132 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
133 | return BC_STS_INV_ARG; | ||
134 | } | ||
135 | |||
136 | crystalhd_pci_cfg_rd(ctx->adp, 0, 2, | ||
137 | (uint32_t *)&idata->udata.u.hwType.PciVenId); | ||
138 | crystalhd_pci_cfg_rd(ctx->adp, 2, 2, | ||
139 | (uint32_t *)&idata->udata.u.hwType.PciDevId); | ||
140 | crystalhd_pci_cfg_rd(ctx->adp, 8, 1, | ||
141 | (uint32_t *)&idata->udata.u.hwType.HwRev); | ||
142 | |||
143 | return BC_STS_SUCCESS; | ||
144 | } | ||
145 | |||
146 | static BC_STATUS bc_cproc_reg_rd(struct crystalhd_cmd *ctx, | ||
147 | crystalhd_ioctl_data *idata) | ||
148 | { | ||
149 | if (!ctx || !idata) | ||
150 | return BC_STS_INV_ARG; | ||
151 | idata->udata.u.regAcc.Value = bc_dec_reg_rd(ctx->adp, | ||
152 | idata->udata.u.regAcc.Offset); | ||
153 | return BC_STS_SUCCESS; | ||
154 | } | ||
155 | |||
156 | static BC_STATUS bc_cproc_reg_wr(struct crystalhd_cmd *ctx, | ||
157 | crystalhd_ioctl_data *idata) | ||
158 | { | ||
159 | if (!ctx || !idata) | ||
160 | return BC_STS_INV_ARG; | ||
161 | |||
162 | bc_dec_reg_wr(ctx->adp, idata->udata.u.regAcc.Offset, | ||
163 | idata->udata.u.regAcc.Value); | ||
164 | |||
165 | return BC_STS_SUCCESS; | ||
166 | } | ||
167 | |||
168 | static BC_STATUS bc_cproc_link_reg_rd(struct crystalhd_cmd *ctx, | ||
169 | crystalhd_ioctl_data *idata) | ||
170 | { | ||
171 | if (!ctx || !idata) | ||
172 | return BC_STS_INV_ARG; | ||
173 | |||
174 | idata->udata.u.regAcc.Value = crystalhd_reg_rd(ctx->adp, | ||
175 | idata->udata.u.regAcc.Offset); | ||
176 | return BC_STS_SUCCESS; | ||
177 | } | ||
178 | |||
179 | static BC_STATUS bc_cproc_link_reg_wr(struct crystalhd_cmd *ctx, | ||
180 | crystalhd_ioctl_data *idata) | ||
181 | { | ||
182 | if (!ctx || !idata) | ||
183 | return BC_STS_INV_ARG; | ||
184 | |||
185 | crystalhd_reg_wr(ctx->adp, idata->udata.u.regAcc.Offset, | ||
186 | idata->udata.u.regAcc.Value); | ||
187 | |||
188 | return BC_STS_SUCCESS; | ||
189 | } | ||
190 | |||
191 | static BC_STATUS bc_cproc_mem_rd(struct crystalhd_cmd *ctx, | ||
192 | crystalhd_ioctl_data *idata) | ||
193 | { | ||
194 | BC_STATUS sts = BC_STS_SUCCESS; | ||
195 | |||
196 | if (!ctx || !idata || !idata->add_cdata) | ||
197 | return BC_STS_INV_ARG; | ||
198 | |||
199 | if (idata->udata.u.devMem.NumDwords > (idata->add_cdata_sz / 4)) { | ||
200 | BCMLOG_ERR("insufficient buffer\n"); | ||
201 | return BC_STS_INV_ARG; | ||
202 | } | ||
203 | sts = crystalhd_mem_rd(ctx->adp, idata->udata.u.devMem.StartOff, | ||
204 | idata->udata.u.devMem.NumDwords, | ||
205 | (uint32_t *)idata->add_cdata); | ||
206 | return sts; | ||
207 | |||
208 | } | ||
209 | |||
210 | static BC_STATUS bc_cproc_mem_wr(struct crystalhd_cmd *ctx, | ||
211 | crystalhd_ioctl_data *idata) | ||
212 | { | ||
213 | BC_STATUS sts = BC_STS_SUCCESS; | ||
214 | |||
215 | if (!ctx || !idata || !idata->add_cdata) | ||
216 | return BC_STS_INV_ARG; | ||
217 | |||
218 | if (idata->udata.u.devMem.NumDwords > (idata->add_cdata_sz / 4)) { | ||
219 | BCMLOG_ERR("insufficient buffer\n"); | ||
220 | return BC_STS_INV_ARG; | ||
221 | } | ||
222 | |||
223 | sts = crystalhd_mem_wr(ctx->adp, idata->udata.u.devMem.StartOff, | ||
224 | idata->udata.u.devMem.NumDwords, | ||
225 | (uint32_t *)idata->add_cdata); | ||
226 | return sts; | ||
227 | } | ||
228 | |||
229 | static BC_STATUS bc_cproc_cfg_rd(struct crystalhd_cmd *ctx, | ||
230 | crystalhd_ioctl_data *idata) | ||
231 | { | ||
232 | uint32_t ix, cnt, off, len; | ||
233 | BC_STATUS sts = BC_STS_SUCCESS; | ||
234 | uint32_t *temp; | ||
235 | |||
236 | if (!ctx || !idata) | ||
237 | return BC_STS_INV_ARG; | ||
238 | |||
239 | temp = (uint32_t *) idata->udata.u.pciCfg.pci_cfg_space; | ||
240 | off = idata->udata.u.pciCfg.Offset; | ||
241 | len = idata->udata.u.pciCfg.Size; | ||
242 | |||
243 | if (len <= 4) | ||
244 | return crystalhd_pci_cfg_rd(ctx->adp, off, len, temp); | ||
245 | |||
246 | /* Truncate to dword alignment..*/ | ||
247 | len = 4; | ||
248 | cnt = idata->udata.u.pciCfg.Size / len; | ||
249 | for (ix = 0; ix < cnt; ix++) { | ||
250 | sts = crystalhd_pci_cfg_rd(ctx->adp, off, len, &temp[ix]); | ||
251 | if (sts != BC_STS_SUCCESS) { | ||
252 | BCMLOG_ERR("config read : %d\n", sts); | ||
253 | return sts; | ||
254 | } | ||
255 | off += len; | ||
256 | } | ||
257 | |||
258 | return sts; | ||
259 | } | ||
260 | |||
261 | static BC_STATUS bc_cproc_cfg_wr(struct crystalhd_cmd *ctx, | ||
262 | crystalhd_ioctl_data *idata) | ||
263 | { | ||
264 | uint32_t ix, cnt, off, len; | ||
265 | BC_STATUS sts = BC_STS_SUCCESS; | ||
266 | uint32_t *temp; | ||
267 | |||
268 | if (!ctx || !idata) | ||
269 | return BC_STS_INV_ARG; | ||
270 | |||
271 | temp = (uint32_t *) idata->udata.u.pciCfg.pci_cfg_space; | ||
272 | off = idata->udata.u.pciCfg.Offset; | ||
273 | len = idata->udata.u.pciCfg.Size; | ||
274 | |||
275 | if (len <= 4) | ||
276 | return crystalhd_pci_cfg_wr(ctx->adp, off, len, temp[0]); | ||
277 | |||
278 | /* Truncate to dword alignment..*/ | ||
279 | len = 4; | ||
280 | cnt = idata->udata.u.pciCfg.Size / len; | ||
281 | for (ix = 0; ix < cnt; ix++) { | ||
282 | sts = crystalhd_pci_cfg_wr(ctx->adp, off, len, temp[ix]); | ||
283 | if (sts != BC_STS_SUCCESS) { | ||
284 | BCMLOG_ERR("config write : %d\n", sts); | ||
285 | return sts; | ||
286 | } | ||
287 | off += len; | ||
288 | } | ||
289 | |||
290 | return sts; | ||
291 | } | ||
292 | |||
293 | static BC_STATUS bc_cproc_download_fw(struct crystalhd_cmd *ctx, | ||
294 | crystalhd_ioctl_data *idata) | ||
295 | { | ||
296 | BC_STATUS sts = BC_STS_SUCCESS; | ||
297 | |||
298 | if (!ctx || !idata || !idata->add_cdata || !idata->add_cdata_sz) { | ||
299 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
300 | return BC_STS_INV_ARG; | ||
301 | } | ||
302 | |||
303 | if (ctx->state != BC_LINK_INVALID) { | ||
304 | BCMLOG_ERR("Link invalid state %d \n", ctx->state); | ||
305 | return BC_STS_ERR_USAGE; | ||
306 | } | ||
307 | |||
308 | sts = crystalhd_download_fw(ctx->adp, (uint8_t *)idata->add_cdata, | ||
309 | idata->add_cdata_sz); | ||
310 | |||
311 | if (sts != BC_STS_SUCCESS) { | ||
312 | BCMLOG_ERR("Firmware Download Failure!! - %d\n", sts); | ||
313 | } else | ||
314 | ctx->state |= BC_LINK_INIT; | ||
315 | |||
316 | return sts; | ||
317 | } | ||
318 | |||
319 | /* | ||
320 | * We use the FW_CMD interface to sync up playback state with application | ||
321 | * and firmware. This function will perform the required pre and post | ||
322 | * processing of the Firmware commands. | ||
323 | * | ||
324 | * Pause - | ||
325 | * Disable capture after decoder pause. | ||
326 | * Resume - | ||
327 | * First enable capture and issue decoder resume command. | ||
328 | * Flush - | ||
329 | * Abort pending input transfers and issue decoder flush command. | ||
330 | * | ||
331 | */ | ||
332 | static BC_STATUS bc_cproc_do_fw_cmd(struct crystalhd_cmd *ctx, crystalhd_ioctl_data *idata) | ||
333 | { | ||
334 | BC_STATUS sts; | ||
335 | uint32_t *cmd; | ||
336 | |||
337 | if (!(ctx->state & BC_LINK_INIT)) { | ||
338 | BCMLOG_ERR("Link invalid state %d \n", ctx->state); | ||
339 | return BC_STS_ERR_USAGE; | ||
340 | } | ||
341 | |||
342 | cmd = idata->udata.u.fwCmd.cmd; | ||
343 | |||
344 | /* Pre-Process */ | ||
345 | if (cmd[0] == eCMD_C011_DEC_CHAN_PAUSE) { | ||
346 | if (!cmd[3]) { | ||
347 | ctx->state &= ~BC_LINK_PAUSED; | ||
348 | crystalhd_hw_unpause(&ctx->hw_ctx); | ||
349 | } | ||
350 | } else if (cmd[0] == eCMD_C011_DEC_CHAN_FLUSH) { | ||
351 | BCMLOG(BCMLOG_INFO, "Flush issued\n"); | ||
352 | if (cmd[3]) | ||
353 | ctx->cin_wait_exit = 1; | ||
354 | } | ||
355 | |||
356 | sts = crystalhd_do_fw_cmd(&ctx->hw_ctx, &idata->udata.u.fwCmd); | ||
357 | |||
358 | if (sts != BC_STS_SUCCESS) { | ||
359 | BCMLOG(BCMLOG_INFO, "fw cmd %x failed\n", cmd[0]); | ||
360 | return sts; | ||
361 | } | ||
362 | |||
363 | /* Post-Process */ | ||
364 | if (cmd[0] == eCMD_C011_DEC_CHAN_PAUSE) { | ||
365 | if (cmd[3]) { | ||
366 | ctx->state |= BC_LINK_PAUSED; | ||
367 | crystalhd_hw_pause(&ctx->hw_ctx); | ||
368 | } | ||
369 | } | ||
370 | |||
371 | return sts; | ||
372 | } | ||
373 | |||
374 | static void bc_proc_in_completion(crystalhd_dio_req *dio_hnd, | ||
375 | wait_queue_head_t *event, BC_STATUS sts) | ||
376 | { | ||
377 | if (!dio_hnd || !event) { | ||
378 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
379 | return; | ||
380 | } | ||
381 | if (sts == BC_STS_IO_USER_ABORT) | ||
382 | return; | ||
383 | |||
384 | dio_hnd->uinfo.comp_sts = sts; | ||
385 | dio_hnd->uinfo.ev_sts = 1; | ||
386 | crystalhd_set_event(event); | ||
387 | } | ||
388 | |||
389 | static BC_STATUS bc_cproc_codein_sleep(struct crystalhd_cmd *ctx) | ||
390 | { | ||
391 | wait_queue_head_t sleep_ev; | ||
392 | int rc = 0; | ||
393 | |||
394 | if (ctx->state & BC_LINK_SUSPEND) | ||
395 | return BC_STS_IO_USER_ABORT; | ||
396 | |||
397 | if (ctx->cin_wait_exit) { | ||
398 | ctx->cin_wait_exit = 0; | ||
399 | return BC_STS_CMD_CANCELLED; | ||
400 | } | ||
401 | crystalhd_create_event(&sleep_ev); | ||
402 | crystalhd_wait_on_event(&sleep_ev, 0, 100, rc, 0); | ||
403 | if (rc == -EINTR) | ||
404 | return BC_STS_IO_USER_ABORT; | ||
405 | |||
406 | return BC_STS_SUCCESS; | ||
407 | } | ||
408 | |||
409 | static BC_STATUS bc_cproc_hw_txdma(struct crystalhd_cmd *ctx, | ||
410 | crystalhd_ioctl_data *idata, | ||
411 | crystalhd_dio_req *dio) | ||
412 | { | ||
413 | uint32_t tx_listid = 0; | ||
414 | BC_STATUS sts = BC_STS_SUCCESS; | ||
415 | wait_queue_head_t event; | ||
416 | int rc = 0; | ||
417 | |||
418 | if (!ctx || !idata || !dio) { | ||
419 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
420 | return BC_STS_INV_ARG; | ||
421 | } | ||
422 | |||
423 | crystalhd_create_event(&event); | ||
424 | |||
425 | ctx->tx_list_id = 0; | ||
426 | /* msleep_interruptible(2000); */ | ||
427 | sts = crystalhd_hw_post_tx(&ctx->hw_ctx, dio, bc_proc_in_completion, | ||
428 | &event, &tx_listid, | ||
429 | idata->udata.u.ProcInput.Encrypted); | ||
430 | |||
431 | while (sts == BC_STS_BUSY) { | ||
432 | sts = bc_cproc_codein_sleep(ctx); | ||
433 | if (sts != BC_STS_SUCCESS) | ||
434 | break; | ||
435 | sts = crystalhd_hw_post_tx(&ctx->hw_ctx, dio, | ||
436 | bc_proc_in_completion, | ||
437 | &event, &tx_listid, | ||
438 | idata->udata.u.ProcInput.Encrypted); | ||
439 | } | ||
440 | if (sts != BC_STS_SUCCESS) { | ||
441 | BCMLOG(BCMLOG_DBG, "_hw_txdma returning sts:%d\n", sts); | ||
442 | return sts; | ||
443 | } | ||
444 | if (ctx->cin_wait_exit) | ||
445 | ctx->cin_wait_exit = 0; | ||
446 | |||
447 | ctx->tx_list_id = tx_listid; | ||
448 | |||
449 | /* _post() succeeded.. wait for the completion. */ | ||
450 | crystalhd_wait_on_event(&event, (dio->uinfo.ev_sts), 3000, rc, 0); | ||
451 | ctx->tx_list_id = 0; | ||
452 | if (!rc) { | ||
453 | return dio->uinfo.comp_sts; | ||
454 | } else if (rc == -EBUSY) { | ||
455 | BCMLOG(BCMLOG_DBG, "_tx_post() T/O \n"); | ||
456 | sts = BC_STS_TIMEOUT; | ||
457 | } else if (rc == -EINTR) { | ||
458 | BCMLOG(BCMLOG_DBG, "Tx Wait Signal int.\n"); | ||
459 | sts = BC_STS_IO_USER_ABORT; | ||
460 | } else { | ||
461 | sts = BC_STS_IO_ERROR; | ||
462 | } | ||
463 | |||
464 | /* We are cancelling the IO from the same context as the _post(). | ||
465 | * so no need to wait on the event again.. the return itself | ||
466 | * ensures the release of our resources. | ||
467 | */ | ||
468 | crystalhd_hw_cancel_tx(&ctx->hw_ctx, tx_listid); | ||
469 | |||
470 | return sts; | ||
471 | } | ||
472 | |||
473 | /* Helper function to check on user buffers */ | ||
474 | static BC_STATUS bc_cproc_check_inbuffs(bool pin, void *ubuff, uint32_t ub_sz, | ||
475 | uint32_t uv_off, bool en_422) | ||
476 | { | ||
477 | if (!ubuff || !ub_sz) { | ||
478 | BCMLOG_ERR("%s->Invalid Arg %p %x\n", | ||
479 | ((pin) ? "TX" : "RX"), ubuff, ub_sz); | ||
480 | return BC_STS_INV_ARG; | ||
481 | } | ||
482 | |||
483 | /* Check for alignment */ | ||
484 | if (((uintptr_t)ubuff) & 0x03) { | ||
485 | BCMLOG_ERR("%s-->Un-aligned address not implemented yet.. %p \n", | ||
486 | ((pin) ? "TX" : "RX"), ubuff); | ||
487 | return BC_STS_NOT_IMPL; | ||
488 | } | ||
489 | if (pin) | ||
490 | return BC_STS_SUCCESS; | ||
491 | |||
492 | if (!en_422 && !uv_off) { | ||
493 | BCMLOG_ERR("Need UV offset for 420 mode.\n"); | ||
494 | return BC_STS_INV_ARG; | ||
495 | } | ||
496 | |||
497 | if (en_422 && uv_off) { | ||
498 | BCMLOG_ERR("UV offset in 422 mode ??\n"); | ||
499 | return BC_STS_INV_ARG; | ||
500 | } | ||
501 | |||
502 | return BC_STS_SUCCESS; | ||
503 | } | ||
504 | |||
505 | static BC_STATUS bc_cproc_proc_input(struct crystalhd_cmd *ctx, crystalhd_ioctl_data *idata) | ||
506 | { | ||
507 | void *ubuff; | ||
508 | uint32_t ub_sz; | ||
509 | crystalhd_dio_req *dio_hnd = NULL; | ||
510 | BC_STATUS sts = BC_STS_SUCCESS; | ||
511 | |||
512 | if (!ctx || !idata) { | ||
513 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
514 | return BC_STS_INV_ARG; | ||
515 | } | ||
516 | |||
517 | ubuff = idata->udata.u.ProcInput.pDmaBuff; | ||
518 | ub_sz = idata->udata.u.ProcInput.BuffSz; | ||
519 | |||
520 | sts = bc_cproc_check_inbuffs(1, ubuff, ub_sz, 0, 0); | ||
521 | if (sts != BC_STS_SUCCESS) | ||
522 | return sts; | ||
523 | |||
524 | sts = crystalhd_map_dio(ctx->adp, ubuff, ub_sz, 0, 0, 1, &dio_hnd); | ||
525 | if (sts != BC_STS_SUCCESS) { | ||
526 | BCMLOG_ERR("dio map - %d \n", sts); | ||
527 | return sts; | ||
528 | } | ||
529 | |||
530 | if (!dio_hnd) | ||
531 | return BC_STS_ERROR; | ||
532 | |||
533 | sts = bc_cproc_hw_txdma(ctx, idata, dio_hnd); | ||
534 | |||
535 | crystalhd_unmap_dio(ctx->adp, dio_hnd); | ||
536 | |||
537 | return sts; | ||
538 | } | ||
539 | |||
540 | static BC_STATUS bc_cproc_add_cap_buff(struct crystalhd_cmd *ctx, | ||
541 | crystalhd_ioctl_data *idata) | ||
542 | { | ||
543 | void *ubuff; | ||
544 | uint32_t ub_sz, uv_off; | ||
545 | bool en_422; | ||
546 | crystalhd_dio_req *dio_hnd = NULL; | ||
547 | BC_STATUS sts = BC_STS_SUCCESS; | ||
548 | |||
549 | if (!ctx || !idata) { | ||
550 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
551 | return BC_STS_INV_ARG; | ||
552 | } | ||
553 | |||
554 | ubuff = idata->udata.u.RxBuffs.YuvBuff; | ||
555 | ub_sz = idata->udata.u.RxBuffs.YuvBuffSz; | ||
556 | uv_off = idata->udata.u.RxBuffs.UVbuffOffset; | ||
557 | en_422 = idata->udata.u.RxBuffs.b422Mode; | ||
558 | |||
559 | sts = bc_cproc_check_inbuffs(0, ubuff, ub_sz, uv_off, en_422); | ||
560 | if (sts != BC_STS_SUCCESS) | ||
561 | return sts; | ||
562 | |||
563 | sts = crystalhd_map_dio(ctx->adp, ubuff, ub_sz, uv_off, | ||
564 | en_422, 0, &dio_hnd); | ||
565 | if (sts != BC_STS_SUCCESS) { | ||
566 | BCMLOG_ERR("dio map - %d \n", sts); | ||
567 | return sts; | ||
568 | } | ||
569 | |||
570 | if (!dio_hnd) | ||
571 | return BC_STS_ERROR; | ||
572 | |||
573 | sts = crystalhd_hw_add_cap_buffer(&ctx->hw_ctx, dio_hnd, (ctx->state == BC_LINK_READY)); | ||
574 | if ((sts != BC_STS_SUCCESS) && (sts != BC_STS_BUSY)) { | ||
575 | crystalhd_unmap_dio(ctx->adp, dio_hnd); | ||
576 | return sts; | ||
577 | } | ||
578 | |||
579 | return BC_STS_SUCCESS; | ||
580 | } | ||
581 | |||
582 | static BC_STATUS bc_cproc_fmt_change(struct crystalhd_cmd *ctx, | ||
583 | crystalhd_dio_req *dio) | ||
584 | { | ||
585 | BC_STATUS sts = BC_STS_SUCCESS; | ||
586 | |||
587 | sts = crystalhd_hw_add_cap_buffer(&ctx->hw_ctx, dio, 0); | ||
588 | if (sts != BC_STS_SUCCESS) | ||
589 | return sts; | ||
590 | |||
591 | ctx->state |= BC_LINK_FMT_CHG; | ||
592 | if (ctx->state == BC_LINK_READY) | ||
593 | sts = crystalhd_hw_start_capture(&ctx->hw_ctx); | ||
594 | |||
595 | return sts; | ||
596 | } | ||
597 | |||
598 | static BC_STATUS bc_cproc_fetch_frame(struct crystalhd_cmd *ctx, | ||
599 | crystalhd_ioctl_data *idata) | ||
600 | { | ||
601 | crystalhd_dio_req *dio = NULL; | ||
602 | BC_STATUS sts = BC_STS_SUCCESS; | ||
603 | BC_DEC_OUT_BUFF *frame; | ||
604 | |||
605 | if (!ctx || !idata) { | ||
606 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
607 | return BC_STS_INV_ARG; | ||
608 | } | ||
609 | |||
610 | if (!(ctx->state & BC_LINK_CAP_EN)) { | ||
611 | BCMLOG(BCMLOG_DBG, "Capture not enabled..%x\n", ctx->state); | ||
612 | return BC_STS_ERR_USAGE; | ||
613 | } | ||
614 | |||
615 | frame = &idata->udata.u.DecOutData; | ||
616 | |||
617 | sts = crystalhd_hw_get_cap_buffer(&ctx->hw_ctx, &frame->PibInfo, &dio); | ||
618 | if (sts != BC_STS_SUCCESS) | ||
619 | return (ctx->state & BC_LINK_SUSPEND) ? BC_STS_IO_USER_ABORT : sts; | ||
620 | |||
621 | frame->Flags = dio->uinfo.comp_flags; | ||
622 | |||
623 | if (frame->Flags & COMP_FLAG_FMT_CHANGE) | ||
624 | return bc_cproc_fmt_change(ctx, dio); | ||
625 | |||
626 | frame->OutPutBuffs.YuvBuff = dio->uinfo.xfr_buff; | ||
627 | frame->OutPutBuffs.YuvBuffSz = dio->uinfo.xfr_len; | ||
628 | frame->OutPutBuffs.UVbuffOffset = dio->uinfo.uv_offset; | ||
629 | frame->OutPutBuffs.b422Mode = dio->uinfo.b422mode; | ||
630 | |||
631 | frame->OutPutBuffs.YBuffDoneSz = dio->uinfo.y_done_sz; | ||
632 | frame->OutPutBuffs.UVBuffDoneSz = dio->uinfo.uv_done_sz; | ||
633 | |||
634 | crystalhd_unmap_dio(ctx->adp, dio); | ||
635 | |||
636 | return BC_STS_SUCCESS; | ||
637 | } | ||
638 | |||
639 | static BC_STATUS bc_cproc_start_capture(struct crystalhd_cmd *ctx, | ||
640 | crystalhd_ioctl_data *idata) | ||
641 | { | ||
642 | ctx->state |= BC_LINK_CAP_EN; | ||
643 | if (ctx->state == BC_LINK_READY) | ||
644 | return crystalhd_hw_start_capture(&ctx->hw_ctx); | ||
645 | |||
646 | return BC_STS_SUCCESS; | ||
647 | } | ||
648 | |||
649 | static BC_STATUS bc_cproc_flush_cap_buffs(struct crystalhd_cmd *ctx, | ||
650 | crystalhd_ioctl_data *idata) | ||
651 | { | ||
652 | crystalhd_dio_req *dio = NULL; | ||
653 | BC_STATUS sts = BC_STS_SUCCESS; | ||
654 | BC_DEC_OUT_BUFF *frame; | ||
655 | uint32_t count; | ||
656 | |||
657 | if (!ctx || !idata) { | ||
658 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
659 | return BC_STS_INV_ARG; | ||
660 | } | ||
661 | |||
662 | if (!(ctx->state & BC_LINK_CAP_EN)) | ||
663 | return BC_STS_ERR_USAGE; | ||
664 | |||
665 | /* We should ack flush even when we are in paused/suspend state */ | ||
666 | if (!(ctx->state & BC_LINK_READY)) | ||
667 | return crystalhd_hw_stop_capture(&ctx->hw_ctx); | ||
668 | |||
669 | ctx->state &= ~(BC_LINK_CAP_EN|BC_LINK_FMT_CHG); | ||
670 | |||
671 | frame = &idata->udata.u.DecOutData; | ||
672 | for (count = 0; count < BC_RX_LIST_CNT; count++) { | ||
673 | |||
674 | sts = crystalhd_hw_get_cap_buffer(&ctx->hw_ctx, &frame->PibInfo, &dio); | ||
675 | if (sts != BC_STS_SUCCESS) | ||
676 | break; | ||
677 | |||
678 | crystalhd_unmap_dio(ctx->adp, dio); | ||
679 | } | ||
680 | |||
681 | return crystalhd_hw_stop_capture(&ctx->hw_ctx); | ||
682 | } | ||
683 | |||
684 | static BC_STATUS bc_cproc_get_stats(struct crystalhd_cmd *ctx, | ||
685 | crystalhd_ioctl_data *idata) | ||
686 | { | ||
687 | BC_DTS_STATS *stats; | ||
688 | struct crystalhd_hw_stats hw_stats; | ||
689 | |||
690 | if (!ctx || !idata) { | ||
691 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
692 | return BC_STS_INV_ARG; | ||
693 | } | ||
694 | |||
695 | crystalhd_hw_stats(&ctx->hw_ctx, &hw_stats); | ||
696 | |||
697 | stats = &idata->udata.u.drvStat; | ||
698 | stats->drvRLL = hw_stats.rdyq_count; | ||
699 | stats->drvFLL = hw_stats.freeq_count; | ||
700 | stats->DrvTotalFrmDropped = hw_stats.rx_errors; | ||
701 | stats->DrvTotalHWErrs = hw_stats.rx_errors + hw_stats.tx_errors; | ||
702 | stats->intCount = hw_stats.num_interrupts; | ||
703 | stats->DrvIgnIntrCnt = hw_stats.num_interrupts - | ||
704 | hw_stats.dev_interrupts; | ||
705 | stats->TxFifoBsyCnt = hw_stats.cin_busy; | ||
706 | stats->pauseCount = hw_stats.pause_cnt; | ||
707 | |||
708 | if (ctx->pwr_state_change) | ||
709 | stats->pwr_state_change = 1; | ||
710 | if (ctx->state & BC_LINK_PAUSED) | ||
711 | stats->DrvPauseTime = 1; | ||
712 | |||
713 | return BC_STS_SUCCESS; | ||
714 | } | ||
715 | |||
716 | static BC_STATUS bc_cproc_reset_stats(struct crystalhd_cmd *ctx, | ||
717 | crystalhd_ioctl_data *idata) | ||
718 | { | ||
719 | crystalhd_hw_stats(&ctx->hw_ctx, NULL); | ||
720 | |||
721 | return BC_STS_SUCCESS; | ||
722 | } | ||
723 | |||
724 | static BC_STATUS bc_cproc_chg_clk(struct crystalhd_cmd *ctx, | ||
725 | crystalhd_ioctl_data *idata) | ||
726 | { | ||
727 | BC_CLOCK *clock; | ||
728 | uint32_t oldClk; | ||
729 | BC_STATUS sts = BC_STS_SUCCESS; | ||
730 | |||
731 | if (!ctx || !idata) { | ||
732 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
733 | return BC_STS_INV_ARG; | ||
734 | } | ||
735 | |||
736 | clock = &idata->udata.u.clockValue; | ||
737 | oldClk = ctx->hw_ctx.core_clock_mhz; | ||
738 | ctx->hw_ctx.core_clock_mhz = clock->clk; | ||
739 | |||
740 | if (ctx->state & BC_LINK_READY) { | ||
741 | sts = crystalhd_hw_set_core_clock(&ctx->hw_ctx); | ||
742 | if (sts == BC_STS_CLK_NOCHG) | ||
743 | ctx->hw_ctx.core_clock_mhz = oldClk; | ||
744 | } | ||
745 | |||
746 | clock->clk = ctx->hw_ctx.core_clock_mhz; | ||
747 | |||
748 | return sts; | ||
749 | } | ||
750 | |||
751 | /*=============== Cmd Proc Table.. ======================================*/ | ||
752 | static const crystalhd_cmd_tbl_t g_crystalhd_cproc_tbl[] = { | ||
753 | { BCM_IOC_GET_VERSION, bc_cproc_get_version, 0}, | ||
754 | { BCM_IOC_GET_HWTYPE, bc_cproc_get_hwtype, 0}, | ||
755 | { BCM_IOC_REG_RD, bc_cproc_reg_rd, 0}, | ||
756 | { BCM_IOC_REG_WR, bc_cproc_reg_wr, 0}, | ||
757 | { BCM_IOC_FPGA_RD, bc_cproc_link_reg_rd, 0}, | ||
758 | { BCM_IOC_FPGA_WR, bc_cproc_link_reg_wr, 0}, | ||
759 | { BCM_IOC_MEM_RD, bc_cproc_mem_rd, 0}, | ||
760 | { BCM_IOC_MEM_WR, bc_cproc_mem_wr, 0}, | ||
761 | { BCM_IOC_RD_PCI_CFG, bc_cproc_cfg_rd, 0}, | ||
762 | { BCM_IOC_WR_PCI_CFG, bc_cproc_cfg_wr, 1}, | ||
763 | { BCM_IOC_FW_DOWNLOAD, bc_cproc_download_fw, 1}, | ||
764 | { BCM_IOC_FW_CMD, bc_cproc_do_fw_cmd, 1}, | ||
765 | { BCM_IOC_PROC_INPUT, bc_cproc_proc_input, 1}, | ||
766 | { BCM_IOC_ADD_RXBUFFS, bc_cproc_add_cap_buff, 1}, | ||
767 | { BCM_IOC_FETCH_RXBUFF, bc_cproc_fetch_frame, 1}, | ||
768 | { BCM_IOC_START_RX_CAP, bc_cproc_start_capture, 1}, | ||
769 | { BCM_IOC_FLUSH_RX_CAP, bc_cproc_flush_cap_buffs, 1}, | ||
770 | { BCM_IOC_GET_DRV_STAT, bc_cproc_get_stats, 0}, | ||
771 | { BCM_IOC_RST_DRV_STAT, bc_cproc_reset_stats, 0}, | ||
772 | { BCM_IOC_NOTIFY_MODE, bc_cproc_notify_mode, 0}, | ||
773 | { BCM_IOC_CHG_CLK, bc_cproc_chg_clk, 0}, | ||
774 | { BCM_IOC_END, NULL}, | ||
775 | }; | ||
776 | |||
777 | /*=============== Cmd Proc Functions.. ===================================*/ | ||
778 | |||
779 | /** | ||
780 | * crystalhd_suspend - Power management suspend request. | ||
781 | * @ctx: Command layer context. | ||
782 | * @idata: Iodata - required for internal use. | ||
783 | * | ||
784 | * Return: | ||
785 | * status | ||
786 | * | ||
787 | * 1. Set the state to Suspend. | ||
788 | * 2. Flush the Rx Buffers it will unmap all the buffers and | ||
789 | * stop the RxDMA engine. | ||
790 | * 3. Cancel The TX Io and Stop Dma Engine. | ||
791 | * 4. Put the DDR in to deep sleep. | ||
792 | * 5. Stop the hardware putting it in to Reset State. | ||
793 | * | ||
794 | * Current gstreamer frame work does not provide any power management | ||
795 | * related notification to user mode decoder plug-in. As a work-around | ||
796 | * we pass on the power mangement notification to our plug-in by completing | ||
797 | * all outstanding requests with BC_STS_IO_USER_ABORT return code. | ||
798 | */ | ||
799 | BC_STATUS crystalhd_suspend(struct crystalhd_cmd *ctx, crystalhd_ioctl_data *idata) | ||
800 | { | ||
801 | BC_STATUS sts = BC_STS_SUCCESS; | ||
802 | |||
803 | if (!ctx || !idata) { | ||
804 | BCMLOG_ERR("Invalid Parameters\n"); | ||
805 | return BC_STS_ERROR; | ||
806 | } | ||
807 | |||
808 | if (ctx->state & BC_LINK_SUSPEND) | ||
809 | return BC_STS_SUCCESS; | ||
810 | |||
811 | if (ctx->state == BC_LINK_INVALID) { | ||
812 | BCMLOG(BCMLOG_DBG, "Nothing To Do Suspend Success\n"); | ||
813 | return BC_STS_SUCCESS; | ||
814 | } | ||
815 | |||
816 | ctx->state |= BC_LINK_SUSPEND; | ||
817 | |||
818 | bc_cproc_mark_pwr_state(ctx); | ||
819 | |||
820 | if (ctx->state & BC_LINK_CAP_EN) { | ||
821 | sts = bc_cproc_flush_cap_buffs(ctx, idata); | ||
822 | if (sts != BC_STS_SUCCESS) | ||
823 | return sts; | ||
824 | } | ||
825 | |||
826 | if (ctx->tx_list_id) { | ||
827 | sts = crystalhd_hw_cancel_tx(&ctx->hw_ctx, ctx->tx_list_id); | ||
828 | if (sts != BC_STS_SUCCESS) | ||
829 | return sts; | ||
830 | } | ||
831 | |||
832 | sts = crystalhd_hw_suspend(&ctx->hw_ctx); | ||
833 | if (sts != BC_STS_SUCCESS) | ||
834 | return sts; | ||
835 | |||
836 | BCMLOG(BCMLOG_DBG, "BCM70012 suspend success\n"); | ||
837 | |||
838 | return BC_STS_SUCCESS; | ||
839 | } | ||
840 | |||
841 | /** | ||
842 | * crystalhd_resume - Resume frame capture. | ||
843 | * @ctx: Command layer contextx. | ||
844 | * | ||
845 | * Return: | ||
846 | * status | ||
847 | * | ||
848 | * | ||
849 | * Resume frame capture. | ||
850 | * | ||
851 | * PM_Resume can't resume the playback state back to pre-suspend state | ||
852 | * because we don't keep video clip related information within driver. | ||
853 | * To get back to the pre-suspend state App will re-open the device and | ||
854 | * start a new playback session from the pre-suspend clip position. | ||
855 | * | ||
856 | */ | ||
857 | BC_STATUS crystalhd_resume(struct crystalhd_cmd *ctx) | ||
858 | { | ||
859 | BCMLOG(BCMLOG_DBG, "crystalhd_resume Success %x\n", ctx->state); | ||
860 | |||
861 | bc_cproc_mark_pwr_state(ctx); | ||
862 | |||
863 | return BC_STS_SUCCESS; | ||
864 | } | ||
865 | |||
866 | /** | ||
867 | * crystalhd_user_open - Create application handle. | ||
868 | * @ctx: Command layer contextx. | ||
869 | * @user_ctx: User ID context. | ||
870 | * | ||
871 | * Return: | ||
872 | * status | ||
873 | * | ||
874 | * Creates an application specific UID and allocates | ||
875 | * application specific resources. HW layer initialization | ||
876 | * is done for the first open request. | ||
877 | */ | ||
878 | BC_STATUS crystalhd_user_open(struct crystalhd_cmd *ctx, | ||
879 | struct crystalhd_user **user_ctx) | ||
880 | { | ||
881 | struct crystalhd_user *uc; | ||
882 | |||
883 | if (!ctx || !user_ctx) { | ||
884 | BCMLOG_ERR("Invalid arg..\n"); | ||
885 | return BC_STS_INV_ARG; | ||
886 | } | ||
887 | |||
888 | uc = bc_cproc_get_uid(ctx); | ||
889 | if (!uc) { | ||
890 | BCMLOG(BCMLOG_INFO, "No free user context...\n"); | ||
891 | return BC_STS_BUSY; | ||
892 | } | ||
893 | |||
894 | BCMLOG(BCMLOG_INFO, "Opening new user[%x] handle\n", uc->uid); | ||
895 | |||
896 | crystalhd_hw_open(&ctx->hw_ctx, ctx->adp); | ||
897 | |||
898 | uc->in_use = 1; | ||
899 | |||
900 | *user_ctx = uc; | ||
901 | |||
902 | return BC_STS_SUCCESS; | ||
903 | } | ||
904 | |||
905 | /** | ||
906 | * crystalhd_user_close - Close application handle. | ||
907 | * @ctx: Command layer contextx. | ||
908 | * @uc: User ID context. | ||
909 | * | ||
910 | * Return: | ||
911 | * status | ||
912 | * | ||
913 | * Closer aplication handle and release app specific | ||
914 | * resources. | ||
915 | */ | ||
916 | BC_STATUS crystalhd_user_close(struct crystalhd_cmd *ctx, struct crystalhd_user *uc) | ||
917 | { | ||
918 | uint32_t mode = uc->mode; | ||
919 | |||
920 | ctx->user[uc->uid].mode = DTS_MODE_INV; | ||
921 | ctx->user[uc->uid].in_use = 0; | ||
922 | ctx->cin_wait_exit = 1; | ||
923 | ctx->pwr_state_change = 0; | ||
924 | |||
925 | BCMLOG(BCMLOG_INFO, "Closing user[%x] handle\n", uc->uid); | ||
926 | |||
927 | if ((mode == DTS_DIAG_MODE) || (mode == DTS_PLAYBACK_MODE)) { | ||
928 | crystalhd_hw_free_dma_rings(&ctx->hw_ctx); | ||
929 | crystalhd_destroy_dio_pool(ctx->adp); | ||
930 | } else if (bc_cproc_get_user_count(ctx)) { | ||
931 | return BC_STS_SUCCESS; | ||
932 | } | ||
933 | |||
934 | crystalhd_hw_close(&ctx->hw_ctx); | ||
935 | |||
936 | ctx->state = BC_LINK_INVALID; | ||
937 | |||
938 | return BC_STS_SUCCESS; | ||
939 | } | ||
940 | |||
941 | /** | ||
942 | * crystalhd_setup_cmd_context - Setup Command layer resources. | ||
943 | * @ctx: Command layer contextx. | ||
944 | * @adp: Adapter context | ||
945 | * | ||
946 | * Return: | ||
947 | * status | ||
948 | * | ||
949 | * Called at the time of driver load. | ||
950 | */ | ||
951 | BC_STATUS crystalhd_setup_cmd_context(struct crystalhd_cmd *ctx, | ||
952 | struct crystalhd_adp *adp) | ||
953 | { | ||
954 | int i = 0; | ||
955 | |||
956 | if (!ctx || !adp) { | ||
957 | BCMLOG_ERR("Invalid arg!!\n"); | ||
958 | return BC_STS_INV_ARG; | ||
959 | } | ||
960 | |||
961 | if (ctx->adp) | ||
962 | BCMLOG(BCMLOG_DBG, "Resetting Cmd context delete missing..\n"); | ||
963 | |||
964 | ctx->adp = adp; | ||
965 | for (i = 0; i < BC_LINK_MAX_OPENS; i++) { | ||
966 | ctx->user[i].uid = i; | ||
967 | ctx->user[i].in_use = 0; | ||
968 | ctx->user[i].mode = DTS_MODE_INV; | ||
969 | } | ||
970 | |||
971 | /*Open and Close the Hardware to put it in to sleep state*/ | ||
972 | crystalhd_hw_open(&ctx->hw_ctx, ctx->adp); | ||
973 | crystalhd_hw_close(&ctx->hw_ctx); | ||
974 | return BC_STS_SUCCESS; | ||
975 | } | ||
976 | |||
977 | /** | ||
978 | * crystalhd_delete_cmd_context - Release Command layer resources. | ||
979 | * @ctx: Command layer contextx. | ||
980 | * | ||
981 | * Return: | ||
982 | * status | ||
983 | * | ||
984 | * Called at the time of driver un-load. | ||
985 | */ | ||
986 | BC_STATUS crystalhd_delete_cmd_context(struct crystalhd_cmd *ctx) | ||
987 | { | ||
988 | BCMLOG(BCMLOG_DBG, "Deleting Command context..\n"); | ||
989 | |||
990 | ctx->adp = NULL; | ||
991 | |||
992 | return BC_STS_SUCCESS; | ||
993 | } | ||
994 | |||
995 | /** | ||
996 | * crystalhd_get_cmd_proc - Cproc table lookup. | ||
997 | * @ctx: Command layer contextx. | ||
998 | * @cmd: IOCTL command code. | ||
999 | * @uc: User ID context. | ||
1000 | * | ||
1001 | * Return: | ||
1002 | * command proc function pointer | ||
1003 | * | ||
1004 | * This function checks the process context, application's | ||
1005 | * mode of operation and returns the function pointer | ||
1006 | * from the cproc table. | ||
1007 | */ | ||
1008 | crystalhd_cmd_proc crystalhd_get_cmd_proc(struct crystalhd_cmd *ctx, uint32_t cmd, | ||
1009 | struct crystalhd_user *uc) | ||
1010 | { | ||
1011 | crystalhd_cmd_proc cproc = NULL; | ||
1012 | unsigned int i, tbl_sz; | ||
1013 | |||
1014 | if (!ctx) { | ||
1015 | BCMLOG_ERR("Invalid arg.. Cmd[%d]\n", cmd); | ||
1016 | return NULL; | ||
1017 | } | ||
1018 | |||
1019 | if ((cmd != BCM_IOC_GET_DRV_STAT) && (ctx->state & BC_LINK_SUSPEND)) { | ||
1020 | BCMLOG_ERR("Invalid State [suspend Set].. Cmd[%d]\n", cmd); | ||
1021 | return NULL; | ||
1022 | } | ||
1023 | |||
1024 | tbl_sz = sizeof(g_crystalhd_cproc_tbl) / sizeof(crystalhd_cmd_tbl_t); | ||
1025 | for (i = 0; i < tbl_sz; i++) { | ||
1026 | if (g_crystalhd_cproc_tbl[i].cmd_id == cmd) { | ||
1027 | if ((uc->mode == DTS_MONITOR_MODE) && | ||
1028 | (g_crystalhd_cproc_tbl[i].block_mon)) { | ||
1029 | BCMLOG(BCMLOG_INFO, "Blocking cmd %d \n", cmd); | ||
1030 | break; | ||
1031 | } | ||
1032 | cproc = g_crystalhd_cproc_tbl[i].cmd_proc; | ||
1033 | break; | ||
1034 | } | ||
1035 | } | ||
1036 | |||
1037 | return cproc; | ||
1038 | } | ||
1039 | |||
1040 | /** | ||
1041 | * crystalhd_cmd_interrupt - ISR entry point | ||
1042 | * @ctx: Command layer contextx. | ||
1043 | * | ||
1044 | * Return: | ||
1045 | * TRUE: If interrupt from bcm70012 device. | ||
1046 | * | ||
1047 | * | ||
1048 | * ISR entry point from OS layer. | ||
1049 | */ | ||
1050 | bool crystalhd_cmd_interrupt(struct crystalhd_cmd *ctx) | ||
1051 | { | ||
1052 | if (!ctx) { | ||
1053 | BCMLOG_ERR("Invalid arg..\n"); | ||
1054 | return 0; | ||
1055 | } | ||
1056 | |||
1057 | return crystalhd_hw_interrupt(ctx->adp, &ctx->hw_ctx); | ||
1058 | } | ||
diff --git a/drivers/staging/crystalhd/crystalhd_cmds.h b/drivers/staging/crystalhd/crystalhd_cmds.h new file mode 100644 index 00000000000..6b290aed8e0 --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_cmds.h | |||
@@ -0,0 +1,88 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_cmds . h | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70010 Linux driver user command interfaces. | ||
8 | * | ||
9 | * HISTORY: | ||
10 | * | ||
11 | ********************************************************************** | ||
12 | * This file is part of the crystalhd device driver. | ||
13 | * | ||
14 | * This driver is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation, version 2 of the License. | ||
17 | * | ||
18 | * This driver is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU General Public License for more details. | ||
22 | * | ||
23 | * You should have received a copy of the GNU General Public License | ||
24 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
25 | **********************************************************************/ | ||
26 | |||
27 | #ifndef _CRYSTALHD_CMDS_H_ | ||
28 | #define _CRYSTALHD_CMDS_H_ | ||
29 | |||
30 | /* | ||
31 | * NOTE:: This is the main interface file between the Linux layer | ||
32 | * and the harware layer. This file will use the definitions | ||
33 | * from _dts_glob and dts_defs etc.. which are defined for | ||
34 | * windows. | ||
35 | */ | ||
36 | #include "crystalhd_misc.h" | ||
37 | #include "crystalhd_hw.h" | ||
38 | |||
39 | enum _crystalhd_state{ | ||
40 | BC_LINK_INVALID = 0x00, | ||
41 | BC_LINK_INIT = 0x01, | ||
42 | BC_LINK_CAP_EN = 0x02, | ||
43 | BC_LINK_FMT_CHG = 0x04, | ||
44 | BC_LINK_SUSPEND = 0x10, | ||
45 | BC_LINK_PAUSED = 0x20, | ||
46 | BC_LINK_READY = (BC_LINK_INIT | BC_LINK_CAP_EN | BC_LINK_FMT_CHG), | ||
47 | }; | ||
48 | |||
49 | struct crystalhd_user { | ||
50 | uint32_t uid; | ||
51 | uint32_t in_use; | ||
52 | uint32_t mode; | ||
53 | }; | ||
54 | |||
55 | #define DTS_MODE_INV (-1) | ||
56 | |||
57 | struct crystalhd_cmd { | ||
58 | uint32_t state; | ||
59 | struct crystalhd_adp *adp; | ||
60 | struct crystalhd_user user[BC_LINK_MAX_OPENS]; | ||
61 | |||
62 | spinlock_t ctx_lock; | ||
63 | uint32_t tx_list_id; | ||
64 | uint32_t cin_wait_exit; | ||
65 | uint32_t pwr_state_change; | ||
66 | struct crystalhd_hw hw_ctx; | ||
67 | }; | ||
68 | |||
69 | typedef BC_STATUS (*crystalhd_cmd_proc)(struct crystalhd_cmd *, crystalhd_ioctl_data *); | ||
70 | |||
71 | typedef struct _crystalhd_cmd_tbl { | ||
72 | uint32_t cmd_id; | ||
73 | const crystalhd_cmd_proc cmd_proc; | ||
74 | uint32_t block_mon; | ||
75 | } crystalhd_cmd_tbl_t; | ||
76 | |||
77 | |||
78 | BC_STATUS crystalhd_suspend(struct crystalhd_cmd *ctx, crystalhd_ioctl_data *idata); | ||
79 | BC_STATUS crystalhd_resume(struct crystalhd_cmd *ctx); | ||
80 | crystalhd_cmd_proc crystalhd_get_cmd_proc(struct crystalhd_cmd *ctx, uint32_t cmd, | ||
81 | struct crystalhd_user *uc); | ||
82 | BC_STATUS crystalhd_user_open(struct crystalhd_cmd *ctx, struct crystalhd_user **user_ctx); | ||
83 | BC_STATUS crystalhd_user_close(struct crystalhd_cmd *ctx, struct crystalhd_user *uc); | ||
84 | BC_STATUS crystalhd_setup_cmd_context(struct crystalhd_cmd *ctx, struct crystalhd_adp *adp); | ||
85 | BC_STATUS crystalhd_delete_cmd_context(struct crystalhd_cmd *ctx); | ||
86 | bool crystalhd_cmd_interrupt(struct crystalhd_cmd *ctx); | ||
87 | |||
88 | #endif | ||
diff --git a/drivers/staging/crystalhd/crystalhd_fw_if.h b/drivers/staging/crystalhd/crystalhd_fw_if.h new file mode 100644 index 00000000000..261cd19a0ee --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_fw_if.h | |||
@@ -0,0 +1,369 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_fw_if . h | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70012 Firmware interface definitions. | ||
8 | * | ||
9 | * HISTORY: | ||
10 | * | ||
11 | ********************************************************************** | ||
12 | * This file is part of the crystalhd device driver. | ||
13 | * | ||
14 | * This driver is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation, version 2 of the License. | ||
17 | * | ||
18 | * This driver is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU General Public License for more details. | ||
22 | * | ||
23 | * You should have received a copy of the GNU General Public License | ||
24 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
25 | **********************************************************************/ | ||
26 | |||
27 | #ifndef _CRYSTALHD_FW_IF_H_ | ||
28 | #define _CRYSTALHD_FW_IF_H_ | ||
29 | |||
30 | /* TBD: Pull in only required defs into this file.. */ | ||
31 | |||
32 | |||
33 | |||
34 | /* User Data Header */ | ||
35 | typedef struct user_data { | ||
36 | struct user_data *next; | ||
37 | uint32_t type; | ||
38 | uint32_t size; | ||
39 | } UD_HDR; | ||
40 | |||
41 | |||
42 | |||
43 | /*------------------------------------------------------* | ||
44 | * MPEG Extension to the PPB * | ||
45 | *------------------------------------------------------*/ | ||
46 | typedef struct { | ||
47 | uint32_t to_be_defined; | ||
48 | uint32_t valid; | ||
49 | |||
50 | /* Always valid, defaults to picture size if no | ||
51 | sequence display extension in the stream. */ | ||
52 | uint32_t display_horizontal_size; | ||
53 | uint32_t display_vertical_size; | ||
54 | |||
55 | /* MPEG_VALID_PANSCAN | ||
56 | Offsets are a copy values from the MPEG stream. */ | ||
57 | uint32_t offset_count; | ||
58 | int32_t horizontal_offset[3]; | ||
59 | int32_t vertical_offset[3]; | ||
60 | |||
61 | /* MPEG_VALID_USERDATA | ||
62 | User data is in the form of a linked list. */ | ||
63 | int32_t userDataSize; | ||
64 | UD_HDR *userData; | ||
65 | |||
66 | } PPB_MPEG; | ||
67 | |||
68 | |||
69 | /*------------------------------------------------------* | ||
70 | * VC1 Extension to the PPB * | ||
71 | *------------------------------------------------------*/ | ||
72 | typedef struct { | ||
73 | uint32_t to_be_defined; | ||
74 | uint32_t valid; | ||
75 | |||
76 | /* Always valid, defaults to picture size if no | ||
77 | sequence display extension in the stream. */ | ||
78 | uint32_t display_horizontal_size; | ||
79 | uint32_t display_vertical_size; | ||
80 | |||
81 | /* VC1 pan scan windows */ | ||
82 | uint32_t num_panscan_windows; | ||
83 | int32_t ps_horiz_offset[4]; | ||
84 | int32_t ps_vert_offset[4]; | ||
85 | int32_t ps_width[4]; | ||
86 | int32_t ps_height[4]; | ||
87 | |||
88 | /* VC1_VALID_USERDATA | ||
89 | User data is in the form of a linked list. */ | ||
90 | int32_t userDataSize; | ||
91 | UD_HDR *userData; | ||
92 | |||
93 | } PPB_VC1; | ||
94 | |||
95 | /*------------------------------------------------------* | ||
96 | * H.264 Extension to the PPB * | ||
97 | *------------------------------------------------------*/ | ||
98 | |||
99 | /** | ||
100 | * @brief Film grain SEI message. | ||
101 | * | ||
102 | * Content of the film grain SEI message. | ||
103 | */ | ||
104 | |||
105 | /* maximum number of model-values as for Thomson spec(standard says 5) */ | ||
106 | #define MAX_FGT_MODEL_VALUE (3) | ||
107 | |||
108 | /* maximum number of intervals(as many as 256 intervals?) */ | ||
109 | #define MAX_FGT_VALUE_INTERVAL (256) | ||
110 | |||
111 | typedef struct FGT_SEI { | ||
112 | struct FGT_SEI *next; | ||
113 | unsigned char model_values[3][MAX_FGT_VALUE_INTERVAL][MAX_FGT_MODEL_VALUE]; | ||
114 | unsigned char upper_bound[3][MAX_FGT_VALUE_INTERVAL]; | ||
115 | unsigned char lower_bound[3][MAX_FGT_VALUE_INTERVAL]; | ||
116 | |||
117 | unsigned char cancel_flag; /* Cancel flag: 1 no film grain. */ | ||
118 | unsigned char model_id; /* Model id. */ | ||
119 | |||
120 | /* +unused SE based on Thomson spec */ | ||
121 | unsigned char color_desc_flag; /* Separate color descrition flag. */ | ||
122 | unsigned char bit_depth_luma; /* Bit depth luma minus 8. */ | ||
123 | unsigned char bit_depth_chroma; /* Bit depth chroma minus 8. */ | ||
124 | unsigned char full_range_flag; /* Full range flag. */ | ||
125 | unsigned char color_primaries; /* Color primaries. */ | ||
126 | unsigned char transfer_charact; /* Transfer characteristics. */ | ||
127 | unsigned char matrix_coeff; /*< Matrix coefficients. */ | ||
128 | /* -unused SE based on Thomson spec */ | ||
129 | |||
130 | unsigned char blending_mode_id; /* Blending mode. */ | ||
131 | unsigned char log2_scale_factor; /* Log2 scale factor (2-7). */ | ||
132 | unsigned char comp_flag[3]; /* Components [0,2] parameters present flag. */ | ||
133 | unsigned char num_intervals_minus1[3]; /* Number of intensity level intervals. */ | ||
134 | unsigned char num_model_values[3]; /* Number of model values. */ | ||
135 | uint16_t repetition_period; /* Repetition period (0-16384) */ | ||
136 | |||
137 | } FGT_SEI; | ||
138 | |||
139 | typedef struct { | ||
140 | /* 'valid' specifies which fields (or sets of | ||
141 | * fields) below are valid. If the corresponding | ||
142 | * bit in 'valid' is NOT set then that field(s) | ||
143 | * is (are) not initialized. */ | ||
144 | uint32_t valid; | ||
145 | |||
146 | int32_t poc_top; /* POC for Top Field/Frame */ | ||
147 | int32_t poc_bottom; /* POC for Bottom Field */ | ||
148 | uint32_t idr_pic_id; | ||
149 | |||
150 | /* H264_VALID_PANSCAN */ | ||
151 | uint32_t pan_scan_count; | ||
152 | int32_t pan_scan_left[3]; | ||
153 | int32_t pan_scan_right[3]; | ||
154 | int32_t pan_scan_top[3]; | ||
155 | int32_t pan_scan_bottom[3]; | ||
156 | |||
157 | /* H264_VALID_CT_TYPE */ | ||
158 | uint32_t ct_type_count; | ||
159 | uint32_t ct_type[3]; | ||
160 | |||
161 | /* H264_VALID_SPS_CROP */ | ||
162 | int32_t sps_crop_left; | ||
163 | int32_t sps_crop_right; | ||
164 | int32_t sps_crop_top; | ||
165 | int32_t sps_crop_bottom; | ||
166 | |||
167 | /* H264_VALID_VUI */ | ||
168 | uint32_t chroma_top; | ||
169 | uint32_t chroma_bottom; | ||
170 | |||
171 | /* H264_VALID_USER */ | ||
172 | uint32_t user_data_size; | ||
173 | UD_HDR *user_data; | ||
174 | |||
175 | /* H264 VALID FGT */ | ||
176 | FGT_SEI *pfgt; | ||
177 | |||
178 | } PPB_H264; | ||
179 | |||
180 | typedef struct { | ||
181 | /* Common fields. */ | ||
182 | uint32_t picture_number; /* Ordinal display number */ | ||
183 | uint32_t video_buffer; /* Video (picbuf) number */ | ||
184 | uint32_t video_address; /* Address of picbuf Y */ | ||
185 | uint32_t video_address_uv; /* Address of picbuf UV */ | ||
186 | uint32_t video_stripe; /* Picbuf stripe */ | ||
187 | uint32_t video_width; /* Picbuf width */ | ||
188 | uint32_t video_height; /* Picbuf height */ | ||
189 | |||
190 | uint32_t channel_id; /* Decoder channel ID */ | ||
191 | uint32_t status; /* reserved */ | ||
192 | uint32_t width; /* pixels */ | ||
193 | uint32_t height; /* pixels */ | ||
194 | uint32_t chroma_format; /* see above */ | ||
195 | uint32_t pulldown; /* see above */ | ||
196 | uint32_t flags; /* see above */ | ||
197 | uint32_t pts; /* 32 LSBs of PTS */ | ||
198 | uint32_t protocol; /* protocolXXX (above) */ | ||
199 | |||
200 | uint32_t frame_rate; /* see above */ | ||
201 | uint32_t matrix_coeff; /* see above */ | ||
202 | uint32_t aspect_ratio; /* see above */ | ||
203 | uint32_t colour_primaries; /* see above */ | ||
204 | uint32_t transfer_char; /* see above */ | ||
205 | uint32_t pcr_offset; /* 45kHz if PCR type; else 27MHz */ | ||
206 | uint32_t n_drop; /* Number of pictures to be dropped */ | ||
207 | |||
208 | uint32_t custom_aspect_ratio_width_height; | ||
209 | /* upper 16-bits is Y and lower 16-bits is X */ | ||
210 | |||
211 | uint32_t picture_tag; /* Indexing tag from BUD packets */ | ||
212 | uint32_t picture_done_payload; | ||
213 | uint32_t picture_meta_payload; | ||
214 | uint32_t reserved[1]; | ||
215 | |||
216 | /* Protocol-specific extensions. */ | ||
217 | union { | ||
218 | PPB_H264 h264; | ||
219 | PPB_MPEG mpeg; | ||
220 | PPB_VC1 vc1; | ||
221 | } other; | ||
222 | |||
223 | } PPB; | ||
224 | |||
225 | typedef struct { | ||
226 | uint32_t bFormatChange; | ||
227 | uint32_t resolution; | ||
228 | uint32_t channelId; | ||
229 | uint32_t ppbPtr; | ||
230 | int32_t ptsStcOffset; | ||
231 | uint32_t zeroPanscanValid; | ||
232 | uint32_t dramOutBufAddr; | ||
233 | uint32_t yComponent; | ||
234 | PPB ppb; | ||
235 | |||
236 | } C011_PIB; | ||
237 | |||
238 | |||
239 | |||
240 | typedef struct { | ||
241 | uint32_t command; | ||
242 | uint32_t sequence; | ||
243 | uint32_t status; | ||
244 | uint32_t picBuf; | ||
245 | uint32_t picRelBuf; | ||
246 | uint32_t picInfoDeliveryQ; | ||
247 | uint32_t picInfoReleaseQ; | ||
248 | uint32_t channelStatus; | ||
249 | uint32_t userDataDeliveryQ; | ||
250 | uint32_t userDataReleaseQ; | ||
251 | uint32_t transportStreamCaptureAddr; | ||
252 | uint32_t asyncEventQ; | ||
253 | |||
254 | } DecRspChannelStartVideo; | ||
255 | |||
256 | #define eCMD_C011_CMD_BASE (0x73763000) | ||
257 | |||
258 | /* host commands */ | ||
259 | typedef enum { | ||
260 | eCMD_TS_GET_NEXT_PIC = 0x7376F100, /* debug get next picture */ | ||
261 | eCMD_TS_GET_LAST_PIC = 0x7376F102, /* debug get last pic status */ | ||
262 | eCMD_TS_READ_WRITE_MEM = 0x7376F104, /* debug read write memory */ | ||
263 | |||
264 | /* New API commands */ | ||
265 | /* General commands */ | ||
266 | eCMD_C011_INIT = eCMD_C011_CMD_BASE + 0x01, | ||
267 | eCMD_C011_RESET = eCMD_C011_CMD_BASE + 0x02, | ||
268 | eCMD_C011_SELF_TEST = eCMD_C011_CMD_BASE + 0x03, | ||
269 | eCMD_C011_GET_VERSION = eCMD_C011_CMD_BASE + 0x04, | ||
270 | eCMD_C011_GPIO = eCMD_C011_CMD_BASE + 0x05, | ||
271 | eCMD_C011_DEBUG_SETUP = eCMD_C011_CMD_BASE + 0x06, | ||
272 | |||
273 | /* Decoding commands */ | ||
274 | eCMD_C011_DEC_CHAN_OPEN = eCMD_C011_CMD_BASE + 0x100, | ||
275 | eCMD_C011_DEC_CHAN_CLOSE = eCMD_C011_CMD_BASE + 0x101, | ||
276 | eCMD_C011_DEC_CHAN_ACTIVATE = eCMD_C011_CMD_BASE + 0x102, | ||
277 | eCMD_C011_DEC_CHAN_STATUS = eCMD_C011_CMD_BASE + 0x103, | ||
278 | eCMD_C011_DEC_CHAN_FLUSH = eCMD_C011_CMD_BASE + 0x104, | ||
279 | eCMD_C011_DEC_CHAN_TRICK_PLAY = eCMD_C011_CMD_BASE + 0x105, | ||
280 | eCMD_C011_DEC_CHAN_TS_PIDS = eCMD_C011_CMD_BASE + 0x106, | ||
281 | eCMD_C011_DEC_CHAN_PS_STREAM_ID = eCMD_C011_CMD_BASE + 0x107, | ||
282 | eCMD_C011_DEC_CHAN_INPUT_PARAMS = eCMD_C011_CMD_BASE + 0x108, | ||
283 | eCMD_C011_DEC_CHAN_VIDEO_OUTPUT = eCMD_C011_CMD_BASE + 0x109, | ||
284 | eCMD_C011_DEC_CHAN_OUTPUT_FORMAT = eCMD_C011_CMD_BASE + 0x10A, | ||
285 | eCMD_C011_DEC_CHAN_SCALING_FILTERS = eCMD_C011_CMD_BASE + 0x10B, | ||
286 | eCMD_C011_DEC_CHAN_OSD_MODE = eCMD_C011_CMD_BASE + 0x10D, | ||
287 | eCMD_C011_DEC_CHAN_DROP = eCMD_C011_CMD_BASE + 0x10E, | ||
288 | eCMD_C011_DEC_CHAN_RELEASE = eCMD_C011_CMD_BASE + 0x10F, | ||
289 | eCMD_C011_DEC_CHAN_STREAM_SETTINGS = eCMD_C011_CMD_BASE + 0x110, | ||
290 | eCMD_C011_DEC_CHAN_PAUSE_OUTPUT = eCMD_C011_CMD_BASE + 0x111, | ||
291 | eCMD_C011_DEC_CHAN_CHANGE = eCMD_C011_CMD_BASE + 0x112, | ||
292 | eCMD_C011_DEC_CHAN_SET_STC = eCMD_C011_CMD_BASE + 0x113, | ||
293 | eCMD_C011_DEC_CHAN_SET_PTS = eCMD_C011_CMD_BASE + 0x114, | ||
294 | eCMD_C011_DEC_CHAN_CC_MODE = eCMD_C011_CMD_BASE + 0x115, | ||
295 | eCMD_C011_DEC_CREATE_AUDIO_CONTEXT = eCMD_C011_CMD_BASE + 0x116, | ||
296 | eCMD_C011_DEC_COPY_AUDIO_CONTEXT = eCMD_C011_CMD_BASE + 0x117, | ||
297 | eCMD_C011_DEC_DELETE_AUDIO_CONTEXT = eCMD_C011_CMD_BASE + 0x118, | ||
298 | eCMD_C011_DEC_CHAN_SET_DECYPTION = eCMD_C011_CMD_BASE + 0x119, | ||
299 | eCMD_C011_DEC_CHAN_START_VIDEO = eCMD_C011_CMD_BASE + 0x11A, | ||
300 | eCMD_C011_DEC_CHAN_STOP_VIDEO = eCMD_C011_CMD_BASE + 0x11B, | ||
301 | eCMD_C011_DEC_CHAN_PIC_CAPTURE = eCMD_C011_CMD_BASE + 0x11C, | ||
302 | eCMD_C011_DEC_CHAN_PAUSE = eCMD_C011_CMD_BASE + 0x11D, | ||
303 | eCMD_C011_DEC_CHAN_PAUSE_STATE = eCMD_C011_CMD_BASE + 0x11E, | ||
304 | eCMD_C011_DEC_CHAN_SET_SLOWM_RATE = eCMD_C011_CMD_BASE + 0x11F, | ||
305 | eCMD_C011_DEC_CHAN_GET_SLOWM_RATE = eCMD_C011_CMD_BASE + 0x120, | ||
306 | eCMD_C011_DEC_CHAN_SET_FF_RATE = eCMD_C011_CMD_BASE + 0x121, | ||
307 | eCMD_C011_DEC_CHAN_GET_FF_RATE = eCMD_C011_CMD_BASE + 0x122, | ||
308 | eCMD_C011_DEC_CHAN_FRAME_ADVANCE = eCMD_C011_CMD_BASE + 0x123, | ||
309 | eCMD_C011_DEC_CHAN_SET_SKIP_PIC_MODE = eCMD_C011_CMD_BASE + 0x124, | ||
310 | eCMD_C011_DEC_CHAN_GET_SKIP_PIC_MODE = eCMD_C011_CMD_BASE + 0x125, | ||
311 | eCMD_C011_DEC_CHAN_FILL_PIC_BUF = eCMD_C011_CMD_BASE + 0x126, | ||
312 | eCMD_C011_DEC_CHAN_SET_CONTINUITY_CHECK = eCMD_C011_CMD_BASE + 0x127, | ||
313 | eCMD_C011_DEC_CHAN_GET_CONTINUITY_CHECK = eCMD_C011_CMD_BASE + 0x128, | ||
314 | eCMD_C011_DEC_CHAN_SET_BRCM_TRICK_MODE = eCMD_C011_CMD_BASE + 0x129, | ||
315 | eCMD_C011_DEC_CHAN_GET_BRCM_TRICK_MODE = eCMD_C011_CMD_BASE + 0x12A, | ||
316 | eCMD_C011_DEC_CHAN_REVERSE_FIELD_STATUS = eCMD_C011_CMD_BASE + 0x12B, | ||
317 | eCMD_C011_DEC_CHAN_I_PICTURE_FOUND = eCMD_C011_CMD_BASE + 0x12C, | ||
318 | eCMD_C011_DEC_CHAN_SET_PARAMETER = eCMD_C011_CMD_BASE + 0x12D, | ||
319 | eCMD_C011_DEC_CHAN_SET_USER_DATA_MODE = eCMD_C011_CMD_BASE + 0x12E, | ||
320 | eCMD_C011_DEC_CHAN_SET_PAUSE_DISPLAY_MODE = eCMD_C011_CMD_BASE + 0x12F, | ||
321 | eCMD_C011_DEC_CHAN_SET_SLOW_DISPLAY_MODE = eCMD_C011_CMD_BASE + 0x130, | ||
322 | eCMD_C011_DEC_CHAN_SET_FF_DISPLAY_MODE = eCMD_C011_CMD_BASE + 0x131, | ||
323 | eCMD_C011_DEC_CHAN_SET_DISPLAY_TIMING_MODE = eCMD_C011_CMD_BASE + 0x132, | ||
324 | eCMD_C011_DEC_CHAN_SET_DISPLAY_MODE = eCMD_C011_CMD_BASE + 0x133, | ||
325 | eCMD_C011_DEC_CHAN_GET_DISPLAY_MODE = eCMD_C011_CMD_BASE + 0x134, | ||
326 | eCMD_C011_DEC_CHAN_SET_REVERSE_FIELD = eCMD_C011_CMD_BASE + 0x135, | ||
327 | eCMD_C011_DEC_CHAN_STREAM_OPEN = eCMD_C011_CMD_BASE + 0x136, | ||
328 | eCMD_C011_DEC_CHAN_SET_PCR_PID = eCMD_C011_CMD_BASE + 0x137, | ||
329 | eCMD_C011_DEC_CHAN_SET_VID_PID = eCMD_C011_CMD_BASE + 0x138, | ||
330 | eCMD_C011_DEC_CHAN_SET_PAN_SCAN_MODE = eCMD_C011_CMD_BASE + 0x139, | ||
331 | eCMD_C011_DEC_CHAN_START_DISPLAY_AT_PTS = eCMD_C011_CMD_BASE + 0x140, | ||
332 | eCMD_C011_DEC_CHAN_STOP_DISPLAY_AT_PTS = eCMD_C011_CMD_BASE + 0x141, | ||
333 | eCMD_C011_DEC_CHAN_SET_DISPLAY_ORDER = eCMD_C011_CMD_BASE + 0x142, | ||
334 | eCMD_C011_DEC_CHAN_GET_DISPLAY_ORDER = eCMD_C011_CMD_BASE + 0x143, | ||
335 | eCMD_C011_DEC_CHAN_SET_HOST_TRICK_MODE = eCMD_C011_CMD_BASE + 0x144, | ||
336 | eCMD_C011_DEC_CHAN_SET_OPERATION_MODE = eCMD_C011_CMD_BASE + 0x145, | ||
337 | eCMD_C011_DEC_CHAN_DISPLAY_PAUSE_UNTO_PTS = eCMD_C011_CMD_BASE + 0x146, | ||
338 | eCMD_C011_DEC_CHAN_SET_PTS_STC_DIFF_THRESHOLD = eCMD_C011_CMD_BASE + 0x147, | ||
339 | eCMD_C011_DEC_CHAN_SEND_COMPRESSED_BUF = eCMD_C011_CMD_BASE + 0x148, | ||
340 | eCMD_C011_DEC_CHAN_SET_CLIPPING = eCMD_C011_CMD_BASE + 0x149, | ||
341 | eCMD_C011_DEC_CHAN_SET_PARAMETERS_FOR_HARD_RESET_INTERRUPT_TO_HOST | ||
342 | = eCMD_C011_CMD_BASE + 0x150, | ||
343 | |||
344 | /* Decoder RevD commands */ | ||
345 | eCMD_C011_DEC_CHAN_SET_CSC = eCMD_C011_CMD_BASE + 0x180, /* color space conversion */ | ||
346 | eCMD_C011_DEC_CHAN_SET_RANGE_REMAP = eCMD_C011_CMD_BASE + 0x181, | ||
347 | eCMD_C011_DEC_CHAN_SET_FGT = eCMD_C011_CMD_BASE + 0x182, | ||
348 | /* Note: 0x183 not implemented yet in Rev D main */ | ||
349 | eCMD_C011_DEC_CHAN_SET_LASTPICTURE_PADDING = eCMD_C011_CMD_BASE + 0x183, | ||
350 | |||
351 | /* Decoder 7412 commands (7412-only) */ | ||
352 | eCMD_C011_DEC_CHAN_SET_CONTENT_KEY = eCMD_C011_CMD_BASE + 0x190, | ||
353 | eCMD_C011_DEC_CHAN_SET_SESSION_KEY = eCMD_C011_CMD_BASE + 0x191, | ||
354 | eCMD_C011_DEC_CHAN_FMT_CHANGE_ACK = eCMD_C011_CMD_BASE + 0x192, | ||
355 | |||
356 | eCMD_C011_DEC_CHAN_CUSTOM_VIDOUT = eCMD_C011_CMD_BASE + 0x1FF, | ||
357 | |||
358 | /* Encoding commands */ | ||
359 | eCMD_C011_ENC_CHAN_OPEN = eCMD_C011_CMD_BASE + 0x200, | ||
360 | eCMD_C011_ENC_CHAN_CLOSE = eCMD_C011_CMD_BASE + 0x201, | ||
361 | eCMD_C011_ENC_CHAN_ACTIVATE = eCMD_C011_CMD_BASE + 0x202, | ||
362 | eCMD_C011_ENC_CHAN_CONTROL = eCMD_C011_CMD_BASE + 0x203, | ||
363 | eCMD_C011_ENC_CHAN_STATISTICS = eCMD_C011_CMD_BASE + 0x204, | ||
364 | |||
365 | eNOTIFY_C011_ENC_CHAN_EVENT = eCMD_C011_CMD_BASE + 0x210, | ||
366 | |||
367 | } eC011_TS_CMD; | ||
368 | |||
369 | #endif | ||
diff --git a/drivers/staging/crystalhd/crystalhd_hw.c b/drivers/staging/crystalhd/crystalhd_hw.c new file mode 100644 index 00000000000..01819d34201 --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_hw.c | |||
@@ -0,0 +1,2395 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_hw . c | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70010 Linux driver HW layer. | ||
8 | * | ||
9 | ********************************************************************** | ||
10 | * This file is part of the crystalhd device driver. | ||
11 | * | ||
12 | * This driver is free software; you can redistribute it and/or modify | ||
13 | * it under the terms of the GNU General Public License as published by | ||
14 | * the Free Software Foundation, version 2 of the License. | ||
15 | * | ||
16 | * This driver is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * You should have received a copy of the GNU General Public License | ||
22 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
23 | **********************************************************************/ | ||
24 | |||
25 | #include <linux/pci.h> | ||
26 | #include <linux/delay.h> | ||
27 | #include "crystalhd_hw.h" | ||
28 | |||
29 | /* Functions internal to this file */ | ||
30 | |||
31 | static void crystalhd_enable_uarts(struct crystalhd_adp *adp) | ||
32 | { | ||
33 | bc_dec_reg_wr(adp, UartSelectA, BSVS_UART_STREAM); | ||
34 | bc_dec_reg_wr(adp, UartSelectB, BSVS_UART_DEC_OUTER); | ||
35 | } | ||
36 | |||
37 | |||
38 | static void crystalhd_start_dram(struct crystalhd_adp *adp) | ||
39 | { | ||
40 | bc_dec_reg_wr(adp, SDRAM_PARAM, ((40 / 5 - 1) << 0) | | ||
41 | /* tras (40ns tras)/(5ns period) -1 ((15/5 - 1) << 4) | // trcd */ | ||
42 | ((15 / 5 - 1) << 7) | /* trp */ | ||
43 | ((10 / 5 - 1) << 10) | /* trrd */ | ||
44 | ((15 / 5 + 1) << 12) | /* twr */ | ||
45 | ((2 + 1) << 16) | /* twtr */ | ||
46 | ((70 / 5 - 2) << 19) | /* trfc */ | ||
47 | (0 << 23)); | ||
48 | |||
49 | bc_dec_reg_wr(adp, SDRAM_PRECHARGE, 0); | ||
50 | bc_dec_reg_wr(adp, SDRAM_EXT_MODE, 2); | ||
51 | bc_dec_reg_wr(adp, SDRAM_MODE, 0x132); | ||
52 | bc_dec_reg_wr(adp, SDRAM_PRECHARGE, 0); | ||
53 | bc_dec_reg_wr(adp, SDRAM_REFRESH, 0); | ||
54 | bc_dec_reg_wr(adp, SDRAM_REFRESH, 0); | ||
55 | bc_dec_reg_wr(adp, SDRAM_MODE, 0x32); | ||
56 | /* setting the refresh rate here */ | ||
57 | bc_dec_reg_wr(adp, SDRAM_REF_PARAM, ((1 << 12) | 96)); | ||
58 | } | ||
59 | |||
60 | |||
61 | static bool crystalhd_bring_out_of_rst(struct crystalhd_adp *adp) | ||
62 | { | ||
63 | link_misc_perst_deco_ctrl rst_deco_cntrl; | ||
64 | link_misc_perst_clk_ctrl rst_clk_cntrl; | ||
65 | uint32_t temp; | ||
66 | |||
67 | /* | ||
68 | * Link clocks: MISC_PERST_CLOCK_CTRL Clear PLL power down bit, | ||
69 | * delay to allow PLL to lock Clear alternate clock, stop clock bits | ||
70 | */ | ||
71 | rst_clk_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC_PERST_CLOCK_CTRL); | ||
72 | rst_clk_cntrl.pll_pwr_dn = 0; | ||
73 | crystalhd_reg_wr(adp, MISC_PERST_CLOCK_CTRL, rst_clk_cntrl.whole_reg); | ||
74 | msleep_interruptible(50); | ||
75 | |||
76 | rst_clk_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC_PERST_CLOCK_CTRL); | ||
77 | rst_clk_cntrl.stop_core_clk = 0; | ||
78 | rst_clk_cntrl.sel_alt_clk = 0; | ||
79 | |||
80 | crystalhd_reg_wr(adp, MISC_PERST_CLOCK_CTRL, rst_clk_cntrl.whole_reg); | ||
81 | msleep_interruptible(50); | ||
82 | |||
83 | /* | ||
84 | * Bus Arbiter Timeout: GISB_ARBITER_TIMER | ||
85 | * Set internal bus arbiter timeout to 40us based on core clock speed | ||
86 | * (63MHz * 40us = 0x9D8) | ||
87 | */ | ||
88 | crystalhd_reg_wr(adp, GISB_ARBITER_TIMER, 0x9D8); | ||
89 | |||
90 | /* | ||
91 | * Decoder clocks: MISC_PERST_DECODER_CTRL | ||
92 | * Enable clocks while 7412 reset is asserted, delay | ||
93 | * De-assert 7412 reset | ||
94 | */ | ||
95 | rst_deco_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC_PERST_DECODER_CTRL); | ||
96 | rst_deco_cntrl.stop_bcm_7412_clk = 0; | ||
97 | rst_deco_cntrl.bcm7412_rst = 1; | ||
98 | crystalhd_reg_wr(adp, MISC_PERST_DECODER_CTRL, rst_deco_cntrl.whole_reg); | ||
99 | msleep_interruptible(10); | ||
100 | |||
101 | rst_deco_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC_PERST_DECODER_CTRL); | ||
102 | rst_deco_cntrl.bcm7412_rst = 0; | ||
103 | crystalhd_reg_wr(adp, MISC_PERST_DECODER_CTRL, rst_deco_cntrl.whole_reg); | ||
104 | msleep_interruptible(50); | ||
105 | |||
106 | /* Disable OTP_CONTENT_MISC to 0 to disable all secure modes */ | ||
107 | crystalhd_reg_wr(adp, OTP_CONTENT_MISC, 0); | ||
108 | |||
109 | /* Clear bit 29 of 0x404 */ | ||
110 | temp = crystalhd_reg_rd(adp, PCIE_TL_TRANSACTION_CONFIGURATION); | ||
111 | temp &= ~BC_BIT(29); | ||
112 | crystalhd_reg_wr(adp, PCIE_TL_TRANSACTION_CONFIGURATION, temp); | ||
113 | |||
114 | /* 2.5V regulator must be set to 2.6 volts (+6%) */ | ||
115 | /* FIXME: jarod: what's the point of this reg read? */ | ||
116 | temp = crystalhd_reg_rd(adp, MISC_PERST_VREG_CTRL); | ||
117 | crystalhd_reg_wr(adp, MISC_PERST_VREG_CTRL, 0xF3); | ||
118 | |||
119 | return true; | ||
120 | } | ||
121 | |||
122 | static bool crystalhd_put_in_reset(struct crystalhd_adp *adp) | ||
123 | { | ||
124 | link_misc_perst_deco_ctrl rst_deco_cntrl; | ||
125 | link_misc_perst_clk_ctrl rst_clk_cntrl; | ||
126 | uint32_t temp; | ||
127 | |||
128 | /* | ||
129 | * Decoder clocks: MISC_PERST_DECODER_CTRL | ||
130 | * Assert 7412 reset, delay | ||
131 | * Assert 7412 stop clock | ||
132 | */ | ||
133 | rst_deco_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC_PERST_DECODER_CTRL); | ||
134 | rst_deco_cntrl.stop_bcm_7412_clk = 1; | ||
135 | crystalhd_reg_wr(adp, MISC_PERST_DECODER_CTRL, rst_deco_cntrl.whole_reg); | ||
136 | msleep_interruptible(50); | ||
137 | |||
138 | /* Bus Arbiter Timeout: GISB_ARBITER_TIMER | ||
139 | * Set internal bus arbiter timeout to 40us based on core clock speed | ||
140 | * (6.75MHZ * 40us = 0x10E) | ||
141 | */ | ||
142 | crystalhd_reg_wr(adp, GISB_ARBITER_TIMER, 0x10E); | ||
143 | |||
144 | /* Link clocks: MISC_PERST_CLOCK_CTRL | ||
145 | * Stop core clk, delay | ||
146 | * Set alternate clk, delay, set PLL power down | ||
147 | */ | ||
148 | rst_clk_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC_PERST_CLOCK_CTRL); | ||
149 | rst_clk_cntrl.stop_core_clk = 1; | ||
150 | rst_clk_cntrl.sel_alt_clk = 1; | ||
151 | crystalhd_reg_wr(adp, MISC_PERST_CLOCK_CTRL, rst_clk_cntrl.whole_reg); | ||
152 | msleep_interruptible(50); | ||
153 | |||
154 | rst_clk_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC_PERST_CLOCK_CTRL); | ||
155 | rst_clk_cntrl.pll_pwr_dn = 1; | ||
156 | crystalhd_reg_wr(adp, MISC_PERST_CLOCK_CTRL, rst_clk_cntrl.whole_reg); | ||
157 | |||
158 | /* | ||
159 | * Read and restore the Transaction Configuration Register | ||
160 | * after core reset | ||
161 | */ | ||
162 | temp = crystalhd_reg_rd(adp, PCIE_TL_TRANSACTION_CONFIGURATION); | ||
163 | |||
164 | /* | ||
165 | * Link core soft reset: MISC3_RESET_CTRL | ||
166 | * - Write BIT[0]=1 and read it back for core reset to take place | ||
167 | */ | ||
168 | crystalhd_reg_wr(adp, MISC3_RESET_CTRL, 1); | ||
169 | rst_deco_cntrl.whole_reg = crystalhd_reg_rd(adp, MISC3_RESET_CTRL); | ||
170 | msleep_interruptible(50); | ||
171 | |||
172 | /* restore the transaction configuration register */ | ||
173 | crystalhd_reg_wr(adp, PCIE_TL_TRANSACTION_CONFIGURATION, temp); | ||
174 | |||
175 | return true; | ||
176 | } | ||
177 | |||
178 | static void crystalhd_disable_interrupts(struct crystalhd_adp *adp) | ||
179 | { | ||
180 | intr_mask_reg intr_mask; | ||
181 | intr_mask.whole_reg = crystalhd_reg_rd(adp, INTR_INTR_MSK_STS_REG); | ||
182 | intr_mask.mask_pcie_err = 1; | ||
183 | intr_mask.mask_pcie_rbusmast_err = 1; | ||
184 | intr_mask.mask_pcie_rgr_bridge = 1; | ||
185 | intr_mask.mask_rx_done = 1; | ||
186 | intr_mask.mask_rx_err = 1; | ||
187 | intr_mask.mask_tx_done = 1; | ||
188 | intr_mask.mask_tx_err = 1; | ||
189 | crystalhd_reg_wr(adp, INTR_INTR_MSK_SET_REG, intr_mask.whole_reg); | ||
190 | |||
191 | return; | ||
192 | } | ||
193 | |||
194 | static void crystalhd_enable_interrupts(struct crystalhd_adp *adp) | ||
195 | { | ||
196 | intr_mask_reg intr_mask; | ||
197 | intr_mask.whole_reg = crystalhd_reg_rd(adp, INTR_INTR_MSK_STS_REG); | ||
198 | intr_mask.mask_pcie_err = 1; | ||
199 | intr_mask.mask_pcie_rbusmast_err = 1; | ||
200 | intr_mask.mask_pcie_rgr_bridge = 1; | ||
201 | intr_mask.mask_rx_done = 1; | ||
202 | intr_mask.mask_rx_err = 1; | ||
203 | intr_mask.mask_tx_done = 1; | ||
204 | intr_mask.mask_tx_err = 1; | ||
205 | crystalhd_reg_wr(adp, INTR_INTR_MSK_CLR_REG, intr_mask.whole_reg); | ||
206 | |||
207 | return; | ||
208 | } | ||
209 | |||
210 | static void crystalhd_clear_errors(struct crystalhd_adp *adp) | ||
211 | { | ||
212 | uint32_t reg; | ||
213 | |||
214 | /* FIXME: jarod: wouldn't we want to write a 0 to the reg? Or does the write clear the bits specified? */ | ||
215 | reg = crystalhd_reg_rd(adp, MISC1_Y_RX_ERROR_STATUS); | ||
216 | if (reg) | ||
217 | crystalhd_reg_wr(adp, MISC1_Y_RX_ERROR_STATUS, reg); | ||
218 | |||
219 | reg = crystalhd_reg_rd(adp, MISC1_UV_RX_ERROR_STATUS); | ||
220 | if (reg) | ||
221 | crystalhd_reg_wr(adp, MISC1_UV_RX_ERROR_STATUS, reg); | ||
222 | |||
223 | reg = crystalhd_reg_rd(adp, MISC1_TX_DMA_ERROR_STATUS); | ||
224 | if (reg) | ||
225 | crystalhd_reg_wr(adp, MISC1_TX_DMA_ERROR_STATUS, reg); | ||
226 | } | ||
227 | |||
228 | static void crystalhd_clear_interrupts(struct crystalhd_adp *adp) | ||
229 | { | ||
230 | uint32_t intr_sts = crystalhd_reg_rd(adp, INTR_INTR_STATUS); | ||
231 | |||
232 | if (intr_sts) { | ||
233 | crystalhd_reg_wr(adp, INTR_INTR_CLR_REG, intr_sts); | ||
234 | |||
235 | /* Write End Of Interrupt for PCIE */ | ||
236 | crystalhd_reg_wr(adp, INTR_EOI_CTRL, 1); | ||
237 | } | ||
238 | } | ||
239 | |||
240 | static void crystalhd_soft_rst(struct crystalhd_adp *adp) | ||
241 | { | ||
242 | uint32_t val; | ||
243 | |||
244 | /* Assert c011 soft reset*/ | ||
245 | bc_dec_reg_wr(adp, DecHt_HostSwReset, 0x00000001); | ||
246 | msleep_interruptible(50); | ||
247 | |||
248 | /* Release c011 soft reset*/ | ||
249 | bc_dec_reg_wr(adp, DecHt_HostSwReset, 0x00000000); | ||
250 | |||
251 | /* Disable Stuffing..*/ | ||
252 | val = crystalhd_reg_rd(adp, MISC2_GLOBAL_CTRL); | ||
253 | val |= BC_BIT(8); | ||
254 | crystalhd_reg_wr(adp, MISC2_GLOBAL_CTRL, val); | ||
255 | } | ||
256 | |||
257 | static bool crystalhd_load_firmware_config(struct crystalhd_adp *adp) | ||
258 | { | ||
259 | uint32_t i = 0, reg; | ||
260 | |||
261 | crystalhd_reg_wr(adp, DCI_DRAM_BASE_ADDR, (BC_DRAM_FW_CFG_ADDR >> 19)); | ||
262 | |||
263 | crystalhd_reg_wr(adp, AES_CMD, 0); | ||
264 | crystalhd_reg_wr(adp, AES_CONFIG_INFO, (BC_DRAM_FW_CFG_ADDR & 0x7FFFF)); | ||
265 | crystalhd_reg_wr(adp, AES_CMD, 0x1); | ||
266 | |||
267 | /* FIXME: jarod: I've seen this fail, and introducing extra delays helps... */ | ||
268 | for (i = 0; i < 100; ++i) { | ||
269 | reg = crystalhd_reg_rd(adp, AES_STATUS); | ||
270 | if (reg & 0x1) | ||
271 | return true; | ||
272 | msleep_interruptible(10); | ||
273 | } | ||
274 | |||
275 | return false; | ||
276 | } | ||
277 | |||
278 | |||
279 | static bool crystalhd_start_device(struct crystalhd_adp *adp) | ||
280 | { | ||
281 | uint32_t dbg_options, glb_cntrl = 0, reg_pwrmgmt = 0; | ||
282 | |||
283 | BCMLOG(BCMLOG_INFO, "Starting BCM70012 Device\n"); | ||
284 | |||
285 | reg_pwrmgmt = crystalhd_reg_rd(adp, PCIE_DLL_DATA_LINK_CONTROL); | ||
286 | reg_pwrmgmt &= ~ASPM_L1_ENABLE; | ||
287 | |||
288 | crystalhd_reg_wr(adp, PCIE_DLL_DATA_LINK_CONTROL, reg_pwrmgmt); | ||
289 | |||
290 | if (!crystalhd_bring_out_of_rst(adp)) { | ||
291 | BCMLOG_ERR("Failed To Bring Link Out Of Reset\n"); | ||
292 | return false; | ||
293 | } | ||
294 | |||
295 | crystalhd_disable_interrupts(adp); | ||
296 | |||
297 | crystalhd_clear_errors(adp); | ||
298 | |||
299 | crystalhd_clear_interrupts(adp); | ||
300 | |||
301 | crystalhd_enable_interrupts(adp); | ||
302 | |||
303 | /* Enable the option for getting the total no. of DWORDS | ||
304 | * that have been transfered by the RXDMA engine | ||
305 | */ | ||
306 | dbg_options = crystalhd_reg_rd(adp, MISC1_DMA_DEBUG_OPTIONS_REG); | ||
307 | dbg_options |= 0x10; | ||
308 | crystalhd_reg_wr(adp, MISC1_DMA_DEBUG_OPTIONS_REG, dbg_options); | ||
309 | |||
310 | /* Enable PCI Global Control options */ | ||
311 | glb_cntrl = crystalhd_reg_rd(adp, MISC2_GLOBAL_CTRL); | ||
312 | glb_cntrl |= 0x100; | ||
313 | glb_cntrl |= 0x8000; | ||
314 | crystalhd_reg_wr(adp, MISC2_GLOBAL_CTRL, glb_cntrl); | ||
315 | |||
316 | crystalhd_enable_interrupts(adp); | ||
317 | |||
318 | crystalhd_soft_rst(adp); | ||
319 | crystalhd_start_dram(adp); | ||
320 | crystalhd_enable_uarts(adp); | ||
321 | |||
322 | return true; | ||
323 | } | ||
324 | |||
325 | static bool crystalhd_stop_device(struct crystalhd_adp *adp) | ||
326 | { | ||
327 | uint32_t reg; | ||
328 | |||
329 | BCMLOG(BCMLOG_INFO, "Stopping BCM70012 Device\n"); | ||
330 | /* Clear and disable interrupts */ | ||
331 | crystalhd_disable_interrupts(adp); | ||
332 | crystalhd_clear_errors(adp); | ||
333 | crystalhd_clear_interrupts(adp); | ||
334 | |||
335 | if (!crystalhd_put_in_reset(adp)) | ||
336 | BCMLOG_ERR("Failed to Put Link To Reset State\n"); | ||
337 | |||
338 | reg = crystalhd_reg_rd(adp, PCIE_DLL_DATA_LINK_CONTROL); | ||
339 | reg |= ASPM_L1_ENABLE; | ||
340 | crystalhd_reg_wr(adp, PCIE_DLL_DATA_LINK_CONTROL, reg); | ||
341 | |||
342 | /* Set PCI Clk Req */ | ||
343 | reg = crystalhd_reg_rd(adp, PCIE_CLK_REQ_REG); | ||
344 | reg |= PCI_CLK_REQ_ENABLE; | ||
345 | crystalhd_reg_wr(adp, PCIE_CLK_REQ_REG, reg); | ||
346 | |||
347 | return true; | ||
348 | } | ||
349 | |||
350 | static crystalhd_rx_dma_pkt *crystalhd_hw_alloc_rx_pkt(struct crystalhd_hw *hw) | ||
351 | { | ||
352 | unsigned long flags = 0; | ||
353 | crystalhd_rx_dma_pkt *temp = NULL; | ||
354 | |||
355 | if (!hw) | ||
356 | return NULL; | ||
357 | |||
358 | spin_lock_irqsave(&hw->lock, flags); | ||
359 | temp = hw->rx_pkt_pool_head; | ||
360 | if (temp) { | ||
361 | hw->rx_pkt_pool_head = hw->rx_pkt_pool_head->next; | ||
362 | temp->dio_req = NULL; | ||
363 | temp->pkt_tag = 0; | ||
364 | temp->flags = 0; | ||
365 | } | ||
366 | spin_unlock_irqrestore(&hw->lock, flags); | ||
367 | |||
368 | return temp; | ||
369 | } | ||
370 | |||
371 | static void crystalhd_hw_free_rx_pkt(struct crystalhd_hw *hw, | ||
372 | crystalhd_rx_dma_pkt *pkt) | ||
373 | { | ||
374 | unsigned long flags = 0; | ||
375 | |||
376 | if (!hw || !pkt) | ||
377 | return; | ||
378 | |||
379 | spin_lock_irqsave(&hw->lock, flags); | ||
380 | pkt->next = hw->rx_pkt_pool_head; | ||
381 | hw->rx_pkt_pool_head = pkt; | ||
382 | spin_unlock_irqrestore(&hw->lock, flags); | ||
383 | } | ||
384 | |||
385 | /* | ||
386 | * Call back from TX - IOQ deletion. | ||
387 | * | ||
388 | * This routine will release the TX DMA rings allocated | ||
389 | * druing setup_dma rings interface. | ||
390 | * | ||
391 | * Memory is allocated per DMA ring basis. This is just | ||
392 | * a place holder to be able to create the dio queues. | ||
393 | */ | ||
394 | static void crystalhd_tx_desc_rel_call_back(void *context, void *data) | ||
395 | { | ||
396 | } | ||
397 | |||
398 | /* | ||
399 | * Rx Packet release callback.. | ||
400 | * | ||
401 | * Release All user mapped capture buffers and Our DMA packets | ||
402 | * back to our free pool. The actual cleanup of the DMA | ||
403 | * ring descriptors happen during dma ring release. | ||
404 | */ | ||
405 | static void crystalhd_rx_pkt_rel_call_back(void *context, void *data) | ||
406 | { | ||
407 | struct crystalhd_hw *hw = (struct crystalhd_hw *)context; | ||
408 | crystalhd_rx_dma_pkt *pkt = (crystalhd_rx_dma_pkt *)data; | ||
409 | |||
410 | if (!pkt || !hw) { | ||
411 | BCMLOG_ERR("Invalid arg - %p %p\n", hw, pkt); | ||
412 | return; | ||
413 | } | ||
414 | |||
415 | if (pkt->dio_req) | ||
416 | crystalhd_unmap_dio(hw->adp, pkt->dio_req); | ||
417 | else | ||
418 | BCMLOG_ERR("Missing dio_req: 0x%x\n", pkt->pkt_tag); | ||
419 | |||
420 | crystalhd_hw_free_rx_pkt(hw, pkt); | ||
421 | } | ||
422 | |||
423 | #define crystalhd_hw_delete_ioq(adp, q) \ | ||
424 | if (q) { \ | ||
425 | crystalhd_delete_dioq(adp, q); \ | ||
426 | q = NULL; \ | ||
427 | } | ||
428 | |||
429 | static void crystalhd_hw_delete_ioqs(struct crystalhd_hw *hw) | ||
430 | { | ||
431 | if (!hw) | ||
432 | return; | ||
433 | |||
434 | BCMLOG(BCMLOG_DBG, "Deleting IOQs \n"); | ||
435 | crystalhd_hw_delete_ioq(hw->adp, hw->tx_actq); | ||
436 | crystalhd_hw_delete_ioq(hw->adp, hw->tx_freeq); | ||
437 | crystalhd_hw_delete_ioq(hw->adp, hw->rx_actq); | ||
438 | crystalhd_hw_delete_ioq(hw->adp, hw->rx_freeq); | ||
439 | crystalhd_hw_delete_ioq(hw->adp, hw->rx_rdyq); | ||
440 | } | ||
441 | |||
442 | #define crystalhd_hw_create_ioq(sts, hw, q, cb) \ | ||
443 | do { \ | ||
444 | sts = crystalhd_create_dioq(hw->adp, &q, cb, hw); \ | ||
445 | if (sts != BC_STS_SUCCESS) \ | ||
446 | goto hw_create_ioq_err; \ | ||
447 | } while (0) | ||
448 | |||
449 | /* | ||
450 | * Create IOQs.. | ||
451 | * | ||
452 | * TX - Active & Free | ||
453 | * RX - Active, Ready and Free. | ||
454 | */ | ||
455 | static BC_STATUS crystalhd_hw_create_ioqs(struct crystalhd_hw *hw) | ||
456 | { | ||
457 | BC_STATUS sts = BC_STS_SUCCESS; | ||
458 | |||
459 | if (!hw) { | ||
460 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
461 | return BC_STS_INV_ARG; | ||
462 | } | ||
463 | |||
464 | crystalhd_hw_create_ioq(sts, hw, hw->tx_freeq, | ||
465 | crystalhd_tx_desc_rel_call_back); | ||
466 | crystalhd_hw_create_ioq(sts, hw, hw->tx_actq, | ||
467 | crystalhd_tx_desc_rel_call_back); | ||
468 | |||
469 | crystalhd_hw_create_ioq(sts, hw, hw->rx_freeq, | ||
470 | crystalhd_rx_pkt_rel_call_back); | ||
471 | crystalhd_hw_create_ioq(sts, hw, hw->rx_rdyq, | ||
472 | crystalhd_rx_pkt_rel_call_back); | ||
473 | crystalhd_hw_create_ioq(sts, hw, hw->rx_actq, | ||
474 | crystalhd_rx_pkt_rel_call_back); | ||
475 | |||
476 | return sts; | ||
477 | |||
478 | hw_create_ioq_err: | ||
479 | crystalhd_hw_delete_ioqs(hw); | ||
480 | |||
481 | return sts; | ||
482 | } | ||
483 | |||
484 | |||
485 | static bool crystalhd_code_in_full(struct crystalhd_adp *adp, uint32_t needed_sz, | ||
486 | bool b_188_byte_pkts, uint8_t flags) | ||
487 | { | ||
488 | uint32_t base, end, writep, readp; | ||
489 | uint32_t cpbSize, cpbFullness, fifoSize; | ||
490 | |||
491 | if (flags & 0x02) { /* ASF Bit is set */ | ||
492 | base = bc_dec_reg_rd(adp, REG_Dec_TsAudCDB2Base); | ||
493 | end = bc_dec_reg_rd(adp, REG_Dec_TsAudCDB2End); | ||
494 | writep = bc_dec_reg_rd(adp, REG_Dec_TsAudCDB2Wrptr); | ||
495 | readp = bc_dec_reg_rd(adp, REG_Dec_TsAudCDB2Rdptr); | ||
496 | } else if (b_188_byte_pkts) { /*Encrypted 188 byte packets*/ | ||
497 | base = bc_dec_reg_rd(adp, REG_Dec_TsUser0Base); | ||
498 | end = bc_dec_reg_rd(adp, REG_Dec_TsUser0End); | ||
499 | writep = bc_dec_reg_rd(adp, REG_Dec_TsUser0Wrptr); | ||
500 | readp = bc_dec_reg_rd(adp, REG_Dec_TsUser0Rdptr); | ||
501 | } else { | ||
502 | base = bc_dec_reg_rd(adp, REG_DecCA_RegCinBase); | ||
503 | end = bc_dec_reg_rd(adp, REG_DecCA_RegCinEnd); | ||
504 | writep = bc_dec_reg_rd(adp, REG_DecCA_RegCinWrPtr); | ||
505 | readp = bc_dec_reg_rd(adp, REG_DecCA_RegCinRdPtr); | ||
506 | } | ||
507 | |||
508 | cpbSize = end - base; | ||
509 | if (writep >= readp) | ||
510 | cpbFullness = writep - readp; | ||
511 | else | ||
512 | cpbFullness = (end - base) - (readp - writep); | ||
513 | |||
514 | fifoSize = cpbSize - cpbFullness; | ||
515 | |||
516 | if (fifoSize < BC_INFIFO_THRESHOLD) | ||
517 | return true; | ||
518 | |||
519 | if (needed_sz > (fifoSize - BC_INFIFO_THRESHOLD)) | ||
520 | return true; | ||
521 | |||
522 | return false; | ||
523 | } | ||
524 | |||
525 | static BC_STATUS crystalhd_hw_tx_req_complete(struct crystalhd_hw *hw, | ||
526 | uint32_t list_id, BC_STATUS cs) | ||
527 | { | ||
528 | tx_dma_pkt *tx_req; | ||
529 | |||
530 | if (!hw || !list_id) { | ||
531 | BCMLOG_ERR("Invalid Arg..\n"); | ||
532 | return BC_STS_INV_ARG; | ||
533 | } | ||
534 | |||
535 | hw->pwr_lock--; | ||
536 | |||
537 | tx_req = (tx_dma_pkt *)crystalhd_dioq_find_and_fetch(hw->tx_actq, list_id); | ||
538 | if (!tx_req) { | ||
539 | if (cs != BC_STS_IO_USER_ABORT) | ||
540 | BCMLOG_ERR("Find and Fetch Did not find req\n"); | ||
541 | return BC_STS_NO_DATA; | ||
542 | } | ||
543 | |||
544 | if (tx_req->call_back) { | ||
545 | tx_req->call_back(tx_req->dio_req, tx_req->cb_event, cs); | ||
546 | tx_req->dio_req = NULL; | ||
547 | tx_req->cb_event = NULL; | ||
548 | tx_req->call_back = NULL; | ||
549 | } else { | ||
550 | BCMLOG(BCMLOG_DBG, "Missing Tx Callback - %X\n", | ||
551 | tx_req->list_tag); | ||
552 | } | ||
553 | |||
554 | /* Now put back the tx_list back in FreeQ */ | ||
555 | tx_req->list_tag = 0; | ||
556 | |||
557 | return crystalhd_dioq_add(hw->tx_freeq, tx_req, false, 0); | ||
558 | } | ||
559 | |||
560 | static bool crystalhd_tx_list0_handler(struct crystalhd_hw *hw, uint32_t err_sts) | ||
561 | { | ||
562 | uint32_t err_mask, tmp; | ||
563 | unsigned long flags = 0; | ||
564 | |||
565 | err_mask = MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_MASK | | ||
566 | MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_MASK | | ||
567 | MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_MASK; | ||
568 | |||
569 | if (!(err_sts & err_mask)) | ||
570 | return false; | ||
571 | |||
572 | BCMLOG_ERR("Error on Tx-L0 %x \n", err_sts); | ||
573 | |||
574 | tmp = err_mask; | ||
575 | |||
576 | if (err_sts & MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_MASK) | ||
577 | tmp &= ~MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_MASK; | ||
578 | |||
579 | if (tmp) { | ||
580 | spin_lock_irqsave(&hw->lock, flags); | ||
581 | /* reset list index.*/ | ||
582 | hw->tx_list_post_index = 0; | ||
583 | spin_unlock_irqrestore(&hw->lock, flags); | ||
584 | } | ||
585 | |||
586 | tmp = err_sts & err_mask; | ||
587 | crystalhd_reg_wr(hw->adp, MISC1_TX_DMA_ERROR_STATUS, tmp); | ||
588 | |||
589 | return true; | ||
590 | } | ||
591 | |||
592 | static bool crystalhd_tx_list1_handler(struct crystalhd_hw *hw, uint32_t err_sts) | ||
593 | { | ||
594 | uint32_t err_mask, tmp; | ||
595 | unsigned long flags = 0; | ||
596 | |||
597 | err_mask = MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_MASK | | ||
598 | MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_MASK | | ||
599 | MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_MASK; | ||
600 | |||
601 | if (!(err_sts & err_mask)) | ||
602 | return false; | ||
603 | |||
604 | BCMLOG_ERR("Error on Tx-L1 %x \n", err_sts); | ||
605 | |||
606 | tmp = err_mask; | ||
607 | |||
608 | if (err_sts & MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_MASK) | ||
609 | tmp &= ~MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_MASK; | ||
610 | |||
611 | if (tmp) { | ||
612 | spin_lock_irqsave(&hw->lock, flags); | ||
613 | /* reset list index.*/ | ||
614 | hw->tx_list_post_index = 0; | ||
615 | spin_unlock_irqrestore(&hw->lock, flags); | ||
616 | } | ||
617 | |||
618 | tmp = err_sts & err_mask; | ||
619 | crystalhd_reg_wr(hw->adp, MISC1_TX_DMA_ERROR_STATUS, tmp); | ||
620 | |||
621 | return true; | ||
622 | } | ||
623 | |||
624 | static void crystalhd_tx_isr(struct crystalhd_hw *hw, uint32_t int_sts) | ||
625 | { | ||
626 | uint32_t err_sts; | ||
627 | |||
628 | if (int_sts & INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_MASK) | ||
629 | crystalhd_hw_tx_req_complete(hw, hw->tx_ioq_tag_seed + 0, | ||
630 | BC_STS_SUCCESS); | ||
631 | |||
632 | if (int_sts & INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_MASK) | ||
633 | crystalhd_hw_tx_req_complete(hw, hw->tx_ioq_tag_seed + 1, | ||
634 | BC_STS_SUCCESS); | ||
635 | |||
636 | if (!(int_sts & (INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_MASK | | ||
637 | INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_MASK))) { | ||
638 | /* No error mask set.. */ | ||
639 | return; | ||
640 | } | ||
641 | |||
642 | /* Handle Tx errors. */ | ||
643 | err_sts = crystalhd_reg_rd(hw->adp, MISC1_TX_DMA_ERROR_STATUS); | ||
644 | |||
645 | if (crystalhd_tx_list0_handler(hw, err_sts)) | ||
646 | crystalhd_hw_tx_req_complete(hw, hw->tx_ioq_tag_seed + 0, | ||
647 | BC_STS_ERROR); | ||
648 | |||
649 | if (crystalhd_tx_list1_handler(hw, err_sts)) | ||
650 | crystalhd_hw_tx_req_complete(hw, hw->tx_ioq_tag_seed + 1, | ||
651 | BC_STS_ERROR); | ||
652 | |||
653 | hw->stats.tx_errors++; | ||
654 | } | ||
655 | |||
656 | static void crystalhd_hw_dump_desc(pdma_descriptor p_dma_desc, | ||
657 | uint32_t ul_desc_index, uint32_t cnt) | ||
658 | { | ||
659 | uint32_t ix, ll = 0; | ||
660 | |||
661 | if (!p_dma_desc || !cnt) | ||
662 | return; | ||
663 | |||
664 | /* FIXME: jarod: perhaps a modparam desc_debug to enable this, rather than | ||
665 | * setting ll (log level, I presume) to non-zero? */ | ||
666 | if (!ll) | ||
667 | return; | ||
668 | |||
669 | for (ix = ul_desc_index; ix < (ul_desc_index + cnt); ix++) { | ||
670 | BCMLOG(ll, "%s[%d] Buff[%x:%x] Next:[%x:%x] XferSz:%x Intr:%x,Last:%x\n", | ||
671 | ((p_dma_desc[ul_desc_index].dma_dir) ? "TDesc" : "RDesc"), | ||
672 | ul_desc_index, | ||
673 | p_dma_desc[ul_desc_index].buff_addr_high, | ||
674 | p_dma_desc[ul_desc_index].buff_addr_low, | ||
675 | p_dma_desc[ul_desc_index].next_desc_addr_high, | ||
676 | p_dma_desc[ul_desc_index].next_desc_addr_low, | ||
677 | p_dma_desc[ul_desc_index].xfer_size, | ||
678 | p_dma_desc[ul_desc_index].intr_enable, | ||
679 | p_dma_desc[ul_desc_index].last_rec_indicator); | ||
680 | } | ||
681 | |||
682 | } | ||
683 | |||
684 | static BC_STATUS crystalhd_hw_fill_desc(crystalhd_dio_req *ioreq, | ||
685 | dma_descriptor *desc, | ||
686 | dma_addr_t desc_paddr_base, | ||
687 | uint32_t sg_cnt, uint32_t sg_st_ix, | ||
688 | uint32_t sg_st_off, uint32_t xfr_sz) | ||
689 | { | ||
690 | uint32_t count = 0, ix = 0, sg_ix = 0, len = 0, last_desc_ix = 0; | ||
691 | dma_addr_t desc_phy_addr = desc_paddr_base; | ||
692 | addr_64 addr_temp; | ||
693 | |||
694 | if (!ioreq || !desc || !desc_paddr_base || !xfr_sz || | ||
695 | (!sg_cnt && !ioreq->uinfo.dir_tx)) { | ||
696 | BCMLOG_ERR("Invalid Args\n"); | ||
697 | return BC_STS_INV_ARG; | ||
698 | } | ||
699 | |||
700 | for (ix = 0; ix < sg_cnt; ix++) { | ||
701 | |||
702 | /* Setup SGLE index. */ | ||
703 | sg_ix = ix + sg_st_ix; | ||
704 | |||
705 | /* Get SGLE length */ | ||
706 | len = crystalhd_get_sgle_len(ioreq, sg_ix); | ||
707 | if (len % 4) { | ||
708 | BCMLOG_ERR(" len in sg %d %d %d\n", len, sg_ix, sg_cnt); | ||
709 | return BC_STS_NOT_IMPL; | ||
710 | } | ||
711 | /* Setup DMA desc with Phy addr & Length at current index. */ | ||
712 | addr_temp.full_addr = crystalhd_get_sgle_paddr(ioreq, sg_ix); | ||
713 | if (sg_ix == sg_st_ix) { | ||
714 | addr_temp.full_addr += sg_st_off; | ||
715 | len -= sg_st_off; | ||
716 | } | ||
717 | memset(&desc[ix], 0, sizeof(desc[ix])); | ||
718 | desc[ix].buff_addr_low = addr_temp.low_part; | ||
719 | desc[ix].buff_addr_high = addr_temp.high_part; | ||
720 | desc[ix].dma_dir = ioreq->uinfo.dir_tx; | ||
721 | |||
722 | /* Chain DMA descriptor. */ | ||
723 | addr_temp.full_addr = desc_phy_addr + sizeof(dma_descriptor); | ||
724 | desc[ix].next_desc_addr_low = addr_temp.low_part; | ||
725 | desc[ix].next_desc_addr_high = addr_temp.high_part; | ||
726 | |||
727 | if ((count + len) > xfr_sz) | ||
728 | len = xfr_sz - count; | ||
729 | |||
730 | /* Debug.. */ | ||
731 | if ((!len) || (len > crystalhd_get_sgle_len(ioreq, sg_ix))) { | ||
732 | BCMLOG_ERR("inv-len(%x) Ix(%d) count:%x xfr_sz:%x sg_cnt:%d\n", | ||
733 | len, ix, count, xfr_sz, sg_cnt); | ||
734 | return BC_STS_ERROR; | ||
735 | } | ||
736 | /* Length expects Multiple of 4 */ | ||
737 | desc[ix].xfer_size = (len / 4); | ||
738 | |||
739 | crystalhd_hw_dump_desc(desc, ix, 1); | ||
740 | |||
741 | count += len; | ||
742 | desc_phy_addr += sizeof(dma_descriptor); | ||
743 | } | ||
744 | |||
745 | last_desc_ix = ix - 1; | ||
746 | |||
747 | if (ioreq->fb_size) { | ||
748 | memset(&desc[ix], 0, sizeof(desc[ix])); | ||
749 | addr_temp.full_addr = ioreq->fb_pa; | ||
750 | desc[ix].buff_addr_low = addr_temp.low_part; | ||
751 | desc[ix].buff_addr_high = addr_temp.high_part; | ||
752 | desc[ix].dma_dir = ioreq->uinfo.dir_tx; | ||
753 | desc[ix].xfer_size = 1; | ||
754 | desc[ix].fill_bytes = 4 - ioreq->fb_size; | ||
755 | count += ioreq->fb_size; | ||
756 | last_desc_ix++; | ||
757 | } | ||
758 | |||
759 | /* setup last descriptor..*/ | ||
760 | desc[last_desc_ix].last_rec_indicator = 1; | ||
761 | desc[last_desc_ix].next_desc_addr_low = 0; | ||
762 | desc[last_desc_ix].next_desc_addr_high = 0; | ||
763 | desc[last_desc_ix].intr_enable = 1; | ||
764 | |||
765 | crystalhd_hw_dump_desc(desc, last_desc_ix, 1); | ||
766 | |||
767 | if (count != xfr_sz) { | ||
768 | BCMLOG_ERR("interal error sz curr:%x exp:%x\n", count, xfr_sz); | ||
769 | return BC_STS_ERROR; | ||
770 | } | ||
771 | |||
772 | return BC_STS_SUCCESS; | ||
773 | } | ||
774 | |||
775 | static BC_STATUS crystalhd_xlat_sgl_to_dma_desc(crystalhd_dio_req *ioreq, | ||
776 | pdma_desc_mem pdesc_mem, | ||
777 | uint32_t *uv_desc_index) | ||
778 | { | ||
779 | dma_descriptor *desc = NULL; | ||
780 | dma_addr_t desc_paddr_base = 0; | ||
781 | uint32_t sg_cnt = 0, sg_st_ix = 0, sg_st_off = 0; | ||
782 | uint32_t xfr_sz = 0; | ||
783 | BC_STATUS sts = BC_STS_SUCCESS; | ||
784 | |||
785 | /* Check params.. */ | ||
786 | if (!ioreq || !pdesc_mem || !uv_desc_index) { | ||
787 | BCMLOG_ERR("Invalid Args\n"); | ||
788 | return BC_STS_INV_ARG; | ||
789 | } | ||
790 | |||
791 | if (!pdesc_mem->sz || !pdesc_mem->pdma_desc_start || | ||
792 | !ioreq->sg || (!ioreq->sg_cnt && !ioreq->uinfo.dir_tx)) { | ||
793 | BCMLOG_ERR("Invalid Args\n"); | ||
794 | return BC_STS_INV_ARG; | ||
795 | } | ||
796 | |||
797 | if ((ioreq->uinfo.dir_tx) && (ioreq->uinfo.uv_offset)) { | ||
798 | BCMLOG_ERR("UV offset for TX??\n"); | ||
799 | return BC_STS_INV_ARG; | ||
800 | |||
801 | } | ||
802 | |||
803 | desc = pdesc_mem->pdma_desc_start; | ||
804 | desc_paddr_base = pdesc_mem->phy_addr; | ||
805 | |||
806 | if (ioreq->uinfo.dir_tx || (ioreq->uinfo.uv_offset == 0)) { | ||
807 | sg_cnt = ioreq->sg_cnt; | ||
808 | xfr_sz = ioreq->uinfo.xfr_len; | ||
809 | } else { | ||
810 | sg_cnt = ioreq->uinfo.uv_sg_ix + 1; | ||
811 | xfr_sz = ioreq->uinfo.uv_offset; | ||
812 | } | ||
813 | |||
814 | sts = crystalhd_hw_fill_desc(ioreq, desc, desc_paddr_base, sg_cnt, | ||
815 | sg_st_ix, sg_st_off, xfr_sz); | ||
816 | |||
817 | if ((sts != BC_STS_SUCCESS) || !ioreq->uinfo.uv_offset) | ||
818 | return sts; | ||
819 | |||
820 | /* Prepare for UV mapping.. */ | ||
821 | desc = &pdesc_mem->pdma_desc_start[sg_cnt]; | ||
822 | desc_paddr_base = pdesc_mem->phy_addr + | ||
823 | (sg_cnt * sizeof(dma_descriptor)); | ||
824 | |||
825 | /* Done with desc addr.. now update sg stuff.*/ | ||
826 | sg_cnt = ioreq->sg_cnt - ioreq->uinfo.uv_sg_ix; | ||
827 | xfr_sz = ioreq->uinfo.xfr_len - ioreq->uinfo.uv_offset; | ||
828 | sg_st_ix = ioreq->uinfo.uv_sg_ix; | ||
829 | sg_st_off = ioreq->uinfo.uv_sg_off; | ||
830 | |||
831 | sts = crystalhd_hw_fill_desc(ioreq, desc, desc_paddr_base, sg_cnt, | ||
832 | sg_st_ix, sg_st_off, xfr_sz); | ||
833 | if (sts != BC_STS_SUCCESS) | ||
834 | return sts; | ||
835 | |||
836 | *uv_desc_index = sg_st_ix; | ||
837 | |||
838 | return sts; | ||
839 | } | ||
840 | |||
841 | static void crystalhd_start_tx_dma_engine(struct crystalhd_hw *hw) | ||
842 | { | ||
843 | uint32_t dma_cntrl; | ||
844 | |||
845 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_TX_SW_DESC_LIST_CTRL_STS); | ||
846 | if (!(dma_cntrl & DMA_START_BIT)) { | ||
847 | dma_cntrl |= DMA_START_BIT; | ||
848 | crystalhd_reg_wr(hw->adp, MISC1_TX_SW_DESC_LIST_CTRL_STS, | ||
849 | dma_cntrl); | ||
850 | } | ||
851 | |||
852 | return; | ||
853 | } | ||
854 | |||
855 | /* _CHECK_THIS_ | ||
856 | * | ||
857 | * Verify if the Stop generates a completion interrupt or not. | ||
858 | * if it does not generate an interrupt, then add polling here. | ||
859 | */ | ||
860 | static BC_STATUS crystalhd_stop_tx_dma_engine(struct crystalhd_hw *hw) | ||
861 | { | ||
862 | uint32_t dma_cntrl, cnt = 30; | ||
863 | uint32_t l1 = 1, l2 = 1; | ||
864 | unsigned long flags = 0; | ||
865 | |||
866 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_TX_SW_DESC_LIST_CTRL_STS); | ||
867 | |||
868 | BCMLOG(BCMLOG_DBG, "Stopping TX DMA Engine..\n"); | ||
869 | |||
870 | /* FIXME: jarod: invert dma_ctrl and check bit? or are there missing parens? */ | ||
871 | if (!dma_cntrl & DMA_START_BIT) { | ||
872 | BCMLOG(BCMLOG_DBG, "Already Stopped\n"); | ||
873 | return BC_STS_SUCCESS; | ||
874 | } | ||
875 | |||
876 | crystalhd_disable_interrupts(hw->adp); | ||
877 | |||
878 | /* Issue stop to HW */ | ||
879 | /* This bit when set gave problems. Please check*/ | ||
880 | dma_cntrl &= ~DMA_START_BIT; | ||
881 | crystalhd_reg_wr(hw->adp, MISC1_TX_SW_DESC_LIST_CTRL_STS, dma_cntrl); | ||
882 | |||
883 | BCMLOG(BCMLOG_DBG, "Cleared the DMA Start bit\n"); | ||
884 | |||
885 | /* Poll for 3seconds (30 * 100ms) on both the lists..*/ | ||
886 | while ((l1 || l2) && cnt) { | ||
887 | |||
888 | if (l1) { | ||
889 | l1 = crystalhd_reg_rd(hw->adp, MISC1_TX_FIRST_DESC_L_ADDR_LIST0); | ||
890 | l1 &= DMA_START_BIT; | ||
891 | } | ||
892 | |||
893 | if (l2) { | ||
894 | l2 = crystalhd_reg_rd(hw->adp, MISC1_TX_FIRST_DESC_L_ADDR_LIST1); | ||
895 | l2 &= DMA_START_BIT; | ||
896 | } | ||
897 | |||
898 | msleep_interruptible(100); | ||
899 | |||
900 | cnt--; | ||
901 | } | ||
902 | |||
903 | if (!cnt) { | ||
904 | BCMLOG_ERR("Failed to stop TX DMA.. l1 %d, l2 %d\n", l1, l2); | ||
905 | crystalhd_enable_interrupts(hw->adp); | ||
906 | return BC_STS_ERROR; | ||
907 | } | ||
908 | |||
909 | spin_lock_irqsave(&hw->lock, flags); | ||
910 | hw->tx_list_post_index = 0; | ||
911 | spin_unlock_irqrestore(&hw->lock, flags); | ||
912 | BCMLOG(BCMLOG_DBG, "stopped TX DMA..\n"); | ||
913 | crystalhd_enable_interrupts(hw->adp); | ||
914 | |||
915 | return BC_STS_SUCCESS; | ||
916 | } | ||
917 | |||
918 | static uint32_t crystalhd_get_pib_avail_cnt(struct crystalhd_hw *hw) | ||
919 | { | ||
920 | /* | ||
921 | * Position of the PIB Entries can be found at | ||
922 | * 0th and the 1st location of the Circular list. | ||
923 | */ | ||
924 | uint32_t Q_addr; | ||
925 | uint32_t pib_cnt, r_offset, w_offset; | ||
926 | |||
927 | Q_addr = hw->pib_del_Q_addr; | ||
928 | |||
929 | /* Get the Read Pointer */ | ||
930 | crystalhd_mem_rd(hw->adp, Q_addr, 1, &r_offset); | ||
931 | |||
932 | /* Get the Write Pointer */ | ||
933 | crystalhd_mem_rd(hw->adp, Q_addr + sizeof(uint32_t), 1, &w_offset); | ||
934 | |||
935 | if (r_offset == w_offset) | ||
936 | return 0; /* Queue is empty */ | ||
937 | |||
938 | if (w_offset > r_offset) | ||
939 | pib_cnt = w_offset - r_offset; | ||
940 | else | ||
941 | pib_cnt = (w_offset + MAX_PIB_Q_DEPTH) - | ||
942 | (r_offset + MIN_PIB_Q_DEPTH); | ||
943 | |||
944 | if (pib_cnt > MAX_PIB_Q_DEPTH) { | ||
945 | BCMLOG_ERR("Invalid PIB Count (%u)\n", pib_cnt); | ||
946 | return 0; | ||
947 | } | ||
948 | |||
949 | return pib_cnt; | ||
950 | } | ||
951 | |||
952 | static uint32_t crystalhd_get_addr_from_pib_Q(struct crystalhd_hw *hw) | ||
953 | { | ||
954 | uint32_t Q_addr; | ||
955 | uint32_t addr_entry, r_offset, w_offset; | ||
956 | |||
957 | Q_addr = hw->pib_del_Q_addr; | ||
958 | |||
959 | /* Get the Read Pointer 0Th Location is Read Pointer */ | ||
960 | crystalhd_mem_rd(hw->adp, Q_addr, 1, &r_offset); | ||
961 | |||
962 | /* Get the Write Pointer 1st Location is Write pointer */ | ||
963 | crystalhd_mem_rd(hw->adp, Q_addr + sizeof(uint32_t), 1, &w_offset); | ||
964 | |||
965 | /* Queue is empty */ | ||
966 | if (r_offset == w_offset) | ||
967 | return 0; | ||
968 | |||
969 | if ((r_offset < MIN_PIB_Q_DEPTH) || (r_offset >= MAX_PIB_Q_DEPTH)) | ||
970 | return 0; | ||
971 | |||
972 | /* Get the Actual Address of the PIB */ | ||
973 | crystalhd_mem_rd(hw->adp, Q_addr + (r_offset * sizeof(uint32_t)), | ||
974 | 1, &addr_entry); | ||
975 | |||
976 | /* Increment the Read Pointer */ | ||
977 | r_offset++; | ||
978 | |||
979 | if (MAX_PIB_Q_DEPTH == r_offset) | ||
980 | r_offset = MIN_PIB_Q_DEPTH; | ||
981 | |||
982 | /* Write back the read pointer to It's Location */ | ||
983 | crystalhd_mem_wr(hw->adp, Q_addr, 1, &r_offset); | ||
984 | |||
985 | return addr_entry; | ||
986 | } | ||
987 | |||
988 | static bool crystalhd_rel_addr_to_pib_Q(struct crystalhd_hw *hw, uint32_t addr_to_rel) | ||
989 | { | ||
990 | uint32_t Q_addr; | ||
991 | uint32_t r_offset, w_offset, n_offset; | ||
992 | |||
993 | Q_addr = hw->pib_rel_Q_addr; | ||
994 | |||
995 | /* Get the Read Pointer */ | ||
996 | crystalhd_mem_rd(hw->adp, Q_addr, 1, &r_offset); | ||
997 | |||
998 | /* Get the Write Pointer */ | ||
999 | crystalhd_mem_rd(hw->adp, Q_addr + sizeof(uint32_t), 1, &w_offset); | ||
1000 | |||
1001 | if ((r_offset < MIN_PIB_Q_DEPTH) || | ||
1002 | (r_offset >= MAX_PIB_Q_DEPTH)) | ||
1003 | return false; | ||
1004 | |||
1005 | n_offset = w_offset + 1; | ||
1006 | |||
1007 | if (MAX_PIB_Q_DEPTH == n_offset) | ||
1008 | n_offset = MIN_PIB_Q_DEPTH; | ||
1009 | |||
1010 | if (r_offset == n_offset) | ||
1011 | return false; /* should never happen */ | ||
1012 | |||
1013 | /* Write the DRAM ADDR to the Queue at Next Offset */ | ||
1014 | crystalhd_mem_wr(hw->adp, Q_addr + (w_offset * sizeof(uint32_t)), | ||
1015 | 1, &addr_to_rel); | ||
1016 | |||
1017 | /* Put the New value of the write pointer in Queue */ | ||
1018 | crystalhd_mem_wr(hw->adp, Q_addr + sizeof(uint32_t), 1, &n_offset); | ||
1019 | |||
1020 | return true; | ||
1021 | } | ||
1022 | |||
1023 | static void cpy_pib_to_app(C011_PIB *src_pib, BC_PIC_INFO_BLOCK *dst_pib) | ||
1024 | { | ||
1025 | if (!src_pib || !dst_pib) { | ||
1026 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1027 | return; | ||
1028 | } | ||
1029 | |||
1030 | dst_pib->timeStamp = 0; | ||
1031 | dst_pib->picture_number = src_pib->ppb.picture_number; | ||
1032 | dst_pib->width = src_pib->ppb.width; | ||
1033 | dst_pib->height = src_pib->ppb.height; | ||
1034 | dst_pib->chroma_format = src_pib->ppb.chroma_format; | ||
1035 | dst_pib->pulldown = src_pib->ppb.pulldown; | ||
1036 | dst_pib->flags = src_pib->ppb.flags; | ||
1037 | dst_pib->sess_num = src_pib->ptsStcOffset; | ||
1038 | dst_pib->aspect_ratio = src_pib->ppb.aspect_ratio; | ||
1039 | dst_pib->colour_primaries = src_pib->ppb.colour_primaries; | ||
1040 | dst_pib->picture_meta_payload = src_pib->ppb.picture_meta_payload; | ||
1041 | dst_pib->frame_rate = src_pib->resolution ; | ||
1042 | return; | ||
1043 | } | ||
1044 | |||
1045 | static void crystalhd_hw_proc_pib(struct crystalhd_hw *hw) | ||
1046 | { | ||
1047 | unsigned int cnt; | ||
1048 | C011_PIB src_pib; | ||
1049 | uint32_t pib_addr, pib_cnt; | ||
1050 | BC_PIC_INFO_BLOCK *AppPib; | ||
1051 | crystalhd_rx_dma_pkt *rx_pkt = NULL; | ||
1052 | |||
1053 | pib_cnt = crystalhd_get_pib_avail_cnt(hw); | ||
1054 | |||
1055 | if (!pib_cnt) | ||
1056 | return; | ||
1057 | |||
1058 | for (cnt = 0; cnt < pib_cnt; cnt++) { | ||
1059 | |||
1060 | pib_addr = crystalhd_get_addr_from_pib_Q(hw); | ||
1061 | crystalhd_mem_rd(hw->adp, pib_addr, sizeof(C011_PIB) / 4, | ||
1062 | (uint32_t *)&src_pib); | ||
1063 | |||
1064 | if (src_pib.bFormatChange) { | ||
1065 | rx_pkt = (crystalhd_rx_dma_pkt *)crystalhd_dioq_fetch(hw->rx_freeq); | ||
1066 | if (!rx_pkt) | ||
1067 | return; | ||
1068 | rx_pkt->flags = 0; | ||
1069 | rx_pkt->flags |= COMP_FLAG_PIB_VALID | COMP_FLAG_FMT_CHANGE; | ||
1070 | AppPib = &rx_pkt->pib; | ||
1071 | cpy_pib_to_app(&src_pib, AppPib); | ||
1072 | |||
1073 | BCMLOG(BCMLOG_DBG, | ||
1074 | "App PIB:%x %x %x %x %x %x %x %x %x %x\n", | ||
1075 | rx_pkt->pib.picture_number, | ||
1076 | rx_pkt->pib.aspect_ratio, | ||
1077 | rx_pkt->pib.chroma_format, | ||
1078 | rx_pkt->pib.colour_primaries, | ||
1079 | rx_pkt->pib.frame_rate, | ||
1080 | rx_pkt->pib.height, | ||
1081 | rx_pkt->pib.height, | ||
1082 | rx_pkt->pib.n_drop, | ||
1083 | rx_pkt->pib.pulldown, | ||
1084 | rx_pkt->pib.ycom); | ||
1085 | |||
1086 | crystalhd_dioq_add(hw->rx_rdyq, (void *)rx_pkt, true, rx_pkt->pkt_tag); | ||
1087 | |||
1088 | } | ||
1089 | |||
1090 | crystalhd_rel_addr_to_pib_Q(hw, pib_addr); | ||
1091 | } | ||
1092 | } | ||
1093 | |||
1094 | static void crystalhd_start_rx_dma_engine(struct crystalhd_hw *hw) | ||
1095 | { | ||
1096 | uint32_t dma_cntrl; | ||
1097 | |||
1098 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_Y_RX_SW_DESC_LIST_CTRL_STS); | ||
1099 | if (!(dma_cntrl & DMA_START_BIT)) { | ||
1100 | dma_cntrl |= DMA_START_BIT; | ||
1101 | crystalhd_reg_wr(hw->adp, MISC1_Y_RX_SW_DESC_LIST_CTRL_STS, dma_cntrl); | ||
1102 | } | ||
1103 | |||
1104 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_UV_RX_SW_DESC_LIST_CTRL_STS); | ||
1105 | if (!(dma_cntrl & DMA_START_BIT)) { | ||
1106 | dma_cntrl |= DMA_START_BIT; | ||
1107 | crystalhd_reg_wr(hw->adp, MISC1_UV_RX_SW_DESC_LIST_CTRL_STS, dma_cntrl); | ||
1108 | } | ||
1109 | |||
1110 | return; | ||
1111 | } | ||
1112 | |||
1113 | static void crystalhd_stop_rx_dma_engine(struct crystalhd_hw *hw) | ||
1114 | { | ||
1115 | uint32_t dma_cntrl = 0, count = 30; | ||
1116 | uint32_t l0y = 1, l0uv = 1, l1y = 1, l1uv = 1; | ||
1117 | |||
1118 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_Y_RX_SW_DESC_LIST_CTRL_STS); | ||
1119 | if ((dma_cntrl & DMA_START_BIT)) { | ||
1120 | dma_cntrl &= ~DMA_START_BIT; | ||
1121 | crystalhd_reg_wr(hw->adp, MISC1_Y_RX_SW_DESC_LIST_CTRL_STS, dma_cntrl); | ||
1122 | } | ||
1123 | |||
1124 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_UV_RX_SW_DESC_LIST_CTRL_STS); | ||
1125 | if ((dma_cntrl & DMA_START_BIT)) { | ||
1126 | dma_cntrl &= ~DMA_START_BIT; | ||
1127 | crystalhd_reg_wr(hw->adp, MISC1_UV_RX_SW_DESC_LIST_CTRL_STS, dma_cntrl); | ||
1128 | } | ||
1129 | |||
1130 | /* Poll for 3seconds (30 * 100ms) on both the lists..*/ | ||
1131 | while ((l0y || l0uv || l1y || l1uv) && count) { | ||
1132 | |||
1133 | if (l0y) { | ||
1134 | l0y = crystalhd_reg_rd(hw->adp, MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0); | ||
1135 | l0y &= DMA_START_BIT; | ||
1136 | if (!l0y) { | ||
1137 | hw->rx_list_sts[0] &= ~rx_waiting_y_intr; | ||
1138 | } | ||
1139 | } | ||
1140 | |||
1141 | if (l1y) { | ||
1142 | l1y = crystalhd_reg_rd(hw->adp, MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1); | ||
1143 | l1y &= DMA_START_BIT; | ||
1144 | if (!l1y) { | ||
1145 | hw->rx_list_sts[1] &= ~rx_waiting_y_intr; | ||
1146 | } | ||
1147 | } | ||
1148 | |||
1149 | if (l0uv) { | ||
1150 | l0uv = crystalhd_reg_rd(hw->adp, MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0); | ||
1151 | l0uv &= DMA_START_BIT; | ||
1152 | if (!l0uv) { | ||
1153 | hw->rx_list_sts[0] &= ~rx_waiting_uv_intr; | ||
1154 | } | ||
1155 | } | ||
1156 | |||
1157 | if (l1uv) { | ||
1158 | l1uv = crystalhd_reg_rd(hw->adp, MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1); | ||
1159 | l1uv &= DMA_START_BIT; | ||
1160 | if (!l1uv) { | ||
1161 | hw->rx_list_sts[1] &= ~rx_waiting_uv_intr; | ||
1162 | } | ||
1163 | } | ||
1164 | msleep_interruptible(100); | ||
1165 | count--; | ||
1166 | } | ||
1167 | |||
1168 | hw->rx_list_post_index = 0; | ||
1169 | |||
1170 | BCMLOG(BCMLOG_SSTEP, "Capture Stop: %d List0:Sts:%x List1:Sts:%x\n", | ||
1171 | count, hw->rx_list_sts[0], hw->rx_list_sts[1]); | ||
1172 | } | ||
1173 | |||
1174 | static BC_STATUS crystalhd_hw_prog_rxdma(struct crystalhd_hw *hw, crystalhd_rx_dma_pkt *rx_pkt) | ||
1175 | { | ||
1176 | uint32_t y_low_addr_reg, y_high_addr_reg; | ||
1177 | uint32_t uv_low_addr_reg, uv_high_addr_reg; | ||
1178 | addr_64 desc_addr; | ||
1179 | unsigned long flags; | ||
1180 | |||
1181 | if (!hw || !rx_pkt) { | ||
1182 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1183 | return BC_STS_INV_ARG; | ||
1184 | } | ||
1185 | |||
1186 | if (hw->rx_list_post_index >= DMA_ENGINE_CNT) { | ||
1187 | BCMLOG_ERR("List Out Of bounds %x\n", hw->rx_list_post_index); | ||
1188 | return BC_STS_INV_ARG; | ||
1189 | } | ||
1190 | |||
1191 | spin_lock_irqsave(&hw->rx_lock, flags); | ||
1192 | /* FIXME: jarod: sts_free is an enum for 0, in crystalhd_hw.h... yuk... */ | ||
1193 | if (sts_free != hw->rx_list_sts[hw->rx_list_post_index]) { | ||
1194 | spin_unlock_irqrestore(&hw->rx_lock, flags); | ||
1195 | return BC_STS_BUSY; | ||
1196 | } | ||
1197 | |||
1198 | if (!hw->rx_list_post_index) { | ||
1199 | y_low_addr_reg = MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0; | ||
1200 | y_high_addr_reg = MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST0; | ||
1201 | uv_low_addr_reg = MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0; | ||
1202 | uv_high_addr_reg = MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST0; | ||
1203 | } else { | ||
1204 | y_low_addr_reg = MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1; | ||
1205 | y_high_addr_reg = MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST1; | ||
1206 | uv_low_addr_reg = MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1; | ||
1207 | uv_high_addr_reg = MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST1; | ||
1208 | } | ||
1209 | rx_pkt->pkt_tag = hw->rx_pkt_tag_seed + hw->rx_list_post_index; | ||
1210 | hw->rx_list_sts[hw->rx_list_post_index] |= rx_waiting_y_intr; | ||
1211 | if (rx_pkt->uv_phy_addr) | ||
1212 | hw->rx_list_sts[hw->rx_list_post_index] |= rx_waiting_uv_intr; | ||
1213 | hw->rx_list_post_index = (hw->rx_list_post_index + 1) % DMA_ENGINE_CNT; | ||
1214 | spin_unlock_irqrestore(&hw->rx_lock, flags); | ||
1215 | |||
1216 | crystalhd_dioq_add(hw->rx_actq, (void *)rx_pkt, false, rx_pkt->pkt_tag); | ||
1217 | |||
1218 | crystalhd_start_rx_dma_engine(hw); | ||
1219 | /* Program the Y descriptor */ | ||
1220 | desc_addr.full_addr = rx_pkt->desc_mem.phy_addr; | ||
1221 | crystalhd_reg_wr(hw->adp, y_high_addr_reg, desc_addr.high_part); | ||
1222 | crystalhd_reg_wr(hw->adp, y_low_addr_reg, desc_addr.low_part | 0x01); | ||
1223 | |||
1224 | if (rx_pkt->uv_phy_addr) { | ||
1225 | /* Program the UV descriptor */ | ||
1226 | desc_addr.full_addr = rx_pkt->uv_phy_addr; | ||
1227 | crystalhd_reg_wr(hw->adp, uv_high_addr_reg, desc_addr.high_part); | ||
1228 | crystalhd_reg_wr(hw->adp, uv_low_addr_reg, desc_addr.low_part | 0x01); | ||
1229 | } | ||
1230 | |||
1231 | return BC_STS_SUCCESS; | ||
1232 | } | ||
1233 | |||
1234 | static BC_STATUS crystalhd_hw_post_cap_buff(struct crystalhd_hw *hw, | ||
1235 | crystalhd_rx_dma_pkt *rx_pkt) | ||
1236 | { | ||
1237 | BC_STATUS sts = crystalhd_hw_prog_rxdma(hw, rx_pkt); | ||
1238 | |||
1239 | if (sts == BC_STS_BUSY) | ||
1240 | crystalhd_dioq_add(hw->rx_freeq, (void *)rx_pkt, | ||
1241 | false, rx_pkt->pkt_tag); | ||
1242 | |||
1243 | return sts; | ||
1244 | } | ||
1245 | |||
1246 | static void crystalhd_get_dnsz(struct crystalhd_hw *hw, uint32_t list_index, | ||
1247 | uint32_t *y_dw_dnsz, uint32_t *uv_dw_dnsz) | ||
1248 | { | ||
1249 | uint32_t y_dn_sz_reg, uv_dn_sz_reg; | ||
1250 | |||
1251 | if (!list_index) { | ||
1252 | y_dn_sz_reg = MISC1_Y_RX_LIST0_CUR_BYTE_CNT; | ||
1253 | uv_dn_sz_reg = MISC1_UV_RX_LIST0_CUR_BYTE_CNT; | ||
1254 | } else { | ||
1255 | y_dn_sz_reg = MISC1_Y_RX_LIST1_CUR_BYTE_CNT; | ||
1256 | uv_dn_sz_reg = MISC1_UV_RX_LIST1_CUR_BYTE_CNT; | ||
1257 | } | ||
1258 | |||
1259 | *y_dw_dnsz = crystalhd_reg_rd(hw->adp, y_dn_sz_reg); | ||
1260 | *uv_dw_dnsz = crystalhd_reg_rd(hw->adp, uv_dn_sz_reg); | ||
1261 | } | ||
1262 | |||
1263 | /* | ||
1264 | * This function should be called only after making sure that the two DMA | ||
1265 | * lists are free. This function does not check if DMA's are active, before | ||
1266 | * turning off the DMA. | ||
1267 | */ | ||
1268 | static void crystalhd_hw_finalize_pause(struct crystalhd_hw *hw) | ||
1269 | { | ||
1270 | uint32_t dma_cntrl, aspm; | ||
1271 | |||
1272 | hw->stop_pending = 0; | ||
1273 | |||
1274 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_Y_RX_SW_DESC_LIST_CTRL_STS); | ||
1275 | if (dma_cntrl & DMA_START_BIT) { | ||
1276 | dma_cntrl &= ~DMA_START_BIT; | ||
1277 | crystalhd_reg_wr(hw->adp, MISC1_Y_RX_SW_DESC_LIST_CTRL_STS, dma_cntrl); | ||
1278 | } | ||
1279 | |||
1280 | dma_cntrl = crystalhd_reg_rd(hw->adp, MISC1_UV_RX_SW_DESC_LIST_CTRL_STS); | ||
1281 | if (dma_cntrl & DMA_START_BIT) { | ||
1282 | dma_cntrl &= ~DMA_START_BIT; | ||
1283 | crystalhd_reg_wr(hw->adp, MISC1_UV_RX_SW_DESC_LIST_CTRL_STS, dma_cntrl); | ||
1284 | } | ||
1285 | hw->rx_list_post_index = 0; | ||
1286 | |||
1287 | aspm = crystalhd_reg_rd(hw->adp, PCIE_DLL_DATA_LINK_CONTROL); | ||
1288 | aspm |= ASPM_L1_ENABLE; | ||
1289 | /* NAREN BCMLOG(BCMLOG_INFO, "aspm on\n"); */ | ||
1290 | crystalhd_reg_wr(hw->adp, PCIE_DLL_DATA_LINK_CONTROL, aspm); | ||
1291 | } | ||
1292 | |||
1293 | static BC_STATUS crystalhd_rx_pkt_done(struct crystalhd_hw *hw, uint32_t list_index, | ||
1294 | BC_STATUS comp_sts) | ||
1295 | { | ||
1296 | crystalhd_rx_dma_pkt *rx_pkt = NULL; | ||
1297 | uint32_t y_dw_dnsz, uv_dw_dnsz; | ||
1298 | BC_STATUS sts = BC_STS_SUCCESS; | ||
1299 | |||
1300 | if (!hw || list_index >= DMA_ENGINE_CNT) { | ||
1301 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1302 | return BC_STS_INV_ARG; | ||
1303 | } | ||
1304 | |||
1305 | rx_pkt = crystalhd_dioq_find_and_fetch(hw->rx_actq, | ||
1306 | hw->rx_pkt_tag_seed + list_index); | ||
1307 | if (!rx_pkt) { | ||
1308 | BCMLOG_ERR("Act-Q:PostIx:%x L0Sts:%x L1Sts:%x current L:%x tag:%x comp:%x\n", | ||
1309 | hw->rx_list_post_index, hw->rx_list_sts[0], | ||
1310 | hw->rx_list_sts[1], list_index, | ||
1311 | hw->rx_pkt_tag_seed + list_index, comp_sts); | ||
1312 | return BC_STS_INV_ARG; | ||
1313 | } | ||
1314 | |||
1315 | if (comp_sts == BC_STS_SUCCESS) { | ||
1316 | crystalhd_get_dnsz(hw, list_index, &y_dw_dnsz, &uv_dw_dnsz); | ||
1317 | rx_pkt->dio_req->uinfo.y_done_sz = y_dw_dnsz; | ||
1318 | rx_pkt->flags = COMP_FLAG_DATA_VALID; | ||
1319 | if (rx_pkt->uv_phy_addr) | ||
1320 | rx_pkt->dio_req->uinfo.uv_done_sz = uv_dw_dnsz; | ||
1321 | crystalhd_dioq_add(hw->rx_rdyq, rx_pkt, true, | ||
1322 | hw->rx_pkt_tag_seed + list_index); | ||
1323 | return sts; | ||
1324 | } | ||
1325 | |||
1326 | /* Check if we can post this DIO again. */ | ||
1327 | return crystalhd_hw_post_cap_buff(hw, rx_pkt); | ||
1328 | } | ||
1329 | |||
1330 | static bool crystalhd_rx_list0_handler(struct crystalhd_hw *hw, uint32_t int_sts, | ||
1331 | uint32_t y_err_sts, uint32_t uv_err_sts) | ||
1332 | { | ||
1333 | uint32_t tmp; | ||
1334 | list_sts tmp_lsts; | ||
1335 | |||
1336 | if (!(y_err_sts & GET_Y0_ERR_MSK) && !(uv_err_sts & GET_UV0_ERR_MSK)) | ||
1337 | return false; | ||
1338 | |||
1339 | tmp_lsts = hw->rx_list_sts[0]; | ||
1340 | |||
1341 | /* Y0 - DMA */ | ||
1342 | tmp = y_err_sts & GET_Y0_ERR_MSK; | ||
1343 | if (int_sts & INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_MASK) | ||
1344 | hw->rx_list_sts[0] &= ~rx_waiting_y_intr; | ||
1345 | |||
1346 | if (y_err_sts & MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK) { | ||
1347 | hw->rx_list_sts[0] &= ~rx_waiting_y_intr; | ||
1348 | tmp &= ~MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK; | ||
1349 | } | ||
1350 | |||
1351 | if (y_err_sts & MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK) { | ||
1352 | hw->rx_list_sts[0] &= ~rx_y_mask; | ||
1353 | hw->rx_list_sts[0] |= rx_y_error; | ||
1354 | tmp &= ~MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK; | ||
1355 | } | ||
1356 | |||
1357 | if (tmp) { | ||
1358 | hw->rx_list_sts[0] &= ~rx_y_mask; | ||
1359 | hw->rx_list_sts[0] |= rx_y_error; | ||
1360 | hw->rx_list_post_index = 0; | ||
1361 | } | ||
1362 | |||
1363 | /* UV0 - DMA */ | ||
1364 | tmp = uv_err_sts & GET_UV0_ERR_MSK; | ||
1365 | if (int_sts & INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_MASK) | ||
1366 | hw->rx_list_sts[0] &= ~rx_waiting_uv_intr; | ||
1367 | |||
1368 | if (uv_err_sts & MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK) { | ||
1369 | hw->rx_list_sts[0] &= ~rx_waiting_uv_intr; | ||
1370 | tmp &= ~MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK; | ||
1371 | } | ||
1372 | |||
1373 | if (uv_err_sts & MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK) { | ||
1374 | hw->rx_list_sts[0] &= ~rx_uv_mask; | ||
1375 | hw->rx_list_sts[0] |= rx_uv_error; | ||
1376 | tmp &= ~MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK; | ||
1377 | } | ||
1378 | |||
1379 | if (tmp) { | ||
1380 | hw->rx_list_sts[0] &= ~rx_uv_mask; | ||
1381 | hw->rx_list_sts[0] |= rx_uv_error; | ||
1382 | hw->rx_list_post_index = 0; | ||
1383 | } | ||
1384 | |||
1385 | if (y_err_sts & GET_Y0_ERR_MSK) { | ||
1386 | tmp = y_err_sts & GET_Y0_ERR_MSK; | ||
1387 | crystalhd_reg_wr(hw->adp, MISC1_Y_RX_ERROR_STATUS, tmp); | ||
1388 | } | ||
1389 | |||
1390 | if (uv_err_sts & GET_UV0_ERR_MSK) { | ||
1391 | tmp = uv_err_sts & GET_UV0_ERR_MSK; | ||
1392 | crystalhd_reg_wr(hw->adp, MISC1_UV_RX_ERROR_STATUS, tmp); | ||
1393 | } | ||
1394 | |||
1395 | return (tmp_lsts != hw->rx_list_sts[0]); | ||
1396 | } | ||
1397 | |||
1398 | static bool crystalhd_rx_list1_handler(struct crystalhd_hw *hw, uint32_t int_sts, | ||
1399 | uint32_t y_err_sts, uint32_t uv_err_sts) | ||
1400 | { | ||
1401 | uint32_t tmp; | ||
1402 | list_sts tmp_lsts; | ||
1403 | |||
1404 | if (!(y_err_sts & GET_Y1_ERR_MSK) && !(uv_err_sts & GET_UV1_ERR_MSK)) | ||
1405 | return false; | ||
1406 | |||
1407 | tmp_lsts = hw->rx_list_sts[1]; | ||
1408 | |||
1409 | /* Y1 - DMA */ | ||
1410 | tmp = y_err_sts & GET_Y1_ERR_MSK; | ||
1411 | if (int_sts & INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_MASK) | ||
1412 | hw->rx_list_sts[1] &= ~rx_waiting_y_intr; | ||
1413 | |||
1414 | if (y_err_sts & MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK) { | ||
1415 | hw->rx_list_sts[1] &= ~rx_waiting_y_intr; | ||
1416 | tmp &= ~MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK; | ||
1417 | } | ||
1418 | |||
1419 | if (y_err_sts & MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK) { | ||
1420 | /* Add retry-support..*/ | ||
1421 | hw->rx_list_sts[1] &= ~rx_y_mask; | ||
1422 | hw->rx_list_sts[1] |= rx_y_error; | ||
1423 | tmp &= ~MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK; | ||
1424 | } | ||
1425 | |||
1426 | if (tmp) { | ||
1427 | hw->rx_list_sts[1] &= ~rx_y_mask; | ||
1428 | hw->rx_list_sts[1] |= rx_y_error; | ||
1429 | hw->rx_list_post_index = 0; | ||
1430 | } | ||
1431 | |||
1432 | /* UV1 - DMA */ | ||
1433 | tmp = uv_err_sts & GET_UV1_ERR_MSK; | ||
1434 | if (int_sts & INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_MASK) { | ||
1435 | hw->rx_list_sts[1] &= ~rx_waiting_uv_intr; | ||
1436 | } | ||
1437 | |||
1438 | if (uv_err_sts & MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK) { | ||
1439 | hw->rx_list_sts[1] &= ~rx_waiting_uv_intr; | ||
1440 | tmp &= ~MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK; | ||
1441 | } | ||
1442 | |||
1443 | if (uv_err_sts & MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK) { | ||
1444 | /* Add retry-support*/ | ||
1445 | hw->rx_list_sts[1] &= ~rx_uv_mask; | ||
1446 | hw->rx_list_sts[1] |= rx_uv_error; | ||
1447 | tmp &= ~MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK; | ||
1448 | } | ||
1449 | |||
1450 | if (tmp) { | ||
1451 | hw->rx_list_sts[1] &= ~rx_uv_mask; | ||
1452 | hw->rx_list_sts[1] |= rx_uv_error; | ||
1453 | hw->rx_list_post_index = 0; | ||
1454 | } | ||
1455 | |||
1456 | if (y_err_sts & GET_Y1_ERR_MSK) { | ||
1457 | tmp = y_err_sts & GET_Y1_ERR_MSK; | ||
1458 | crystalhd_reg_wr(hw->adp, MISC1_Y_RX_ERROR_STATUS, tmp); | ||
1459 | } | ||
1460 | |||
1461 | if (uv_err_sts & GET_UV1_ERR_MSK) { | ||
1462 | tmp = uv_err_sts & GET_UV1_ERR_MSK; | ||
1463 | crystalhd_reg_wr(hw->adp, MISC1_UV_RX_ERROR_STATUS, tmp); | ||
1464 | } | ||
1465 | |||
1466 | return (tmp_lsts != hw->rx_list_sts[1]); | ||
1467 | } | ||
1468 | |||
1469 | |||
1470 | static void crystalhd_rx_isr(struct crystalhd_hw *hw, uint32_t intr_sts) | ||
1471 | { | ||
1472 | unsigned long flags; | ||
1473 | uint32_t i, list_avail = 0; | ||
1474 | BC_STATUS comp_sts = BC_STS_NO_DATA; | ||
1475 | uint32_t y_err_sts, uv_err_sts, y_dn_sz = 0, uv_dn_sz = 0; | ||
1476 | bool ret = 0; | ||
1477 | |||
1478 | if (!hw) { | ||
1479 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1480 | return; | ||
1481 | } | ||
1482 | |||
1483 | if (!(intr_sts & GET_RX_INTR_MASK)) | ||
1484 | return; | ||
1485 | |||
1486 | y_err_sts = crystalhd_reg_rd(hw->adp, MISC1_Y_RX_ERROR_STATUS); | ||
1487 | uv_err_sts = crystalhd_reg_rd(hw->adp, MISC1_UV_RX_ERROR_STATUS); | ||
1488 | |||
1489 | for (i = 0; i < DMA_ENGINE_CNT; i++) { | ||
1490 | /* Update States..*/ | ||
1491 | spin_lock_irqsave(&hw->rx_lock, flags); | ||
1492 | if (i == 0) | ||
1493 | ret = crystalhd_rx_list0_handler(hw, intr_sts, y_err_sts, uv_err_sts); | ||
1494 | else | ||
1495 | ret = crystalhd_rx_list1_handler(hw, intr_sts, y_err_sts, uv_err_sts); | ||
1496 | if (ret) { | ||
1497 | switch (hw->rx_list_sts[i]) { | ||
1498 | case sts_free: | ||
1499 | comp_sts = BC_STS_SUCCESS; | ||
1500 | list_avail = 1; | ||
1501 | break; | ||
1502 | case rx_y_error: | ||
1503 | case rx_uv_error: | ||
1504 | case rx_sts_error: | ||
1505 | /* We got error on both or Y or uv. */ | ||
1506 | hw->stats.rx_errors++; | ||
1507 | crystalhd_get_dnsz(hw, i, &y_dn_sz, &uv_dn_sz); | ||
1508 | /* FIXME: jarod: this is where my mini pci-e card is tripping up */ | ||
1509 | BCMLOG(BCMLOG_DBG, "list_index:%x rx[%d] Y:%x " | ||
1510 | "UV:%x Int:%x YDnSz:%x UVDnSz:%x\n", | ||
1511 | i, hw->stats.rx_errors, y_err_sts, | ||
1512 | uv_err_sts, intr_sts, y_dn_sz, uv_dn_sz); | ||
1513 | hw->rx_list_sts[i] = sts_free; | ||
1514 | comp_sts = BC_STS_ERROR; | ||
1515 | break; | ||
1516 | default: | ||
1517 | /* Wait for completion..*/ | ||
1518 | comp_sts = BC_STS_NO_DATA; | ||
1519 | break; | ||
1520 | } | ||
1521 | } | ||
1522 | spin_unlock_irqrestore(&hw->rx_lock, flags); | ||
1523 | |||
1524 | /* handle completion...*/ | ||
1525 | if (comp_sts != BC_STS_NO_DATA) { | ||
1526 | crystalhd_rx_pkt_done(hw, i, comp_sts); | ||
1527 | comp_sts = BC_STS_NO_DATA; | ||
1528 | } | ||
1529 | } | ||
1530 | |||
1531 | if (list_avail) { | ||
1532 | if (hw->stop_pending) { | ||
1533 | if ((hw->rx_list_sts[0] == sts_free) && | ||
1534 | (hw->rx_list_sts[1] == sts_free)) | ||
1535 | crystalhd_hw_finalize_pause(hw); | ||
1536 | } else { | ||
1537 | crystalhd_hw_start_capture(hw); | ||
1538 | } | ||
1539 | } | ||
1540 | } | ||
1541 | |||
1542 | static BC_STATUS crystalhd_fw_cmd_post_proc(struct crystalhd_hw *hw, | ||
1543 | BC_FW_CMD *fw_cmd) | ||
1544 | { | ||
1545 | BC_STATUS sts = BC_STS_SUCCESS; | ||
1546 | DecRspChannelStartVideo *st_rsp = NULL; | ||
1547 | |||
1548 | switch (fw_cmd->cmd[0]) { | ||
1549 | case eCMD_C011_DEC_CHAN_START_VIDEO: | ||
1550 | st_rsp = (DecRspChannelStartVideo *)fw_cmd->rsp; | ||
1551 | hw->pib_del_Q_addr = st_rsp->picInfoDeliveryQ; | ||
1552 | hw->pib_rel_Q_addr = st_rsp->picInfoReleaseQ; | ||
1553 | BCMLOG(BCMLOG_DBG, "DelQAddr:%x RelQAddr:%x\n", | ||
1554 | hw->pib_del_Q_addr, hw->pib_rel_Q_addr); | ||
1555 | break; | ||
1556 | case eCMD_C011_INIT: | ||
1557 | if (!(crystalhd_load_firmware_config(hw->adp))) { | ||
1558 | BCMLOG_ERR("Invalid Params.\n"); | ||
1559 | sts = BC_STS_FW_AUTH_FAILED; | ||
1560 | } | ||
1561 | break; | ||
1562 | default: | ||
1563 | break; | ||
1564 | } | ||
1565 | return sts; | ||
1566 | } | ||
1567 | |||
1568 | static BC_STATUS crystalhd_put_ddr2sleep(struct crystalhd_hw *hw) | ||
1569 | { | ||
1570 | uint32_t reg; | ||
1571 | link_misc_perst_decoder_ctrl rst_cntrl_reg; | ||
1572 | |||
1573 | /* Pulse reset pin of 7412 (MISC_PERST_DECODER_CTRL) */ | ||
1574 | rst_cntrl_reg.whole_reg = crystalhd_reg_rd(hw->adp, MISC_PERST_DECODER_CTRL); | ||
1575 | |||
1576 | rst_cntrl_reg.bcm_7412_rst = 1; | ||
1577 | crystalhd_reg_wr(hw->adp, MISC_PERST_DECODER_CTRL, rst_cntrl_reg.whole_reg); | ||
1578 | msleep_interruptible(50); | ||
1579 | |||
1580 | rst_cntrl_reg.bcm_7412_rst = 0; | ||
1581 | crystalhd_reg_wr(hw->adp, MISC_PERST_DECODER_CTRL, rst_cntrl_reg.whole_reg); | ||
1582 | |||
1583 | /* Close all banks, put DDR in idle */ | ||
1584 | bc_dec_reg_wr(hw->adp, SDRAM_PRECHARGE, 0); | ||
1585 | |||
1586 | /* Set bit 25 (drop CKE pin of DDR) */ | ||
1587 | reg = bc_dec_reg_rd(hw->adp, SDRAM_PARAM); | ||
1588 | reg |= 0x02000000; | ||
1589 | bc_dec_reg_wr(hw->adp, SDRAM_PARAM, reg); | ||
1590 | |||
1591 | /* Reset the audio block */ | ||
1592 | bc_dec_reg_wr(hw->adp, AUD_DSP_MISC_SOFT_RESET, 0x1); | ||
1593 | |||
1594 | /* Power down Raptor PLL */ | ||
1595 | reg = bc_dec_reg_rd(hw->adp, DecHt_PllCCtl); | ||
1596 | reg |= 0x00008000; | ||
1597 | bc_dec_reg_wr(hw->adp, DecHt_PllCCtl, reg); | ||
1598 | |||
1599 | /* Power down all Audio PLL */ | ||
1600 | bc_dec_reg_wr(hw->adp, AIO_MISC_PLL_RESET, 0x1); | ||
1601 | |||
1602 | /* Power down video clock (75MHz) */ | ||
1603 | reg = bc_dec_reg_rd(hw->adp, DecHt_PllECtl); | ||
1604 | reg |= 0x00008000; | ||
1605 | bc_dec_reg_wr(hw->adp, DecHt_PllECtl, reg); | ||
1606 | |||
1607 | /* Power down video clock (75MHz) */ | ||
1608 | reg = bc_dec_reg_rd(hw->adp, DecHt_PllDCtl); | ||
1609 | reg |= 0x00008000; | ||
1610 | bc_dec_reg_wr(hw->adp, DecHt_PllDCtl, reg); | ||
1611 | |||
1612 | /* Power down core clock (200MHz) */ | ||
1613 | reg = bc_dec_reg_rd(hw->adp, DecHt_PllACtl); | ||
1614 | reg |= 0x00008000; | ||
1615 | bc_dec_reg_wr(hw->adp, DecHt_PllACtl, reg); | ||
1616 | |||
1617 | /* Power down core clock (200MHz) */ | ||
1618 | reg = bc_dec_reg_rd(hw->adp, DecHt_PllBCtl); | ||
1619 | reg |= 0x00008000; | ||
1620 | bc_dec_reg_wr(hw->adp, DecHt_PllBCtl, reg); | ||
1621 | |||
1622 | return BC_STS_SUCCESS; | ||
1623 | } | ||
1624 | |||
1625 | /************************************************ | ||
1626 | ** | ||
1627 | *************************************************/ | ||
1628 | |||
1629 | BC_STATUS crystalhd_download_fw(struct crystalhd_adp *adp, void *buffer, uint32_t sz) | ||
1630 | { | ||
1631 | uint32_t reg_data, cnt, *temp_buff; | ||
1632 | uint32_t fw_sig_len = 36; | ||
1633 | uint32_t dram_offset = BC_FWIMG_ST_ADDR, sig_reg; | ||
1634 | |||
1635 | BCMLOG_ENTER; | ||
1636 | |||
1637 | if (!adp || !buffer || !sz) { | ||
1638 | BCMLOG_ERR("Invalid Params.\n"); | ||
1639 | return BC_STS_INV_ARG; | ||
1640 | } | ||
1641 | |||
1642 | reg_data = crystalhd_reg_rd(adp, OTP_CMD); | ||
1643 | if (!(reg_data & 0x02)) { | ||
1644 | BCMLOG_ERR("Invalid hw config.. otp not programmed\n"); | ||
1645 | return BC_STS_ERROR; | ||
1646 | } | ||
1647 | |||
1648 | reg_data = 0; | ||
1649 | crystalhd_reg_wr(adp, DCI_CMD, 0); | ||
1650 | reg_data |= BC_BIT(0); | ||
1651 | crystalhd_reg_wr(adp, DCI_CMD, reg_data); | ||
1652 | |||
1653 | reg_data = 0; | ||
1654 | cnt = 1000; | ||
1655 | msleep_interruptible(10); | ||
1656 | |||
1657 | while (reg_data != BC_BIT(4)) { | ||
1658 | reg_data = crystalhd_reg_rd(adp, DCI_STATUS); | ||
1659 | reg_data &= BC_BIT(4); | ||
1660 | if (--cnt == 0) { | ||
1661 | BCMLOG_ERR("Firmware Download RDY Timeout.\n"); | ||
1662 | return BC_STS_TIMEOUT; | ||
1663 | } | ||
1664 | } | ||
1665 | |||
1666 | msleep_interruptible(10); | ||
1667 | /* Load the FW to the FW_ADDR field in the DCI_FIRMWARE_ADDR */ | ||
1668 | crystalhd_reg_wr(adp, DCI_FIRMWARE_ADDR, dram_offset); | ||
1669 | temp_buff = (uint32_t *)buffer; | ||
1670 | for (cnt = 0; cnt < (sz - fw_sig_len); cnt += 4) { | ||
1671 | crystalhd_reg_wr(adp, DCI_DRAM_BASE_ADDR, (dram_offset >> 19)); | ||
1672 | crystalhd_reg_wr(adp, DCI_FIRMWARE_DATA, *temp_buff); | ||
1673 | dram_offset += 4; | ||
1674 | temp_buff++; | ||
1675 | } | ||
1676 | msleep_interruptible(10); | ||
1677 | |||
1678 | temp_buff++; | ||
1679 | |||
1680 | sig_reg = (uint32_t)DCI_SIGNATURE_DATA_7; | ||
1681 | for (cnt = 0; cnt < 8; cnt++) { | ||
1682 | uint32_t swapped_data = *temp_buff; | ||
1683 | swapped_data = bswap_32_1(swapped_data); | ||
1684 | crystalhd_reg_wr(adp, sig_reg, swapped_data); | ||
1685 | sig_reg -= 4; | ||
1686 | temp_buff++; | ||
1687 | } | ||
1688 | msleep_interruptible(10); | ||
1689 | |||
1690 | reg_data = 0; | ||
1691 | reg_data |= BC_BIT(1); | ||
1692 | crystalhd_reg_wr(adp, DCI_CMD, reg_data); | ||
1693 | msleep_interruptible(10); | ||
1694 | |||
1695 | reg_data = 0; | ||
1696 | reg_data = crystalhd_reg_rd(adp, DCI_STATUS); | ||
1697 | |||
1698 | if ((reg_data & BC_BIT(9)) == BC_BIT(9)) { | ||
1699 | cnt = 1000; | ||
1700 | while ((reg_data & BC_BIT(0)) != BC_BIT(0)) { | ||
1701 | reg_data = crystalhd_reg_rd(adp, DCI_STATUS); | ||
1702 | reg_data &= BC_BIT(0); | ||
1703 | if (!(--cnt)) | ||
1704 | break; | ||
1705 | msleep_interruptible(10); | ||
1706 | } | ||
1707 | reg_data = 0; | ||
1708 | reg_data = crystalhd_reg_rd(adp, DCI_CMD); | ||
1709 | reg_data |= BC_BIT(4); | ||
1710 | crystalhd_reg_wr(adp, DCI_CMD, reg_data); | ||
1711 | |||
1712 | } else { | ||
1713 | BCMLOG_ERR("F/w Signature mismatch\n"); | ||
1714 | return BC_STS_FW_AUTH_FAILED; | ||
1715 | } | ||
1716 | |||
1717 | BCMLOG(BCMLOG_INFO, "Firmware Downloaded Successfully\n"); | ||
1718 | return BC_STS_SUCCESS;; | ||
1719 | } | ||
1720 | |||
1721 | BC_STATUS crystalhd_do_fw_cmd(struct crystalhd_hw *hw, BC_FW_CMD *fw_cmd) | ||
1722 | { | ||
1723 | uint32_t cnt = 0, cmd_res_addr; | ||
1724 | uint32_t *cmd_buff, *res_buff; | ||
1725 | wait_queue_head_t fw_cmd_event; | ||
1726 | int rc = 0; | ||
1727 | BC_STATUS sts; | ||
1728 | |||
1729 | crystalhd_create_event(&fw_cmd_event); | ||
1730 | |||
1731 | BCMLOG_ENTER; | ||
1732 | |||
1733 | if (!hw || !fw_cmd) { | ||
1734 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1735 | return BC_STS_INV_ARG; | ||
1736 | } | ||
1737 | |||
1738 | cmd_buff = fw_cmd->cmd; | ||
1739 | res_buff = fw_cmd->rsp; | ||
1740 | |||
1741 | if (!cmd_buff || !res_buff) { | ||
1742 | BCMLOG_ERR("Invalid Parameters for F/W Command \n"); | ||
1743 | return BC_STS_INV_ARG; | ||
1744 | } | ||
1745 | |||
1746 | hw->pwr_lock++; | ||
1747 | |||
1748 | hw->fwcmd_evt_sts = 0; | ||
1749 | hw->pfw_cmd_event = &fw_cmd_event; | ||
1750 | |||
1751 | /*Write the command to the memory*/ | ||
1752 | crystalhd_mem_wr(hw->adp, TS_Host2CpuSnd, FW_CMD_BUFF_SZ, cmd_buff); | ||
1753 | |||
1754 | /*Memory Read for memory arbitrator flush*/ | ||
1755 | crystalhd_mem_rd(hw->adp, TS_Host2CpuSnd, 1, &cnt); | ||
1756 | |||
1757 | /* Write the command address to mailbox */ | ||
1758 | bc_dec_reg_wr(hw->adp, Hst2CpuMbx1, TS_Host2CpuSnd); | ||
1759 | msleep_interruptible(50); | ||
1760 | |||
1761 | crystalhd_wait_on_event(&fw_cmd_event, hw->fwcmd_evt_sts, 20000, rc, 0); | ||
1762 | |||
1763 | if (!rc) { | ||
1764 | sts = BC_STS_SUCCESS; | ||
1765 | } else if (rc == -EBUSY) { | ||
1766 | BCMLOG_ERR("Firmware command T/O\n"); | ||
1767 | sts = BC_STS_TIMEOUT; | ||
1768 | } else if (rc == -EINTR) { | ||
1769 | BCMLOG(BCMLOG_DBG, "FwCmd Wait Signal int.\n"); | ||
1770 | sts = BC_STS_IO_USER_ABORT; | ||
1771 | } else { | ||
1772 | BCMLOG_ERR("FwCmd IO Error.\n"); | ||
1773 | sts = BC_STS_IO_ERROR; | ||
1774 | } | ||
1775 | |||
1776 | if (sts != BC_STS_SUCCESS) { | ||
1777 | BCMLOG_ERR("FwCmd Failed.\n"); | ||
1778 | hw->pwr_lock--; | ||
1779 | return sts; | ||
1780 | } | ||
1781 | |||
1782 | /*Get the Responce Address*/ | ||
1783 | cmd_res_addr = bc_dec_reg_rd(hw->adp, Cpu2HstMbx1); | ||
1784 | |||
1785 | /*Read the Response*/ | ||
1786 | crystalhd_mem_rd(hw->adp, cmd_res_addr, FW_CMD_BUFF_SZ, res_buff); | ||
1787 | |||
1788 | hw->pwr_lock--; | ||
1789 | |||
1790 | if (res_buff[2] != C011_RET_SUCCESS) { | ||
1791 | BCMLOG_ERR("res_buff[2] != C011_RET_SUCCESS\n"); | ||
1792 | return BC_STS_FW_CMD_ERR; | ||
1793 | } | ||
1794 | |||
1795 | sts = crystalhd_fw_cmd_post_proc(hw, fw_cmd); | ||
1796 | if (sts != BC_STS_SUCCESS) | ||
1797 | BCMLOG_ERR("crystalhd_fw_cmd_post_proc Failed.\n"); | ||
1798 | |||
1799 | return sts; | ||
1800 | } | ||
1801 | |||
1802 | bool crystalhd_hw_interrupt(struct crystalhd_adp *adp, struct crystalhd_hw *hw) | ||
1803 | { | ||
1804 | uint32_t intr_sts = 0; | ||
1805 | uint32_t deco_intr = 0; | ||
1806 | bool rc = 0; | ||
1807 | |||
1808 | if (!adp || !hw->dev_started) | ||
1809 | return rc; | ||
1810 | |||
1811 | hw->stats.num_interrupts++; | ||
1812 | hw->pwr_lock++; | ||
1813 | |||
1814 | deco_intr = bc_dec_reg_rd(adp, Stream2Host_Intr_Sts); | ||
1815 | intr_sts = crystalhd_reg_rd(adp, INTR_INTR_STATUS); | ||
1816 | |||
1817 | if (intr_sts) { | ||
1818 | /* let system know we processed interrupt..*/ | ||
1819 | rc = 1; | ||
1820 | hw->stats.dev_interrupts++; | ||
1821 | } | ||
1822 | |||
1823 | if (deco_intr && (deco_intr != 0xdeaddead)) { | ||
1824 | |||
1825 | if (deco_intr & 0x80000000) { | ||
1826 | /*Set the Event and the status flag*/ | ||
1827 | if (hw->pfw_cmd_event) { | ||
1828 | hw->fwcmd_evt_sts = 1; | ||
1829 | crystalhd_set_event(hw->pfw_cmd_event); | ||
1830 | } | ||
1831 | } | ||
1832 | |||
1833 | if (deco_intr & BC_BIT(1)) | ||
1834 | crystalhd_hw_proc_pib(hw); | ||
1835 | |||
1836 | bc_dec_reg_wr(adp, Stream2Host_Intr_Sts, deco_intr); | ||
1837 | /* FIXME: jarod: No udelay? might this be the real reason mini pci-e cards were stalling out? */ | ||
1838 | bc_dec_reg_wr(adp, Stream2Host_Intr_Sts, 0); | ||
1839 | rc = 1; | ||
1840 | } | ||
1841 | |||
1842 | /* Rx interrupts */ | ||
1843 | crystalhd_rx_isr(hw, intr_sts); | ||
1844 | |||
1845 | /* Tx interrupts*/ | ||
1846 | crystalhd_tx_isr(hw, intr_sts); | ||
1847 | |||
1848 | /* Clear interrupts */ | ||
1849 | if (rc) { | ||
1850 | if (intr_sts) | ||
1851 | crystalhd_reg_wr(adp, INTR_INTR_CLR_REG, intr_sts); | ||
1852 | |||
1853 | crystalhd_reg_wr(adp, INTR_EOI_CTRL, 1); | ||
1854 | } | ||
1855 | |||
1856 | hw->pwr_lock--; | ||
1857 | |||
1858 | return rc; | ||
1859 | } | ||
1860 | |||
1861 | BC_STATUS crystalhd_hw_open(struct crystalhd_hw *hw, struct crystalhd_adp *adp) | ||
1862 | { | ||
1863 | if (!hw || !adp) { | ||
1864 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1865 | return BC_STS_INV_ARG; | ||
1866 | } | ||
1867 | |||
1868 | if (hw->dev_started) | ||
1869 | return BC_STS_SUCCESS; | ||
1870 | |||
1871 | memset(hw, 0, sizeof(struct crystalhd_hw)); | ||
1872 | |||
1873 | hw->adp = adp; | ||
1874 | spin_lock_init(&hw->lock); | ||
1875 | spin_lock_init(&hw->rx_lock); | ||
1876 | /* FIXME: jarod: what are these magic numbers?!? */ | ||
1877 | hw->tx_ioq_tag_seed = 0x70023070; | ||
1878 | hw->rx_pkt_tag_seed = 0x70029070; | ||
1879 | |||
1880 | hw->stop_pending = 0; | ||
1881 | crystalhd_start_device(hw->adp); | ||
1882 | hw->dev_started = true; | ||
1883 | |||
1884 | /* set initial core clock */ | ||
1885 | hw->core_clock_mhz = CLOCK_PRESET; | ||
1886 | hw->prev_n = 0; | ||
1887 | hw->pwr_lock = 0; | ||
1888 | crystalhd_hw_set_core_clock(hw); | ||
1889 | |||
1890 | return BC_STS_SUCCESS; | ||
1891 | } | ||
1892 | |||
1893 | BC_STATUS crystalhd_hw_close(struct crystalhd_hw *hw) | ||
1894 | { | ||
1895 | if (!hw) { | ||
1896 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1897 | return BC_STS_INV_ARG; | ||
1898 | } | ||
1899 | |||
1900 | if (!hw->dev_started) | ||
1901 | return BC_STS_SUCCESS; | ||
1902 | |||
1903 | /* Stop and DDR sleep will happen in here */ | ||
1904 | crystalhd_hw_suspend(hw); | ||
1905 | hw->dev_started = false; | ||
1906 | |||
1907 | return BC_STS_SUCCESS; | ||
1908 | } | ||
1909 | |||
1910 | BC_STATUS crystalhd_hw_setup_dma_rings(struct crystalhd_hw *hw) | ||
1911 | { | ||
1912 | unsigned int i; | ||
1913 | void *mem; | ||
1914 | size_t mem_len; | ||
1915 | dma_addr_t phy_addr; | ||
1916 | BC_STATUS sts = BC_STS_SUCCESS; | ||
1917 | crystalhd_rx_dma_pkt *rpkt; | ||
1918 | |||
1919 | if (!hw || !hw->adp) { | ||
1920 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1921 | return BC_STS_INV_ARG; | ||
1922 | } | ||
1923 | |||
1924 | sts = crystalhd_hw_create_ioqs(hw); | ||
1925 | if (sts != BC_STS_SUCCESS) { | ||
1926 | BCMLOG_ERR("Failed to create IOQs..\n"); | ||
1927 | return sts; | ||
1928 | } | ||
1929 | |||
1930 | mem_len = BC_LINK_MAX_SGLS * sizeof(dma_descriptor); | ||
1931 | |||
1932 | for (i = 0; i < BC_TX_LIST_CNT; i++) { | ||
1933 | mem = bc_kern_dma_alloc(hw->adp, mem_len, &phy_addr); | ||
1934 | if (mem) { | ||
1935 | memset(mem, 0, mem_len); | ||
1936 | } else { | ||
1937 | BCMLOG_ERR("Insufficient Memory For TX\n"); | ||
1938 | crystalhd_hw_free_dma_rings(hw); | ||
1939 | return BC_STS_INSUFF_RES; | ||
1940 | } | ||
1941 | /* rx_pkt_pool -- static memory allocation */ | ||
1942 | hw->tx_pkt_pool[i].desc_mem.pdma_desc_start = mem; | ||
1943 | hw->tx_pkt_pool[i].desc_mem.phy_addr = phy_addr; | ||
1944 | hw->tx_pkt_pool[i].desc_mem.sz = BC_LINK_MAX_SGLS * | ||
1945 | sizeof(dma_descriptor); | ||
1946 | hw->tx_pkt_pool[i].list_tag = 0; | ||
1947 | |||
1948 | /* Add TX dma requests to Free Queue..*/ | ||
1949 | sts = crystalhd_dioq_add(hw->tx_freeq, | ||
1950 | &hw->tx_pkt_pool[i], false, 0); | ||
1951 | if (sts != BC_STS_SUCCESS) { | ||
1952 | crystalhd_hw_free_dma_rings(hw); | ||
1953 | return sts; | ||
1954 | } | ||
1955 | } | ||
1956 | |||
1957 | for (i = 0; i < BC_RX_LIST_CNT; i++) { | ||
1958 | rpkt = kzalloc(sizeof(*rpkt), GFP_KERNEL); | ||
1959 | if (!rpkt) { | ||
1960 | BCMLOG_ERR("Insufficient Memory For RX\n"); | ||
1961 | crystalhd_hw_free_dma_rings(hw); | ||
1962 | return BC_STS_INSUFF_RES; | ||
1963 | } | ||
1964 | |||
1965 | mem = bc_kern_dma_alloc(hw->adp, mem_len, &phy_addr); | ||
1966 | if (mem) { | ||
1967 | memset(mem, 0, mem_len); | ||
1968 | } else { | ||
1969 | BCMLOG_ERR("Insufficient Memory For RX\n"); | ||
1970 | crystalhd_hw_free_dma_rings(hw); | ||
1971 | return BC_STS_INSUFF_RES; | ||
1972 | } | ||
1973 | rpkt->desc_mem.pdma_desc_start = mem; | ||
1974 | rpkt->desc_mem.phy_addr = phy_addr; | ||
1975 | rpkt->desc_mem.sz = BC_LINK_MAX_SGLS * sizeof(dma_descriptor); | ||
1976 | rpkt->pkt_tag = hw->rx_pkt_tag_seed + i; | ||
1977 | crystalhd_hw_free_rx_pkt(hw, rpkt); | ||
1978 | } | ||
1979 | |||
1980 | return BC_STS_SUCCESS; | ||
1981 | } | ||
1982 | |||
1983 | BC_STATUS crystalhd_hw_free_dma_rings(struct crystalhd_hw *hw) | ||
1984 | { | ||
1985 | unsigned int i; | ||
1986 | crystalhd_rx_dma_pkt *rpkt = NULL; | ||
1987 | |||
1988 | if (!hw || !hw->adp) { | ||
1989 | BCMLOG_ERR("Invalid Arguments\n"); | ||
1990 | return BC_STS_INV_ARG; | ||
1991 | } | ||
1992 | |||
1993 | /* Delete all IOQs.. */ | ||
1994 | crystalhd_hw_delete_ioqs(hw); | ||
1995 | |||
1996 | for (i = 0; i < BC_TX_LIST_CNT; i++) { | ||
1997 | if (hw->tx_pkt_pool[i].desc_mem.pdma_desc_start) { | ||
1998 | bc_kern_dma_free(hw->adp, | ||
1999 | hw->tx_pkt_pool[i].desc_mem.sz, | ||
2000 | hw->tx_pkt_pool[i].desc_mem.pdma_desc_start, | ||
2001 | hw->tx_pkt_pool[i].desc_mem.phy_addr); | ||
2002 | |||
2003 | hw->tx_pkt_pool[i].desc_mem.pdma_desc_start = NULL; | ||
2004 | } | ||
2005 | } | ||
2006 | |||
2007 | BCMLOG(BCMLOG_DBG, "Releasing RX Pkt pool\n"); | ||
2008 | do { | ||
2009 | rpkt = crystalhd_hw_alloc_rx_pkt(hw); | ||
2010 | if (!rpkt) | ||
2011 | break; | ||
2012 | bc_kern_dma_free(hw->adp, rpkt->desc_mem.sz, | ||
2013 | rpkt->desc_mem.pdma_desc_start, | ||
2014 | rpkt->desc_mem.phy_addr); | ||
2015 | kfree(rpkt); | ||
2016 | } while (rpkt); | ||
2017 | |||
2018 | return BC_STS_SUCCESS; | ||
2019 | } | ||
2020 | |||
2021 | BC_STATUS crystalhd_hw_post_tx(struct crystalhd_hw *hw, crystalhd_dio_req *ioreq, | ||
2022 | hw_comp_callback call_back, | ||
2023 | wait_queue_head_t *cb_event, uint32_t *list_id, | ||
2024 | uint8_t data_flags) | ||
2025 | { | ||
2026 | tx_dma_pkt *tx_dma_packet = NULL; | ||
2027 | uint32_t first_desc_u_addr, first_desc_l_addr; | ||
2028 | uint32_t low_addr, high_addr; | ||
2029 | addr_64 desc_addr; | ||
2030 | BC_STATUS sts, add_sts; | ||
2031 | uint32_t dummy_index = 0; | ||
2032 | unsigned long flags; | ||
2033 | bool rc; | ||
2034 | |||
2035 | if (!hw || !ioreq || !call_back || !cb_event || !list_id) { | ||
2036 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2037 | return BC_STS_INV_ARG; | ||
2038 | } | ||
2039 | |||
2040 | /* | ||
2041 | * Since we hit code in busy condition very frequently, | ||
2042 | * we will check the code in status first before | ||
2043 | * checking the availability of free elem. | ||
2044 | * | ||
2045 | * This will avoid the Q fetch/add in normal condition. | ||
2046 | */ | ||
2047 | rc = crystalhd_code_in_full(hw->adp, ioreq->uinfo.xfr_len, | ||
2048 | false, data_flags); | ||
2049 | if (rc) { | ||
2050 | hw->stats.cin_busy++; | ||
2051 | return BC_STS_BUSY; | ||
2052 | } | ||
2053 | |||
2054 | /* Get a list from TxFreeQ */ | ||
2055 | tx_dma_packet = (tx_dma_pkt *)crystalhd_dioq_fetch(hw->tx_freeq); | ||
2056 | if (!tx_dma_packet) { | ||
2057 | BCMLOG_ERR("No empty elements..\n"); | ||
2058 | return BC_STS_ERR_USAGE; | ||
2059 | } | ||
2060 | |||
2061 | sts = crystalhd_xlat_sgl_to_dma_desc(ioreq, | ||
2062 | &tx_dma_packet->desc_mem, | ||
2063 | &dummy_index); | ||
2064 | if (sts != BC_STS_SUCCESS) { | ||
2065 | add_sts = crystalhd_dioq_add(hw->tx_freeq, tx_dma_packet, | ||
2066 | false, 0); | ||
2067 | if (add_sts != BC_STS_SUCCESS) | ||
2068 | BCMLOG_ERR("double fault..\n"); | ||
2069 | |||
2070 | return sts; | ||
2071 | } | ||
2072 | |||
2073 | hw->pwr_lock++; | ||
2074 | |||
2075 | desc_addr.full_addr = tx_dma_packet->desc_mem.phy_addr; | ||
2076 | low_addr = desc_addr.low_part; | ||
2077 | high_addr = desc_addr.high_part; | ||
2078 | |||
2079 | tx_dma_packet->call_back = call_back; | ||
2080 | tx_dma_packet->cb_event = cb_event; | ||
2081 | tx_dma_packet->dio_req = ioreq; | ||
2082 | |||
2083 | spin_lock_irqsave(&hw->lock, flags); | ||
2084 | |||
2085 | if (hw->tx_list_post_index == 0) { | ||
2086 | first_desc_u_addr = MISC1_TX_FIRST_DESC_U_ADDR_LIST0; | ||
2087 | first_desc_l_addr = MISC1_TX_FIRST_DESC_L_ADDR_LIST0; | ||
2088 | } else { | ||
2089 | first_desc_u_addr = MISC1_TX_FIRST_DESC_U_ADDR_LIST1; | ||
2090 | first_desc_l_addr = MISC1_TX_FIRST_DESC_L_ADDR_LIST1; | ||
2091 | } | ||
2092 | |||
2093 | *list_id = tx_dma_packet->list_tag = hw->tx_ioq_tag_seed + | ||
2094 | hw->tx_list_post_index; | ||
2095 | |||
2096 | hw->tx_list_post_index = (hw->tx_list_post_index + 1) % DMA_ENGINE_CNT; | ||
2097 | |||
2098 | spin_unlock_irqrestore(&hw->lock, flags); | ||
2099 | |||
2100 | |||
2101 | /* Insert in Active Q..*/ | ||
2102 | crystalhd_dioq_add(hw->tx_actq, tx_dma_packet, false, | ||
2103 | tx_dma_packet->list_tag); | ||
2104 | |||
2105 | /* | ||
2106 | * Interrupt will come as soon as you write | ||
2107 | * the valid bit. So be ready for that. All | ||
2108 | * the initialization should happen before that. | ||
2109 | */ | ||
2110 | crystalhd_start_tx_dma_engine(hw); | ||
2111 | crystalhd_reg_wr(hw->adp, first_desc_u_addr, desc_addr.high_part); | ||
2112 | |||
2113 | crystalhd_reg_wr(hw->adp, first_desc_l_addr, desc_addr.low_part | 0x01); | ||
2114 | /* Be sure we set the valid bit ^^^^ */ | ||
2115 | |||
2116 | return BC_STS_SUCCESS; | ||
2117 | } | ||
2118 | |||
2119 | /* | ||
2120 | * This is a force cancel and we are racing with ISR. | ||
2121 | * | ||
2122 | * Will try to remove the req from ActQ before ISR gets it. | ||
2123 | * If ISR gets it first then the completion happens in the | ||
2124 | * normal path and we will return _STS_NO_DATA from here. | ||
2125 | * | ||
2126 | * FIX_ME: Not Tested the actual condition.. | ||
2127 | */ | ||
2128 | BC_STATUS crystalhd_hw_cancel_tx(struct crystalhd_hw *hw, uint32_t list_id) | ||
2129 | { | ||
2130 | if (!hw || !list_id) { | ||
2131 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2132 | return BC_STS_INV_ARG; | ||
2133 | } | ||
2134 | |||
2135 | crystalhd_stop_tx_dma_engine(hw); | ||
2136 | crystalhd_hw_tx_req_complete(hw, list_id, BC_STS_IO_USER_ABORT); | ||
2137 | |||
2138 | return BC_STS_SUCCESS; | ||
2139 | } | ||
2140 | |||
2141 | BC_STATUS crystalhd_hw_add_cap_buffer(struct crystalhd_hw *hw, | ||
2142 | crystalhd_dio_req *ioreq, bool en_post) | ||
2143 | { | ||
2144 | crystalhd_rx_dma_pkt *rpkt; | ||
2145 | uint32_t tag, uv_desc_ix = 0; | ||
2146 | BC_STATUS sts; | ||
2147 | |||
2148 | if (!hw || !ioreq) { | ||
2149 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2150 | return BC_STS_INV_ARG; | ||
2151 | } | ||
2152 | |||
2153 | rpkt = crystalhd_hw_alloc_rx_pkt(hw); | ||
2154 | if (!rpkt) { | ||
2155 | BCMLOG_ERR("Insufficient resources\n"); | ||
2156 | return BC_STS_INSUFF_RES; | ||
2157 | } | ||
2158 | |||
2159 | rpkt->dio_req = ioreq; | ||
2160 | tag = rpkt->pkt_tag; | ||
2161 | |||
2162 | sts = crystalhd_xlat_sgl_to_dma_desc(ioreq, &rpkt->desc_mem, &uv_desc_ix); | ||
2163 | if (sts != BC_STS_SUCCESS) | ||
2164 | return sts; | ||
2165 | |||
2166 | rpkt->uv_phy_addr = 0; | ||
2167 | |||
2168 | /* Store the address of UV in the rx packet for post*/ | ||
2169 | if (uv_desc_ix) | ||
2170 | rpkt->uv_phy_addr = rpkt->desc_mem.phy_addr + | ||
2171 | (sizeof(dma_descriptor) * (uv_desc_ix + 1)); | ||
2172 | |||
2173 | if (en_post) | ||
2174 | sts = crystalhd_hw_post_cap_buff(hw, rpkt); | ||
2175 | else | ||
2176 | sts = crystalhd_dioq_add(hw->rx_freeq, rpkt, false, tag); | ||
2177 | |||
2178 | return sts; | ||
2179 | } | ||
2180 | |||
2181 | BC_STATUS crystalhd_hw_get_cap_buffer(struct crystalhd_hw *hw, | ||
2182 | BC_PIC_INFO_BLOCK *pib, | ||
2183 | crystalhd_dio_req **ioreq) | ||
2184 | { | ||
2185 | crystalhd_rx_dma_pkt *rpkt; | ||
2186 | uint32_t timeout = BC_PROC_OUTPUT_TIMEOUT / 1000; | ||
2187 | uint32_t sig_pending = 0; | ||
2188 | |||
2189 | |||
2190 | if (!hw || !ioreq || !pib) { | ||
2191 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2192 | return BC_STS_INV_ARG; | ||
2193 | } | ||
2194 | |||
2195 | rpkt = crystalhd_dioq_fetch_wait(hw->rx_rdyq, timeout, &sig_pending); | ||
2196 | if (!rpkt) { | ||
2197 | if (sig_pending) { | ||
2198 | BCMLOG(BCMLOG_INFO, "wait on frame time out %d\n", sig_pending); | ||
2199 | return BC_STS_IO_USER_ABORT; | ||
2200 | } else { | ||
2201 | return BC_STS_TIMEOUT; | ||
2202 | } | ||
2203 | } | ||
2204 | |||
2205 | rpkt->dio_req->uinfo.comp_flags = rpkt->flags; | ||
2206 | |||
2207 | if (rpkt->flags & COMP_FLAG_PIB_VALID) | ||
2208 | memcpy(pib, &rpkt->pib, sizeof(*pib)); | ||
2209 | |||
2210 | *ioreq = rpkt->dio_req; | ||
2211 | |||
2212 | crystalhd_hw_free_rx_pkt(hw, rpkt); | ||
2213 | |||
2214 | return BC_STS_SUCCESS; | ||
2215 | } | ||
2216 | |||
2217 | BC_STATUS crystalhd_hw_start_capture(struct crystalhd_hw *hw) | ||
2218 | { | ||
2219 | crystalhd_rx_dma_pkt *rx_pkt; | ||
2220 | BC_STATUS sts; | ||
2221 | uint32_t i; | ||
2222 | |||
2223 | if (!hw) { | ||
2224 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2225 | return BC_STS_INV_ARG; | ||
2226 | } | ||
2227 | |||
2228 | /* This is start of capture.. Post to both the lists.. */ | ||
2229 | for (i = 0; i < DMA_ENGINE_CNT; i++) { | ||
2230 | rx_pkt = crystalhd_dioq_fetch(hw->rx_freeq); | ||
2231 | if (!rx_pkt) | ||
2232 | return BC_STS_NO_DATA; | ||
2233 | sts = crystalhd_hw_post_cap_buff(hw, rx_pkt); | ||
2234 | if (BC_STS_SUCCESS != sts) | ||
2235 | break; | ||
2236 | |||
2237 | } | ||
2238 | |||
2239 | return BC_STS_SUCCESS; | ||
2240 | } | ||
2241 | |||
2242 | BC_STATUS crystalhd_hw_stop_capture(struct crystalhd_hw *hw) | ||
2243 | { | ||
2244 | void *temp = NULL; | ||
2245 | |||
2246 | if (!hw) { | ||
2247 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2248 | return BC_STS_INV_ARG; | ||
2249 | } | ||
2250 | |||
2251 | crystalhd_stop_rx_dma_engine(hw); | ||
2252 | |||
2253 | do { | ||
2254 | temp = crystalhd_dioq_fetch(hw->rx_freeq); | ||
2255 | if (temp) | ||
2256 | crystalhd_rx_pkt_rel_call_back(hw, temp); | ||
2257 | } while (temp); | ||
2258 | |||
2259 | return BC_STS_SUCCESS; | ||
2260 | } | ||
2261 | |||
2262 | BC_STATUS crystalhd_hw_pause(struct crystalhd_hw *hw) | ||
2263 | { | ||
2264 | hw->stats.pause_cnt++; | ||
2265 | hw->stop_pending = 1; | ||
2266 | |||
2267 | if ((hw->rx_list_sts[0] == sts_free) && | ||
2268 | (hw->rx_list_sts[1] == sts_free)) | ||
2269 | crystalhd_hw_finalize_pause(hw); | ||
2270 | |||
2271 | return BC_STS_SUCCESS; | ||
2272 | } | ||
2273 | |||
2274 | BC_STATUS crystalhd_hw_unpause(struct crystalhd_hw *hw) | ||
2275 | { | ||
2276 | BC_STATUS sts; | ||
2277 | uint32_t aspm; | ||
2278 | |||
2279 | hw->stop_pending = 0; | ||
2280 | |||
2281 | aspm = crystalhd_reg_rd(hw->adp, PCIE_DLL_DATA_LINK_CONTROL); | ||
2282 | aspm &= ~ASPM_L1_ENABLE; | ||
2283 | /* NAREN BCMLOG(BCMLOG_INFO, "aspm off\n"); */ | ||
2284 | crystalhd_reg_wr(hw->adp, PCIE_DLL_DATA_LINK_CONTROL, aspm); | ||
2285 | |||
2286 | sts = crystalhd_hw_start_capture(hw); | ||
2287 | return sts; | ||
2288 | } | ||
2289 | |||
2290 | BC_STATUS crystalhd_hw_suspend(struct crystalhd_hw *hw) | ||
2291 | { | ||
2292 | BC_STATUS sts; | ||
2293 | |||
2294 | if (!hw) { | ||
2295 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2296 | return BC_STS_INV_ARG; | ||
2297 | } | ||
2298 | |||
2299 | sts = crystalhd_put_ddr2sleep(hw); | ||
2300 | if (sts != BC_STS_SUCCESS) { | ||
2301 | BCMLOG_ERR("Failed to Put DDR To Sleep!!\n"); | ||
2302 | return BC_STS_ERROR; | ||
2303 | } | ||
2304 | |||
2305 | if (!crystalhd_stop_device(hw->adp)) { | ||
2306 | BCMLOG_ERR("Failed to Stop Device!!\n"); | ||
2307 | return BC_STS_ERROR; | ||
2308 | } | ||
2309 | |||
2310 | return BC_STS_SUCCESS; | ||
2311 | } | ||
2312 | |||
2313 | void crystalhd_hw_stats(struct crystalhd_hw *hw, struct crystalhd_hw_stats *stats) | ||
2314 | { | ||
2315 | if (!hw) { | ||
2316 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2317 | return; | ||
2318 | } | ||
2319 | |||
2320 | /* if called w/NULL stats, its a req to zero out the stats */ | ||
2321 | if (!stats) { | ||
2322 | memset(&hw->stats, 0, sizeof(hw->stats)); | ||
2323 | return; | ||
2324 | } | ||
2325 | |||
2326 | hw->stats.freeq_count = crystalhd_dioq_count(hw->rx_freeq); | ||
2327 | hw->stats.rdyq_count = crystalhd_dioq_count(hw->rx_rdyq); | ||
2328 | memcpy(stats, &hw->stats, sizeof(*stats)); | ||
2329 | } | ||
2330 | |||
2331 | BC_STATUS crystalhd_hw_set_core_clock(struct crystalhd_hw *hw) | ||
2332 | { | ||
2333 | uint32_t reg, n, i; | ||
2334 | uint32_t vco_mg, refresh_reg; | ||
2335 | |||
2336 | if (!hw) { | ||
2337 | BCMLOG_ERR("Invalid Arguments\n"); | ||
2338 | return BC_STS_INV_ARG; | ||
2339 | } | ||
2340 | |||
2341 | /* FIXME: jarod: wha? */ | ||
2342 | /*n = (hw->core_clock_mhz * 3) / 20 + 1; */ | ||
2343 | n = hw->core_clock_mhz/5; | ||
2344 | |||
2345 | if (n == hw->prev_n) | ||
2346 | return BC_STS_CLK_NOCHG; | ||
2347 | |||
2348 | if (hw->pwr_lock > 0) { | ||
2349 | /* BCMLOG(BCMLOG_INFO,"pwr_lock is %u\n", hw->pwr_lock) */ | ||
2350 | return BC_STS_CLK_NOCHG; | ||
2351 | } | ||
2352 | |||
2353 | i = n * 27; | ||
2354 | if (i < 560) | ||
2355 | vco_mg = 0; | ||
2356 | else if (i < 900) | ||
2357 | vco_mg = 1; | ||
2358 | else if (i < 1030) | ||
2359 | vco_mg = 2; | ||
2360 | else | ||
2361 | vco_mg = 3; | ||
2362 | |||
2363 | reg = bc_dec_reg_rd(hw->adp, DecHt_PllACtl); | ||
2364 | |||
2365 | reg &= 0xFFFFCFC0; | ||
2366 | reg |= n; | ||
2367 | reg |= vco_mg << 12; | ||
2368 | |||
2369 | BCMLOG(BCMLOG_INFO, "clock is moving to %d with n %d with vco_mg %d\n", | ||
2370 | hw->core_clock_mhz, n, vco_mg); | ||
2371 | |||
2372 | /* Change the DRAM refresh rate to accomodate the new frequency */ | ||
2373 | /* refresh reg = ((refresh_rate * clock_rate)/16) - 1; rounding up*/ | ||
2374 | refresh_reg = (7 * hw->core_clock_mhz / 16); | ||
2375 | bc_dec_reg_wr(hw->adp, SDRAM_REF_PARAM, ((1 << 12) | refresh_reg)); | ||
2376 | |||
2377 | bc_dec_reg_wr(hw->adp, DecHt_PllACtl, reg); | ||
2378 | |||
2379 | i = 0; | ||
2380 | |||
2381 | for (i = 0; i < 10; i++) { | ||
2382 | reg = bc_dec_reg_rd(hw->adp, DecHt_PllACtl); | ||
2383 | |||
2384 | if (reg & 0x00020000) { | ||
2385 | hw->prev_n = n; | ||
2386 | /* FIXME: jarod: outputting a random "C" is... confusing... */ | ||
2387 | BCMLOG(BCMLOG_INFO, "C"); | ||
2388 | return BC_STS_SUCCESS; | ||
2389 | } else { | ||
2390 | msleep_interruptible(10); | ||
2391 | } | ||
2392 | } | ||
2393 | BCMLOG(BCMLOG_INFO, "clk change failed\n"); | ||
2394 | return BC_STS_CLK_NOCHG; | ||
2395 | } | ||
diff --git a/drivers/staging/crystalhd/crystalhd_hw.h b/drivers/staging/crystalhd/crystalhd_hw.h new file mode 100644 index 00000000000..1c6318e912a --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_hw.h | |||
@@ -0,0 +1,398 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_hw . h | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70012 Linux driver hardware layer. | ||
8 | * | ||
9 | * HISTORY: | ||
10 | * | ||
11 | ********************************************************************** | ||
12 | * This file is part of the crystalhd device driver. | ||
13 | * | ||
14 | * This driver is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation, version 2 of the License. | ||
17 | * | ||
18 | * This driver is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU General Public License for more details. | ||
22 | * | ||
23 | * You should have received a copy of the GNU General Public License | ||
24 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
25 | **********************************************************************/ | ||
26 | |||
27 | #ifndef _CRYSTALHD_HW_H_ | ||
28 | #define _CRYSTALHD_HW_H_ | ||
29 | |||
30 | #include "crystalhd_misc.h" | ||
31 | #include "crystalhd_fw_if.h" | ||
32 | |||
33 | /* HW constants..*/ | ||
34 | #define DMA_ENGINE_CNT 2 | ||
35 | #define MAX_PIB_Q_DEPTH 64 | ||
36 | #define MIN_PIB_Q_DEPTH 2 | ||
37 | #define WR_POINTER_OFF 4 | ||
38 | |||
39 | #define ASPM_L1_ENABLE (BC_BIT(27)) | ||
40 | |||
41 | /************************************************* | ||
42 | 7412 Decoder Registers. | ||
43 | **************************************************/ | ||
44 | #define FW_CMD_BUFF_SZ 64 | ||
45 | #define TS_Host2CpuSnd 0x00000100 | ||
46 | #define Hst2CpuMbx1 0x00100F00 | ||
47 | #define Cpu2HstMbx1 0x00100F04 | ||
48 | #define MbxStat1 0x00100F08 | ||
49 | #define Stream2Host_Intr_Sts 0x00100F24 | ||
50 | #define C011_RET_SUCCESS 0x0 /* Reutrn status of firmware command. */ | ||
51 | |||
52 | /* TS input status register */ | ||
53 | #define TS_StreamAFIFOStatus 0x0010044C | ||
54 | #define TS_StreamBFIFOStatus 0x0010084C | ||
55 | |||
56 | /*UART Selection definitions*/ | ||
57 | #define UartSelectA 0x00100300 | ||
58 | #define UartSelectB 0x00100304 | ||
59 | |||
60 | #define BSVS_UART_DEC_NONE 0x00 | ||
61 | #define BSVS_UART_DEC_OUTER 0x01 | ||
62 | #define BSVS_UART_DEC_INNER 0x02 | ||
63 | #define BSVS_UART_STREAM 0x03 | ||
64 | |||
65 | /* Code-In fifo */ | ||
66 | #define REG_DecCA_RegCinCTL 0xa00 | ||
67 | #define REG_DecCA_RegCinBase 0xa0c | ||
68 | #define REG_DecCA_RegCinEnd 0xa10 | ||
69 | #define REG_DecCA_RegCinWrPtr 0xa04 | ||
70 | #define REG_DecCA_RegCinRdPtr 0xa08 | ||
71 | |||
72 | #define REG_Dec_TsUser0Base 0x100864 | ||
73 | #define REG_Dec_TsUser0Rdptr 0x100868 | ||
74 | #define REG_Dec_TsUser0Wrptr 0x10086C | ||
75 | #define REG_Dec_TsUser0End 0x100874 | ||
76 | |||
77 | /* ASF Case ...*/ | ||
78 | #define REG_Dec_TsAudCDB2Base 0x10036c | ||
79 | #define REG_Dec_TsAudCDB2Rdptr 0x100378 | ||
80 | #define REG_Dec_TsAudCDB2Wrptr 0x100374 | ||
81 | #define REG_Dec_TsAudCDB2End 0x100370 | ||
82 | |||
83 | /* DRAM bringup Registers */ | ||
84 | #define SDRAM_PARAM 0x00040804 | ||
85 | #define SDRAM_PRECHARGE 0x000408B0 | ||
86 | #define SDRAM_EXT_MODE 0x000408A4 | ||
87 | #define SDRAM_MODE 0x000408A0 | ||
88 | #define SDRAM_REFRESH 0x00040890 | ||
89 | #define SDRAM_REF_PARAM 0x00040808 | ||
90 | |||
91 | #define DecHt_PllACtl 0x34000C | ||
92 | #define DecHt_PllBCtl 0x340010 | ||
93 | #define DecHt_PllCCtl 0x340014 | ||
94 | #define DecHt_PllDCtl 0x340034 | ||
95 | #define DecHt_PllECtl 0x340038 | ||
96 | #define AUD_DSP_MISC_SOFT_RESET 0x00240104 | ||
97 | #define AIO_MISC_PLL_RESET 0x0026000C | ||
98 | #define PCIE_CLK_REQ_REG 0xDC | ||
99 | #define PCI_CLK_REQ_ENABLE (BC_BIT(8)) | ||
100 | |||
101 | /************************************************* | ||
102 | F/W Copy engine definitions.. | ||
103 | **************************************************/ | ||
104 | #define BC_FWIMG_ST_ADDR 0x00000000 | ||
105 | /* FIXME: jarod: there's a kernel function that'll do this for us... */ | ||
106 | #define rotr32_1(x, n) (((x) >> n) | ((x) << (32 - n))) | ||
107 | #define bswap_32_1(x) ((rotr32_1((x), 24) & 0x00ff00ff) | (rotr32_1((x), 8) & 0xff00ff00)) | ||
108 | |||
109 | #define DecHt_HostSwReset 0x340000 | ||
110 | #define BC_DRAM_FW_CFG_ADDR 0x001c2000 | ||
111 | |||
112 | typedef union _addr_64_ { | ||
113 | struct { | ||
114 | uint32_t low_part; | ||
115 | uint32_t high_part; | ||
116 | }; | ||
117 | |||
118 | uint64_t full_addr; | ||
119 | |||
120 | } addr_64; | ||
121 | |||
122 | typedef union _intr_mask_reg_ { | ||
123 | struct { | ||
124 | uint32_t mask_tx_done:1; | ||
125 | uint32_t mask_tx_err:1; | ||
126 | uint32_t mask_rx_done:1; | ||
127 | uint32_t mask_rx_err:1; | ||
128 | uint32_t mask_pcie_err:1; | ||
129 | uint32_t mask_pcie_rbusmast_err:1; | ||
130 | uint32_t mask_pcie_rgr_bridge:1; | ||
131 | uint32_t reserved:25; | ||
132 | }; | ||
133 | |||
134 | uint32_t whole_reg; | ||
135 | |||
136 | } intr_mask_reg; | ||
137 | |||
138 | typedef union _link_misc_perst_deco_ctrl_ { | ||
139 | struct { | ||
140 | uint32_t bcm7412_rst:1; /* 1 -> BCM7412 is held in reset. Reset value 1.*/ | ||
141 | uint32_t reserved0:3; /* Reserved.No Effect*/ | ||
142 | uint32_t stop_bcm_7412_clk:1; /* 1 ->Stops branch of 27MHz clk used to clk BCM7412*/ | ||
143 | uint32_t reserved1:27; /* Reseved. No Effect*/ | ||
144 | }; | ||
145 | |||
146 | uint32_t whole_reg; | ||
147 | |||
148 | } link_misc_perst_deco_ctrl; | ||
149 | |||
150 | typedef union _link_misc_perst_clk_ctrl_ { | ||
151 | struct { | ||
152 | uint32_t sel_alt_clk:1; /* When set, selects a 6.75MHz clock as the source of core_clk */ | ||
153 | uint32_t stop_core_clk:1; /* When set, stops the branch of core_clk that is not needed for low power operation */ | ||
154 | uint32_t pll_pwr_dn:1; /* When set, powers down the main PLL. The alternate clock bit should be set | ||
155 | to select an alternate clock before setting this bit.*/ | ||
156 | uint32_t reserved0:5; /* Reserved */ | ||
157 | uint32_t pll_mult:8; /* This setting controls the multiplier for the PLL. */ | ||
158 | uint32_t pll_div:4; /* This setting controls the divider for the PLL. */ | ||
159 | uint32_t reserved1:12; /* Reserved */ | ||
160 | }; | ||
161 | |||
162 | uint32_t whole_reg; | ||
163 | |||
164 | } link_misc_perst_clk_ctrl; | ||
165 | |||
166 | |||
167 | typedef union _link_misc_perst_decoder_ctrl_ { | ||
168 | struct { | ||
169 | uint32_t bcm_7412_rst:1; /* 1 -> BCM7412 is held in reset. Reset value 1.*/ | ||
170 | uint32_t res0:3; /* Reserved.No Effect*/ | ||
171 | uint32_t stop_7412_clk:1; /* 1 ->Stops branch of 27MHz clk used to clk BCM7412*/ | ||
172 | uint32_t res1:27; /* Reseved. No Effect */ | ||
173 | }; | ||
174 | |||
175 | uint32_t whole_reg; | ||
176 | |||
177 | } link_misc_perst_decoder_ctrl; | ||
178 | |||
179 | |||
180 | typedef union _desc_low_addr_reg_ { | ||
181 | struct { | ||
182 | uint32_t list_valid:1; | ||
183 | uint32_t reserved:4; | ||
184 | uint32_t low_addr:27; | ||
185 | }; | ||
186 | |||
187 | uint32_t whole_reg; | ||
188 | |||
189 | } desc_low_addr_reg; | ||
190 | |||
191 | typedef struct _dma_descriptor_ { /* 8 32-bit values */ | ||
192 | /* 0th u32 */ | ||
193 | uint32_t sdram_buff_addr:28; /* bits 0-27: SDRAM Address */ | ||
194 | uint32_t res0:4; /* bits 28-31: Reserved */ | ||
195 | |||
196 | /* 1st u32 */ | ||
197 | uint32_t buff_addr_low; /* 1 buffer address low */ | ||
198 | uint32_t buff_addr_high; /* 2 buffer address high */ | ||
199 | |||
200 | /* 3rd u32 */ | ||
201 | uint32_t res2:2; /* 0-1 - Reserved */ | ||
202 | uint32_t xfer_size:23; /* 2-24 = Xfer size in words */ | ||
203 | uint32_t res3:6; /* 25-30 reserved */ | ||
204 | uint32_t intr_enable:1; /* 31 - Interrupt After this desc */ | ||
205 | |||
206 | /* 4th u32 */ | ||
207 | uint32_t endian_xlat_align:2; /* 0-1 Endian Translation */ | ||
208 | uint32_t next_desc_cont:1; /* 2 - Next desc is in contig memory */ | ||
209 | uint32_t res4:25; /* 3 - 27 Reserved bits */ | ||
210 | uint32_t fill_bytes:2; /* 28-29 Bits Fill Bytes */ | ||
211 | uint32_t dma_dir:1; /* 30 bit DMA Direction */ | ||
212 | uint32_t last_rec_indicator:1; /* 31 bit Last Record Indicator */ | ||
213 | |||
214 | /* 5th u32 */ | ||
215 | uint32_t next_desc_addr_low; /* 32-bits Next Desc Addr lower */ | ||
216 | |||
217 | /* 6th u32 */ | ||
218 | uint32_t next_desc_addr_high; /* 32-bits Next Desc Addr Higher */ | ||
219 | |||
220 | /* 7th u32 */ | ||
221 | uint32_t res8; /* Last 32bits reserved */ | ||
222 | |||
223 | } dma_descriptor, *pdma_descriptor; | ||
224 | |||
225 | /* | ||
226 | * We will allocate the memory in 4K pages | ||
227 | * the linked list will be a list of 32 byte descriptors. | ||
228 | * The virtual address will determine what should be freed. | ||
229 | */ | ||
230 | typedef struct _dma_desc_mem_ { | ||
231 | pdma_descriptor pdma_desc_start; /* 32-bytes for dma descriptor. should be first element */ | ||
232 | dma_addr_t phy_addr; /* physical address of each DMA desc */ | ||
233 | uint32_t sz; | ||
234 | struct _dma_desc_mem_ *Next; /* points to Next Descriptor in chain */ | ||
235 | |||
236 | } dma_desc_mem, *pdma_desc_mem; | ||
237 | |||
238 | |||
239 | |||
240 | typedef enum _list_sts_ { | ||
241 | sts_free = 0, | ||
242 | |||
243 | /* RX-Y Bits 0:7 */ | ||
244 | rx_waiting_y_intr = 0x00000001, | ||
245 | rx_y_error = 0x00000004, | ||
246 | |||
247 | /* RX-UV Bits 8:16 */ | ||
248 | rx_waiting_uv_intr = 0x0000100, | ||
249 | rx_uv_error = 0x0000400, | ||
250 | |||
251 | rx_sts_waiting = (rx_waiting_y_intr|rx_waiting_uv_intr), | ||
252 | rx_sts_error = (rx_y_error|rx_uv_error), | ||
253 | |||
254 | rx_y_mask = 0x000000FF, | ||
255 | rx_uv_mask = 0x0000FF00, | ||
256 | |||
257 | } list_sts; | ||
258 | |||
259 | typedef struct _tx_dma_pkt_ { | ||
260 | dma_desc_mem desc_mem; | ||
261 | hw_comp_callback call_back; | ||
262 | crystalhd_dio_req *dio_req; | ||
263 | wait_queue_head_t *cb_event; | ||
264 | uint32_t list_tag; | ||
265 | |||
266 | } tx_dma_pkt; | ||
267 | |||
268 | typedef struct _crystalhd_rx_dma_pkt { | ||
269 | dma_desc_mem desc_mem; | ||
270 | crystalhd_dio_req *dio_req; | ||
271 | uint32_t pkt_tag; | ||
272 | uint32_t flags; | ||
273 | BC_PIC_INFO_BLOCK pib; | ||
274 | dma_addr_t uv_phy_addr; | ||
275 | struct _crystalhd_rx_dma_pkt *next; | ||
276 | |||
277 | } crystalhd_rx_dma_pkt; | ||
278 | |||
279 | struct crystalhd_hw_stats{ | ||
280 | uint32_t rx_errors; | ||
281 | uint32_t tx_errors; | ||
282 | uint32_t freeq_count; | ||
283 | uint32_t rdyq_count; | ||
284 | uint32_t num_interrupts; | ||
285 | uint32_t dev_interrupts; | ||
286 | uint32_t cin_busy; | ||
287 | uint32_t pause_cnt; | ||
288 | }; | ||
289 | |||
290 | struct crystalhd_hw { | ||
291 | tx_dma_pkt tx_pkt_pool[DMA_ENGINE_CNT]; | ||
292 | spinlock_t lock; | ||
293 | |||
294 | uint32_t tx_ioq_tag_seed; | ||
295 | uint32_t tx_list_post_index; | ||
296 | |||
297 | crystalhd_rx_dma_pkt *rx_pkt_pool_head; | ||
298 | uint32_t rx_pkt_tag_seed; | ||
299 | |||
300 | bool dev_started; | ||
301 | void *adp; | ||
302 | |||
303 | wait_queue_head_t *pfw_cmd_event; | ||
304 | int fwcmd_evt_sts; | ||
305 | |||
306 | uint32_t pib_del_Q_addr; | ||
307 | uint32_t pib_rel_Q_addr; | ||
308 | |||
309 | crystalhd_dioq_t *tx_freeq; | ||
310 | crystalhd_dioq_t *tx_actq; | ||
311 | |||
312 | /* Rx DMA Engine Specific Locks */ | ||
313 | spinlock_t rx_lock; | ||
314 | uint32_t rx_list_post_index; | ||
315 | list_sts rx_list_sts[DMA_ENGINE_CNT]; | ||
316 | crystalhd_dioq_t *rx_rdyq; | ||
317 | crystalhd_dioq_t *rx_freeq; | ||
318 | crystalhd_dioq_t *rx_actq; | ||
319 | uint32_t stop_pending; | ||
320 | |||
321 | /* HW counters.. */ | ||
322 | struct crystalhd_hw_stats stats; | ||
323 | |||
324 | /* Core clock in MHz */ | ||
325 | uint32_t core_clock_mhz; | ||
326 | uint32_t prev_n; | ||
327 | uint32_t pwr_lock; | ||
328 | }; | ||
329 | |||
330 | /* Clock defines for power control */ | ||
331 | #define CLOCK_PRESET 175 | ||
332 | |||
333 | /* DMA engine register BIT mask wrappers.. */ | ||
334 | #define DMA_START_BIT MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_MASK | ||
335 | |||
336 | #define GET_RX_INTR_MASK (INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_MASK | \ | ||
337 | INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_MASK | \ | ||
338 | INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_MASK | \ | ||
339 | INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_MASK | \ | ||
340 | INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_MASK | \ | ||
341 | INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_MASK | \ | ||
342 | INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_MASK | \ | ||
343 | INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_MASK) | ||
344 | |||
345 | #define GET_Y0_ERR_MSK (MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_MASK | \ | ||
346 | MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK | \ | ||
347 | MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_MASK | \ | ||
348 | MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK) | ||
349 | |||
350 | #define GET_UV0_ERR_MSK (MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_MASK | \ | ||
351 | MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK | \ | ||
352 | MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_MASK | \ | ||
353 | MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK) | ||
354 | |||
355 | #define GET_Y1_ERR_MSK (MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_MASK | \ | ||
356 | MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK | \ | ||
357 | MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_MASK | \ | ||
358 | MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK) | ||
359 | |||
360 | #define GET_UV1_ERR_MSK (MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_MASK | \ | ||
361 | MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK | \ | ||
362 | MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_MASK | \ | ||
363 | MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK) | ||
364 | |||
365 | |||
366 | /**** API Exposed to the other layers ****/ | ||
367 | BC_STATUS crystalhd_download_fw(struct crystalhd_adp *adp, | ||
368 | void *buffer, uint32_t sz); | ||
369 | BC_STATUS crystalhd_do_fw_cmd(struct crystalhd_hw *hw, BC_FW_CMD *fw_cmd); | ||
370 | bool crystalhd_hw_interrupt(struct crystalhd_adp *adp, struct crystalhd_hw *hw); | ||
371 | BC_STATUS crystalhd_hw_open(struct crystalhd_hw *, struct crystalhd_adp *); | ||
372 | BC_STATUS crystalhd_hw_close(struct crystalhd_hw *); | ||
373 | BC_STATUS crystalhd_hw_setup_dma_rings(struct crystalhd_hw *); | ||
374 | BC_STATUS crystalhd_hw_free_dma_rings(struct crystalhd_hw *); | ||
375 | |||
376 | |||
377 | BC_STATUS crystalhd_hw_post_tx(struct crystalhd_hw *hw, crystalhd_dio_req *ioreq, | ||
378 | hw_comp_callback call_back, | ||
379 | wait_queue_head_t *cb_event, | ||
380 | uint32_t *list_id, uint8_t data_flags); | ||
381 | |||
382 | BC_STATUS crystalhd_hw_pause(struct crystalhd_hw *hw); | ||
383 | BC_STATUS crystalhd_hw_unpause(struct crystalhd_hw *hw); | ||
384 | BC_STATUS crystalhd_hw_suspend(struct crystalhd_hw *hw); | ||
385 | BC_STATUS crystalhd_hw_cancel_tx(struct crystalhd_hw *hw, uint32_t list_id); | ||
386 | BC_STATUS crystalhd_hw_add_cap_buffer(struct crystalhd_hw *hw, | ||
387 | crystalhd_dio_req *ioreq, bool en_post); | ||
388 | BC_STATUS crystalhd_hw_get_cap_buffer(struct crystalhd_hw *hw, | ||
389 | BC_PIC_INFO_BLOCK *pib, | ||
390 | crystalhd_dio_req **ioreq); | ||
391 | BC_STATUS crystalhd_hw_stop_capture(struct crystalhd_hw *hw); | ||
392 | BC_STATUS crystalhd_hw_start_capture(struct crystalhd_hw *hw); | ||
393 | void crystalhd_hw_stats(struct crystalhd_hw *hw, struct crystalhd_hw_stats *stats); | ||
394 | |||
395 | /* API to program the core clock on the decoder */ | ||
396 | BC_STATUS crystalhd_hw_set_core_clock(struct crystalhd_hw *); | ||
397 | |||
398 | #endif | ||
diff --git a/drivers/staging/crystalhd/crystalhd_lnx.c b/drivers/staging/crystalhd/crystalhd_lnx.c new file mode 100644 index 00000000000..1f36b4db6fc --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_lnx.c | |||
@@ -0,0 +1,780 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_lnx . c | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70010 Linux driver | ||
8 | * | ||
9 | * HISTORY: | ||
10 | * | ||
11 | ********************************************************************** | ||
12 | * This file is part of the crystalhd device driver. | ||
13 | * | ||
14 | * This driver is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation, version 2 of the License. | ||
17 | * | ||
18 | * This driver is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU General Public License for more details. | ||
22 | * | ||
23 | * You should have received a copy of the GNU General Public License | ||
24 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
25 | **********************************************************************/ | ||
26 | |||
27 | #include <linux/version.h> | ||
28 | |||
29 | #include "crystalhd_lnx.h" | ||
30 | |||
31 | static struct class *crystalhd_class; | ||
32 | |||
33 | static struct crystalhd_adp *g_adp_info; | ||
34 | |||
35 | static irqreturn_t chd_dec_isr(int irq, void *arg) | ||
36 | { | ||
37 | struct crystalhd_adp *adp = (struct crystalhd_adp *) arg; | ||
38 | int rc = 0; | ||
39 | if (adp) | ||
40 | rc = crystalhd_cmd_interrupt(&adp->cmds); | ||
41 | |||
42 | return IRQ_RETVAL(rc); | ||
43 | } | ||
44 | |||
45 | static int chd_dec_enable_int(struct crystalhd_adp *adp) | ||
46 | { | ||
47 | int rc = 0; | ||
48 | |||
49 | if (!adp || !adp->pdev) { | ||
50 | BCMLOG_ERR("Invalid arg!!\n"); | ||
51 | return -EINVAL; | ||
52 | } | ||
53 | |||
54 | if (adp->pdev->msi_enabled) | ||
55 | adp->msi = 1; | ||
56 | else | ||
57 | adp->msi = pci_enable_msi(adp->pdev); | ||
58 | |||
59 | rc = request_irq(adp->pdev->irq, chd_dec_isr, IRQF_SHARED, | ||
60 | adp->name, (void *)adp); | ||
61 | if (rc) { | ||
62 | BCMLOG_ERR("Interrupt request failed.. \n"); | ||
63 | pci_disable_msi(adp->pdev); | ||
64 | } | ||
65 | |||
66 | return rc; | ||
67 | } | ||
68 | |||
69 | static int chd_dec_disable_int(struct crystalhd_adp *adp) | ||
70 | { | ||
71 | if (!adp || !adp->pdev) { | ||
72 | BCMLOG_ERR("Invalid arg!!\n"); | ||
73 | return -EINVAL; | ||
74 | } | ||
75 | |||
76 | free_irq(adp->pdev->irq, adp); | ||
77 | |||
78 | if (adp->msi) | ||
79 | pci_disable_msi(adp->pdev); | ||
80 | |||
81 | return 0; | ||
82 | } | ||
83 | |||
84 | crystalhd_ioctl_data *chd_dec_alloc_iodata(struct crystalhd_adp *adp, bool isr) | ||
85 | { | ||
86 | unsigned long flags = 0; | ||
87 | crystalhd_ioctl_data *temp; | ||
88 | |||
89 | if (!adp) | ||
90 | return NULL; | ||
91 | |||
92 | spin_lock_irqsave(&adp->lock, flags); | ||
93 | |||
94 | temp = adp->idata_free_head; | ||
95 | if (temp) { | ||
96 | adp->idata_free_head = adp->idata_free_head->next; | ||
97 | memset(temp, 0, sizeof(*temp)); | ||
98 | } | ||
99 | |||
100 | spin_unlock_irqrestore(&adp->lock, flags); | ||
101 | return temp; | ||
102 | } | ||
103 | |||
104 | void chd_dec_free_iodata(struct crystalhd_adp *adp, crystalhd_ioctl_data *iodata, | ||
105 | bool isr) | ||
106 | { | ||
107 | unsigned long flags = 0; | ||
108 | |||
109 | if (!adp || !iodata) | ||
110 | return; | ||
111 | |||
112 | spin_lock_irqsave(&adp->lock, flags); | ||
113 | iodata->next = adp->idata_free_head; | ||
114 | adp->idata_free_head = iodata; | ||
115 | spin_unlock_irqrestore(&adp->lock, flags); | ||
116 | } | ||
117 | |||
118 | static inline int crystalhd_user_data(unsigned long ud, void *dr, int size, int set) | ||
119 | { | ||
120 | int rc; | ||
121 | |||
122 | if (!ud || !dr) { | ||
123 | BCMLOG_ERR("Invalid arg \n"); | ||
124 | return -EINVAL; | ||
125 | } | ||
126 | |||
127 | if (set) | ||
128 | rc = copy_to_user((void *)ud, dr, size); | ||
129 | else | ||
130 | rc = copy_from_user(dr, (void *)ud, size); | ||
131 | |||
132 | if (rc) { | ||
133 | BCMLOG_ERR("Invalid args for command \n"); | ||
134 | rc = -EFAULT; | ||
135 | } | ||
136 | |||
137 | return rc; | ||
138 | } | ||
139 | |||
140 | static int chd_dec_fetch_cdata(struct crystalhd_adp *adp, crystalhd_ioctl_data *io, | ||
141 | uint32_t m_sz, unsigned long ua) | ||
142 | { | ||
143 | unsigned long ua_off; | ||
144 | int rc = 0; | ||
145 | |||
146 | if (!adp || !io || !ua || !m_sz) { | ||
147 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
148 | return -EINVAL; | ||
149 | } | ||
150 | |||
151 | io->add_cdata = vmalloc(m_sz); | ||
152 | if (!io->add_cdata) { | ||
153 | BCMLOG_ERR("kalloc fail for sz:%x\n", m_sz); | ||
154 | return -ENOMEM; | ||
155 | } | ||
156 | |||
157 | io->add_cdata_sz = m_sz; | ||
158 | ua_off = ua + sizeof(io->udata); | ||
159 | rc = crystalhd_user_data(ua_off, io->add_cdata, io->add_cdata_sz, 0); | ||
160 | if (rc) { | ||
161 | BCMLOG_ERR("failed to pull add_cdata sz:%x ua_off:%x\n", | ||
162 | io->add_cdata_sz, (unsigned int)ua_off); | ||
163 | if (io->add_cdata) { | ||
164 | kfree(io->add_cdata); | ||
165 | io->add_cdata = NULL; | ||
166 | } | ||
167 | return -ENODATA; | ||
168 | } | ||
169 | |||
170 | return rc; | ||
171 | } | ||
172 | |||
173 | static int chd_dec_release_cdata(struct crystalhd_adp *adp, | ||
174 | crystalhd_ioctl_data *io, unsigned long ua) | ||
175 | { | ||
176 | unsigned long ua_off; | ||
177 | int rc; | ||
178 | |||
179 | if (!adp || !io || !ua) { | ||
180 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
181 | return -EINVAL; | ||
182 | } | ||
183 | |||
184 | if (io->cmd != BCM_IOC_FW_DOWNLOAD) { | ||
185 | ua_off = ua + sizeof(io->udata); | ||
186 | rc = crystalhd_user_data(ua_off, io->add_cdata, | ||
187 | io->add_cdata_sz, 1); | ||
188 | if (rc) { | ||
189 | BCMLOG_ERR("failed to push add_cdata sz:%x ua_off:%x\n", | ||
190 | io->add_cdata_sz, (unsigned int)ua_off); | ||
191 | return -ENODATA; | ||
192 | } | ||
193 | } | ||
194 | |||
195 | if (io->add_cdata) { | ||
196 | vfree(io->add_cdata); | ||
197 | io->add_cdata = NULL; | ||
198 | } | ||
199 | |||
200 | return 0; | ||
201 | } | ||
202 | |||
203 | static int chd_dec_proc_user_data(struct crystalhd_adp *adp, | ||
204 | crystalhd_ioctl_data *io, | ||
205 | unsigned long ua, int set) | ||
206 | { | ||
207 | int rc; | ||
208 | uint32_t m_sz = 0; | ||
209 | |||
210 | if (!adp || !io || !ua) { | ||
211 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
212 | return -EINVAL; | ||
213 | } | ||
214 | |||
215 | rc = crystalhd_user_data(ua, &io->udata, sizeof(io->udata), set); | ||
216 | if (rc) { | ||
217 | BCMLOG_ERR("failed to %s iodata \n", (set ? "set" : "get")); | ||
218 | return rc; | ||
219 | } | ||
220 | |||
221 | switch (io->cmd) { | ||
222 | case BCM_IOC_MEM_RD: | ||
223 | case BCM_IOC_MEM_WR: | ||
224 | case BCM_IOC_FW_DOWNLOAD: | ||
225 | m_sz = io->udata.u.devMem.NumDwords * 4; | ||
226 | if (set) | ||
227 | rc = chd_dec_release_cdata(adp, io, ua); | ||
228 | else | ||
229 | rc = chd_dec_fetch_cdata(adp, io, m_sz, ua); | ||
230 | break; | ||
231 | default: | ||
232 | break; | ||
233 | } | ||
234 | |||
235 | return rc; | ||
236 | } | ||
237 | |||
238 | static int chd_dec_api_cmd(struct crystalhd_adp *adp, unsigned long ua, | ||
239 | uint32_t uid, uint32_t cmd, crystalhd_cmd_proc func) | ||
240 | { | ||
241 | int rc; | ||
242 | crystalhd_ioctl_data *temp; | ||
243 | BC_STATUS sts = BC_STS_SUCCESS; | ||
244 | |||
245 | temp = chd_dec_alloc_iodata(adp, 0); | ||
246 | if (!temp) { | ||
247 | BCMLOG_ERR("Failed to get iodata..\n"); | ||
248 | return -EINVAL; | ||
249 | } | ||
250 | |||
251 | temp->u_id = uid; | ||
252 | temp->cmd = cmd; | ||
253 | |||
254 | rc = chd_dec_proc_user_data(adp, temp, ua, 0); | ||
255 | if (!rc) { | ||
256 | sts = func(&adp->cmds, temp); | ||
257 | if (sts == BC_STS_PENDING) | ||
258 | sts = BC_STS_NOT_IMPL; | ||
259 | temp->udata.RetSts = sts; | ||
260 | rc = chd_dec_proc_user_data(adp, temp, ua, 1); | ||
261 | } | ||
262 | |||
263 | if (temp) { | ||
264 | chd_dec_free_iodata(adp, temp, 0); | ||
265 | temp = NULL; | ||
266 | } | ||
267 | |||
268 | return rc; | ||
269 | } | ||
270 | |||
271 | /* ========================= API interfaces =================================*/ | ||
272 | static int chd_dec_ioctl(struct inode *in, struct file *fd, | ||
273 | unsigned int cmd, unsigned long ua) | ||
274 | { | ||
275 | struct crystalhd_adp *adp = chd_get_adp(); | ||
276 | crystalhd_cmd_proc cproc; | ||
277 | struct crystalhd_user *uc; | ||
278 | |||
279 | if (!adp || !fd) { | ||
280 | BCMLOG_ERR("Invalid adp\n"); | ||
281 | return -EINVAL; | ||
282 | } | ||
283 | |||
284 | uc = (struct crystalhd_user *)fd->private_data; | ||
285 | if (!uc) { | ||
286 | BCMLOG_ERR("Failed to get uc\n"); | ||
287 | return -ENODATA; | ||
288 | } | ||
289 | |||
290 | cproc = crystalhd_get_cmd_proc(&adp->cmds, cmd, uc); | ||
291 | if (!cproc) { | ||
292 | BCMLOG_ERR("Unhandled command: %d\n", cmd); | ||
293 | return -EINVAL; | ||
294 | } | ||
295 | |||
296 | return chd_dec_api_cmd(adp, ua, uc->uid, cmd, cproc); | ||
297 | } | ||
298 | |||
299 | static int chd_dec_open(struct inode *in, struct file *fd) | ||
300 | { | ||
301 | struct crystalhd_adp *adp = chd_get_adp(); | ||
302 | int rc = 0; | ||
303 | BC_STATUS sts = BC_STS_SUCCESS; | ||
304 | struct crystalhd_user *uc = NULL; | ||
305 | |||
306 | BCMLOG_ENTER; | ||
307 | if (!adp) { | ||
308 | BCMLOG_ERR("Invalid adp\n"); | ||
309 | return -EINVAL; | ||
310 | } | ||
311 | |||
312 | if (adp->cfg_users >= BC_LINK_MAX_OPENS) { | ||
313 | BCMLOG(BCMLOG_INFO, "Already in use.%d\n", adp->cfg_users); | ||
314 | return -EBUSY; | ||
315 | } | ||
316 | |||
317 | sts = crystalhd_user_open(&adp->cmds, &uc); | ||
318 | if (sts != BC_STS_SUCCESS) { | ||
319 | BCMLOG_ERR("cmd_user_open - %d \n", sts); | ||
320 | rc = -EBUSY; | ||
321 | } | ||
322 | |||
323 | adp->cfg_users++; | ||
324 | |||
325 | fd->private_data = uc; | ||
326 | |||
327 | return rc; | ||
328 | } | ||
329 | |||
330 | static int chd_dec_close(struct inode *in, struct file *fd) | ||
331 | { | ||
332 | struct crystalhd_adp *adp = chd_get_adp(); | ||
333 | struct crystalhd_user *uc; | ||
334 | |||
335 | BCMLOG_ENTER; | ||
336 | if (!adp) { | ||
337 | BCMLOG_ERR("Invalid adp \n"); | ||
338 | return -EINVAL; | ||
339 | } | ||
340 | |||
341 | uc = (struct crystalhd_user *)fd->private_data; | ||
342 | if (!uc) { | ||
343 | BCMLOG_ERR("Failed to get uc\n"); | ||
344 | return -ENODATA; | ||
345 | } | ||
346 | |||
347 | crystalhd_user_close(&adp->cmds, uc); | ||
348 | |||
349 | adp->cfg_users--; | ||
350 | |||
351 | return 0; | ||
352 | } | ||
353 | |||
354 | static const struct file_operations chd_dec_fops = { | ||
355 | .owner = THIS_MODULE, | ||
356 | .ioctl = chd_dec_ioctl, | ||
357 | .open = chd_dec_open, | ||
358 | .release = chd_dec_close, | ||
359 | }; | ||
360 | |||
361 | static int chd_dec_init_chdev(struct crystalhd_adp *adp) | ||
362 | { | ||
363 | crystalhd_ioctl_data *temp; | ||
364 | struct device *dev; | ||
365 | int rc = -ENODEV, i = 0; | ||
366 | |||
367 | if (!adp) | ||
368 | goto fail; | ||
369 | |||
370 | adp->chd_dec_major = register_chrdev(0, CRYSTALHD_API_NAME, | ||
371 | &chd_dec_fops); | ||
372 | if (adp->chd_dec_major < 0) { | ||
373 | BCMLOG_ERR("Failed to create config dev\n"); | ||
374 | rc = adp->chd_dec_major; | ||
375 | goto fail; | ||
376 | } | ||
377 | |||
378 | /* register crystalhd class */ | ||
379 | crystalhd_class = class_create(THIS_MODULE, "crystalhd"); | ||
380 | if (IS_ERR(crystalhd_class)) { | ||
381 | BCMLOG_ERR("failed to create class\n"); | ||
382 | goto fail; | ||
383 | } | ||
384 | |||
385 | dev = device_create(crystalhd_class, NULL, MKDEV(adp->chd_dec_major, 0), | ||
386 | NULL, "crystalhd"); | ||
387 | if (!dev) { | ||
388 | BCMLOG_ERR("failed to create device\n"); | ||
389 | goto device_create_fail; | ||
390 | } | ||
391 | |||
392 | rc = crystalhd_create_elem_pool(adp, BC_LINK_ELEM_POOL_SZ); | ||
393 | if (rc) { | ||
394 | BCMLOG_ERR("failed to create device\n"); | ||
395 | goto elem_pool_fail; | ||
396 | } | ||
397 | |||
398 | /* Allocate general purpose ioctl pool. */ | ||
399 | for (i = 0; i < CHD_IODATA_POOL_SZ; i++) { | ||
400 | /* FIXME: jarod: why atomic? */ | ||
401 | temp = kzalloc(sizeof(crystalhd_ioctl_data), GFP_ATOMIC); | ||
402 | if (!temp) { | ||
403 | BCMLOG_ERR("ioctl data pool kzalloc failed\n"); | ||
404 | rc = -ENOMEM; | ||
405 | goto kzalloc_fail; | ||
406 | } | ||
407 | /* Add to global pool.. */ | ||
408 | chd_dec_free_iodata(adp, temp, 0); | ||
409 | } | ||
410 | |||
411 | return 0; | ||
412 | |||
413 | kzalloc_fail: | ||
414 | crystalhd_delete_elem_pool(adp); | ||
415 | elem_pool_fail: | ||
416 | device_destroy(crystalhd_class, MKDEV(adp->chd_dec_major, 0)); | ||
417 | device_create_fail: | ||
418 | class_destroy(crystalhd_class); | ||
419 | fail: | ||
420 | return rc; | ||
421 | } | ||
422 | |||
423 | static void chd_dec_release_chdev(struct crystalhd_adp *adp) | ||
424 | { | ||
425 | crystalhd_ioctl_data *temp = NULL; | ||
426 | if (!adp) | ||
427 | return; | ||
428 | |||
429 | if (adp->chd_dec_major > 0) { | ||
430 | /* unregister crystalhd class */ | ||
431 | device_destroy(crystalhd_class, MKDEV(adp->chd_dec_major, 0)); | ||
432 | unregister_chrdev(adp->chd_dec_major, CRYSTALHD_API_NAME); | ||
433 | BCMLOG(BCMLOG_INFO, "released api device - %d\n", | ||
434 | adp->chd_dec_major); | ||
435 | class_destroy(crystalhd_class); | ||
436 | } | ||
437 | adp->chd_dec_major = 0; | ||
438 | |||
439 | /* Clear iodata pool.. */ | ||
440 | do { | ||
441 | temp = chd_dec_alloc_iodata(adp, 0); | ||
442 | if (temp) | ||
443 | kfree(temp); | ||
444 | } while (temp); | ||
445 | |||
446 | crystalhd_delete_elem_pool(adp); | ||
447 | } | ||
448 | |||
449 | static int chd_pci_reserve_mem(struct crystalhd_adp *pinfo) | ||
450 | { | ||
451 | int rc; | ||
452 | unsigned long bar2 = pci_resource_start(pinfo->pdev, 2); | ||
453 | uint32_t mem_len = pci_resource_len(pinfo->pdev, 2); | ||
454 | unsigned long bar0 = pci_resource_start(pinfo->pdev, 0); | ||
455 | uint32_t i2o_len = pci_resource_len(pinfo->pdev, 0); | ||
456 | |||
457 | BCMLOG(BCMLOG_SSTEP, "bar2:0x%lx-0x%08x bar0:0x%lx-0x%08x\n", | ||
458 | bar2, mem_len, bar0, i2o_len); | ||
459 | |||
460 | rc = check_mem_region(bar2, mem_len); | ||
461 | if (rc) { | ||
462 | BCMLOG_ERR("No valid mem region...\n"); | ||
463 | return -ENOMEM; | ||
464 | } | ||
465 | |||
466 | pinfo->addr = ioremap_nocache(bar2, mem_len); | ||
467 | if (!pinfo->addr) { | ||
468 | BCMLOG_ERR("Failed to remap mem region...\n"); | ||
469 | return -ENOMEM; | ||
470 | } | ||
471 | |||
472 | pinfo->pci_mem_start = bar2; | ||
473 | pinfo->pci_mem_len = mem_len; | ||
474 | |||
475 | rc = check_mem_region(bar0, i2o_len); | ||
476 | if (rc) { | ||
477 | BCMLOG_ERR("No valid mem region...\n"); | ||
478 | return -ENOMEM; | ||
479 | } | ||
480 | |||
481 | pinfo->i2o_addr = ioremap_nocache(bar0, i2o_len); | ||
482 | if (!pinfo->i2o_addr) { | ||
483 | BCMLOG_ERR("Failed to remap mem region...\n"); | ||
484 | return -ENOMEM; | ||
485 | } | ||
486 | |||
487 | pinfo->pci_i2o_start = bar0; | ||
488 | pinfo->pci_i2o_len = i2o_len; | ||
489 | |||
490 | rc = pci_request_regions(pinfo->pdev, pinfo->name); | ||
491 | if (rc < 0) { | ||
492 | BCMLOG_ERR("Region request failed: %d\n", rc); | ||
493 | return rc; | ||
494 | } | ||
495 | |||
496 | BCMLOG(BCMLOG_SSTEP, "Mapped addr:0x%08lx i2o_addr:0x%08lx\n", | ||
497 | (unsigned long)pinfo->addr, (unsigned long)pinfo->i2o_addr); | ||
498 | |||
499 | return 0; | ||
500 | } | ||
501 | |||
502 | static void chd_pci_release_mem(struct crystalhd_adp *pinfo) | ||
503 | { | ||
504 | if (!pinfo) | ||
505 | return; | ||
506 | |||
507 | if (pinfo->addr) | ||
508 | iounmap(pinfo->addr); | ||
509 | |||
510 | if (pinfo->i2o_addr) | ||
511 | iounmap(pinfo->i2o_addr); | ||
512 | |||
513 | pci_release_regions(pinfo->pdev); | ||
514 | } | ||
515 | |||
516 | |||
517 | static void chd_dec_pci_remove(struct pci_dev *pdev) | ||
518 | { | ||
519 | struct crystalhd_adp *pinfo; | ||
520 | BC_STATUS sts = BC_STS_SUCCESS; | ||
521 | |||
522 | BCMLOG_ENTER; | ||
523 | |||
524 | pinfo = (struct crystalhd_adp *) pci_get_drvdata(pdev); | ||
525 | if (!pinfo) { | ||
526 | BCMLOG_ERR("could not get adp\n"); | ||
527 | return; | ||
528 | } | ||
529 | |||
530 | sts = crystalhd_delete_cmd_context(&pinfo->cmds); | ||
531 | if (sts != BC_STS_SUCCESS) | ||
532 | BCMLOG_ERR("cmd delete :%d \n", sts); | ||
533 | |||
534 | chd_dec_release_chdev(pinfo); | ||
535 | |||
536 | chd_dec_disable_int(pinfo); | ||
537 | |||
538 | chd_pci_release_mem(pinfo); | ||
539 | pci_disable_device(pinfo->pdev); | ||
540 | |||
541 | kfree(pinfo); | ||
542 | g_adp_info = NULL; | ||
543 | } | ||
544 | |||
545 | static int chd_dec_pci_probe(struct pci_dev *pdev, | ||
546 | const struct pci_device_id *entry) | ||
547 | { | ||
548 | struct crystalhd_adp *pinfo; | ||
549 | int rc; | ||
550 | BC_STATUS sts = BC_STS_SUCCESS; | ||
551 | |||
552 | BCMLOG(BCMLOG_DBG, "PCI_INFO: Vendor:0x%04x Device:0x%04x " | ||
553 | "s_vendor:0x%04x s_device: 0x%04x\n", | ||
554 | pdev->vendor, pdev->device, pdev->subsystem_vendor, | ||
555 | pdev->subsystem_device); | ||
556 | |||
557 | /* FIXME: jarod: why atomic? */ | ||
558 | pinfo = kzalloc(sizeof(struct crystalhd_adp), GFP_ATOMIC); | ||
559 | if (!pinfo) { | ||
560 | BCMLOG_ERR("Failed to allocate memory\n"); | ||
561 | return -ENOMEM; | ||
562 | } | ||
563 | |||
564 | pinfo->pdev = pdev; | ||
565 | |||
566 | rc = pci_enable_device(pdev); | ||
567 | if (rc) { | ||
568 | BCMLOG_ERR("Failed to enable PCI device\n"); | ||
569 | return rc; | ||
570 | } | ||
571 | |||
572 | snprintf(pinfo->name, 31, "crystalhd_pci_e:%d:%d:%d", | ||
573 | pdev->bus->number, PCI_SLOT(pdev->devfn), | ||
574 | PCI_FUNC(pdev->devfn)); | ||
575 | |||
576 | rc = chd_pci_reserve_mem(pinfo); | ||
577 | if (rc) { | ||
578 | BCMLOG_ERR("Failed to setup memory regions.\n"); | ||
579 | return -ENOMEM; | ||
580 | } | ||
581 | |||
582 | pinfo->present = 1; | ||
583 | pinfo->drv_data = entry->driver_data; | ||
584 | |||
585 | /* Setup adapter level lock.. */ | ||
586 | spin_lock_init(&pinfo->lock); | ||
587 | |||
588 | /* setup api stuff.. */ | ||
589 | chd_dec_init_chdev(pinfo); | ||
590 | rc = chd_dec_enable_int(pinfo); | ||
591 | if (rc) { | ||
592 | BCMLOG_ERR("_enable_int err:%d \n", rc); | ||
593 | pci_disable_device(pdev); | ||
594 | return -ENODEV; | ||
595 | } | ||
596 | |||
597 | /* Set dma mask... */ | ||
598 | if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(64))) { | ||
599 | pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64)); | ||
600 | pinfo->dmabits = 64; | ||
601 | } else if (!pci_set_dma_mask(pdev, DMA_BIT_MASK(32))) { | ||
602 | pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32)); | ||
603 | pinfo->dmabits = 32; | ||
604 | } else { | ||
605 | BCMLOG_ERR("Unabled to setup DMA %d\n", rc); | ||
606 | pci_disable_device(pdev); | ||
607 | return -ENODEV; | ||
608 | } | ||
609 | |||
610 | sts = crystalhd_setup_cmd_context(&pinfo->cmds, pinfo); | ||
611 | if (sts != BC_STS_SUCCESS) { | ||
612 | BCMLOG_ERR("cmd setup :%d \n", sts); | ||
613 | pci_disable_device(pdev); | ||
614 | return -ENODEV; | ||
615 | } | ||
616 | |||
617 | pci_set_master(pdev); | ||
618 | |||
619 | pci_set_drvdata(pdev, pinfo); | ||
620 | |||
621 | g_adp_info = pinfo; | ||
622 | |||
623 | return 0; | ||
624 | |||
625 | } | ||
626 | |||
627 | #ifdef CONFIG_PM | ||
628 | int chd_dec_pci_suspend(struct pci_dev *pdev, pm_message_t state) | ||
629 | { | ||
630 | struct crystalhd_adp *adp; | ||
631 | crystalhd_ioctl_data *temp; | ||
632 | BC_STATUS sts = BC_STS_SUCCESS; | ||
633 | |||
634 | adp = (struct crystalhd_adp *)pci_get_drvdata(pdev); | ||
635 | if (!adp) { | ||
636 | BCMLOG_ERR("could not get adp\n"); | ||
637 | return -ENODEV; | ||
638 | } | ||
639 | |||
640 | temp = chd_dec_alloc_iodata(adp, false); | ||
641 | if (!temp) { | ||
642 | BCMLOG_ERR("could not get ioctl data\n"); | ||
643 | return -ENODEV; | ||
644 | } | ||
645 | |||
646 | sts = crystalhd_suspend(&adp->cmds, temp); | ||
647 | if (sts != BC_STS_SUCCESS) { | ||
648 | BCMLOG_ERR("BCM70012 Suspend %d\n", sts); | ||
649 | return -ENODEV; | ||
650 | } | ||
651 | |||
652 | chd_dec_free_iodata(adp, temp, false); | ||
653 | chd_dec_disable_int(adp); | ||
654 | pci_save_state(pdev); | ||
655 | |||
656 | /* Disable IO/bus master/irq router */ | ||
657 | pci_disable_device(pdev); | ||
658 | pci_set_power_state(pdev, pci_choose_state(pdev, state)); | ||
659 | return 0; | ||
660 | } | ||
661 | |||
662 | int chd_dec_pci_resume(struct pci_dev *pdev) | ||
663 | { | ||
664 | struct crystalhd_adp *adp; | ||
665 | BC_STATUS sts = BC_STS_SUCCESS; | ||
666 | int rc; | ||
667 | |||
668 | adp = (struct crystalhd_adp *)pci_get_drvdata(pdev); | ||
669 | if (!adp) { | ||
670 | BCMLOG_ERR("could not get adp\n"); | ||
671 | return -ENODEV; | ||
672 | } | ||
673 | |||
674 | pci_set_power_state(pdev, PCI_D0); | ||
675 | pci_restore_state(pdev); | ||
676 | |||
677 | /* device's irq possibly is changed, driver should take care */ | ||
678 | if (pci_enable_device(pdev)) { | ||
679 | BCMLOG_ERR("Failed to enable PCI device\n"); | ||
680 | return 1; | ||
681 | } | ||
682 | |||
683 | pci_set_master(pdev); | ||
684 | |||
685 | rc = chd_dec_enable_int(adp); | ||
686 | if (rc) { | ||
687 | BCMLOG_ERR("_enable_int err:%d \n", rc); | ||
688 | pci_disable_device(pdev); | ||
689 | return -ENODEV; | ||
690 | } | ||
691 | |||
692 | sts = crystalhd_resume(&adp->cmds); | ||
693 | if (sts != BC_STS_SUCCESS) { | ||
694 | BCMLOG_ERR("BCM70012 Resume %d\n", sts); | ||
695 | pci_disable_device(pdev); | ||
696 | return -ENODEV; | ||
697 | } | ||
698 | |||
699 | return 0; | ||
700 | } | ||
701 | #endif | ||
702 | |||
703 | static struct pci_device_id chd_dec_pci_id_table[] = { | ||
704 | /* vendor, device, subvendor, subdevice, class, classmask, driver_data */ | ||
705 | { 0x14e4, 0x1612, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 8 }, | ||
706 | { 0, }, | ||
707 | }; | ||
708 | |||
709 | struct pci_driver bc_chd_70012_driver = { | ||
710 | .name = "Broadcom 70012 Decoder", | ||
711 | .probe = chd_dec_pci_probe, | ||
712 | .remove = chd_dec_pci_remove, | ||
713 | .id_table = chd_dec_pci_id_table, | ||
714 | #ifdef CONFIG_PM | ||
715 | .suspend = chd_dec_pci_suspend, | ||
716 | .resume = chd_dec_pci_resume | ||
717 | #endif | ||
718 | }; | ||
719 | MODULE_DEVICE_TABLE(pci, chd_dec_pci_id_table); | ||
720 | |||
721 | |||
722 | void chd_set_log_level(struct crystalhd_adp *adp, char *arg) | ||
723 | { | ||
724 | if ((!arg) || (strlen(arg) < 3)) | ||
725 | g_linklog_level = BCMLOG_ERROR | BCMLOG_DATA; | ||
726 | else if (!strncmp(arg, "sstep", 5)) | ||
727 | g_linklog_level = BCMLOG_INFO | BCMLOG_DATA | BCMLOG_DBG | | ||
728 | BCMLOG_SSTEP | BCMLOG_ERROR; | ||
729 | else if (!strncmp(arg, "info", 4)) | ||
730 | g_linklog_level = BCMLOG_ERROR | BCMLOG_DATA | BCMLOG_INFO; | ||
731 | else if (!strncmp(arg, "debug", 5)) | ||
732 | g_linklog_level = BCMLOG_ERROR | BCMLOG_DATA | BCMLOG_INFO | | ||
733 | BCMLOG_DBG; | ||
734 | else if (!strncmp(arg, "pball", 5)) | ||
735 | g_linklog_level = 0xFFFFFFFF & ~(BCMLOG_SPINLOCK); | ||
736 | else if (!strncmp(arg, "silent", 6)) | ||
737 | g_linklog_level = 0; | ||
738 | else | ||
739 | g_linklog_level = 0; | ||
740 | } | ||
741 | |||
742 | struct crystalhd_adp *chd_get_adp(void) | ||
743 | { | ||
744 | return g_adp_info; | ||
745 | } | ||
746 | |||
747 | int __init chd_dec_module_init(void) | ||
748 | { | ||
749 | int rc; | ||
750 | |||
751 | chd_set_log_level(NULL, "debug"); | ||
752 | BCMLOG(BCMLOG_DATA, "Loading crystalhd %d.%d.%d \n", | ||
753 | crystalhd_kmod_major, crystalhd_kmod_minor, crystalhd_kmod_rev); | ||
754 | |||
755 | rc = pci_register_driver(&bc_chd_70012_driver); | ||
756 | |||
757 | if (rc < 0) | ||
758 | BCMLOG_ERR("Could not find any devices. err:%d \n", rc); | ||
759 | |||
760 | return rc; | ||
761 | } | ||
762 | |||
763 | void __exit chd_dec_module_cleanup(void) | ||
764 | { | ||
765 | BCMLOG(BCMLOG_DATA, "unloading crystalhd %d.%d.%d \n", | ||
766 | crystalhd_kmod_major, crystalhd_kmod_minor, crystalhd_kmod_rev); | ||
767 | |||
768 | pci_unregister_driver(&bc_chd_70012_driver); | ||
769 | } | ||
770 | |||
771 | |||
772 | MODULE_AUTHOR("Naren Sankar <nsankar@broadcom.com>"); | ||
773 | MODULE_AUTHOR("Prasad Bolisetty <prasadb@broadcom.com>"); | ||
774 | MODULE_DESCRIPTION(CRYSTAL_HD_NAME); | ||
775 | MODULE_LICENSE("GPL"); | ||
776 | MODULE_ALIAS("bcm70012"); | ||
777 | |||
778 | module_init(chd_dec_module_init); | ||
779 | module_exit(chd_dec_module_cleanup); | ||
780 | |||
diff --git a/drivers/staging/crystalhd/crystalhd_lnx.h b/drivers/staging/crystalhd/crystalhd_lnx.h new file mode 100644 index 00000000000..d3f9fc43d2d --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_lnx.h | |||
@@ -0,0 +1,95 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_lnx . c | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70012 Linux driver | ||
8 | * | ||
9 | * HISTORY: | ||
10 | * | ||
11 | ********************************************************************** | ||
12 | * This file is part of the crystalhd device driver. | ||
13 | * | ||
14 | * This driver is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation, version 2 of the License. | ||
17 | * | ||
18 | * This driver is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU General Public License for more details. | ||
22 | * | ||
23 | * You should have received a copy of the GNU General Public License | ||
24 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
25 | **********************************************************************/ | ||
26 | |||
27 | #ifndef _CRYSTALHD_LNX_H_ | ||
28 | #define _CRYSTALHD_LNX_H_ | ||
29 | |||
30 | #include <linux/module.h> | ||
31 | #include <linux/kernel.h> | ||
32 | #include <linux/errno.h> | ||
33 | #include <linux/string.h> | ||
34 | #include <linux/mm.h> | ||
35 | #include <linux/tty.h> | ||
36 | #include <linux/slab.h> | ||
37 | #include <linux/delay.h> | ||
38 | #include <linux/fb.h> | ||
39 | #include <linux/pci.h> | ||
40 | #include <linux/init.h> | ||
41 | #include <linux/interrupt.h> | ||
42 | #include <linux/pagemap.h> | ||
43 | |||
44 | #include <asm/io.h> | ||
45 | #include <asm/irq.h> | ||
46 | #include <asm/pgtable.h> | ||
47 | #include <asm/system.h> | ||
48 | #include <asm/uaccess.h> | ||
49 | |||
50 | #include "crystalhd_cmds.h" | ||
51 | |||
52 | #define CRYSTAL_HD_NAME "Broadcom Crystal HD Decoder (BCM70012) Driver" | ||
53 | |||
54 | |||
55 | /* OS specific PCI information structure and adapter information. */ | ||
56 | struct crystalhd_adp { | ||
57 | /* Hardware borad/PCI specifics */ | ||
58 | char name[32]; | ||
59 | struct pci_dev *pdev; | ||
60 | |||
61 | unsigned long pci_mem_start; | ||
62 | uint32_t pci_mem_len; | ||
63 | void *addr; | ||
64 | |||
65 | unsigned long pci_i2o_start; | ||
66 | uint32_t pci_i2o_len; | ||
67 | void *i2o_addr; | ||
68 | |||
69 | unsigned int drv_data; | ||
70 | unsigned int dmabits; /* 32 | 64 */ | ||
71 | unsigned int registered; | ||
72 | unsigned int present; | ||
73 | unsigned int msi; | ||
74 | |||
75 | spinlock_t lock; | ||
76 | |||
77 | /* API Related */ | ||
78 | unsigned int chd_dec_major; | ||
79 | unsigned int cfg_users; | ||
80 | |||
81 | crystalhd_ioctl_data *idata_free_head; /* ioctl data pool */ | ||
82 | crystalhd_elem_t *elem_pool_head; /* Queue element pool */ | ||
83 | |||
84 | struct crystalhd_cmd cmds; | ||
85 | |||
86 | crystalhd_dio_req *ua_map_free_head; | ||
87 | struct pci_pool *fill_byte_pool; | ||
88 | }; | ||
89 | |||
90 | |||
91 | struct crystalhd_adp *chd_get_adp(void); | ||
92 | void chd_set_log_level(struct crystalhd_adp *adp, char *arg); | ||
93 | |||
94 | #endif | ||
95 | |||
diff --git a/drivers/staging/crystalhd/crystalhd_misc.c b/drivers/staging/crystalhd/crystalhd_misc.c new file mode 100644 index 00000000000..32e632c2ab3 --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_misc.c | |||
@@ -0,0 +1,1029 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_misc . c | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70012 Linux driver misc routines. | ||
8 | * | ||
9 | * HISTORY: | ||
10 | * | ||
11 | ********************************************************************** | ||
12 | * This file is part of the crystalhd device driver. | ||
13 | * | ||
14 | * This driver is free software; you can redistribute it and/or modify | ||
15 | * it under the terms of the GNU General Public License as published by | ||
16 | * the Free Software Foundation, version 2 of the License. | ||
17 | * | ||
18 | * This driver is distributed in the hope that it will be useful, | ||
19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
21 | * GNU General Public License for more details. | ||
22 | * | ||
23 | * You should have received a copy of the GNU General Public License | ||
24 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
25 | **********************************************************************/ | ||
26 | |||
27 | #include "crystalhd_misc.h" | ||
28 | #include "crystalhd_lnx.h" | ||
29 | |||
30 | uint32_t g_linklog_level; | ||
31 | |||
32 | static inline uint32_t crystalhd_dram_rd(struct crystalhd_adp *adp, uint32_t mem_off) | ||
33 | { | ||
34 | crystalhd_reg_wr(adp, DCI_DRAM_BASE_ADDR, (mem_off >> 19)); | ||
35 | return bc_dec_reg_rd(adp, (0x00380000 | (mem_off & 0x0007FFFF))); | ||
36 | } | ||
37 | |||
38 | static inline void crystalhd_dram_wr(struct crystalhd_adp *adp, uint32_t mem_off, uint32_t val) | ||
39 | { | ||
40 | crystalhd_reg_wr(adp, DCI_DRAM_BASE_ADDR, (mem_off >> 19)); | ||
41 | bc_dec_reg_wr(adp, (0x00380000 | (mem_off & 0x0007FFFF)), val); | ||
42 | } | ||
43 | |||
44 | static inline BC_STATUS bc_chk_dram_range(struct crystalhd_adp *adp, uint32_t start_off, uint32_t cnt) | ||
45 | { | ||
46 | return BC_STS_SUCCESS; | ||
47 | } | ||
48 | |||
49 | static crystalhd_dio_req *crystalhd_alloc_dio(struct crystalhd_adp *adp) | ||
50 | { | ||
51 | unsigned long flags = 0; | ||
52 | crystalhd_dio_req *temp = NULL; | ||
53 | |||
54 | if (!adp) { | ||
55 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
56 | return temp; | ||
57 | } | ||
58 | |||
59 | spin_lock_irqsave(&adp->lock, flags); | ||
60 | temp = adp->ua_map_free_head; | ||
61 | if (temp) | ||
62 | adp->ua_map_free_head = adp->ua_map_free_head->next; | ||
63 | spin_unlock_irqrestore(&adp->lock, flags); | ||
64 | |||
65 | return temp; | ||
66 | } | ||
67 | |||
68 | static void crystalhd_free_dio(struct crystalhd_adp *adp, crystalhd_dio_req *dio) | ||
69 | { | ||
70 | unsigned long flags = 0; | ||
71 | |||
72 | if (!adp || !dio) | ||
73 | return; | ||
74 | spin_lock_irqsave(&adp->lock, flags); | ||
75 | dio->sig = crystalhd_dio_inv; | ||
76 | dio->page_cnt = 0; | ||
77 | dio->fb_size = 0; | ||
78 | memset(&dio->uinfo, 0, sizeof(dio->uinfo)); | ||
79 | dio->next = adp->ua_map_free_head; | ||
80 | adp->ua_map_free_head = dio; | ||
81 | spin_unlock_irqrestore(&adp->lock, flags); | ||
82 | } | ||
83 | |||
84 | static crystalhd_elem_t *crystalhd_alloc_elem(struct crystalhd_adp *adp) | ||
85 | { | ||
86 | unsigned long flags = 0; | ||
87 | crystalhd_elem_t *temp = NULL; | ||
88 | |||
89 | if (!adp) | ||
90 | return temp; | ||
91 | spin_lock_irqsave(&adp->lock, flags); | ||
92 | temp = adp->elem_pool_head; | ||
93 | if (temp) { | ||
94 | adp->elem_pool_head = adp->elem_pool_head->flink; | ||
95 | memset(temp, 0, sizeof(*temp)); | ||
96 | } | ||
97 | spin_unlock_irqrestore(&adp->lock, flags); | ||
98 | |||
99 | return temp; | ||
100 | } | ||
101 | static void crystalhd_free_elem(struct crystalhd_adp *adp, crystalhd_elem_t *elem) | ||
102 | { | ||
103 | unsigned long flags = 0; | ||
104 | |||
105 | if (!adp || !elem) | ||
106 | return; | ||
107 | spin_lock_irqsave(&adp->lock, flags); | ||
108 | elem->flink = adp->elem_pool_head; | ||
109 | adp->elem_pool_head = elem; | ||
110 | spin_unlock_irqrestore(&adp->lock, flags); | ||
111 | } | ||
112 | |||
113 | static inline void crystalhd_set_sg(struct scatterlist *sg, struct page *page, | ||
114 | unsigned int len, unsigned int offset) | ||
115 | { | ||
116 | sg_set_page(sg, page, len, offset); | ||
117 | #ifdef CONFIG_X86_64 | ||
118 | sg->dma_length = len; | ||
119 | #endif | ||
120 | } | ||
121 | |||
122 | static inline void crystalhd_init_sg(struct scatterlist *sg, unsigned int entries) | ||
123 | { | ||
124 | /* http://lkml.org/lkml/2007/11/27/68 */ | ||
125 | sg_init_table(sg, entries); | ||
126 | } | ||
127 | |||
128 | /*========================== Extern ========================================*/ | ||
129 | /** | ||
130 | * bc_dec_reg_rd - Read 7412's device register. | ||
131 | * @adp: Adapter instance | ||
132 | * @reg_off: Register offset. | ||
133 | * | ||
134 | * Return: | ||
135 | * 32bit value read | ||
136 | * | ||
137 | * 7412's device register read routine. This interface use | ||
138 | * 7412's device access range mapped from BAR-2 (4M) of PCIe | ||
139 | * configuration space. | ||
140 | */ | ||
141 | uint32_t bc_dec_reg_rd(struct crystalhd_adp *adp, uint32_t reg_off) | ||
142 | { | ||
143 | if (!adp || (reg_off > adp->pci_mem_len)) { | ||
144 | BCMLOG_ERR("dec_rd_reg_off outof range: 0x%08x\n", reg_off); | ||
145 | return 0; | ||
146 | } | ||
147 | |||
148 | return readl(adp->addr + reg_off); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * bc_dec_reg_wr - Write 7412's device register | ||
153 | * @adp: Adapter instance | ||
154 | * @reg_off: Register offset. | ||
155 | * @val: Dword value to be written. | ||
156 | * | ||
157 | * Return: | ||
158 | * none. | ||
159 | * | ||
160 | * 7412's device register write routine. This interface use | ||
161 | * 7412's device access range mapped from BAR-2 (4M) of PCIe | ||
162 | * configuration space. | ||
163 | */ | ||
164 | void bc_dec_reg_wr(struct crystalhd_adp *adp, uint32_t reg_off, uint32_t val) | ||
165 | { | ||
166 | if (!adp || (reg_off > adp->pci_mem_len)) { | ||
167 | BCMLOG_ERR("dec_wr_reg_off outof range: 0x%08x\n", reg_off); | ||
168 | return; | ||
169 | } | ||
170 | writel(val, adp->addr + reg_off); | ||
171 | udelay(8); | ||
172 | } | ||
173 | |||
174 | /** | ||
175 | * crystalhd_reg_rd - Read Link's device register. | ||
176 | * @adp: Adapter instance | ||
177 | * @reg_off: Register offset. | ||
178 | * | ||
179 | * Return: | ||
180 | * 32bit value read | ||
181 | * | ||
182 | * Link device register read routine. This interface use | ||
183 | * Link's device access range mapped from BAR-1 (64K) of PCIe | ||
184 | * configuration space. | ||
185 | * | ||
186 | */ | ||
187 | uint32_t crystalhd_reg_rd(struct crystalhd_adp *adp, uint32_t reg_off) | ||
188 | { | ||
189 | if (!adp || (reg_off > adp->pci_i2o_len)) { | ||
190 | BCMLOG_ERR("link_rd_reg_off outof range: 0x%08x\n", reg_off); | ||
191 | return 0; | ||
192 | } | ||
193 | return readl(adp->i2o_addr + reg_off); | ||
194 | } | ||
195 | |||
196 | /** | ||
197 | * crystalhd_reg_wr - Write Link's device register | ||
198 | * @adp: Adapter instance | ||
199 | * @reg_off: Register offset. | ||
200 | * @val: Dword value to be written. | ||
201 | * | ||
202 | * Return: | ||
203 | * none. | ||
204 | * | ||
205 | * Link device register write routine. This interface use | ||
206 | * Link's device access range mapped from BAR-1 (64K) of PCIe | ||
207 | * configuration space. | ||
208 | * | ||
209 | */ | ||
210 | void crystalhd_reg_wr(struct crystalhd_adp *adp, uint32_t reg_off, uint32_t val) | ||
211 | { | ||
212 | if (!adp || (reg_off > adp->pci_i2o_len)) { | ||
213 | BCMLOG_ERR("link_wr_reg_off outof range: 0x%08x\n", reg_off); | ||
214 | return; | ||
215 | } | ||
216 | writel(val, adp->i2o_addr + reg_off); | ||
217 | } | ||
218 | |||
219 | /** | ||
220 | * crystalhd_mem_rd - Read data from 7412's DRAM area. | ||
221 | * @adp: Adapter instance | ||
222 | * @start_off: Start offset. | ||
223 | * @dw_cnt: Count in dwords. | ||
224 | * @rd_buff: Buffer to copy the data from dram. | ||
225 | * | ||
226 | * Return: | ||
227 | * Status. | ||
228 | * | ||
229 | * 7412's Dram read routine. | ||
230 | */ | ||
231 | BC_STATUS crystalhd_mem_rd(struct crystalhd_adp *adp, uint32_t start_off, | ||
232 | uint32_t dw_cnt, uint32_t *rd_buff) | ||
233 | { | ||
234 | uint32_t ix = 0; | ||
235 | |||
236 | if (!adp || !rd_buff || | ||
237 | (bc_chk_dram_range(adp, start_off, dw_cnt) != BC_STS_SUCCESS)) { | ||
238 | BCMLOG_ERR("Invalid arg \n"); | ||
239 | return BC_STS_INV_ARG; | ||
240 | } | ||
241 | for (ix = 0; ix < dw_cnt; ix++) | ||
242 | rd_buff[ix] = crystalhd_dram_rd(adp, (start_off + (ix * 4))); | ||
243 | |||
244 | return BC_STS_SUCCESS; | ||
245 | } | ||
246 | |||
247 | /** | ||
248 | * crystalhd_mem_wr - Write data to 7412's DRAM area. | ||
249 | * @adp: Adapter instance | ||
250 | * @start_off: Start offset. | ||
251 | * @dw_cnt: Count in dwords. | ||
252 | * @wr_buff: Data Buffer to be written. | ||
253 | * | ||
254 | * Return: | ||
255 | * Status. | ||
256 | * | ||
257 | * 7412's Dram write routine. | ||
258 | */ | ||
259 | BC_STATUS crystalhd_mem_wr(struct crystalhd_adp *adp, uint32_t start_off, | ||
260 | uint32_t dw_cnt, uint32_t *wr_buff) | ||
261 | { | ||
262 | uint32_t ix = 0; | ||
263 | |||
264 | if (!adp || !wr_buff || | ||
265 | (bc_chk_dram_range(adp, start_off, dw_cnt) != BC_STS_SUCCESS)) { | ||
266 | BCMLOG_ERR("Invalid arg \n"); | ||
267 | return BC_STS_INV_ARG; | ||
268 | } | ||
269 | |||
270 | for (ix = 0; ix < dw_cnt; ix++) | ||
271 | crystalhd_dram_wr(adp, (start_off + (ix * 4)), wr_buff[ix]); | ||
272 | |||
273 | return BC_STS_SUCCESS; | ||
274 | } | ||
275 | /** | ||
276 | * crystalhd_pci_cfg_rd - PCIe config read | ||
277 | * @adp: Adapter instance | ||
278 | * @off: PCI config space offset. | ||
279 | * @len: Size -- Byte, Word & dword. | ||
280 | * @val: Value read | ||
281 | * | ||
282 | * Return: | ||
283 | * Status. | ||
284 | * | ||
285 | * Get value from Link's PCIe config space. | ||
286 | */ | ||
287 | BC_STATUS crystalhd_pci_cfg_rd(struct crystalhd_adp *adp, uint32_t off, | ||
288 | uint32_t len, uint32_t *val) | ||
289 | { | ||
290 | BC_STATUS sts = BC_STS_SUCCESS; | ||
291 | int rc = 0; | ||
292 | |||
293 | if (!adp || !val) { | ||
294 | BCMLOG_ERR("Invalid arg \n"); | ||
295 | return BC_STS_INV_ARG; | ||
296 | } | ||
297 | |||
298 | switch (len) { | ||
299 | case 1: | ||
300 | rc = pci_read_config_byte(adp->pdev, off, (u8 *)val); | ||
301 | break; | ||
302 | case 2: | ||
303 | rc = pci_read_config_word(adp->pdev, off, (u16 *)val); | ||
304 | break; | ||
305 | case 4: | ||
306 | rc = pci_read_config_dword(adp->pdev, off, (u32 *)val); | ||
307 | break; | ||
308 | default: | ||
309 | rc = -EINVAL; | ||
310 | sts = BC_STS_INV_ARG; | ||
311 | BCMLOG_ERR("Invalid len:%d\n", len); | ||
312 | }; | ||
313 | |||
314 | if (rc && (sts == BC_STS_SUCCESS)) | ||
315 | sts = BC_STS_ERROR; | ||
316 | |||
317 | return sts; | ||
318 | } | ||
319 | |||
320 | /** | ||
321 | * crystalhd_pci_cfg_wr - PCIe config write | ||
322 | * @adp: Adapter instance | ||
323 | * @off: PCI config space offset. | ||
324 | * @len: Size -- Byte, Word & dword. | ||
325 | * @val: Value to be written | ||
326 | * | ||
327 | * Return: | ||
328 | * Status. | ||
329 | * | ||
330 | * Set value to Link's PCIe config space. | ||
331 | */ | ||
332 | BC_STATUS crystalhd_pci_cfg_wr(struct crystalhd_adp *adp, uint32_t off, | ||
333 | uint32_t len, uint32_t val) | ||
334 | { | ||
335 | BC_STATUS sts = BC_STS_SUCCESS; | ||
336 | int rc = 0; | ||
337 | |||
338 | if (!adp || !val) { | ||
339 | BCMLOG_ERR("Invalid arg \n"); | ||
340 | return BC_STS_INV_ARG; | ||
341 | } | ||
342 | |||
343 | switch (len) { | ||
344 | case 1: | ||
345 | rc = pci_write_config_byte(adp->pdev, off, (u8)val); | ||
346 | break; | ||
347 | case 2: | ||
348 | rc = pci_write_config_word(adp->pdev, off, (u16)val); | ||
349 | break; | ||
350 | case 4: | ||
351 | rc = pci_write_config_dword(adp->pdev, off, val); | ||
352 | break; | ||
353 | default: | ||
354 | rc = -EINVAL; | ||
355 | sts = BC_STS_INV_ARG; | ||
356 | BCMLOG_ERR("Invalid len:%d\n", len); | ||
357 | }; | ||
358 | |||
359 | if (rc && (sts == BC_STS_SUCCESS)) | ||
360 | sts = BC_STS_ERROR; | ||
361 | |||
362 | return sts; | ||
363 | } | ||
364 | |||
365 | /** | ||
366 | * bc_kern_dma_alloc - Allocate memory for Dma rings | ||
367 | * @adp: Adapter instance | ||
368 | * @sz: Size of the memory to allocate. | ||
369 | * @phy_addr: Physical address of the memory allocated. | ||
370 | * Typedef to system's dma_addr_t (u64) | ||
371 | * | ||
372 | * Return: | ||
373 | * Pointer to allocated memory.. | ||
374 | * | ||
375 | * Wrapper to Linux kernel interface. | ||
376 | * | ||
377 | */ | ||
378 | void *bc_kern_dma_alloc(struct crystalhd_adp *adp, uint32_t sz, | ||
379 | dma_addr_t *phy_addr) | ||
380 | { | ||
381 | void *temp = NULL; | ||
382 | |||
383 | if (!adp || !sz || !phy_addr) { | ||
384 | BCMLOG_ERR("Invalide Arg..\n"); | ||
385 | return temp; | ||
386 | } | ||
387 | |||
388 | temp = pci_alloc_consistent(adp->pdev, sz, phy_addr); | ||
389 | if (temp) | ||
390 | memset(temp, 0, sz); | ||
391 | |||
392 | return temp; | ||
393 | } | ||
394 | |||
395 | /** | ||
396 | * bc_kern_dma_free - Release Dma ring memory. | ||
397 | * @adp: Adapter instance | ||
398 | * @sz: Size of the memory to allocate. | ||
399 | * @ka: Kernel virtual address returned during _dio_alloc() | ||
400 | * @phy_addr: Physical address of the memory allocated. | ||
401 | * Typedef to system's dma_addr_t (u64) | ||
402 | * | ||
403 | * Return: | ||
404 | * none. | ||
405 | */ | ||
406 | void bc_kern_dma_free(struct crystalhd_adp *adp, uint32_t sz, void *ka, | ||
407 | dma_addr_t phy_addr) | ||
408 | { | ||
409 | if (!adp || !ka || !sz || !phy_addr) { | ||
410 | BCMLOG_ERR("Invalide Arg..\n"); | ||
411 | return; | ||
412 | } | ||
413 | |||
414 | pci_free_consistent(adp->pdev, sz, ka, phy_addr); | ||
415 | } | ||
416 | |||
417 | /** | ||
418 | * crystalhd_create_dioq - Create Generic DIO queue | ||
419 | * @adp: Adapter instance | ||
420 | * @dioq_hnd: Handle to the dio queue created | ||
421 | * @cb : Optional - Call back To free the element. | ||
422 | * @cbctx: Context to pass to callback. | ||
423 | * | ||
424 | * Return: | ||
425 | * status | ||
426 | * | ||
427 | * Initialize Generic DIO queue to hold any data. Callback | ||
428 | * will be used to free elements while deleting the queue. | ||
429 | */ | ||
430 | BC_STATUS crystalhd_create_dioq(struct crystalhd_adp *adp, | ||
431 | crystalhd_dioq_t **dioq_hnd, | ||
432 | crystalhd_data_free_cb cb, void *cbctx) | ||
433 | { | ||
434 | crystalhd_dioq_t *dioq = NULL; | ||
435 | |||
436 | if (!adp || !dioq_hnd) { | ||
437 | BCMLOG_ERR("Invalid arg!!\n"); | ||
438 | return BC_STS_INV_ARG; | ||
439 | } | ||
440 | |||
441 | dioq = kzalloc(sizeof(*dioq), GFP_KERNEL); | ||
442 | if (!dioq) | ||
443 | return BC_STS_INSUFF_RES; | ||
444 | |||
445 | spin_lock_init(&dioq->lock); | ||
446 | dioq->sig = BC_LINK_DIOQ_SIG; | ||
447 | dioq->head = (crystalhd_elem_t *)&dioq->head; | ||
448 | dioq->tail = (crystalhd_elem_t *)&dioq->head; | ||
449 | crystalhd_create_event(&dioq->event); | ||
450 | dioq->adp = adp; | ||
451 | dioq->data_rel_cb = cb; | ||
452 | dioq->cb_context = cbctx; | ||
453 | *dioq_hnd = dioq; | ||
454 | |||
455 | return BC_STS_SUCCESS; | ||
456 | } | ||
457 | |||
458 | /** | ||
459 | * crystalhd_delete_dioq - Delete Generic DIO queue | ||
460 | * @adp: Adapter instance | ||
461 | * @dioq: DIOQ instance.. | ||
462 | * | ||
463 | * Return: | ||
464 | * None. | ||
465 | * | ||
466 | * Release Generic DIO queue. This function will remove | ||
467 | * all the entries from the Queue and will release data | ||
468 | * by calling the call back provided during creation. | ||
469 | * | ||
470 | */ | ||
471 | void crystalhd_delete_dioq(struct crystalhd_adp *adp, crystalhd_dioq_t *dioq) | ||
472 | { | ||
473 | void *temp; | ||
474 | |||
475 | if (!dioq || (dioq->sig != BC_LINK_DIOQ_SIG)) | ||
476 | return; | ||
477 | |||
478 | do { | ||
479 | temp = crystalhd_dioq_fetch(dioq); | ||
480 | if (temp && dioq->data_rel_cb) | ||
481 | dioq->data_rel_cb(dioq->cb_context, temp); | ||
482 | } while (temp); | ||
483 | dioq->sig = 0; | ||
484 | kfree(dioq); | ||
485 | } | ||
486 | |||
487 | /** | ||
488 | * crystalhd_dioq_add - Add new DIO request element. | ||
489 | * @ioq: DIO queue instance | ||
490 | * @t: DIO request to be added. | ||
491 | * @wake: True - Wake up suspended process. | ||
492 | * @tag: Special tag to assign - For search and get. | ||
493 | * | ||
494 | * Return: | ||
495 | * Status. | ||
496 | * | ||
497 | * Insert new element to Q tail. | ||
498 | */ | ||
499 | BC_STATUS crystalhd_dioq_add(crystalhd_dioq_t *ioq, void *data, | ||
500 | bool wake, uint32_t tag) | ||
501 | { | ||
502 | unsigned long flags = 0; | ||
503 | crystalhd_elem_t *tmp; | ||
504 | |||
505 | if (!ioq || (ioq->sig != BC_LINK_DIOQ_SIG) || !data) { | ||
506 | BCMLOG_ERR("Invalid arg!!\n"); | ||
507 | return BC_STS_INV_ARG; | ||
508 | } | ||
509 | |||
510 | tmp = crystalhd_alloc_elem(ioq->adp); | ||
511 | if (!tmp) { | ||
512 | BCMLOG_ERR("No free elements.\n"); | ||
513 | return BC_STS_INSUFF_RES; | ||
514 | } | ||
515 | |||
516 | tmp->data = data; | ||
517 | tmp->tag = tag; | ||
518 | spin_lock_irqsave(&ioq->lock, flags); | ||
519 | tmp->flink = (crystalhd_elem_t *)&ioq->head; | ||
520 | tmp->blink = ioq->tail; | ||
521 | tmp->flink->blink = tmp; | ||
522 | tmp->blink->flink = tmp; | ||
523 | ioq->count++; | ||
524 | spin_unlock_irqrestore(&ioq->lock, flags); | ||
525 | |||
526 | if (wake) | ||
527 | crystalhd_set_event(&ioq->event); | ||
528 | |||
529 | return BC_STS_SUCCESS; | ||
530 | } | ||
531 | |||
532 | /** | ||
533 | * crystalhd_dioq_fetch - Fetch element from head. | ||
534 | * @ioq: DIO queue instance | ||
535 | * | ||
536 | * Return: | ||
537 | * data element from the head.. | ||
538 | * | ||
539 | * Remove an element from Queue. | ||
540 | */ | ||
541 | void *crystalhd_dioq_fetch(crystalhd_dioq_t *ioq) | ||
542 | { | ||
543 | unsigned long flags = 0; | ||
544 | crystalhd_elem_t *tmp; | ||
545 | crystalhd_elem_t *ret = NULL; | ||
546 | void *data = NULL; | ||
547 | |||
548 | if (!ioq || (ioq->sig != BC_LINK_DIOQ_SIG)) { | ||
549 | BCMLOG_ERR("Invalid arg!!\n"); | ||
550 | return data; | ||
551 | } | ||
552 | |||
553 | spin_lock_irqsave(&ioq->lock, flags); | ||
554 | tmp = ioq->head; | ||
555 | if (tmp != (crystalhd_elem_t *)&ioq->head) { | ||
556 | ret = tmp; | ||
557 | tmp->flink->blink = tmp->blink; | ||
558 | tmp->blink->flink = tmp->flink; | ||
559 | ioq->count--; | ||
560 | } | ||
561 | spin_unlock_irqrestore(&ioq->lock, flags); | ||
562 | if (ret) { | ||
563 | data = ret->data; | ||
564 | crystalhd_free_elem(ioq->adp, ret); | ||
565 | } | ||
566 | |||
567 | return data; | ||
568 | } | ||
569 | /** | ||
570 | * crystalhd_dioq_find_and_fetch - Search the tag and Fetch element | ||
571 | * @ioq: DIO queue instance | ||
572 | * @tag: Tag to search for. | ||
573 | * | ||
574 | * Return: | ||
575 | * element from the head.. | ||
576 | * | ||
577 | * Search TAG and remove the element. | ||
578 | */ | ||
579 | void *crystalhd_dioq_find_and_fetch(crystalhd_dioq_t *ioq, uint32_t tag) | ||
580 | { | ||
581 | unsigned long flags = 0; | ||
582 | crystalhd_elem_t *tmp; | ||
583 | crystalhd_elem_t *ret = NULL; | ||
584 | void *data = NULL; | ||
585 | |||
586 | if (!ioq || (ioq->sig != BC_LINK_DIOQ_SIG)) { | ||
587 | BCMLOG_ERR("Invalid arg!!\n"); | ||
588 | return data; | ||
589 | } | ||
590 | |||
591 | spin_lock_irqsave(&ioq->lock, flags); | ||
592 | tmp = ioq->head; | ||
593 | while (tmp != (crystalhd_elem_t *)&ioq->head) { | ||
594 | if (tmp->tag == tag) { | ||
595 | ret = tmp; | ||
596 | tmp->flink->blink = tmp->blink; | ||
597 | tmp->blink->flink = tmp->flink; | ||
598 | ioq->count--; | ||
599 | break; | ||
600 | } | ||
601 | tmp = tmp->flink; | ||
602 | } | ||
603 | spin_unlock_irqrestore(&ioq->lock, flags); | ||
604 | |||
605 | if (ret) { | ||
606 | data = ret->data; | ||
607 | crystalhd_free_elem(ioq->adp, ret); | ||
608 | } | ||
609 | |||
610 | return data; | ||
611 | } | ||
612 | |||
613 | /** | ||
614 | * crystalhd_dioq_fetch_wait - Fetch element from Head. | ||
615 | * @ioq: DIO queue instance | ||
616 | * @to_secs: Wait timeout in seconds.. | ||
617 | * | ||
618 | * Return: | ||
619 | * element from the head.. | ||
620 | * | ||
621 | * Return element from head if Q is not empty. Wait for new element | ||
622 | * if Q is empty for Timeout seconds. | ||
623 | */ | ||
624 | void *crystalhd_dioq_fetch_wait(crystalhd_dioq_t *ioq, uint32_t to_secs, | ||
625 | uint32_t *sig_pend) | ||
626 | { | ||
627 | unsigned long flags = 0; | ||
628 | int rc = 0, count; | ||
629 | void *tmp = NULL; | ||
630 | |||
631 | if (!ioq || (ioq->sig != BC_LINK_DIOQ_SIG) || !to_secs || !sig_pend) { | ||
632 | BCMLOG_ERR("Invalid arg!!\n"); | ||
633 | return tmp; | ||
634 | } | ||
635 | |||
636 | count = to_secs; | ||
637 | spin_lock_irqsave(&ioq->lock, flags); | ||
638 | while ((ioq->count == 0) && count) { | ||
639 | spin_unlock_irqrestore(&ioq->lock, flags); | ||
640 | |||
641 | crystalhd_wait_on_event(&ioq->event, (ioq->count > 0), 1000, rc, 0); | ||
642 | if (rc == 0) { | ||
643 | goto out; | ||
644 | } else if (rc == -EINTR) { | ||
645 | BCMLOG(BCMLOG_INFO, "Cancelling fetch wait\n"); | ||
646 | *sig_pend = 1; | ||
647 | return tmp; | ||
648 | } | ||
649 | spin_lock_irqsave(&ioq->lock, flags); | ||
650 | count--; | ||
651 | } | ||
652 | spin_unlock_irqrestore(&ioq->lock, flags); | ||
653 | |||
654 | out: | ||
655 | return crystalhd_dioq_fetch(ioq); | ||
656 | } | ||
657 | |||
658 | /** | ||
659 | * crystalhd_map_dio - Map user address for DMA | ||
660 | * @adp: Adapter instance | ||
661 | * @ubuff: User buffer to map. | ||
662 | * @ubuff_sz: User buffer size. | ||
663 | * @uv_offset: UV buffer offset. | ||
664 | * @en_422mode: TRUE:422 FALSE:420 Capture mode. | ||
665 | * @dir_tx: TRUE for Tx (To device from host) | ||
666 | * @dio_hnd: Handle to mapped DIO request. | ||
667 | * | ||
668 | * Return: | ||
669 | * Status. | ||
670 | * | ||
671 | * This routine maps user address and lock pages for DMA. | ||
672 | * | ||
673 | */ | ||
674 | BC_STATUS crystalhd_map_dio(struct crystalhd_adp *adp, void *ubuff, | ||
675 | uint32_t ubuff_sz, uint32_t uv_offset, | ||
676 | bool en_422mode, bool dir_tx, | ||
677 | crystalhd_dio_req **dio_hnd) | ||
678 | { | ||
679 | crystalhd_dio_req *dio; | ||
680 | /* FIXME: jarod: should some of these unsigned longs be uint32_t or uintptr_t? */ | ||
681 | unsigned long start = 0, end = 0, uaddr = 0, count = 0; | ||
682 | unsigned long spsz = 0, uv_start = 0; | ||
683 | int i = 0, rw = 0, res = 0, nr_pages = 0, skip_fb_sg = 0; | ||
684 | |||
685 | if (!adp || !ubuff || !ubuff_sz || !dio_hnd) { | ||
686 | BCMLOG_ERR("Invalid arg \n"); | ||
687 | return BC_STS_INV_ARG; | ||
688 | } | ||
689 | /* Compute pages */ | ||
690 | uaddr = (unsigned long)ubuff; | ||
691 | count = (unsigned long)ubuff_sz; | ||
692 | end = (uaddr + count + PAGE_SIZE - 1) >> PAGE_SHIFT; | ||
693 | start = uaddr >> PAGE_SHIFT; | ||
694 | nr_pages = end - start; | ||
695 | |||
696 | if (!count || ((uaddr + count) < uaddr)) { | ||
697 | BCMLOG_ERR("User addr overflow!!\n"); | ||
698 | return BC_STS_INV_ARG; | ||
699 | } | ||
700 | |||
701 | dio = crystalhd_alloc_dio(adp); | ||
702 | if (!dio) { | ||
703 | BCMLOG_ERR("dio pool empty..\n"); | ||
704 | return BC_STS_INSUFF_RES; | ||
705 | } | ||
706 | |||
707 | if (dir_tx) { | ||
708 | rw = WRITE; | ||
709 | dio->direction = DMA_TO_DEVICE; | ||
710 | } else { | ||
711 | rw = READ; | ||
712 | dio->direction = DMA_FROM_DEVICE; | ||
713 | } | ||
714 | |||
715 | if (nr_pages > dio->max_pages) { | ||
716 | BCMLOG_ERR("max_pages(%d) exceeded(%d)!!\n", | ||
717 | dio->max_pages, nr_pages); | ||
718 | crystalhd_unmap_dio(adp, dio); | ||
719 | return BC_STS_INSUFF_RES; | ||
720 | } | ||
721 | |||
722 | if (uv_offset) { | ||
723 | uv_start = (uaddr + (unsigned long)uv_offset) >> PAGE_SHIFT; | ||
724 | dio->uinfo.uv_sg_ix = uv_start - start; | ||
725 | dio->uinfo.uv_sg_off = ((uaddr + (unsigned long)uv_offset) & ~PAGE_MASK); | ||
726 | } | ||
727 | |||
728 | dio->fb_size = ubuff_sz & 0x03; | ||
729 | if (dio->fb_size) { | ||
730 | res = copy_from_user(dio->fb_va, | ||
731 | (void *)(uaddr + count - dio->fb_size), | ||
732 | dio->fb_size); | ||
733 | if (res) { | ||
734 | BCMLOG_ERR("failed %d to copy %u fill bytes from %p\n", | ||
735 | res, dio->fb_size, | ||
736 | (void *)(uaddr + count-dio->fb_size)); | ||
737 | crystalhd_unmap_dio(adp, dio); | ||
738 | return BC_STS_INSUFF_RES; | ||
739 | } | ||
740 | } | ||
741 | |||
742 | down_read(¤t->mm->mmap_sem); | ||
743 | res = get_user_pages(current, current->mm, uaddr, nr_pages, rw == READ, | ||
744 | 0, dio->pages, NULL); | ||
745 | up_read(¤t->mm->mmap_sem); | ||
746 | |||
747 | /* Save for release..*/ | ||
748 | dio->sig = crystalhd_dio_locked; | ||
749 | if (res < nr_pages) { | ||
750 | BCMLOG_ERR("get pages failed: %d-%d\n", nr_pages, res); | ||
751 | dio->page_cnt = res; | ||
752 | crystalhd_unmap_dio(adp, dio); | ||
753 | return BC_STS_ERROR; | ||
754 | } | ||
755 | |||
756 | dio->page_cnt = nr_pages; | ||
757 | /* Get scatter/gather */ | ||
758 | crystalhd_init_sg(dio->sg, dio->page_cnt); | ||
759 | crystalhd_set_sg(&dio->sg[0], dio->pages[0], 0, uaddr & ~PAGE_MASK); | ||
760 | if (nr_pages > 1) { | ||
761 | dio->sg[0].length = PAGE_SIZE - dio->sg[0].offset; | ||
762 | |||
763 | #ifdef CONFIG_X86_64 | ||
764 | dio->sg[0].dma_length = dio->sg[0].length; | ||
765 | #endif | ||
766 | count -= dio->sg[0].length; | ||
767 | for (i = 1; i < nr_pages; i++) { | ||
768 | if (count < 4) { | ||
769 | spsz = count; | ||
770 | skip_fb_sg = 1; | ||
771 | } else { | ||
772 | spsz = (count < PAGE_SIZE) ? | ||
773 | (count & ~0x03) : PAGE_SIZE; | ||
774 | } | ||
775 | crystalhd_set_sg(&dio->sg[i], dio->pages[i], spsz, 0); | ||
776 | count -= spsz; | ||
777 | } | ||
778 | } else { | ||
779 | if (count < 4) { | ||
780 | dio->sg[0].length = count; | ||
781 | skip_fb_sg = 1; | ||
782 | } else { | ||
783 | dio->sg[0].length = count - dio->fb_size; | ||
784 | } | ||
785 | #ifdef CONFIG_X86_64 | ||
786 | dio->sg[0].dma_length = dio->sg[0].length; | ||
787 | #endif | ||
788 | } | ||
789 | dio->sg_cnt = pci_map_sg(adp->pdev, dio->sg, | ||
790 | dio->page_cnt, dio->direction); | ||
791 | if (dio->sg_cnt <= 0) { | ||
792 | BCMLOG_ERR("sg map %d-%d \n", dio->sg_cnt, dio->page_cnt); | ||
793 | crystalhd_unmap_dio(adp, dio); | ||
794 | return BC_STS_ERROR; | ||
795 | } | ||
796 | if (dio->sg_cnt && skip_fb_sg) | ||
797 | dio->sg_cnt -= 1; | ||
798 | dio->sig = crystalhd_dio_sg_mapped; | ||
799 | /* Fill in User info.. */ | ||
800 | dio->uinfo.xfr_len = ubuff_sz; | ||
801 | dio->uinfo.xfr_buff = ubuff; | ||
802 | dio->uinfo.uv_offset = uv_offset; | ||
803 | dio->uinfo.b422mode = en_422mode; | ||
804 | dio->uinfo.dir_tx = dir_tx; | ||
805 | |||
806 | *dio_hnd = dio; | ||
807 | |||
808 | return BC_STS_SUCCESS; | ||
809 | } | ||
810 | |||
811 | /** | ||
812 | * crystalhd_unmap_sgl - Release mapped resources | ||
813 | * @adp: Adapter instance | ||
814 | * @dio: DIO request instance | ||
815 | * | ||
816 | * Return: | ||
817 | * Status. | ||
818 | * | ||
819 | * This routine is to unmap the user buffer pages. | ||
820 | */ | ||
821 | BC_STATUS crystalhd_unmap_dio(struct crystalhd_adp *adp, crystalhd_dio_req *dio) | ||
822 | { | ||
823 | struct page *page = NULL; | ||
824 | int j = 0; | ||
825 | |||
826 | if (!adp || !dio) { | ||
827 | BCMLOG_ERR("Invalid arg \n"); | ||
828 | return BC_STS_INV_ARG; | ||
829 | } | ||
830 | |||
831 | if ((dio->page_cnt > 0) && (dio->sig != crystalhd_dio_inv)) { | ||
832 | for (j = 0; j < dio->page_cnt; j++) { | ||
833 | page = dio->pages[j]; | ||
834 | if (page) { | ||
835 | if (!PageReserved(page) && | ||
836 | (dio->direction == DMA_FROM_DEVICE)) | ||
837 | SetPageDirty(page); | ||
838 | page_cache_release(page); | ||
839 | } | ||
840 | } | ||
841 | } | ||
842 | if (dio->sig == crystalhd_dio_sg_mapped) | ||
843 | pci_unmap_sg(adp->pdev, dio->sg, dio->page_cnt, dio->direction); | ||
844 | |||
845 | crystalhd_free_dio(adp, dio); | ||
846 | |||
847 | return BC_STS_SUCCESS; | ||
848 | } | ||
849 | |||
850 | /** | ||
851 | * crystalhd_create_dio_pool - Allocate mem pool for DIO management. | ||
852 | * @adp: Adapter instance | ||
853 | * @max_pages: Max pages for size calculation. | ||
854 | * | ||
855 | * Return: | ||
856 | * system error. | ||
857 | * | ||
858 | * This routine creates a memory pool to hold dio context for | ||
859 | * for HW Direct IO operation. | ||
860 | */ | ||
861 | int crystalhd_create_dio_pool(struct crystalhd_adp *adp, uint32_t max_pages) | ||
862 | { | ||
863 | uint32_t asz = 0, i = 0; | ||
864 | uint8_t *temp; | ||
865 | crystalhd_dio_req *dio; | ||
866 | |||
867 | if (!adp || !max_pages) { | ||
868 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
869 | return -EINVAL; | ||
870 | } | ||
871 | |||
872 | /* Get dma memory for fill byte handling..*/ | ||
873 | adp->fill_byte_pool = pci_pool_create("crystalhd_fbyte", | ||
874 | adp->pdev, 8, 8, 0); | ||
875 | if (!adp->fill_byte_pool) { | ||
876 | BCMLOG_ERR("failed to create fill byte pool\n"); | ||
877 | return -ENOMEM; | ||
878 | } | ||
879 | |||
880 | /* Get the max size from user based on 420/422 modes */ | ||
881 | asz = (sizeof(*dio->pages) * max_pages) + | ||
882 | (sizeof(*dio->sg) * max_pages) + sizeof(*dio); | ||
883 | |||
884 | BCMLOG(BCMLOG_DBG, "Initializing Dio pool %d %d %x %p\n", | ||
885 | BC_LINK_SG_POOL_SZ, max_pages, asz, adp->fill_byte_pool); | ||
886 | |||
887 | for (i = 0; i < BC_LINK_SG_POOL_SZ; i++) { | ||
888 | temp = (uint8_t *)kzalloc(asz, GFP_KERNEL); | ||
889 | if ((temp) == NULL) { | ||
890 | BCMLOG_ERR("Failed to alloc %d mem\n", asz); | ||
891 | return -ENOMEM; | ||
892 | } | ||
893 | |||
894 | dio = (crystalhd_dio_req *)temp; | ||
895 | temp += sizeof(*dio); | ||
896 | dio->pages = (struct page **)temp; | ||
897 | temp += (sizeof(*dio->pages) * max_pages); | ||
898 | dio->sg = (struct scatterlist *)temp; | ||
899 | dio->max_pages = max_pages; | ||
900 | dio->fb_va = pci_pool_alloc(adp->fill_byte_pool, GFP_KERNEL, | ||
901 | &dio->fb_pa); | ||
902 | if (!dio->fb_va) { | ||
903 | BCMLOG_ERR("fill byte alloc failed.\n"); | ||
904 | return -ENOMEM; | ||
905 | } | ||
906 | |||
907 | crystalhd_free_dio(adp, dio); | ||
908 | } | ||
909 | |||
910 | return 0; | ||
911 | } | ||
912 | |||
913 | /** | ||
914 | * crystalhd_destroy_dio_pool - Release DIO mem pool. | ||
915 | * @adp: Adapter instance | ||
916 | * | ||
917 | * Return: | ||
918 | * none. | ||
919 | * | ||
920 | * This routine releases dio memory pool during close. | ||
921 | */ | ||
922 | void crystalhd_destroy_dio_pool(struct crystalhd_adp *adp) | ||
923 | { | ||
924 | crystalhd_dio_req *dio; | ||
925 | int count = 0; | ||
926 | |||
927 | if (!adp) { | ||
928 | BCMLOG_ERR("Invalid Arg!!\n"); | ||
929 | return; | ||
930 | } | ||
931 | |||
932 | do { | ||
933 | dio = crystalhd_alloc_dio(adp); | ||
934 | if (dio) { | ||
935 | if (dio->fb_va) | ||
936 | pci_pool_free(adp->fill_byte_pool, | ||
937 | dio->fb_va, dio->fb_pa); | ||
938 | count++; | ||
939 | kfree(dio); | ||
940 | } | ||
941 | } while (dio); | ||
942 | |||
943 | if (adp->fill_byte_pool) { | ||
944 | pci_pool_destroy(adp->fill_byte_pool); | ||
945 | adp->fill_byte_pool = NULL; | ||
946 | } | ||
947 | |||
948 | BCMLOG(BCMLOG_DBG, "Released dio pool %d \n", count); | ||
949 | } | ||
950 | |||
951 | /** | ||
952 | * crystalhd_create_elem_pool - List element pool creation. | ||
953 | * @adp: Adapter instance | ||
954 | * @pool_size: Number of elements in the pool. | ||
955 | * | ||
956 | * Return: | ||
957 | * 0 - success, <0 error | ||
958 | * | ||
959 | * Create general purpose list element pool to hold pending, | ||
960 | * and active requests. | ||
961 | */ | ||
962 | int crystalhd_create_elem_pool(struct crystalhd_adp *adp, uint32_t pool_size) | ||
963 | { | ||
964 | uint32_t i; | ||
965 | crystalhd_elem_t *temp; | ||
966 | |||
967 | if (!adp || !pool_size) | ||
968 | return -EINVAL; | ||
969 | |||
970 | for (i = 0; i < pool_size; i++) { | ||
971 | temp = kzalloc(sizeof(*temp), GFP_KERNEL); | ||
972 | if (!temp) { | ||
973 | BCMLOG_ERR("kalloc failed \n"); | ||
974 | return -ENOMEM; | ||
975 | } | ||
976 | crystalhd_free_elem(adp, temp); | ||
977 | } | ||
978 | BCMLOG(BCMLOG_DBG, "allocated %d elem\n", pool_size); | ||
979 | return 0; | ||
980 | } | ||
981 | |||
982 | /** | ||
983 | * crystalhd_delete_elem_pool - List element pool deletion. | ||
984 | * @adp: Adapter instance | ||
985 | * | ||
986 | * Return: | ||
987 | * none | ||
988 | * | ||
989 | * Delete general purpose list element pool. | ||
990 | */ | ||
991 | void crystalhd_delete_elem_pool(struct crystalhd_adp *adp) | ||
992 | { | ||
993 | crystalhd_elem_t *temp; | ||
994 | int dbg_cnt = 0; | ||
995 | |||
996 | if (!adp) | ||
997 | return; | ||
998 | |||
999 | do { | ||
1000 | temp = crystalhd_alloc_elem(adp); | ||
1001 | if (temp) { | ||
1002 | kfree(temp); | ||
1003 | dbg_cnt++; | ||
1004 | } | ||
1005 | } while (temp); | ||
1006 | |||
1007 | BCMLOG(BCMLOG_DBG, "released %d elem\n", dbg_cnt); | ||
1008 | } | ||
1009 | |||
1010 | /*================ Debug support routines.. ================================*/ | ||
1011 | void crystalhd_show_buffer(uint32_t off, uint8_t *buff, uint32_t dwcount) | ||
1012 | { | ||
1013 | uint32_t i, k = 1; | ||
1014 | |||
1015 | for (i = 0; i < dwcount; i++) { | ||
1016 | if (k == 1) | ||
1017 | BCMLOG(BCMLOG_DATA, "0x%08X : ", off); | ||
1018 | |||
1019 | BCMLOG(BCMLOG_DATA, " 0x%08X ", *((uint32_t *)buff)); | ||
1020 | |||
1021 | buff += sizeof(uint32_t); | ||
1022 | off += sizeof(uint32_t); | ||
1023 | k++; | ||
1024 | if ((i == dwcount - 1) || (k > 4)) { | ||
1025 | BCMLOG(BCMLOG_DATA, "\n"); | ||
1026 | k = 1; | ||
1027 | } | ||
1028 | } | ||
1029 | } | ||
diff --git a/drivers/staging/crystalhd/crystalhd_misc.h b/drivers/staging/crystalhd/crystalhd_misc.h new file mode 100644 index 00000000000..a2aa6ad7fc8 --- /dev/null +++ b/drivers/staging/crystalhd/crystalhd_misc.h | |||
@@ -0,0 +1,229 @@ | |||
1 | /*************************************************************************** | ||
2 | * Copyright (c) 2005-2009, Broadcom Corporation. | ||
3 | * | ||
4 | * Name: crystalhd_misc . h | ||
5 | * | ||
6 | * Description: | ||
7 | * BCM70012 Linux driver general purpose routines. | ||
8 | * Includes reg/mem read and write routines. | ||
9 | * | ||
10 | * HISTORY: | ||
11 | * | ||
12 | ********************************************************************** | ||
13 | * This file is part of the crystalhd device driver. | ||
14 | * | ||
15 | * This driver is free software; you can redistribute it and/or modify | ||
16 | * it under the terms of the GNU General Public License as published by | ||
17 | * the Free Software Foundation, version 2 of the License. | ||
18 | * | ||
19 | * This driver is distributed in the hope that it will be useful, | ||
20 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
21 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
22 | * GNU General Public License for more details. | ||
23 | * | ||
24 | * You should have received a copy of the GNU General Public License | ||
25 | * along with this driver. If not, see <http://www.gnu.org/licenses/>. | ||
26 | **********************************************************************/ | ||
27 | |||
28 | #ifndef _CRYSTALHD_MISC_H_ | ||
29 | #define _CRYSTALHD_MISC_H_ | ||
30 | |||
31 | #include <linux/module.h> | ||
32 | #include <linux/kernel.h> | ||
33 | #include <linux/errno.h> | ||
34 | #include <linux/string.h> | ||
35 | #include <linux/ioctl.h> | ||
36 | #include <linux/dma-mapping.h> | ||
37 | #include <linux/version.h> | ||
38 | #include <linux/sched.h> | ||
39 | #include <asm/system.h> | ||
40 | #include "bc_dts_glob_lnx.h" | ||
41 | |||
42 | /* Global log level variable defined in crystal_misc.c file */ | ||
43 | extern uint32_t g_linklog_level; | ||
44 | |||
45 | /* Global element pool for all Queue management. | ||
46 | * TX: Active = BC_TX_LIST_CNT, Free = BC_TX_LIST_CNT. | ||
47 | * RX: Free = BC_RX_LIST_CNT, Active = 2 | ||
48 | * FW-CMD: 4 | ||
49 | */ | ||
50 | #define BC_LINK_ELEM_POOL_SZ ((BC_TX_LIST_CNT * 2) + BC_RX_LIST_CNT + 2 + 4) | ||
51 | |||
52 | /* Driver's IODATA pool count */ | ||
53 | #define CHD_IODATA_POOL_SZ (BC_IOCTL_DATA_POOL_SIZE * BC_LINK_MAX_OPENS) | ||
54 | |||
55 | /* Scatter Gather memory pool size for Tx and Rx */ | ||
56 | #define BC_LINK_SG_POOL_SZ (BC_TX_LIST_CNT + BC_RX_LIST_CNT) | ||
57 | |||
58 | enum _crystalhd_dio_sig { | ||
59 | crystalhd_dio_inv = 0, | ||
60 | crystalhd_dio_locked, | ||
61 | crystalhd_dio_sg_mapped, | ||
62 | }; | ||
63 | |||
64 | struct crystalhd_dio_user_info { | ||
65 | void *xfr_buff; | ||
66 | uint32_t xfr_len; | ||
67 | uint32_t uv_offset; | ||
68 | bool dir_tx; | ||
69 | |||
70 | uint32_t uv_sg_ix; | ||
71 | uint32_t uv_sg_off; | ||
72 | int comp_sts; | ||
73 | int ev_sts; | ||
74 | uint32_t y_done_sz; | ||
75 | uint32_t uv_done_sz; | ||
76 | uint32_t comp_flags; | ||
77 | bool b422mode; | ||
78 | }; | ||
79 | |||
80 | typedef struct _crystalhd_dio_req { | ||
81 | uint32_t sig; | ||
82 | uint32_t max_pages; | ||
83 | struct page **pages; | ||
84 | struct scatterlist *sg; | ||
85 | int sg_cnt; | ||
86 | int page_cnt; | ||
87 | int direction; | ||
88 | struct crystalhd_dio_user_info uinfo; | ||
89 | void *fb_va; | ||
90 | uint32_t fb_size; | ||
91 | dma_addr_t fb_pa; | ||
92 | struct _crystalhd_dio_req *next; | ||
93 | } crystalhd_dio_req; | ||
94 | |||
95 | #define BC_LINK_DIOQ_SIG (0x09223280) | ||
96 | |||
97 | typedef struct _crystalhd_elem_s { | ||
98 | struct _crystalhd_elem_s *flink; | ||
99 | struct _crystalhd_elem_s *blink; | ||
100 | void *data; | ||
101 | uint32_t tag; | ||
102 | } crystalhd_elem_t; | ||
103 | |||
104 | typedef void (*crystalhd_data_free_cb)(void *context, void *data); | ||
105 | |||
106 | typedef struct _crystalhd_dioq_s { | ||
107 | uint32_t sig; | ||
108 | struct crystalhd_adp *adp; | ||
109 | crystalhd_elem_t *head; | ||
110 | crystalhd_elem_t *tail; | ||
111 | uint32_t count; | ||
112 | spinlock_t lock; | ||
113 | wait_queue_head_t event; | ||
114 | crystalhd_data_free_cb data_rel_cb; | ||
115 | void *cb_context; | ||
116 | } crystalhd_dioq_t; | ||
117 | |||
118 | typedef void (*hw_comp_callback)(crystalhd_dio_req *, | ||
119 | wait_queue_head_t *event, BC_STATUS sts); | ||
120 | |||
121 | /*========= Decoder (7412) register access routines.================= */ | ||
122 | uint32_t bc_dec_reg_rd(struct crystalhd_adp *, uint32_t); | ||
123 | void bc_dec_reg_wr(struct crystalhd_adp *, uint32_t, uint32_t); | ||
124 | |||
125 | /*========= Link (70012) register access routines.. =================*/ | ||
126 | uint32_t crystalhd_reg_rd(struct crystalhd_adp *, uint32_t); | ||
127 | void crystalhd_reg_wr(struct crystalhd_adp *, uint32_t, uint32_t); | ||
128 | |||
129 | /*========= Decoder (7412) memory access routines..=================*/ | ||
130 | BC_STATUS crystalhd_mem_rd(struct crystalhd_adp *, uint32_t, uint32_t, uint32_t *); | ||
131 | BC_STATUS crystalhd_mem_wr(struct crystalhd_adp *, uint32_t, uint32_t, uint32_t *); | ||
132 | |||
133 | /*==========Link (70012) PCIe Config access routines.================*/ | ||
134 | BC_STATUS crystalhd_pci_cfg_rd(struct crystalhd_adp *, uint32_t, uint32_t, uint32_t *); | ||
135 | BC_STATUS crystalhd_pci_cfg_wr(struct crystalhd_adp *, uint32_t, uint32_t, uint32_t); | ||
136 | |||
137 | /*========= Linux Kernel Interface routines. ======================= */ | ||
138 | void *bc_kern_dma_alloc(struct crystalhd_adp *, uint32_t, dma_addr_t *); | ||
139 | void bc_kern_dma_free(struct crystalhd_adp *, uint32_t, | ||
140 | void *, dma_addr_t); | ||
141 | #define crystalhd_create_event(_ev) init_waitqueue_head(_ev) | ||
142 | #define crystalhd_set_event(_ev) wake_up_interruptible(_ev) | ||
143 | #define crystalhd_wait_on_event(ev, condition, timeout, ret, nosig) \ | ||
144 | do { \ | ||
145 | DECLARE_WAITQUEUE(entry, current); \ | ||
146 | unsigned long end = jiffies + ((timeout * HZ) / 1000); \ | ||
147 | ret = 0; \ | ||
148 | add_wait_queue(ev, &entry); \ | ||
149 | for (;;) { \ | ||
150 | __set_current_state(TASK_INTERRUPTIBLE); \ | ||
151 | if (condition) { \ | ||
152 | break; \ | ||
153 | } \ | ||
154 | if (time_after_eq(jiffies, end)) { \ | ||
155 | ret = -EBUSY; \ | ||
156 | break; \ | ||
157 | } \ | ||
158 | schedule_timeout((HZ / 100 > 1) ? HZ / 100 : 1); \ | ||
159 | if (!nosig && signal_pending(current)) { \ | ||
160 | ret = -EINTR; \ | ||
161 | break; \ | ||
162 | } \ | ||
163 | } \ | ||
164 | __set_current_state(TASK_RUNNING); \ | ||
165 | remove_wait_queue(ev, &entry); \ | ||
166 | } while (0) | ||
167 | |||
168 | /*================ Direct IO mapping routines ==================*/ | ||
169 | extern int crystalhd_create_dio_pool(struct crystalhd_adp *, uint32_t); | ||
170 | extern void crystalhd_destroy_dio_pool(struct crystalhd_adp *); | ||
171 | extern BC_STATUS crystalhd_map_dio(struct crystalhd_adp *, void *, uint32_t, | ||
172 | uint32_t, bool, bool, crystalhd_dio_req**); | ||
173 | |||
174 | extern BC_STATUS crystalhd_unmap_dio(struct crystalhd_adp *, crystalhd_dio_req*); | ||
175 | #define crystalhd_get_sgle_paddr(_dio, _ix) (cpu_to_le64(sg_dma_address(&_dio->sg[_ix]))) | ||
176 | #define crystalhd_get_sgle_len(_dio, _ix) (cpu_to_le32(sg_dma_len(&_dio->sg[_ix]))) | ||
177 | |||
178 | /*================ General Purpose Queues ==================*/ | ||
179 | extern BC_STATUS crystalhd_create_dioq(struct crystalhd_adp *, crystalhd_dioq_t **, crystalhd_data_free_cb , void *); | ||
180 | extern void crystalhd_delete_dioq(struct crystalhd_adp *, crystalhd_dioq_t *); | ||
181 | extern BC_STATUS crystalhd_dioq_add(crystalhd_dioq_t *ioq, void *data, bool wake, uint32_t tag); | ||
182 | extern void *crystalhd_dioq_fetch(crystalhd_dioq_t *ioq); | ||
183 | extern void *crystalhd_dioq_find_and_fetch(crystalhd_dioq_t *ioq, uint32_t tag); | ||
184 | extern void *crystalhd_dioq_fetch_wait(crystalhd_dioq_t *ioq, uint32_t to_secs, uint32_t *sig_pend); | ||
185 | |||
186 | #define crystalhd_dioq_count(_ioq) ((_ioq) ? _ioq->count : 0) | ||
187 | |||
188 | extern int crystalhd_create_elem_pool(struct crystalhd_adp *, uint32_t); | ||
189 | extern void crystalhd_delete_elem_pool(struct crystalhd_adp *); | ||
190 | |||
191 | |||
192 | /*================ Debug routines/macros .. ================================*/ | ||
193 | extern void crystalhd_show_buffer(uint32_t off, uint8_t *buff, uint32_t dwcount); | ||
194 | |||
195 | enum _chd_log_levels { | ||
196 | BCMLOG_ERROR = 0x80000000, /* Don't disable this option */ | ||
197 | BCMLOG_DATA = 0x40000000, /* Data, enable by default */ | ||
198 | BCMLOG_SPINLOCK = 0x20000000, /* Spcial case for Spin locks*/ | ||
199 | |||
200 | /* Following are allowed only in debug mode */ | ||
201 | BCMLOG_INFO = 0x00000001, /* Generic informational */ | ||
202 | BCMLOG_DBG = 0x00000002, /* First level Debug info */ | ||
203 | BCMLOG_SSTEP = 0x00000004, /* Stepping information */ | ||
204 | BCMLOG_ENTER_LEAVE = 0x00000008, /* stack tracking */ | ||
205 | }; | ||
206 | |||
207 | #define BCMLOG_ENTER \ | ||
208 | if (g_linklog_level & BCMLOG_ENTER_LEAVE) { \ | ||
209 | printk("Entered %s\n", __func__); \ | ||
210 | } | ||
211 | |||
212 | #define BCMLOG_LEAVE \ | ||
213 | if (g_linklog_level & BCMLOG_ENTER_LEAVE) { \ | ||
214 | printk("Leaving %s\n", __func__); \ | ||
215 | } | ||
216 | |||
217 | #define BCMLOG(trace, fmt, args...) \ | ||
218 | if (g_linklog_level & trace) { \ | ||
219 | printk(fmt, ##args); \ | ||
220 | } | ||
221 | |||
222 | #define BCMLOG_ERR(fmt, args...) \ | ||
223 | do { \ | ||
224 | if (g_linklog_level & BCMLOG_ERROR) { \ | ||
225 | printk("*ERR*:%s:%d: "fmt, __FILE__, __LINE__, ##args); \ | ||
226 | } \ | ||
227 | } while (0); | ||
228 | |||
229 | #endif | ||