blob: da199ad8e27ef5f4c9c27533730c0221a72594be [file] [log] [blame]
Jarod Wilson7963eb42010-01-04 18:02:27 -05001/***************************************************************************
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)
Lars Lindley641b63f2010-03-11 00:21:20 +010028#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
Jarod Wilson7963eb42010-01-04 18:02:27 -050032
Lars Lindley641b63f2010-03-11 00:21:20 +010033#define GET_FIELD(m, c, r, f) \
Andreea-Cristina Bernat25c76d12014-03-09 18:06:58 +020034 ((((m) & BRCM_MASK(c, r, f)) >> BRCM_SHIFT(c, r, f)) << \
35 BRCM_ALIGN(c, r, f))
Jarod Wilson7963eb42010-01-04 18:02:27 -050036
Lars Lindley641b63f2010-03-11 00:21:20 +010037#define SET_FIELD(m, c, r, f, d) \
38 ((m) = (((m) & ~BRCM_MASK(c, r, f)) | ((((d) >> BRCM_ALIGN(c, r, f)) << \
39 BRCM_SHIFT(c, r, f)) & BRCM_MASK(c, r, f))) \
Jarod Wilson7963eb42010-01-04 18:02:27 -050040 )
41
Lars Lindley641b63f2010-03-11 00:21:20 +010042#define SET_TYPE_FIELD(m, c, r, f, d) SET_FIELD(m, c, r, f, c##_##d)
43#define SET_NAME_FIELD(m, c, r, f, d) SET_FIELD(m, c, r, f, c##_##r##_##f##_##d)
44#define SET_VALUE_FIELD(m, c, r, f, d) SET_FIELD(m, c, r, f, d)
Jarod Wilson7963eb42010-01-04 18:02:27 -050045
46#endif /* GET & SET */
47
48/****************************************************************************
49 * Core Enums.
50 ***************************************************************************/
51/****************************************************************************
52 * Enums: AES_RGR_BRIDGE_RESET_CTRL
53 ***************************************************************************/
54#define AES_RGR_BRIDGE_RESET_CTRL_DEASSERT 0
55#define AES_RGR_BRIDGE_RESET_CTRL_ASSERT 1
56
57/****************************************************************************
58 * Enums: CCE_RGR_BRIDGE_RESET_CTRL
59 ***************************************************************************/
60#define CCE_RGR_BRIDGE_RESET_CTRL_DEASSERT 0
61#define CCE_RGR_BRIDGE_RESET_CTRL_ASSERT 1
62
63/****************************************************************************
64 * Enums: DBU_RGR_BRIDGE_RESET_CTRL
65 ***************************************************************************/
66#define DBU_RGR_BRIDGE_RESET_CTRL_DEASSERT 0
67#define DBU_RGR_BRIDGE_RESET_CTRL_ASSERT 1
68
69/****************************************************************************
70 * Enums: DCI_RGR_BRIDGE_RESET_CTRL
71 ***************************************************************************/
72#define DCI_RGR_BRIDGE_RESET_CTRL_DEASSERT 0
73#define DCI_RGR_BRIDGE_RESET_CTRL_ASSERT 1
74
75/****************************************************************************
76 * Enums: GISB_ARBITER_DEASSERT_ASSERT
77 ***************************************************************************/
78#define GISB_ARBITER_DEASSERT_ASSERT_DEASSERT 0
79#define GISB_ARBITER_DEASSERT_ASSERT_ASSERT 1
80
81/****************************************************************************
82 * Enums: GISB_ARBITER_UNMASK_MASK
83 ***************************************************************************/
84#define GISB_ARBITER_UNMASK_MASK_UNMASK 0
85#define GISB_ARBITER_UNMASK_MASK_MASK 1
86
87/****************************************************************************
88 * Enums: GISB_ARBITER_DISABLE_ENABLE
89 ***************************************************************************/
90#define GISB_ARBITER_DISABLE_ENABLE_DISABLE 0
91#define GISB_ARBITER_DISABLE_ENABLE_ENABLE 1
92
93/****************************************************************************
94 * Enums: I2C_GR_BRIDGE_RESET_CTRL
95 ***************************************************************************/
96#define I2C_GR_BRIDGE_RESET_CTRL_DEASSERT 0
97#define I2C_GR_BRIDGE_RESET_CTRL_ASSERT 1
98
99/****************************************************************************
100 * Enums: MISC_GR_BRIDGE_RESET_CTRL
101 ***************************************************************************/
102#define MISC_GR_BRIDGE_RESET_CTRL_DEASSERT 0
103#define MISC_GR_BRIDGE_RESET_CTRL_ASSERT 1
104
105/****************************************************************************
106 * Enums: OTP_GR_BRIDGE_RESET_CTRL
107 ***************************************************************************/
108#define OTP_GR_BRIDGE_RESET_CTRL_DEASSERT 0
109#define OTP_GR_BRIDGE_RESET_CTRL_ASSERT 1
110
111/****************************************************************************
112 * BCM70012_TGT_TOP_PCIE_CFG
113 ***************************************************************************/
114#define PCIE_CFG_DEVICE_VENDOR_ID 0x00000000 /* DEVICE_VENDOR_ID Register */
115#define PCIE_CFG_STATUS_COMMAND 0x00000004 /* STATUS_COMMAND Register */
116#define PCIE_CFG_PCI_CLASSCODE_AND_REVISION_ID 0x00000008 /* PCI_CLASSCODE_AND_REVISION_ID Register */
117#define PCIE_CFG_BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE 0x0000000c /* BIST_HEADER_TYPE_LATENCY_TIMER_CACHE_LINE_SIZE Register */
118#define PCIE_CFG_BASE_ADDRESS_1 0x00000010 /* BASE_ADDRESS_1 Register */
119#define PCIE_CFG_BASE_ADDRESS_2 0x00000014 /* BASE_ADDRESS_2 Register */
120#define PCIE_CFG_BASE_ADDRESS_3 0x00000018 /* BASE_ADDRESS_3 Register */
121#define PCIE_CFG_BASE_ADDRESS_4 0x0000001c /* BASE_ADDRESS_4 Register */
122#define PCIE_CFG_CARDBUS_CIS_POINTER 0x00000028 /* CARDBUS_CIS_POINTER Register */
123#define PCIE_CFG_SUBSYSTEM_DEVICE_VENDOR_ID 0x0000002c /* SUBSYSTEM_DEVICE_VENDOR_ID Register */
124#define PCIE_CFG_EXPANSION_ROM_BASE_ADDRESS 0x00000030 /* EXPANSION_ROM_BASE_ADDRESS Register */
125#define PCIE_CFG_CAPABILITIES_POINTER 0x00000034 /* CAPABILITIES_POINTER Register */
126#define PCIE_CFG_INTERRUPT 0x0000003c /* INTERRUPT Register */
127#define PCIE_CFG_VPD_CAPABILITIES 0x00000040 /* VPD_CAPABILITIES Register */
128#define PCIE_CFG_VPD_DATA 0x00000044 /* VPD_DATA Register */
129#define PCIE_CFG_POWER_MANAGEMENT_CAPABILITY 0x00000048 /* POWER_MANAGEMENT_CAPABILITY Register */
130#define PCIE_CFG_POWER_MANAGEMENT_CONTROL_STATUS 0x0000004c /* POWER_MANAGEMENT_CONTROL_STATUS Register */
131#define PCIE_CFG_MSI_CAPABILITY_HEADER 0x00000050 /* MSI_CAPABILITY_HEADER Register */
132#define PCIE_CFG_MSI_LOWER_ADDRESS 0x00000054 /* MSI_LOWER_ADDRESS Register */
133#define PCIE_CFG_MSI_UPPER_ADDRESS_REGISTER 0x00000058 /* MSI_UPPER_ADDRESS_REGISTER Register */
134#define PCIE_CFG_MSI_DATA 0x0000005c /* MSI_DATA Register */
135#define PCIE_CFG_BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER 0x00000060 /* BROADCOM_VENDOR_SPECIFIC_CAPABILITY_HEADER Register */
136#define PCIE_CFG_RESET_COUNTERS_INITIAL_VALUES 0x00000064 /* RESET_COUNTERS_INITIAL_VALUES Register */
137#define PCIE_CFG_MISCELLANEOUS_HOST_CONTROL 0x00000068 /* MISCELLANEOUS_HOST_CONTROL Register */
138#define PCIE_CFG_SPARE 0x0000006c /* SPARE Register */
139#define PCIE_CFG_PCI_STATE 0x00000070 /* PCI_STATE Register */
140#define PCIE_CFG_CLOCK_CONTROL 0x00000074 /* CLOCK_CONTROL Register */
141#define PCIE_CFG_REGISTER_BASE 0x00000078 /* REGISTER_BASE Register */
142#define PCIE_CFG_MEMORY_BASE 0x0000007c /* MEMORY_BASE Register */
143#define PCIE_CFG_REGISTER_DATA 0x00000080 /* REGISTER_DATA Register */
144#define PCIE_CFG_MEMORY_DATA 0x00000084 /* MEMORY_DATA Register */
145#define PCIE_CFG_EXPANSION_ROM_BAR_SIZE 0x00000088 /* EXPANSION_ROM_BAR_SIZE Register */
146#define PCIE_CFG_EXPANSION_ROM_ADDRESS 0x0000008c /* EXPANSION_ROM_ADDRESS Register */
147#define PCIE_CFG_EXPANSION_ROM_DATA 0x00000090 /* EXPANSION_ROM_DATA Register */
148#define PCIE_CFG_VPD_INTERFACE 0x00000094 /* VPD_INTERFACE Register */
149#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 */
150#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 */
151#define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER 0x000000a0 /* UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_UPPER Register */
152#define PCIE_CFG_UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER 0x000000a4 /* UNDI_RECEIVE_RETURN_RING_CONSUMER_INDEX_LOWER Register */
153#define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER 0x000000a8 /* UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_UPPER Register */
154#define PCIE_CFG_UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER 0x000000ac /* UNDI_SEND_BD_PRODUCER_INDEX_MAILBOX_LOWER Register */
155#define PCIE_CFG_INT_MAILBOX_UPPER 0x000000b0 /* INT_MAILBOX_UPPER Register */
156#define PCIE_CFG_INT_MAILBOX_LOWER 0x000000b4 /* INT_MAILBOX_LOWER Register */
157#define PCIE_CFG_PRODUCT_ID_AND_ASIC_REVISION 0x000000bc /* PRODUCT_ID_AND_ASIC_REVISION Register */
158#define PCIE_CFG_FUNCTION_EVENT 0x000000c0 /* FUNCTION_EVENT Register */
159#define PCIE_CFG_FUNCTION_EVENT_MASK 0x000000c4 /* FUNCTION_EVENT_MASK Register */
160#define PCIE_CFG_FUNCTION_PRESENT 0x000000c8 /* FUNCTION_PRESENT Register */
161#define PCIE_CFG_PCIE_CAPABILITIES 0x000000cc /* PCIE_CAPABILITIES Register */
162#define PCIE_CFG_DEVICE_CAPABILITIES 0x000000d0 /* DEVICE_CAPABILITIES Register */
163#define PCIE_CFG_DEVICE_STATUS_CONTROL 0x000000d4 /* DEVICE_STATUS_CONTROL Register */
164#define PCIE_CFG_LINK_CAPABILITY 0x000000d8 /* LINK_CAPABILITY Register */
165#define PCIE_CFG_LINK_STATUS_CONTROL 0x000000dc /* LINK_STATUS_CONTROL Register */
166#define PCIE_CFG_DEVICE_CAPABILITIES_2 0x000000f0 /* DEVICE_CAPABILITIES_2 Register */
167#define PCIE_CFG_DEVICE_STATUS_CONTROL_2 0x000000f4 /* DEVICE_STATUS_CONTROL_2 Register */
168#define PCIE_CFG_LINK_CAPABILITIES_2 0x000000f8 /* LINK_CAPABILITIES_2 Register */
169#define PCIE_CFG_LINK_STATUS_CONTROL_2 0x000000fc /* LINK_STATUS_CONTROL_2 Register */
170#define PCIE_CFG_ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER 0x00000100 /* ADVANCED_ERROR_REPORTING_ENHANCED_CAPABILITY_HEADER Register */
171#define PCIE_CFG_UNCORRECTABLE_ERROR_STATUS 0x00000104 /* UNCORRECTABLE_ERROR_STATUS Register */
172#define PCIE_CFG_UNCORRECTABLE_ERROR_MASK 0x00000108 /* UNCORRECTABLE_ERROR_MASK Register */
173#define PCIE_CFG_UNCORRECTABLE_ERROR_SEVERITY 0x0000010c /* UNCORRECTABLE_ERROR_SEVERITY Register */
174#define PCIE_CFG_CORRECTABLE_ERROR_STATUS 0x00000110 /* CORRECTABLE_ERROR_STATUS Register */
175#define PCIE_CFG_CORRECTABLE_ERROR_MASK 0x00000114 /* CORRECTABLE_ERROR_MASK Register */
176#define PCIE_CFG_ADVANCED_ERROR_CAPABILITIES_AND_CONTROL 0x00000118 /* ADVANCED_ERROR_CAPABILITIES_AND_CONTROL Register */
177#define PCIE_CFG_HEADER_LOG_1 0x0000011c /* HEADER_LOG_1 Register */
178#define PCIE_CFG_HEADER_LOG_2 0x00000120 /* HEADER_LOG_2 Register */
179#define PCIE_CFG_HEADER_LOG_3 0x00000124 /* HEADER_LOG_3 Register */
180#define PCIE_CFG_HEADER_LOG_4 0x00000128 /* HEADER_LOG_4 Register */
181#define PCIE_CFG_VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER 0x0000013c /* VIRTUAL_CHANNEL_ENHANCED_CAPABILITY_HEADER Register */
182#define PCIE_CFG_PORT_VC_CAPABILITY 0x00000140 /* PORT_VC_CAPABILITY Register */
183#define PCIE_CFG_PORT_VC_CAPABILITY_2 0x00000144 /* PORT_VC_CAPABILITY_2 Register */
184#define PCIE_CFG_PORT_VC_STATUS_CONTROL 0x00000148 /* PORT_VC_STATUS_CONTROL Register */
185#define PCIE_CFG_VC_RESOURCE_CAPABILITY 0x0000014c /* VC_RESOURCE_CAPABILITY Register */
186#define PCIE_CFG_VC_RESOURCE_CONTROL 0x00000150 /* VC_RESOURCE_CONTROL Register */
187#define PCIE_CFG_VC_RESOURCE_STATUS 0x00000154 /* VC_RESOURCE_STATUS Register */
188#define PCIE_CFG_DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER 0x00000160 /* DEVICE_SERIAL_NO_ENHANCED_CAPABILITY_HEADER Register */
189#define PCIE_CFG_DEVICE_SERIAL_NO_LOWER_DW 0x00000164 /* DEVICE_SERIAL_NO_LOWER_DW Register */
190#define PCIE_CFG_DEVICE_SERIAL_NO_UPPER_DW 0x00000168 /* DEVICE_SERIAL_NO_UPPER_DW Register */
191#define PCIE_CFG_POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER 0x0000016c /* POWER_BUDGETING_ENHANCED_CAPABILITY_HEADER Register */
192#define PCIE_CFG_POWER_BUDGETING_DATA_SELECT 0x00000170 /* POWER_BUDGETING_DATA_SELECT Register */
193#define PCIE_CFG_POWER_BUDGETING_DATA 0x00000174 /* POWER_BUDGETING_DATA Register */
194#define PCIE_CFG_POWER_BUDGETING_CAPABILITY 0x00000178 /* POWER_BUDGETING_CAPABILITY Register */
195#define PCIE_CFG_FIRMWARE_POWER_BUDGETING_2_1 0x0000017c /* FIRMWARE_POWER_BUDGETING_2_1 Register */
196#define PCIE_CFG_FIRMWARE_POWER_BUDGETING_4_3 0x00000180 /* FIRMWARE_POWER_BUDGETING_4_3 Register */
197#define PCIE_CFG_FIRMWARE_POWER_BUDGETING_6_5 0x00000184 /* FIRMWARE_POWER_BUDGETING_6_5 Register */
198#define PCIE_CFG_FIRMWARE_POWER_BUDGETING_8_7 0x00000188 /* FIRMWARE_POWER_BUDGETING_8_7 Register */
199#define PCIE_CFG_PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING 0x0000018c /* PCIE_1_1_ADVISORY_NON_FATAL_ERROR_MASKING Register */
200
201
202/****************************************************************************
203 * BCM70012_TGT_TOP_PCIE_TL
204 ***************************************************************************/
205#define PCIE_TL_TL_CONTROL 0x00000400 /* TL_CONTROL Register */
206#define PCIE_TL_TRANSACTION_CONFIGURATION 0x00000404 /* TRANSACTION_CONFIGURATION Register */
Jarod Wilson7963eb42010-01-04 18:02:27 -0500207
208
209/****************************************************************************
210 * BCM70012_TGT_TOP_PCIE_DLL
211 ***************************************************************************/
212#define PCIE_DLL_DATA_LINK_CONTROL 0x00000500 /* DATA_LINK_CONTROL Register */
213#define PCIE_DLL_DATA_LINK_STATUS 0x00000504 /* DATA_LINK_STATUS Register */
Jarod Wilson7963eb42010-01-04 18:02:27 -0500214
215
216/****************************************************************************
217 * BCM70012_TGT_TOP_INTR
218 ***************************************************************************/
219#define INTR_INTR_STATUS 0x00000700 /* Interrupt Status Register */
220#define INTR_INTR_SET 0x00000704 /* Interrupt Set Register */
221#define INTR_INTR_CLR_REG 0x00000708 /* Interrupt Clear Register */
222#define INTR_INTR_MSK_STS_REG 0x0000070c /* Interrupt Mask Status Register */
223#define INTR_INTR_MSK_SET_REG 0x00000710 /* Interrupt Mask Set Register */
224#define INTR_INTR_MSK_CLR_REG 0x00000714 /* Interrupt Mask Clear Register */
225#define INTR_EOI_CTRL 0x00000720 /* End of interrupt control register */
226
227
228/****************************************************************************
Jarod Wilson7963eb42010-01-04 18:02:27 -0500229 * BCM70012_MISC_TOP_MISC1
230 ***************************************************************************/
231#define MISC1_TX_FIRST_DESC_L_ADDR_LIST0 0x00000c00 /* Tx DMA Descriptor List0 First Descriptor lower Address */
232#define MISC1_TX_FIRST_DESC_U_ADDR_LIST0 0x00000c04 /* Tx DMA Descriptor List0 First Descriptor Upper Address */
233#define MISC1_TX_FIRST_DESC_L_ADDR_LIST1 0x00000c08 /* Tx DMA Descriptor List1 First Descriptor Lower Address */
234#define MISC1_TX_FIRST_DESC_U_ADDR_LIST1 0x00000c0c /* Tx DMA Descriptor List1 First Descriptor Upper Address */
235#define MISC1_TX_SW_DESC_LIST_CTRL_STS 0x00000c10 /* Tx DMA Software Descriptor List Control and Status */
236#define MISC1_TX_DMA_ERROR_STATUS 0x00000c18 /* Tx DMA Engine Error Status */
237#define MISC1_TX_DMA_LIST0_CUR_DESC_L_ADDR 0x00000c1c /* Tx DMA List0 Current Descriptor Lower Address */
238#define MISC1_TX_DMA_LIST0_CUR_DESC_U_ADDR 0x00000c20 /* Tx DMA List0 Current Descriptor Upper Address */
239#define MISC1_TX_DMA_LIST0_CUR_BYTE_CNT_REM 0x00000c24 /* Tx DMA List0 Current Descriptor Upper Address */
240#define MISC1_TX_DMA_LIST1_CUR_DESC_L_ADDR 0x00000c28 /* Tx DMA List1 Current Descriptor Lower Address */
241#define MISC1_TX_DMA_LIST1_CUR_DESC_U_ADDR 0x00000c2c /* Tx DMA List1 Current Descriptor Upper Address */
242#define MISC1_TX_DMA_LIST1_CUR_BYTE_CNT_REM 0x00000c30 /* Tx DMA List1 Current Descriptor Upper Address */
243#define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST0 0x00000c34 /* Y Rx Descriptor List0 First Descriptor Lower Address */
244#define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST0 0x00000c38 /* Y Rx Descriptor List0 First Descriptor Upper Address */
245#define MISC1_Y_RX_FIRST_DESC_L_ADDR_LIST1 0x00000c3c /* Y Rx Descriptor List1 First Descriptor Lower Address */
246#define MISC1_Y_RX_FIRST_DESC_U_ADDR_LIST1 0x00000c40 /* Y Rx Descriptor List1 First Descriptor Upper Address */
247#define MISC1_Y_RX_SW_DESC_LIST_CTRL_STS 0x00000c44 /* Y Rx Software Descriptor List Control and Status */
248#define MISC1_Y_RX_ERROR_STATUS 0x00000c4c /* Y Rx Engine Error Status */
249#define MISC1_Y_RX_LIST0_CUR_DESC_L_ADDR 0x00000c50 /* Y Rx List0 Current Descriptor Lower Address */
250#define MISC1_Y_RX_LIST0_CUR_DESC_U_ADDR 0x00000c54 /* Y Rx List0 Current Descriptor Upper Address */
251#define MISC1_Y_RX_LIST0_CUR_BYTE_CNT 0x00000c58 /* Y Rx List0 Current Descriptor Byte Count */
252#define MISC1_Y_RX_LIST1_CUR_DESC_L_ADDR 0x00000c5c /* Y Rx List1 Current Descriptor Lower address */
253#define MISC1_Y_RX_LIST1_CUR_DESC_U_ADDR 0x00000c60 /* Y Rx List1 Current Descriptor Upper address */
254#define MISC1_Y_RX_LIST1_CUR_BYTE_CNT 0x00000c64 /* Y Rx List1 Current Descriptor Byte Count */
255#define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST0 0x00000c68 /* UV Rx Descriptor List0 First Descriptor lower Address */
256#define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST0 0x00000c6c /* UV Rx Descriptor List0 First Descriptor Upper Address */
257#define MISC1_UV_RX_FIRST_DESC_L_ADDR_LIST1 0x00000c70 /* UV Rx Descriptor List1 First Descriptor Lower Address */
258#define MISC1_UV_RX_FIRST_DESC_U_ADDR_LIST1 0x00000c74 /* UV Rx Descriptor List1 First Descriptor Upper Address */
259#define MISC1_UV_RX_SW_DESC_LIST_CTRL_STS 0x00000c78 /* UV Rx Software Descriptor List Control and Status */
260#define MISC1_UV_RX_ERROR_STATUS 0x00000c7c /* UV Rx Engine Error Status */
261#define MISC1_UV_RX_LIST0_CUR_DESC_L_ADDR 0x00000c80 /* UV Rx List0 Current Descriptor Lower Address */
262#define MISC1_UV_RX_LIST0_CUR_DESC_U_ADDR 0x00000c84 /* UV Rx List0 Current Descriptor Upper Address */
263#define MISC1_UV_RX_LIST0_CUR_BYTE_CNT 0x00000c88 /* UV Rx List0 Current Descriptor Byte Count */
264#define MISC1_UV_RX_LIST1_CUR_DESC_L_ADDR 0x00000c8c /* UV Rx List1 Current Descriptor Lower Address */
265#define MISC1_UV_RX_LIST1_CUR_DESC_U_ADDR 0x00000c90 /* UV Rx List1 Current Descriptor Upper Address */
266#define MISC1_UV_RX_LIST1_CUR_BYTE_CNT 0x00000c94 /* UV Rx List1 Current Descriptor Byte Count */
267#define MISC1_DMA_DEBUG_OPTIONS_REG 0x00000c98 /* DMA Debug Options Register */
268#define MISC1_READ_CHANNEL_ERROR_STATUS 0x00000c9c /* Read Channel Error Status */
269#define MISC1_PCIE_DMA_CTRL 0x00000ca0 /* PCIE DMA Control Register */
270
271
272/****************************************************************************
273 * BCM70012_MISC_TOP_MISC2
274 ***************************************************************************/
275#define MISC2_GLOBAL_CTRL 0x00000d00 /* Global Control Register */
276#define MISC2_INTERNAL_STATUS 0x00000d04 /* Internal Status Register */
277#define MISC2_INTERNAL_STATUS_MUX_CTRL 0x00000d08 /* Internal Debug Mux Control */
278#define MISC2_DEBUG_FIFO_LENGTH 0x00000d0c /* Debug FIFO Length */
279
280
281/****************************************************************************
282 * BCM70012_MISC_TOP_MISC3
283 ***************************************************************************/
284#define MISC3_RESET_CTRL 0x00000e00 /* Reset Control Register */
285#define MISC3_BIST_CTRL 0x00000e04 /* BIST Control Register */
286#define MISC3_BIST_STATUS 0x00000e08 /* BIST Status Register */
287#define MISC3_RX_CHECKSUM 0x00000e0c /* Receive Checksum */
288#define MISC3_TX_CHECKSUM 0x00000e10 /* Transmit Checksum */
289#define MISC3_ECO_CTRL_CORE 0x00000e14 /* ECO Core Reset Control Register */
290#define MISC3_CSI_TEST_CTRL 0x00000e18 /* CSI Test Control Register */
291#define MISC3_HD_DVI_TEST_CTRL 0x00000e1c /* HD DVI Test Control Register */
292
293
294/****************************************************************************
295 * BCM70012_MISC_TOP_MISC_PERST
296 ***************************************************************************/
297#define MISC_PERST_ECO_CTRL_PERST 0x00000e80 /* ECO PCIE Reset Control Register */
298#define MISC_PERST_DECODER_CTRL 0x00000e84 /* Decoder Control Register */
299#define MISC_PERST_CCE_STATUS 0x00000e88 /* Config Copy Engine Status */
300#define MISC_PERST_PCIE_DEBUG 0x00000e8c /* PCIE Debug Control Register */
301#define MISC_PERST_PCIE_DEBUG_STATUS 0x00000e90 /* PCIE Debug Status Register */
302#define MISC_PERST_VREG_CTRL 0x00000e94 /* Voltage Regulator Control Register */
303#define MISC_PERST_MEM_CTRL 0x00000e98 /* Memory Control Register */
304#define MISC_PERST_CLOCK_CTRL 0x00000e9c /* Clock Control Register */
305
306
307/****************************************************************************
308 * BCM70012_MISC_TOP_GISB_ARBITER
309 ***************************************************************************/
310#define GISB_ARBITER_REVISION 0x00000f00 /* GISB ARBITER REVISION */
311#define GISB_ARBITER_SCRATCH 0x00000f04 /* GISB ARBITER Scratch Register */
312#define GISB_ARBITER_REQ_MASK 0x00000f08 /* GISB ARBITER Master Request Mask Register */
313#define GISB_ARBITER_TIMER 0x00000f0c /* GISB ARBITER Timer Value Register */
Jarod Wilson7963eb42010-01-04 18:02:27 -0500314
315
316/****************************************************************************
317 * BCM70012_OTP_TOP_OTP
318 ***************************************************************************/
319#define OTP_CONFIG_INFO 0x00001400 /* OTP Configuration Register */
320#define OTP_CMD 0x00001404 /* OTP Command Register */
321#define OTP_STATUS 0x00001408 /* OTP Status Register */
322#define OTP_CONTENT_MISC 0x0000140c /* Content : Miscellaneous Register */
323#define OTP_CONTENT_AES_0 0x00001410 /* Content : AES Key 0 Register */
324#define OTP_CONTENT_AES_1 0x00001414 /* Content : AES Key 1 Register */
325#define OTP_CONTENT_AES_2 0x00001418 /* Content : AES Key 2 Register */
326#define OTP_CONTENT_AES_3 0x0000141c /* Content : AES Key 3 Register */
327#define OTP_CONTENT_SHA_0 0x00001420 /* Content : SHA Key 0 Register */
328#define OTP_CONTENT_SHA_1 0x00001424 /* Content : SHA Key 1 Register */
329#define OTP_CONTENT_SHA_2 0x00001428 /* Content : SHA Key 2 Register */
330#define OTP_CONTENT_SHA_3 0x0000142c /* Content : SHA Key 3 Register */
331#define OTP_CONTENT_SHA_4 0x00001430 /* Content : SHA Key 4 Register */
332#define OTP_CONTENT_SHA_5 0x00001434 /* Content : SHA Key 5 Register */
333#define OTP_CONTENT_SHA_6 0x00001438 /* Content : SHA Key 6 Register */
334#define OTP_CONTENT_SHA_7 0x0000143c /* Content : SHA Key 7 Register */
335#define OTP_CONTENT_CHECKSUM 0x00001440 /* Content : Checksum Register */
336#define OTP_PROG_CTRL 0x00001444 /* Programming Control Register */
337#define OTP_PROG_STATUS 0x00001448 /* Programming Status Register */
338#define OTP_PROG_PULSE 0x0000144c /* Program Pulse Width Register */
339#define OTP_VERIFY_PULSE 0x00001450 /* Verify Pulse Width Register */
340#define OTP_PROG_MASK 0x00001454 /* Program Mask Register */
341#define OTP_DATA_INPUT 0x00001458 /* Data Input Register */
342#define OTP_DATA_OUTPUT 0x0000145c /* Data Output Register */
343
344
345/****************************************************************************
Jarod Wilson7963eb42010-01-04 18:02:27 -0500346 * BCM70012_AES_TOP_AES
347 ***************************************************************************/
348#define AES_CONFIG_INFO 0x00001800 /* AES Configuration Information Register */
349#define AES_CMD 0x00001804 /* AES Command Register */
350#define AES_STATUS 0x00001808 /* AES Status Register */
351#define AES_EEPROM_CONFIG 0x0000180c /* AES EEPROM Configuration Register */
352#define AES_EEPROM_DATA_0 0x00001810 /* AES EEPROM Data Register 0 */
353#define AES_EEPROM_DATA_1 0x00001814 /* AES EEPROM Data Register 1 */
354#define AES_EEPROM_DATA_2 0x00001818 /* AES EEPROM Data Register 2 */
355#define AES_EEPROM_DATA_3 0x0000181c /* AES EEPROM Data Register 3 */
356
357
358/****************************************************************************
Jarod Wilson7963eb42010-01-04 18:02:27 -0500359 * BCM70012_DCI_TOP_DCI
360 ***************************************************************************/
361#define DCI_CMD 0x00001c00 /* DCI Command Register */
362#define DCI_STATUS 0x00001c04 /* DCI Status Register */
363#define DCI_DRAM_BASE_ADDR 0x00001c08 /* DRAM Base Address Register */
364#define DCI_FIRMWARE_ADDR 0x00001c0c /* Firmware Address Register */
365#define DCI_FIRMWARE_DATA 0x00001c10 /* Firmware Data Register */
366#define DCI_SIGNATURE_DATA_0 0x00001c14 /* Signature Data Register 0 */
367#define DCI_SIGNATURE_DATA_1 0x00001c18 /* Signature Data Register 1 */
368#define DCI_SIGNATURE_DATA_2 0x00001c1c /* Signature Data Register 2 */
369#define DCI_SIGNATURE_DATA_3 0x00001c20 /* Signature Data Register 3 */
370#define DCI_SIGNATURE_DATA_4 0x00001c24 /* Signature Data Register 4 */
371#define DCI_SIGNATURE_DATA_5 0x00001c28 /* Signature Data Register 5 */
372#define DCI_SIGNATURE_DATA_6 0x00001c2c /* Signature Data Register 6 */
373#define DCI_SIGNATURE_DATA_7 0x00001c30 /* Signature Data Register 7 */
374
375
376/****************************************************************************
Jarod Wilson7963eb42010-01-04 18:02:27 -0500377 * BCM70012_TGT_TOP_INTR
378 ***************************************************************************/
379/****************************************************************************
380 * INTR :: INTR_STATUS
381 ***************************************************************************/
382/* INTR :: INTR_STATUS :: reserved0 [31:26] */
383#define INTR_INTR_STATUS_reserved0_MASK 0xfc000000
384#define INTR_INTR_STATUS_reserved0_ALIGN 0
385#define INTR_INTR_STATUS_reserved0_BITS 6
386#define INTR_INTR_STATUS_reserved0_SHIFT 26
387
388/* INTR :: INTR_STATUS :: PCIE_TGT_CA_ATTN [25:25] */
389#define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_MASK 0x02000000
390#define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_ALIGN 0
391#define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_BITS 1
392#define INTR_INTR_STATUS_PCIE_TGT_CA_ATTN_SHIFT 25
393
394/* INTR :: INTR_STATUS :: PCIE_TGT_UR_ATTN [24:24] */
395#define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_MASK 0x01000000
396#define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_ALIGN 0
397#define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_BITS 1
398#define INTR_INTR_STATUS_PCIE_TGT_UR_ATTN_SHIFT 24
399
400/* INTR :: INTR_STATUS :: reserved1 [23:14] */
401#define INTR_INTR_STATUS_reserved1_MASK 0x00ffc000
402#define INTR_INTR_STATUS_reserved1_ALIGN 0
403#define INTR_INTR_STATUS_reserved1_BITS 10
404#define INTR_INTR_STATUS_reserved1_SHIFT 14
405
406/* INTR :: INTR_STATUS :: L1_UV_RX_DMA_ERR_INTR [13:13] */
407#define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_MASK 0x00002000
408#define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_ALIGN 0
409#define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_BITS 1
410#define INTR_INTR_STATUS_L1_UV_RX_DMA_ERR_INTR_SHIFT 13
411
412/* INTR :: INTR_STATUS :: L1_UV_RX_DMA_DONE_INTR [12:12] */
413#define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_MASK 0x00001000
414#define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_ALIGN 0
415#define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_BITS 1
416#define INTR_INTR_STATUS_L1_UV_RX_DMA_DONE_INTR_SHIFT 12
417
418/* INTR :: INTR_STATUS :: L1_Y_RX_DMA_ERR_INTR [11:11] */
419#define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_MASK 0x00000800
420#define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_ALIGN 0
421#define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_BITS 1
422#define INTR_INTR_STATUS_L1_Y_RX_DMA_ERR_INTR_SHIFT 11
423
424/* INTR :: INTR_STATUS :: L1_Y_RX_DMA_DONE_INTR [10:10] */
425#define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_MASK 0x00000400
426#define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_ALIGN 0
427#define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_BITS 1
428#define INTR_INTR_STATUS_L1_Y_RX_DMA_DONE_INTR_SHIFT 10
429
430/* INTR :: INTR_STATUS :: L1_TX_DMA_ERR_INTR [09:09] */
431#define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_MASK 0x00000200
432#define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_ALIGN 0
433#define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_BITS 1
434#define INTR_INTR_STATUS_L1_TX_DMA_ERR_INTR_SHIFT 9
435
436/* INTR :: INTR_STATUS :: L1_TX_DMA_DONE_INTR [08:08] */
437#define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_MASK 0x00000100
438#define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_ALIGN 0
439#define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_BITS 1
440#define INTR_INTR_STATUS_L1_TX_DMA_DONE_INTR_SHIFT 8
441
442/* INTR :: INTR_STATUS :: reserved2 [07:06] */
443#define INTR_INTR_STATUS_reserved2_MASK 0x000000c0
444#define INTR_INTR_STATUS_reserved2_ALIGN 0
445#define INTR_INTR_STATUS_reserved2_BITS 2
446#define INTR_INTR_STATUS_reserved2_SHIFT 6
447
448/* INTR :: INTR_STATUS :: L0_UV_RX_DMA_ERR_INTR [05:05] */
449#define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_MASK 0x00000020
450#define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_ALIGN 0
451#define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_BITS 1
452#define INTR_INTR_STATUS_L0_UV_RX_DMA_ERR_INTR_SHIFT 5
453
454/* INTR :: INTR_STATUS :: L0_UV_RX_DMA_DONE_INTR [04:04] */
455#define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_MASK 0x00000010
456#define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_ALIGN 0
457#define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_BITS 1
458#define INTR_INTR_STATUS_L0_UV_RX_DMA_DONE_INTR_SHIFT 4
459
460/* INTR :: INTR_STATUS :: L0_Y_RX_DMA_ERR_INTR [03:03] */
461#define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_MASK 0x00000008
462#define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_ALIGN 0
463#define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_BITS 1
464#define INTR_INTR_STATUS_L0_Y_RX_DMA_ERR_INTR_SHIFT 3
465
466/* INTR :: INTR_STATUS :: L0_Y_RX_DMA_DONE_INTR [02:02] */
467#define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_MASK 0x00000004
468#define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_ALIGN 0
469#define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_BITS 1
470#define INTR_INTR_STATUS_L0_Y_RX_DMA_DONE_INTR_SHIFT 2
471
472/* INTR :: INTR_STATUS :: L0_TX_DMA_ERR_INTR [01:01] */
473#define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_MASK 0x00000002
474#define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_ALIGN 0
475#define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_BITS 1
476#define INTR_INTR_STATUS_L0_TX_DMA_ERR_INTR_SHIFT 1
477
478/* INTR :: INTR_STATUS :: L0_TX_DMA_DONE_INTR [00:00] */
479#define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_MASK 0x00000001
480#define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_ALIGN 0
481#define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_BITS 1
482#define INTR_INTR_STATUS_L0_TX_DMA_DONE_INTR_SHIFT 0
483
484
485/****************************************************************************
Jarod Wilson7963eb42010-01-04 18:02:27 -0500486 * MISC1 :: TX_SW_DESC_LIST_CTRL_STS
487 ***************************************************************************/
488/* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: reserved0 [31:04] */
489#define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_MASK 0xfffffff0
490#define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_ALIGN 0
491#define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_BITS 28
492#define MISC1_TX_SW_DESC_LIST_CTRL_STS_reserved0_SHIFT 4
493
494/* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: DMA_DATA_SERV_PTR [03:03] */
495#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_MASK 0x00000008
496#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_ALIGN 0
497#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_BITS 1
498#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DMA_DATA_SERV_PTR_SHIFT 3
499
500/* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: DESC_SERV_PTR [02:02] */
501#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_MASK 0x00000004
502#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_ALIGN 0
503#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_BITS 1
504#define MISC1_TX_SW_DESC_LIST_CTRL_STS_DESC_SERV_PTR_SHIFT 2
505
506/* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: TX_DMA_HALT_ON_ERROR [01:01] */
507#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_MASK 0x00000002
508#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_ALIGN 0
509#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_BITS 1
510#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_HALT_ON_ERROR_SHIFT 1
511
512/* MISC1 :: TX_SW_DESC_LIST_CTRL_STS :: TX_DMA_RUN_STOP [00:00] */
513#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_MASK 0x00000001
514#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_ALIGN 0
515#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_BITS 1
516#define MISC1_TX_SW_DESC_LIST_CTRL_STS_TX_DMA_RUN_STOP_SHIFT 0
517
518
519/****************************************************************************
520 * MISC1 :: TX_DMA_ERROR_STATUS
521 ***************************************************************************/
522/* MISC1 :: TX_DMA_ERROR_STATUS :: reserved0 [31:10] */
523#define MISC1_TX_DMA_ERROR_STATUS_reserved0_MASK 0xfffffc00
524#define MISC1_TX_DMA_ERROR_STATUS_reserved0_ALIGN 0
525#define MISC1_TX_DMA_ERROR_STATUS_reserved0_BITS 22
526#define MISC1_TX_DMA_ERROR_STATUS_reserved0_SHIFT 10
527
528/* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L1_DESC_TX_ABORT_ERRORS [09:09] */
529#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_MASK 0x00000200
530#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_ALIGN 0
531#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_BITS 1
532#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DESC_TX_ABORT_ERRORS_SHIFT 9
533
534/* MISC1 :: TX_DMA_ERROR_STATUS :: reserved1 [08:08] */
535#define MISC1_TX_DMA_ERROR_STATUS_reserved1_MASK 0x00000100
536#define MISC1_TX_DMA_ERROR_STATUS_reserved1_ALIGN 0
537#define MISC1_TX_DMA_ERROR_STATUS_reserved1_BITS 1
538#define MISC1_TX_DMA_ERROR_STATUS_reserved1_SHIFT 8
539
540/* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L0_DESC_TX_ABORT_ERRORS [07:07] */
541#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_MASK 0x00000080
542#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_ALIGN 0
543#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_BITS 1
544#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DESC_TX_ABORT_ERRORS_SHIFT 7
545
546/* MISC1 :: TX_DMA_ERROR_STATUS :: reserved2 [06:06] */
547#define MISC1_TX_DMA_ERROR_STATUS_reserved2_MASK 0x00000040
548#define MISC1_TX_DMA_ERROR_STATUS_reserved2_ALIGN 0
549#define MISC1_TX_DMA_ERROR_STATUS_reserved2_BITS 1
550#define MISC1_TX_DMA_ERROR_STATUS_reserved2_SHIFT 6
551
552/* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L1_DMA_DATA_TX_ABORT_ERRORS [05:05] */
553#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_MASK 0x00000020
554#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_ALIGN 0
555#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_BITS 1
556#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_DMA_DATA_TX_ABORT_ERRORS_SHIFT 5
557
558/* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L1_FIFO_FULL_ERRORS [04:04] */
559#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_MASK 0x00000010
560#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_ALIGN 0
561#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_BITS 1
562#define MISC1_TX_DMA_ERROR_STATUS_TX_L1_FIFO_FULL_ERRORS_SHIFT 4
563
564/* MISC1 :: TX_DMA_ERROR_STATUS :: reserved3 [03:03] */
565#define MISC1_TX_DMA_ERROR_STATUS_reserved3_MASK 0x00000008
566#define MISC1_TX_DMA_ERROR_STATUS_reserved3_ALIGN 0
567#define MISC1_TX_DMA_ERROR_STATUS_reserved3_BITS 1
568#define MISC1_TX_DMA_ERROR_STATUS_reserved3_SHIFT 3
569
570/* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L0_DMA_DATA_TX_ABORT_ERRORS [02:02] */
571#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_MASK 0x00000004
572#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_ALIGN 0
573#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_BITS 1
574#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_DMA_DATA_TX_ABORT_ERRORS_SHIFT 2
575
576/* MISC1 :: TX_DMA_ERROR_STATUS :: TX_L0_FIFO_FULL_ERRORS [01:01] */
577#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_MASK 0x00000002
578#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_ALIGN 0
579#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_BITS 1
580#define MISC1_TX_DMA_ERROR_STATUS_TX_L0_FIFO_FULL_ERRORS_SHIFT 1
581
582/* MISC1 :: TX_DMA_ERROR_STATUS :: reserved4 [00:00] */
583#define MISC1_TX_DMA_ERROR_STATUS_reserved4_MASK 0x00000001
584#define MISC1_TX_DMA_ERROR_STATUS_reserved4_ALIGN 0
585#define MISC1_TX_DMA_ERROR_STATUS_reserved4_BITS 1
586#define MISC1_TX_DMA_ERROR_STATUS_reserved4_SHIFT 0
587
588
589/****************************************************************************
Jarod Wilson7963eb42010-01-04 18:02:27 -0500590 * MISC1 :: Y_RX_ERROR_STATUS
591 ***************************************************************************/
592/* MISC1 :: Y_RX_ERROR_STATUS :: reserved0 [31:14] */
593#define MISC1_Y_RX_ERROR_STATUS_reserved0_MASK 0xffffc000
594#define MISC1_Y_RX_ERROR_STATUS_reserved0_ALIGN 0
595#define MISC1_Y_RX_ERROR_STATUS_reserved0_BITS 18
596#define MISC1_Y_RX_ERROR_STATUS_reserved0_SHIFT 14
597
598/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_UNDERRUN_ERROR [13:13] */
599#define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK 0x00002000
600#define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_ALIGN 0
601#define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_BITS 1
602#define MISC1_Y_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_SHIFT 13
603
604/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_OVERRUN_ERROR [12:12] */
605#define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_MASK 0x00001000
606#define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_ALIGN 0
607#define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_BITS 1
608#define MISC1_Y_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_SHIFT 12
609
610/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_UNDERRUN_ERROR [11:11] */
611#define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK 0x00000800
612#define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_ALIGN 0
613#define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_BITS 1
614#define MISC1_Y_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_SHIFT 11
615
616/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_OVERRUN_ERROR [10:10] */
617#define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_MASK 0x00000400
618#define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_ALIGN 0
619#define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_BITS 1
620#define MISC1_Y_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_SHIFT 10
621
622/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_DESC_TX_ABORT_ERRORS [09:09] */
623#define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_MASK 0x00000200
624#define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_ALIGN 0
625#define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_BITS 1
626#define MISC1_Y_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_SHIFT 9
627
628/* MISC1 :: Y_RX_ERROR_STATUS :: reserved1 [08:08] */
629#define MISC1_Y_RX_ERROR_STATUS_reserved1_MASK 0x00000100
630#define MISC1_Y_RX_ERROR_STATUS_reserved1_ALIGN 0
631#define MISC1_Y_RX_ERROR_STATUS_reserved1_BITS 1
632#define MISC1_Y_RX_ERROR_STATUS_reserved1_SHIFT 8
633
634/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_DESC_TX_ABORT_ERRORS [07:07] */
635#define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_MASK 0x00000080
636#define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_ALIGN 0
637#define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_BITS 1
638#define MISC1_Y_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_SHIFT 7
639
640/* MISC1 :: Y_RX_ERROR_STATUS :: reserved2 [06:05] */
641#define MISC1_Y_RX_ERROR_STATUS_reserved2_MASK 0x00000060
642#define MISC1_Y_RX_ERROR_STATUS_reserved2_ALIGN 0
643#define MISC1_Y_RX_ERROR_STATUS_reserved2_BITS 2
644#define MISC1_Y_RX_ERROR_STATUS_reserved2_SHIFT 5
645
646/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L1_FIFO_FULL_ERRORS [04:04] */
647#define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK 0x00000010
648#define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_ALIGN 0
649#define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_BITS 1
650#define MISC1_Y_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_SHIFT 4
651
652/* MISC1 :: Y_RX_ERROR_STATUS :: reserved3 [03:02] */
653#define MISC1_Y_RX_ERROR_STATUS_reserved3_MASK 0x0000000c
654#define MISC1_Y_RX_ERROR_STATUS_reserved3_ALIGN 0
655#define MISC1_Y_RX_ERROR_STATUS_reserved3_BITS 2
656#define MISC1_Y_RX_ERROR_STATUS_reserved3_SHIFT 2
657
658/* MISC1 :: Y_RX_ERROR_STATUS :: RX_L0_FIFO_FULL_ERRORS [01:01] */
659#define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK 0x00000002
660#define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_ALIGN 0
661#define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_BITS 1
662#define MISC1_Y_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_SHIFT 1
663
664/* MISC1 :: Y_RX_ERROR_STATUS :: reserved4 [00:00] */
665#define MISC1_Y_RX_ERROR_STATUS_reserved4_MASK 0x00000001
666#define MISC1_Y_RX_ERROR_STATUS_reserved4_ALIGN 0
667#define MISC1_Y_RX_ERROR_STATUS_reserved4_BITS 1
668#define MISC1_Y_RX_ERROR_STATUS_reserved4_SHIFT 0
669
670
671/****************************************************************************
Jarod Wilson7963eb42010-01-04 18:02:27 -0500672 * MISC1 :: UV_RX_ERROR_STATUS
673 ***************************************************************************/
674/* MISC1 :: UV_RX_ERROR_STATUS :: reserved0 [31:14] */
675#define MISC1_UV_RX_ERROR_STATUS_reserved0_MASK 0xffffc000
676#define MISC1_UV_RX_ERROR_STATUS_reserved0_ALIGN 0
677#define MISC1_UV_RX_ERROR_STATUS_reserved0_BITS 18
678#define MISC1_UV_RX_ERROR_STATUS_reserved0_SHIFT 14
679
680/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_UNDERRUN_ERROR [13:13] */
681#define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_MASK 0x00002000
682#define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_ALIGN 0
683#define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_BITS 1
684#define MISC1_UV_RX_ERROR_STATUS_RX_L1_UNDERRUN_ERROR_SHIFT 13
685
686/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_OVERRUN_ERROR [12:12] */
687#define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_MASK 0x00001000
688#define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_ALIGN 0
689#define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_BITS 1
690#define MISC1_UV_RX_ERROR_STATUS_RX_L1_OVERRUN_ERROR_SHIFT 12
691
692/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_UNDERRUN_ERROR [11:11] */
693#define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_MASK 0x00000800
694#define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_ALIGN 0
695#define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_BITS 1
696#define MISC1_UV_RX_ERROR_STATUS_RX_L0_UNDERRUN_ERROR_SHIFT 11
697
698/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_OVERRUN_ERROR [10:10] */
699#define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_MASK 0x00000400
700#define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_ALIGN 0
701#define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_BITS 1
702#define MISC1_UV_RX_ERROR_STATUS_RX_L0_OVERRUN_ERROR_SHIFT 10
703
704/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_DESC_TX_ABORT_ERRORS [09:09] */
705#define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_MASK 0x00000200
706#define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_ALIGN 0
707#define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_BITS 1
708#define MISC1_UV_RX_ERROR_STATUS_RX_L1_DESC_TX_ABORT_ERRORS_SHIFT 9
709
710/* MISC1 :: UV_RX_ERROR_STATUS :: reserved1 [08:08] */
711#define MISC1_UV_RX_ERROR_STATUS_reserved1_MASK 0x00000100
712#define MISC1_UV_RX_ERROR_STATUS_reserved1_ALIGN 0
713#define MISC1_UV_RX_ERROR_STATUS_reserved1_BITS 1
714#define MISC1_UV_RX_ERROR_STATUS_reserved1_SHIFT 8
715
716/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_DESC_TX_ABORT_ERRORS [07:07] */
717#define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_MASK 0x00000080
718#define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_ALIGN 0
719#define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_BITS 1
720#define MISC1_UV_RX_ERROR_STATUS_RX_L0_DESC_TX_ABORT_ERRORS_SHIFT 7
721
722/* MISC1 :: UV_RX_ERROR_STATUS :: reserved2 [06:05] */
723#define MISC1_UV_RX_ERROR_STATUS_reserved2_MASK 0x00000060
724#define MISC1_UV_RX_ERROR_STATUS_reserved2_ALIGN 0
725#define MISC1_UV_RX_ERROR_STATUS_reserved2_BITS 2
726#define MISC1_UV_RX_ERROR_STATUS_reserved2_SHIFT 5
727
728/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L1_FIFO_FULL_ERRORS [04:04] */
729#define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_MASK 0x00000010
730#define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_ALIGN 0
731#define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_BITS 1
732#define MISC1_UV_RX_ERROR_STATUS_RX_L1_FIFO_FULL_ERRORS_SHIFT 4
733
734/* MISC1 :: UV_RX_ERROR_STATUS :: reserved3 [03:02] */
735#define MISC1_UV_RX_ERROR_STATUS_reserved3_MASK 0x0000000c
736#define MISC1_UV_RX_ERROR_STATUS_reserved3_ALIGN 0
737#define MISC1_UV_RX_ERROR_STATUS_reserved3_BITS 2
738#define MISC1_UV_RX_ERROR_STATUS_reserved3_SHIFT 2
739
740/* MISC1 :: UV_RX_ERROR_STATUS :: RX_L0_FIFO_FULL_ERRORS [01:01] */
741#define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_MASK 0x00000002
742#define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_ALIGN 0
743#define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_BITS 1
744#define MISC1_UV_RX_ERROR_STATUS_RX_L0_FIFO_FULL_ERRORS_SHIFT 1
745
746/* MISC1 :: UV_RX_ERROR_STATUS :: reserved4 [00:00] */
747#define MISC1_UV_RX_ERROR_STATUS_reserved4_MASK 0x00000001
748#define MISC1_UV_RX_ERROR_STATUS_reserved4_ALIGN 0
749#define MISC1_UV_RX_ERROR_STATUS_reserved4_BITS 1
750#define MISC1_UV_RX_ERROR_STATUS_reserved4_SHIFT 0
751
Jarod Wilson7963eb42010-01-04 18:02:27 -0500752/****************************************************************************
753 * Datatype Definitions.
754 ***************************************************************************/
755#endif /* #ifndef MACFILE_H__ */
756
757/* End of File */
758