aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bnx2x_reg.h
diff options
context:
space:
mode:
authorYaniv Rosner <yanivr@broadcom.com>2008-06-23 23:27:52 -0400
committerDavid S. Miller <davem@davemloft.net>2008-06-23 23:27:52 -0400
commitc18487ee24381b40df3b8b4f54dd13ee9367a1ce (patch)
tree0c52df7c30f0789fd7509426c38b2d1551c444b9 /drivers/net/bnx2x_reg.h
parentea4e040abc72f2dbbfdd8d04e271a18593ba72c7 (diff)
bnx2x: New link code
New Link code: Moving all the link related code (including the calculations, the initialization of the MAC and PHY and the external PHY's code) into a separated file. The changes from the code that used to be part of bnx2x.c (now called bnx2x_main.c) are: - Using separate structures for link inputs and link outputs to clearly identify what was configured and what is the outcome - Adding code to read external PHY FW version and print it as part of ethtool -i - Adding code to upgrade external PHY FW from ethtool -E with special magic number - Changing the link down indication to ERR level - Adding a lock on all PHY access to prevent an interrupt and setting changes to overlap - Adding support for emulation and FPGA (small chunk of code that really helps in the lab) - Adding support for 1G on BCM8706 PHY - Adding clear debug print incase of fan failure (the PHY type is now "failure") Signed-off-by: Yaniv Rosner <yanivr@broadcom.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bnx2x_reg.h')
-rw-r--r--drivers/net/bnx2x_reg.h1939
1 files changed, 1475 insertions, 464 deletions
diff --git a/drivers/net/bnx2x_reg.h b/drivers/net/bnx2x_reg.h
index 5a1aa0b55044..8707c0d05d9a 100644
--- a/drivers/net/bnx2x_reg.h
+++ b/drivers/net/bnx2x_reg.h
@@ -72,6 +72,8 @@
72#define CCM_REG_CCM_INT_MASK 0xd01e4 72#define CCM_REG_CCM_INT_MASK 0xd01e4
73/* [R 11] Interrupt register #0 read */ 73/* [R 11] Interrupt register #0 read */
74#define CCM_REG_CCM_INT_STS 0xd01d8 74#define CCM_REG_CCM_INT_STS 0xd01d8
75/* [R 27] Parity register #0 read */
76#define CCM_REG_CCM_PRTY_STS 0xd01e8
75/* [RW 3] The size of AG context region 0 in REG-pairs. Designates the MS 77/* [RW 3] The size of AG context region 0 in REG-pairs. Designates the MS
76 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5). 78 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5).
77 Is used to determine the number of the AG context REG-pairs written back; 79 Is used to determine the number of the AG context REG-pairs written back;
@@ -190,25 +192,20 @@
190 weight 8 (the most prioritised); 1 stands for weight 1(least 192 weight 8 (the most prioritised); 1 stands for weight 1(least
191 prioritised); 2 stands for weight 2; tc. */ 193 prioritised); 2 stands for weight 2; tc. */
192#define CCM_REG_PBF_WEIGHT 0xd00ac 194#define CCM_REG_PBF_WEIGHT 0xd00ac
193/* [RW 6] The physical queue number of queue number 1 per port index. */
194#define CCM_REG_PHYS_QNUM1_0 0xd0134 195#define CCM_REG_PHYS_QNUM1_0 0xd0134
195#define CCM_REG_PHYS_QNUM1_1 0xd0138 196#define CCM_REG_PHYS_QNUM1_1 0xd0138
196/* [RW 6] The physical queue number of queue number 2 per port index. */
197#define CCM_REG_PHYS_QNUM2_0 0xd013c 197#define CCM_REG_PHYS_QNUM2_0 0xd013c
198#define CCM_REG_PHYS_QNUM2_1 0xd0140 198#define CCM_REG_PHYS_QNUM2_1 0xd0140
199/* [RW 6] The physical queue number of queue number 3 per port index. */
200#define CCM_REG_PHYS_QNUM3_0 0xd0144 199#define CCM_REG_PHYS_QNUM3_0 0xd0144
201/* [RW 6] The physical queue number of queue number 0 with QOS equal 0 port 200#define CCM_REG_PHYS_QNUM3_1 0xd0148
202 index 0. */
203#define CCM_REG_QOS_PHYS_QNUM0_0 0xd0114 201#define CCM_REG_QOS_PHYS_QNUM0_0 0xd0114
204#define CCM_REG_QOS_PHYS_QNUM0_1 0xd0118 202#define CCM_REG_QOS_PHYS_QNUM0_1 0xd0118
205/* [RW 6] The physical queue number of queue number 0 with QOS equal 1 port
206 index 0. */
207#define CCM_REG_QOS_PHYS_QNUM1_0 0xd011c 203#define CCM_REG_QOS_PHYS_QNUM1_0 0xd011c
208#define CCM_REG_QOS_PHYS_QNUM1_1 0xd0120 204#define CCM_REG_QOS_PHYS_QNUM1_1 0xd0120
209/* [RW 6] The physical queue number of queue number 0 with QOS equal 2 port
210 index 0. */
211#define CCM_REG_QOS_PHYS_QNUM2_0 0xd0124 205#define CCM_REG_QOS_PHYS_QNUM2_0 0xd0124
206#define CCM_REG_QOS_PHYS_QNUM2_1 0xd0128
207#define CCM_REG_QOS_PHYS_QNUM3_0 0xd012c
208#define CCM_REG_QOS_PHYS_QNUM3_1 0xd0130
212/* [RW 1] STORM - CM Interface enable. If 0 - the valid input is 209/* [RW 1] STORM - CM Interface enable. If 0 - the valid input is
213 disregarded; acknowledge output is deasserted; all other signals are 210 disregarded; acknowledge output is deasserted; all other signals are
214 treated as usual; if 1 - normal activity. */ 211 treated as usual; if 1 - normal activity. */
@@ -253,6 +250,7 @@
253 mechanism. The fields are: [5:0] - message length; [12:6] - message 250 mechanism. The fields are: [5:0] - message length; [12:6] - message
254 pointer; 18:13] - next pointer. */ 251 pointer; 18:13] - next pointer. */
255#define CCM_REG_XX_DESCR_TABLE 0xd0300 252#define CCM_REG_XX_DESCR_TABLE 0xd0300
253#define CCM_REG_XX_DESCR_TABLE_SIZE 36
256/* [R 7] Used to read the value of XX protection Free counter. */ 254/* [R 7] Used to read the value of XX protection Free counter. */
257#define CCM_REG_XX_FREE 0xd0184 255#define CCM_REG_XX_FREE 0xd0184
258/* [RW 6] Initial value for the credit counter; responsible for fulfilling 256/* [RW 6] Initial value for the credit counter; responsible for fulfilling
@@ -296,6 +294,8 @@
296/* [WB 24] MATT ram access. each entry has the following 294/* [WB 24] MATT ram access. each entry has the following
297 format:{RegionLength[11:0]; egionOffset[11:0]} */ 295 format:{RegionLength[11:0]; egionOffset[11:0]} */
298#define CDU_REG_MATT 0x101100 296#define CDU_REG_MATT 0x101100
297/* [RW 1] when this bit is set the CDU operates in e1hmf mode */
298#define CDU_REG_MF_MODE 0x101050
299/* [R 1] indication the initializing the activity counter by the hardware 299/* [R 1] indication the initializing the activity counter by the hardware
300 was done. */ 300 was done. */
301#define CFC_REG_AC_INIT_DONE 0x104078 301#define CFC_REG_AC_INIT_DONE 0x104078
@@ -330,6 +330,9 @@
330 field allows changing the priorities of the weighted-round-robin arbiter 330 field allows changing the priorities of the weighted-round-robin arbiter
331 which selects which CFC load client should be served next */ 331 which selects which CFC load client should be served next */
332#define CFC_REG_LCREQ_WEIGHTS 0x104084 332#define CFC_REG_LCREQ_WEIGHTS 0x104084
333/* [RW 16] Link List ram access; data = {prev_lcid; ext_lcid} */
334#define CFC_REG_LINK_LIST 0x104c00
335#define CFC_REG_LINK_LIST_SIZE 256
333/* [R 1] indication the initializing the link list by the hardware was done. */ 336/* [R 1] indication the initializing the link list by the hardware was done. */
334#define CFC_REG_LL_INIT_DONE 0x104074 337#define CFC_REG_LL_INIT_DONE 0x104074
335/* [R 9] Number of allocated LCIDs which are at empty state */ 338/* [R 9] Number of allocated LCIDs which are at empty state */
@@ -342,6 +345,45 @@
342#define CFC_REG_NUM_LCIDS_LEAVING 0x104018 345#define CFC_REG_NUM_LCIDS_LEAVING 0x104018
343/* [RW 8] The event id for aggregated interrupt 0 */ 346/* [RW 8] The event id for aggregated interrupt 0 */
344#define CSDM_REG_AGG_INT_EVENT_0 0xc2038 347#define CSDM_REG_AGG_INT_EVENT_0 0xc2038
348#define CSDM_REG_AGG_INT_EVENT_1 0xc203c
349#define CSDM_REG_AGG_INT_EVENT_10 0xc2060
350#define CSDM_REG_AGG_INT_EVENT_11 0xc2064
351#define CSDM_REG_AGG_INT_EVENT_12 0xc2068
352#define CSDM_REG_AGG_INT_EVENT_13 0xc206c
353#define CSDM_REG_AGG_INT_EVENT_14 0xc2070
354#define CSDM_REG_AGG_INT_EVENT_15 0xc2074
355#define CSDM_REG_AGG_INT_EVENT_16 0xc2078
356#define CSDM_REG_AGG_INT_EVENT_17 0xc207c
357#define CSDM_REG_AGG_INT_EVENT_18 0xc2080
358#define CSDM_REG_AGG_INT_EVENT_19 0xc2084
359#define CSDM_REG_AGG_INT_EVENT_2 0xc2040
360#define CSDM_REG_AGG_INT_EVENT_20 0xc2088
361#define CSDM_REG_AGG_INT_EVENT_21 0xc208c
362#define CSDM_REG_AGG_INT_EVENT_22 0xc2090
363#define CSDM_REG_AGG_INT_EVENT_23 0xc2094
364#define CSDM_REG_AGG_INT_EVENT_24 0xc2098
365#define CSDM_REG_AGG_INT_EVENT_25 0xc209c
366#define CSDM_REG_AGG_INT_EVENT_26 0xc20a0
367#define CSDM_REG_AGG_INT_EVENT_27 0xc20a4
368#define CSDM_REG_AGG_INT_EVENT_28 0xc20a8
369#define CSDM_REG_AGG_INT_EVENT_29 0xc20ac
370#define CSDM_REG_AGG_INT_EVENT_3 0xc2044
371#define CSDM_REG_AGG_INT_EVENT_30 0xc20b0
372#define CSDM_REG_AGG_INT_EVENT_31 0xc20b4
373#define CSDM_REG_AGG_INT_EVENT_4 0xc2048
374/* [RW 1] The T bit for aggregated interrupt 0 */
375#define CSDM_REG_AGG_INT_T_0 0xc20b8
376#define CSDM_REG_AGG_INT_T_1 0xc20bc
377#define CSDM_REG_AGG_INT_T_10 0xc20e0
378#define CSDM_REG_AGG_INT_T_11 0xc20e4
379#define CSDM_REG_AGG_INT_T_12 0xc20e8
380#define CSDM_REG_AGG_INT_T_13 0xc20ec
381#define CSDM_REG_AGG_INT_T_14 0xc20f0
382#define CSDM_REG_AGG_INT_T_15 0xc20f4
383#define CSDM_REG_AGG_INT_T_16 0xc20f8
384#define CSDM_REG_AGG_INT_T_17 0xc20fc
385#define CSDM_REG_AGG_INT_T_18 0xc2100
386#define CSDM_REG_AGG_INT_T_19 0xc2104
345/* [RW 13] The start address in the internal RAM for the cfc_rsp lcid */ 387/* [RW 13] The start address in the internal RAM for the cfc_rsp lcid */
346#define CSDM_REG_CFC_RSP_START_ADDR 0xc2008 388#define CSDM_REG_CFC_RSP_START_ADDR 0xc2008
347/* [RW 16] The maximum value of the competion counter #0 */ 389/* [RW 16] The maximum value of the competion counter #0 */
@@ -358,6 +400,9 @@
358/* [RW 32] Interrupt mask register #0 read/write */ 400/* [RW 32] Interrupt mask register #0 read/write */
359#define CSDM_REG_CSDM_INT_MASK_0 0xc229c 401#define CSDM_REG_CSDM_INT_MASK_0 0xc229c
360#define CSDM_REG_CSDM_INT_MASK_1 0xc22ac 402#define CSDM_REG_CSDM_INT_MASK_1 0xc22ac
403/* [R 32] Interrupt register #0 read */
404#define CSDM_REG_CSDM_INT_STS_0 0xc2290
405#define CSDM_REG_CSDM_INT_STS_1 0xc22a0
361/* [RW 11] Parity mask register #0 read/write */ 406/* [RW 11] Parity mask register #0 read/write */
362#define CSDM_REG_CSDM_PRTY_MASK 0xc22bc 407#define CSDM_REG_CSDM_PRTY_MASK 0xc22bc
363/* [R 11] Parity register #0 read */ 408/* [R 11] Parity register #0 read */
@@ -443,6 +488,9 @@
443/* [RW 32] Interrupt mask register #0 read/write */ 488/* [RW 32] Interrupt mask register #0 read/write */
444#define CSEM_REG_CSEM_INT_MASK_0 0x200110 489#define CSEM_REG_CSEM_INT_MASK_0 0x200110
445#define CSEM_REG_CSEM_INT_MASK_1 0x200120 490#define CSEM_REG_CSEM_INT_MASK_1 0x200120
491/* [R 32] Interrupt register #0 read */
492#define CSEM_REG_CSEM_INT_STS_0 0x200104
493#define CSEM_REG_CSEM_INT_STS_1 0x200114
446/* [RW 32] Parity mask register #0 read/write */ 494/* [RW 32] Parity mask register #0 read/write */
447#define CSEM_REG_CSEM_PRTY_MASK_0 0x200130 495#define CSEM_REG_CSEM_PRTY_MASK_0 0x200130
448#define CSEM_REG_CSEM_PRTY_MASK_1 0x200140 496#define CSEM_REG_CSEM_PRTY_MASK_1 0x200140
@@ -453,9 +501,8 @@
453#define CSEM_REG_ENABLE_OUT 0x2000a8 501#define CSEM_REG_ENABLE_OUT 0x2000a8
454/* [RW 32] This address space contains all registers and memories that are 502/* [RW 32] This address space contains all registers and memories that are
455 placed in SEM_FAST block. The SEM_FAST registers are described in 503 placed in SEM_FAST block. The SEM_FAST registers are described in
456 appendix B. In order to access the SEM_FAST registers the base address 504 appendix B. In order to access the sem_fast registers the base address
457 CSEM_REGISTERS_FAST_MEMORY (Offset: 0x220000) should be added to each 505 ~fast_memory.fast_memory should be added to eachsem_fast register offset. */
458 SEM_FAST register offset. */
459#define CSEM_REG_FAST_MEMORY 0x220000 506#define CSEM_REG_FAST_MEMORY 0x220000
460/* [RW 1] Disables input messages from FIC0 May be updated during run_time 507/* [RW 1] Disables input messages from FIC0 May be updated during run_time
461 by the microcode */ 508 by the microcode */
@@ -466,6 +513,7 @@
466/* [RW 15] Interrupt table Read and write access to it is not possible in 513/* [RW 15] Interrupt table Read and write access to it is not possible in
467 the middle of the work */ 514 the middle of the work */
468#define CSEM_REG_INT_TABLE 0x200400 515#define CSEM_REG_INT_TABLE 0x200400
516#define CSEM_REG_INT_TABLE_SIZE 256
469/* [ST 24] Statistics register. The number of messages that entered through 517/* [ST 24] Statistics register. The number of messages that entered through
470 FIC0 */ 518 FIC0 */
471#define CSEM_REG_MSG_NUM_FIC0 0x200000 519#define CSEM_REG_MSG_NUM_FIC0 0x200000
@@ -630,6 +678,8 @@
630#define DORQ_REG_AGG_CMD3 0x17006c 678#define DORQ_REG_AGG_CMD3 0x17006c
631/* [RW 28] UCM Header. */ 679/* [RW 28] UCM Header. */
632#define DORQ_REG_CMHEAD_RX 0x170050 680#define DORQ_REG_CMHEAD_RX 0x170050
681/* [RW 32] Doorbell address for RBC doorbells (function 0). */
682#define DORQ_REG_DB_ADDR0 0x17008c
633/* [RW 5] Interrupt mask register #0 read/write */ 683/* [RW 5] Interrupt mask register #0 read/write */
634#define DORQ_REG_DORQ_INT_MASK 0x170180 684#define DORQ_REG_DORQ_INT_MASK 0x170180
635/* [R 5] Interrupt register #0 read */ 685/* [R 5] Interrupt register #0 read */
@@ -690,75 +740,33 @@
690#define HC_CONFIG_0_REG_SINGLE_ISR_EN_0 (0x1<<1) 740#define HC_CONFIG_0_REG_SINGLE_ISR_EN_0 (0x1<<1)
691#define HC_REG_AGG_INT_0 0x108050 741#define HC_REG_AGG_INT_0 0x108050
692#define HC_REG_AGG_INT_1 0x108054 742#define HC_REG_AGG_INT_1 0x108054
693/* [RW 16] attention bit and attention acknowledge bits status for port 0
694 and 1 according to the following address map: addr 0 - attn_bit_0; addr 1
695 - attn_ack_bit_0; addr 2 - attn_bit_1; addr 3 - attn_ack_bit_1; */
696#define HC_REG_ATTN_BIT 0x108120 743#define HC_REG_ATTN_BIT 0x108120
697/* [RW 16] attn bits status index for attn bit msg; addr 0 - function 0;
698 addr 1 - functin 1 */
699#define HC_REG_ATTN_IDX 0x108100 744#define HC_REG_ATTN_IDX 0x108100
700/* [RW 32] port 0 lower 32 bits address field for attn messag. */
701#define HC_REG_ATTN_MSG0_ADDR_L 0x108018 745#define HC_REG_ATTN_MSG0_ADDR_L 0x108018
702/* [RW 32] port 1 lower 32 bits address field for attn messag. */
703#define HC_REG_ATTN_MSG1_ADDR_L 0x108020 746#define HC_REG_ATTN_MSG1_ADDR_L 0x108020
704/* [RW 8] status block number for attn bit msg - function 0; */
705#define HC_REG_ATTN_NUM_P0 0x108038 747#define HC_REG_ATTN_NUM_P0 0x108038
706/* [RW 8] status block number for attn bit msg - function 1 */
707#define HC_REG_ATTN_NUM_P1 0x10803c 748#define HC_REG_ATTN_NUM_P1 0x10803c
708#define HC_REG_CONFIG_0 0x108000 749#define HC_REG_CONFIG_0 0x108000
709#define HC_REG_CONFIG_1 0x108004 750#define HC_REG_CONFIG_1 0x108004
751#define HC_REG_FUNC_NUM_P0 0x1080ac
752#define HC_REG_FUNC_NUM_P1 0x1080b0
710/* [RW 3] Parity mask register #0 read/write */ 753/* [RW 3] Parity mask register #0 read/write */
711#define HC_REG_HC_PRTY_MASK 0x1080a0 754#define HC_REG_HC_PRTY_MASK 0x1080a0
712/* [R 3] Parity register #0 read */ 755/* [R 3] Parity register #0 read */
713#define HC_REG_HC_PRTY_STS 0x108094 756#define HC_REG_HC_PRTY_STS 0x108094
714/* [RW 17] status block interrupt mask; one in each bit means unmask; zerow
715 in each bit means mask; bit 0 - default SB; bit 1 - SB_0; bit 2 - SB_1...
716 bit 16- SB_15; addr 0 - port 0; addr 1 - port 1 */
717#define HC_REG_INT_MASK 0x108108 757#define HC_REG_INT_MASK 0x108108
718/* [RW 16] port 0 attn bit condition monitoring; each bit that is set will
719 lock a change fron 0 to 1 in the corresponding attention signals that
720 comes from the AEU */
721#define HC_REG_LEADING_EDGE_0 0x108040 758#define HC_REG_LEADING_EDGE_0 0x108040
722#define HC_REG_LEADING_EDGE_1 0x108048 759#define HC_REG_LEADING_EDGE_1 0x108048
723/* [RW 16] all producer and consumer of port 0 according to the following
724 addresses; U_prod: 0-15; C_prod: 16-31; U_cons: 32-47; C_cons:48-63;
725 Defoult_prod: U/C/X/T/Attn-64/65/66/67/68; Defoult_cons:
726 U/C/X/T/Attn-69/70/71/72/73 */
727#define HC_REG_P0_PROD_CONS 0x108200 760#define HC_REG_P0_PROD_CONS 0x108200
728/* [RW 16] all producer and consumer of port 1according to the following
729 addresses; U_prod: 0-15; C_prod: 16-31; U_cons: 32-47; C_cons:48-63;
730 Defoult_prod: U/C/X/T/Attn-64/65/66/67/68; Defoult_cons:
731 U/C/X/T/Attn-69/70/71/72/73 */
732#define HC_REG_P1_PROD_CONS 0x108400 761#define HC_REG_P1_PROD_CONS 0x108400
733/* [W 1] This register is write only and has 4 addresses as follow: 0 =
734 clear all PBA bits port 0; 1 = clear all pending interrupts request
735 port0; 2 = clear all PBA bits port 1; 3 = clear all pending interrupts
736 request port1; here is no meaning for the data in this register */
737#define HC_REG_PBA_COMMAND 0x108140 762#define HC_REG_PBA_COMMAND 0x108140
738#define HC_REG_PCI_CONFIG_0 0x108010 763#define HC_REG_PCI_CONFIG_0 0x108010
739#define HC_REG_PCI_CONFIG_1 0x108014 764#define HC_REG_PCI_CONFIG_1 0x108014
740/* [RW 24] all counters acording to the following address: LSB: 0=read; 1=
741 read_clear; 0-71 = HW counters (the inside order is the same as the
742 interrupt table in the spec); 72-219 = SW counters 1 (stops after first
743 consumer upd) the inside order is: 72-103 - U_non_default_p0; 104-135
744 C_non_defaul_p0; 36-145 U/C/X/T/Attn_default_p0; 146-177
745 U_non_default_p1; 178-209 C_non_defaul_p1; 10-219 U/C/X/T/Attn_default_p1
746 ; 220-367 = SW counters 2 (stops when prod=cons) the inside order is:
747 220-251 - U_non_default_p0; 252-283 C_non_defaul_p0; 84-293
748 U/C/X/T/Attn_default_p0; 294-325 U_non_default_p1; 326-357
749 C_non_defaul_p1; 58-367 U/C/X/T/Attn_default_p1 ; 368-515 = mailbox
750 counters; (the inside order of the mailbox counter is 368-431 U and C
751 non_default_p0; 432-441 U/C/X/T/Attn_default_p0; 442-505 U and C
752 non_default_p1; 506-515 U/C/X/T/Attn_default_p1) */
753#define HC_REG_STATISTIC_COUNTERS 0x109000 765#define HC_REG_STATISTIC_COUNTERS 0x109000
754/* [RW 16] port 0 attn bit condition monitoring; each bit that is set will
755 lock a change fron 1 to 0 in the corresponding attention signals that
756 comes from the AEU */
757#define HC_REG_TRAILING_EDGE_0 0x108044 766#define HC_REG_TRAILING_EDGE_0 0x108044
758#define HC_REG_TRAILING_EDGE_1 0x10804c 767#define HC_REG_TRAILING_EDGE_1 0x10804c
759#define HC_REG_UC_RAM_ADDR_0 0x108028 768#define HC_REG_UC_RAM_ADDR_0 0x108028
760#define HC_REG_UC_RAM_ADDR_1 0x108030 769#define HC_REG_UC_RAM_ADDR_1 0x108030
761/* [RW 16] ustorm address for coalesc now message */
762#define HC_REG_USTORM_ADDR_FOR_COALESCE 0x108068 770#define HC_REG_USTORM_ADDR_FOR_COALESCE 0x108068
763#define HC_REG_VQID_0 0x108008 771#define HC_REG_VQID_0 0x108008
764#define HC_REG_VQID_1 0x10800c 772#define HC_REG_VQID_1 0x10800c
@@ -883,14 +891,16 @@
883 rom_parity; [29] MCP Latched ump_rx_parity; [30] MCP Latched 891 rom_parity; [29] MCP Latched ump_rx_parity; [30] MCP Latched
884 ump_tx_parity; [31] MCP Latched scpad_parity; */ 892 ump_tx_parity; [31] MCP Latched scpad_parity; */
885#define MISC_REG_AEU_AFTER_INVERT_4_MCP 0xa458 893#define MISC_REG_AEU_AFTER_INVERT_4_MCP 0xa458
886/* [W 11] write to this register results with the clear of the latched 894/* [W 14] write to this register results with the clear of the latched
887 signals; one in d0 clears RBCR latch; one in d1 clears RBCT latch; one in 895 signals; one in d0 clears RBCR latch; one in d1 clears RBCT latch; one in
888 d2 clears RBCN latch; one in d3 clears RBCU latch; one in d4 clears RBCP 896 d2 clears RBCN latch; one in d3 clears RBCU latch; one in d4 clears RBCP
889 latch; one in d5 clears GRC Latched timeout attention; one in d6 clears 897 latch; one in d5 clears GRC Latched timeout attention; one in d6 clears
890 GRC Latched reserved access attention; one in d7 clears Latched 898 GRC Latched reserved access attention; one in d7 clears Latched
891 rom_parity; one in d8 clears Latched ump_rx_parity; one in d9 clears 899 rom_parity; one in d8 clears Latched ump_rx_parity; one in d9 clears
892 Latched ump_tx_parity; one in d10 clears Latched scpad_parity; read from 900 Latched ump_tx_parity; one in d10 clears Latched scpad_parity (both
893 this register return zero */ 901 ports); one in d11 clears pxpv_misc_mps_attn; one in d12 clears
902 pxp_misc_exp_rom_attn0; one in d13 clears pxp_misc_exp_rom_attn1; read
903 from this register return zero */
894#define MISC_REG_AEU_CLR_LATCH_SIGNAL 0xa45c 904#define MISC_REG_AEU_CLR_LATCH_SIGNAL 0xa45c
895/* [RW 32] first 32b for enabling the output for function 0 output0. mapped 905/* [RW 32] first 32b for enabling the output for function 0 output0. mapped
896 as follows: [0] NIG attention for function0; [1] NIG attention for 906 as follows: [0] NIG attention for function0; [1] NIG attention for
@@ -907,7 +917,11 @@
907 TSEMI Hw interrupt; [30] PBF Parity error; [31] PBF Hw interrupt; */ 917 TSEMI Hw interrupt; [30] PBF Parity error; [31] PBF Hw interrupt; */
908#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_0 0xa06c 918#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_0 0xa06c
909#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_1 0xa07c 919#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_1 0xa07c
920#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_2 0xa08c
910#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_3 0xa09c 921#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_3 0xa09c
922#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_5 0xa0bc
923#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_6 0xa0cc
924#define MISC_REG_AEU_ENABLE1_FUNC_0_OUT_7 0xa0dc
911/* [RW 32] first 32b for enabling the output for function 1 output0. mapped 925/* [RW 32] first 32b for enabling the output for function 1 output0. mapped
912 as follows: [0] NIG attention for function0; [1] NIG attention for 926 as follows: [0] NIG attention for function0; [1] NIG attention for
913 function1; [2] GPIO1 function 1; [3] GPIO2 function 1; [4] GPIO3 function 927 function1; [2] GPIO1 function 1; [3] GPIO2 function 1; [4] GPIO3 function
@@ -923,9 +937,13 @@
923 TSEMI Hw interrupt; [30] PBF Parity error; [31] PBF Hw interrupt; */ 937 TSEMI Hw interrupt; [30] PBF Parity error; [31] PBF Hw interrupt; */
924#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_0 0xa10c 938#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_0 0xa10c
925#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_1 0xa11c 939#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_1 0xa11c
940#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_2 0xa12c
926#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_3 0xa13c 941#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_3 0xa13c
927/* [RW 32] first 32b for enabling the output for close the gate nig 0. 942#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_5 0xa15c
928 mapped as follows: [0] NIG attention for function0; [1] NIG attention for 943#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_6 0xa16c
944#define MISC_REG_AEU_ENABLE1_FUNC_1_OUT_7 0xa17c
945/* [RW 32] first 32b for enabling the output for close the gate nig. mapped
946 as follows: [0] NIG attention for function0; [1] NIG attention for
929 function1; [2] GPIO1 function 0; [3] GPIO2 function 0; [4] GPIO3 function 947 function1; [2] GPIO1 function 0; [3] GPIO2 function 0; [4] GPIO3 function
930 0; [5] GPIO4 function 0; [6] GPIO1 function 1; [7] GPIO2 function 1; [8] 948 0; [5] GPIO4 function 0; [6] GPIO1 function 1; [7] GPIO2 function 1; [8]
931 GPIO3 function 1; [9] GPIO4 function 1; [10] PCIE glue/PXP VPD event 949 GPIO3 function 1; [9] GPIO4 function 1; [10] PCIE glue/PXP VPD event
@@ -939,8 +957,8 @@
939 TSEMI Hw interrupt; [30] PBF Parity error; [31] PBF Hw interrupt; */ 957 TSEMI Hw interrupt; [30] PBF Parity error; [31] PBF Hw interrupt; */
940#define MISC_REG_AEU_ENABLE1_NIG_0 0xa0ec 958#define MISC_REG_AEU_ENABLE1_NIG_0 0xa0ec
941#define MISC_REG_AEU_ENABLE1_NIG_1 0xa18c 959#define MISC_REG_AEU_ENABLE1_NIG_1 0xa18c
942/* [RW 32] first 32b for enabling the output for close the gate pxp 0. 960/* [RW 32] first 32b for enabling the output for close the gate pxp. mapped
943 mapped as follows: [0] NIG attention for function0; [1] NIG attention for 961 as follows: [0] NIG attention for function0; [1] NIG attention for
944 function1; [2] GPIO1 function 0; [3] GPIO2 function 0; [4] GPIO3 function 962 function1; [2] GPIO1 function 0; [3] GPIO2 function 0; [4] GPIO3 function
945 0; [5] GPIO4 function 0; [6] GPIO1 function 1; [7] GPIO2 function 1; [8] 963 0; [5] GPIO4 function 0; [6] GPIO1 function 1; [7] GPIO2 function 1; [8]
946 GPIO3 function 1; [9] GPIO4 function 1; [10] PCIE glue/PXP VPD event 964 GPIO3 function 1; [9] GPIO4 function 1; [10] PCIE glue/PXP VPD event
@@ -984,34 +1002,34 @@
984 interrupt; */ 1002 interrupt; */
985#define MISC_REG_AEU_ENABLE2_FUNC_1_OUT_0 0xa110 1003#define MISC_REG_AEU_ENABLE2_FUNC_1_OUT_0 0xa110
986#define MISC_REG_AEU_ENABLE2_FUNC_1_OUT_1 0xa120 1004#define MISC_REG_AEU_ENABLE2_FUNC_1_OUT_1 0xa120
987/* [RW 32] second 32b for enabling the output for close the gate nig 0. 1005/* [RW 32] second 32b for enabling the output for close the gate nig. mapped
988 mapped as follows: [0] PBClient Parity error; [1] PBClient Hw interrupt; 1006 as follows: [0] PBClient Parity error; [1] PBClient Hw interrupt; [2] QM
989 [2] QM Parity error; [3] QM Hw interrupt; [4] Timers Parity error; [5] 1007 Parity error; [3] QM Hw interrupt; [4] Timers Parity error; [5] Timers Hw
990 Timers Hw interrupt; [6] XSDM Parity error; [7] XSDM Hw interrupt; [8] 1008 interrupt; [6] XSDM Parity error; [7] XSDM Hw interrupt; [8] XCM Parity
991 XCM Parity error; [9] XCM Hw interrupt; [10] XSEMI Parity error; [11] 1009 error; [9] XCM Hw interrupt; [10] XSEMI Parity error; [11] XSEMI Hw
992 XSEMI Hw interrupt; [12] DoorbellQ Parity error; [13] DoorbellQ Hw 1010 interrupt; [12] DoorbellQ Parity error; [13] DoorbellQ Hw interrupt; [14]
993 interrupt; [14] NIG Parity error; [15] NIG Hw interrupt; [16] Vaux PCI 1011 NIG Parity error; [15] NIG Hw interrupt; [16] Vaux PCI core Parity error;
994 core Parity error; [17] Vaux PCI core Hw interrupt; [18] Debug Parity 1012 [17] Vaux PCI core Hw interrupt; [18] Debug Parity error; [19] Debug Hw
995 error; [19] Debug Hw interrupt; [20] USDM Parity error; [21] USDM Hw 1013 interrupt; [20] USDM Parity error; [21] USDM Hw interrupt; [22] UCM
996 interrupt; [22] UCM Parity error; [23] UCM Hw interrupt; [24] USEMI 1014 Parity error; [23] UCM Hw interrupt; [24] USEMI Parity error; [25] USEMI
997 Parity error; [25] USEMI Hw interrupt; [26] UPB Parity error; [27] UPB Hw 1015 Hw interrupt; [26] UPB Parity error; [27] UPB Hw interrupt; [28] CSDM
998 interrupt; [28] CSDM Parity error; [29] CSDM Hw interrupt; [30] CCM 1016 Parity error; [29] CSDM Hw interrupt; [30] CCM Parity error; [31] CCM Hw
999 Parity error; [31] CCM Hw interrupt; */ 1017 interrupt; */
1000#define MISC_REG_AEU_ENABLE2_NIG_0 0xa0f0 1018#define MISC_REG_AEU_ENABLE2_NIG_0 0xa0f0
1001#define MISC_REG_AEU_ENABLE2_NIG_1 0xa190 1019#define MISC_REG_AEU_ENABLE2_NIG_1 0xa190
1002/* [RW 32] second 32b for enabling the output for close the gate pxp 0. 1020/* [RW 32] second 32b for enabling the output for close the gate pxp. mapped
1003 mapped as follows: [0] PBClient Parity error; [1] PBClient Hw interrupt; 1021 as follows: [0] PBClient Parity error; [1] PBClient Hw interrupt; [2] QM
1004 [2] QM Parity error; [3] QM Hw interrupt; [4] Timers Parity error; [5] 1022 Parity error; [3] QM Hw interrupt; [4] Timers Parity error; [5] Timers Hw
1005 Timers Hw interrupt; [6] XSDM Parity error; [7] XSDM Hw interrupt; [8] 1023 interrupt; [6] XSDM Parity error; [7] XSDM Hw interrupt; [8] XCM Parity
1006 XCM Parity error; [9] XCM Hw interrupt; [10] XSEMI Parity error; [11] 1024 error; [9] XCM Hw interrupt; [10] XSEMI Parity error; [11] XSEMI Hw
1007 XSEMI Hw interrupt; [12] DoorbellQ Parity error; [13] DoorbellQ Hw 1025 interrupt; [12] DoorbellQ Parity error; [13] DoorbellQ Hw interrupt; [14]
1008 interrupt; [14] NIG Parity error; [15] NIG Hw interrupt; [16] Vaux PCI 1026 NIG Parity error; [15] NIG Hw interrupt; [16] Vaux PCI core Parity error;
1009 core Parity error; [17] Vaux PCI core Hw interrupt; [18] Debug Parity 1027 [17] Vaux PCI core Hw interrupt; [18] Debug Parity error; [19] Debug Hw
1010 error; [19] Debug Hw interrupt; [20] USDM Parity error; [21] USDM Hw 1028 interrupt; [20] USDM Parity error; [21] USDM Hw interrupt; [22] UCM
1011 interrupt; [22] UCM Parity error; [23] UCM Hw interrupt; [24] USEMI 1029 Parity error; [23] UCM Hw interrupt; [24] USEMI Parity error; [25] USEMI
1012 Parity error; [25] USEMI Hw interrupt; [26] UPB Parity error; [27] UPB Hw 1030 Hw interrupt; [26] UPB Parity error; [27] UPB Hw interrupt; [28] CSDM
1013 interrupt; [28] CSDM Parity error; [29] CSDM Hw interrupt; [30] CCM 1031 Parity error; [29] CSDM Hw interrupt; [30] CCM Parity error; [31] CCM Hw
1014 Parity error; [31] CCM Hw interrupt; */ 1032 interrupt; */
1015#define MISC_REG_AEU_ENABLE2_PXP_0 0xa100 1033#define MISC_REG_AEU_ENABLE2_PXP_0 0xa100
1016#define MISC_REG_AEU_ENABLE2_PXP_1 0xa1a0 1034#define MISC_REG_AEU_ENABLE2_PXP_1 0xa1a0
1017/* [RW 32] third 32b for enabling the output for function 0 output0. mapped 1035/* [RW 32] third 32b for enabling the output for function 0 output0. mapped
@@ -1044,34 +1062,34 @@
1044 attn1; */ 1062 attn1; */
1045#define MISC_REG_AEU_ENABLE3_FUNC_1_OUT_0 0xa114 1063#define MISC_REG_AEU_ENABLE3_FUNC_1_OUT_0 0xa114
1046#define MISC_REG_AEU_ENABLE3_FUNC_1_OUT_1 0xa124 1064#define MISC_REG_AEU_ENABLE3_FUNC_1_OUT_1 0xa124
1047/* [RW 32] third 32b for enabling the output for close the gate nig 0. 1065/* [RW 32] third 32b for enabling the output for close the gate nig. mapped
1048 mapped as follows: [0] CSEMI Parity error; [1] CSEMI Hw interrupt; [2] 1066 as follows: [0] CSEMI Parity error; [1] CSEMI Hw interrupt; [2] PXP
1049 PXP Parity error; [3] PXP Hw interrupt; [4] PXPpciClockClient Parity 1067 Parity error; [3] PXP Hw interrupt; [4] PXPpciClockClient Parity error;
1050 error; [5] PXPpciClockClient Hw interrupt; [6] CFC Parity error; [7] CFC 1068 [5] PXPpciClockClient Hw interrupt; [6] CFC Parity error; [7] CFC Hw
1051 Hw interrupt; [8] CDU Parity error; [9] CDU Hw interrupt; [10] DMAE 1069 interrupt; [8] CDU Parity error; [9] CDU Hw interrupt; [10] DMAE Parity
1052 Parity error; [11] DMAE Hw interrupt; [12] IGU (HC) Parity error; [13] 1070 error; [11] DMAE Hw interrupt; [12] IGU (HC) Parity error; [13] IGU (HC)
1053 IGU (HC) Hw interrupt; [14] MISC Parity error; [15] MISC Hw interrupt; 1071 Hw interrupt; [14] MISC Parity error; [15] MISC Hw interrupt; [16]
1054 [16] pxp_misc_mps_attn; [17] Flash event; [18] SMB event; [19] MCP attn0; 1072 pxp_misc_mps_attn; [17] Flash event; [18] SMB event; [19] MCP attn0; [20]
1055 [20] MCP attn1; [21] SW timers attn_1 func0; [22] SW timers attn_2 func0; 1073 MCP attn1; [21] SW timers attn_1 func0; [22] SW timers attn_2 func0; [23]
1056 [23] SW timers attn_3 func0; [24] SW timers attn_4 func0; [25] PERST; 1074 SW timers attn_3 func0; [24] SW timers attn_4 func0; [25] PERST; [26] SW
1057 [26] SW timers attn_1 func1; [27] SW timers attn_2 func1; [28] SW timers 1075 timers attn_1 func1; [27] SW timers attn_2 func1; [28] SW timers attn_3
1058 attn_3 func1; [29] SW timers attn_4 func1; [30] General attn0; [31] 1076 func1; [29] SW timers attn_4 func1; [30] General attn0; [31] General
1059 General attn1; */ 1077 attn1; */
1060#define MISC_REG_AEU_ENABLE3_NIG_0 0xa0f4 1078#define MISC_REG_AEU_ENABLE3_NIG_0 0xa0f4
1061#define MISC_REG_AEU_ENABLE3_NIG_1 0xa194 1079#define MISC_REG_AEU_ENABLE3_NIG_1 0xa194
1062/* [RW 32] third 32b for enabling the output for close the gate pxp 0. 1080/* [RW 32] third 32b for enabling the output for close the gate pxp. mapped
1063 mapped as follows: [0] CSEMI Parity error; [1] CSEMI Hw interrupt; [2] 1081 as follows: [0] CSEMI Parity error; [1] CSEMI Hw interrupt; [2] PXP
1064 PXP Parity error; [3] PXP Hw interrupt; [4] PXPpciClockClient Parity 1082 Parity error; [3] PXP Hw interrupt; [4] PXPpciClockClient Parity error;
1065 error; [5] PXPpciClockClient Hw interrupt; [6] CFC Parity error; [7] CFC 1083 [5] PXPpciClockClient Hw interrupt; [6] CFC Parity error; [7] CFC Hw
1066 Hw interrupt; [8] CDU Parity error; [9] CDU Hw interrupt; [10] DMAE 1084 interrupt; [8] CDU Parity error; [9] CDU Hw interrupt; [10] DMAE Parity
1067 Parity error; [11] DMAE Hw interrupt; [12] IGU (HC) Parity error; [13] 1085 error; [11] DMAE Hw interrupt; [12] IGU (HC) Parity error; [13] IGU (HC)
1068 IGU (HC) Hw interrupt; [14] MISC Parity error; [15] MISC Hw interrupt; 1086 Hw interrupt; [14] MISC Parity error; [15] MISC Hw interrupt; [16]
1069 [16] pxp_misc_mps_attn; [17] Flash event; [18] SMB event; [19] MCP attn0; 1087 pxp_misc_mps_attn; [17] Flash event; [18] SMB event; [19] MCP attn0; [20]
1070 [20] MCP attn1; [21] SW timers attn_1 func0; [22] SW timers attn_2 func0; 1088 MCP attn1; [21] SW timers attn_1 func0; [22] SW timers attn_2 func0; [23]
1071 [23] SW timers attn_3 func0; [24] SW timers attn_4 func0; [25] PERST; 1089 SW timers attn_3 func0; [24] SW timers attn_4 func0; [25] PERST; [26] SW
1072 [26] SW timers attn_1 func1; [27] SW timers attn_2 func1; [28] SW timers 1090 timers attn_1 func1; [27] SW timers attn_2 func1; [28] SW timers attn_3
1073 attn_3 func1; [29] SW timers attn_4 func1; [30] General attn0; [31] 1091 func1; [29] SW timers attn_4 func1; [30] General attn0; [31] General
1074 General attn1; */ 1092 attn1; */
1075#define MISC_REG_AEU_ENABLE3_PXP_0 0xa104 1093#define MISC_REG_AEU_ENABLE3_PXP_0 0xa104
1076#define MISC_REG_AEU_ENABLE3_PXP_1 0xa1a4 1094#define MISC_REG_AEU_ENABLE3_PXP_1 0xa1a4
1077/* [RW 32] fourth 32b for enabling the output for function 0 output0.mapped 1095/* [RW 32] fourth 32b for enabling the output for function 0 output0.mapped
@@ -1088,6 +1106,10 @@
1088 Latched ump_tx_parity; [31] MCP Latched scpad_parity; */ 1106 Latched ump_tx_parity; [31] MCP Latched scpad_parity; */
1089#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_0 0xa078 1107#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_0 0xa078
1090#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_2 0xa098 1108#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_2 0xa098
1109#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_4 0xa0b8
1110#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_5 0xa0c8
1111#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_6 0xa0d8
1112#define MISC_REG_AEU_ENABLE4_FUNC_0_OUT_7 0xa0e8
1091/* [RW 32] fourth 32b for enabling the output for function 1 output0.mapped 1113/* [RW 32] fourth 32b for enabling the output for function 1 output0.mapped
1092 as follows: [0] General attn2; [1] General attn3; [2] General attn4; [3] 1114 as follows: [0] General attn2; [1] General attn3; [2] General attn4; [3]
1093 General attn5; [4] General attn6; [5] General attn7; [6] General attn8; 1115 General attn5; [4] General attn6; [5] General attn7; [6] General attn8;
@@ -1102,34 +1124,36 @@
1102 Latched ump_tx_parity; [31] MCP Latched scpad_parity; */ 1124 Latched ump_tx_parity; [31] MCP Latched scpad_parity; */
1103#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_0 0xa118 1125#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_0 0xa118
1104#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_2 0xa138 1126#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_2 0xa138
1105/* [RW 32] fourth 32b for enabling the output for close the gate nig 1127#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_4 0xa158
1106 0.mapped as follows: [0] General attn2; [1] General attn3; [2] General 1128#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_5 0xa168
1107 attn4; [3] General attn5; [4] General attn6; [5] General attn7; [6] 1129#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_6 0xa178
1108 General attn8; [7] General attn9; [8] General attn10; [9] General attn11; 1130#define MISC_REG_AEU_ENABLE4_FUNC_1_OUT_7 0xa188
1109 [10] General attn12; [11] General attn13; [12] General attn14; [13] 1131/* [RW 32] fourth 32b for enabling the output for close the gate nig.mapped
1110 General attn15; [14] General attn16; [15] General attn17; [16] General 1132 as follows: [0] General attn2; [1] General attn3; [2] General attn4; [3]
1111 attn18; [17] General attn19; [18] General attn20; [19] General attn21; 1133 General attn5; [4] General attn6; [5] General attn7; [6] General attn8;
1112 [20] Main power interrupt; [21] RBCR Latched attn; [22] RBCT Latched 1134 [7] General attn9; [8] General attn10; [9] General attn11; [10] General
1113 attn; [23] RBCN Latched attn; [24] RBCU Latched attn; [25] RBCP Latched 1135 attn12; [11] General attn13; [12] General attn14; [13] General attn15;
1114 attn; [26] GRC Latched timeout attention; [27] GRC Latched reserved 1136 [14] General attn16; [15] General attn17; [16] General attn18; [17]
1115 access attention; [28] MCP Latched rom_parity; [29] MCP Latched 1137 General attn19; [18] General attn20; [19] General attn21; [20] Main power
1116 ump_rx_parity; [30] MCP Latched ump_tx_parity; [31] MCP Latched 1138 interrupt; [21] RBCR Latched attn; [22] RBCT Latched attn; [23] RBCN
1117 scpad_parity; */ 1139 Latched attn; [24] RBCU Latched attn; [25] RBCP Latched attn; [26] GRC
1140 Latched timeout attention; [27] GRC Latched reserved access attention;
1141 [28] MCP Latched rom_parity; [29] MCP Latched ump_rx_parity; [30] MCP
1142 Latched ump_tx_parity; [31] MCP Latched scpad_parity; */
1118#define MISC_REG_AEU_ENABLE4_NIG_0 0xa0f8 1143#define MISC_REG_AEU_ENABLE4_NIG_0 0xa0f8
1119#define MISC_REG_AEU_ENABLE4_NIG_1 0xa198 1144#define MISC_REG_AEU_ENABLE4_NIG_1 0xa198
1120/* [RW 32] fourth 32b for enabling the output for close the gate pxp 1145/* [RW 32] fourth 32b for enabling the output for close the gate pxp.mapped
1121 0.mapped as follows: [0] General attn2; [1] General attn3; [2] General 1146 as follows: [0] General attn2; [1] General attn3; [2] General attn4; [3]
1122 attn4; [3] General attn5; [4] General attn6; [5] General attn7; [6] 1147 General attn5; [4] General attn6; [5] General attn7; [6] General attn8;
1123 General attn8; [7] General attn9; [8] General attn10; [9] General attn11; 1148 [7] General attn9; [8] General attn10; [9] General attn11; [10] General
1124 [10] General attn12; [11] General attn13; [12] General attn14; [13] 1149 attn12; [11] General attn13; [12] General attn14; [13] General attn15;
1125 General attn15; [14] General attn16; [15] General attn17; [16] General 1150 [14] General attn16; [15] General attn17; [16] General attn18; [17]
1126 attn18; [17] General attn19; [18] General attn20; [19] General attn21; 1151 General attn19; [18] General attn20; [19] General attn21; [20] Main power
1127 [20] Main power interrupt; [21] RBCR Latched attn; [22] RBCT Latched 1152 interrupt; [21] RBCR Latched attn; [22] RBCT Latched attn; [23] RBCN
1128 attn; [23] RBCN Latched attn; [24] RBCU Latched attn; [25] RBCP Latched 1153 Latched attn; [24] RBCU Latched attn; [25] RBCP Latched attn; [26] GRC
1129 attn; [26] GRC Latched timeout attention; [27] GRC Latched reserved 1154 Latched timeout attention; [27] GRC Latched reserved access attention;
1130 access attention; [28] MCP Latched rom_parity; [29] MCP Latched 1155 [28] MCP Latched rom_parity; [29] MCP Latched ump_rx_parity; [30] MCP
1131 ump_rx_parity; [30] MCP Latched ump_tx_parity; [31] MCP Latched 1156 Latched ump_tx_parity; [31] MCP Latched scpad_parity; */
1132 scpad_parity; */
1133#define MISC_REG_AEU_ENABLE4_PXP_0 0xa108 1157#define MISC_REG_AEU_ENABLE4_PXP_0 0xa108
1134#define MISC_REG_AEU_ENABLE4_PXP_1 0xa1a8 1158#define MISC_REG_AEU_ENABLE4_PXP_1 0xa1a8
1135/* [RW 1] set/clr general attention 0; this will set/clr bit 94 in the aeu 1159/* [RW 1] set/clr general attention 0; this will set/clr bit 94 in the aeu
@@ -1148,6 +1172,7 @@
1148#define MISC_REG_AEU_GENERAL_ATTN_19 0xa04c 1172#define MISC_REG_AEU_GENERAL_ATTN_19 0xa04c
1149#define MISC_REG_AEU_GENERAL_ATTN_10 0xa028 1173#define MISC_REG_AEU_GENERAL_ATTN_10 0xa028
1150#define MISC_REG_AEU_GENERAL_ATTN_11 0xa02c 1174#define MISC_REG_AEU_GENERAL_ATTN_11 0xa02c
1175#define MISC_REG_AEU_GENERAL_ATTN_12 0xa030
1151#define MISC_REG_AEU_GENERAL_ATTN_2 0xa008 1176#define MISC_REG_AEU_GENERAL_ATTN_2 0xa008
1152#define MISC_REG_AEU_GENERAL_ATTN_20 0xa050 1177#define MISC_REG_AEU_GENERAL_ATTN_20 0xa050
1153#define MISC_REG_AEU_GENERAL_ATTN_21 0xa054 1178#define MISC_REG_AEU_GENERAL_ATTN_21 0xa054
@@ -1158,6 +1183,7 @@
1158#define MISC_REG_AEU_GENERAL_ATTN_7 0xa01c 1183#define MISC_REG_AEU_GENERAL_ATTN_7 0xa01c
1159#define MISC_REG_AEU_GENERAL_ATTN_8 0xa020 1184#define MISC_REG_AEU_GENERAL_ATTN_8 0xa020
1160#define MISC_REG_AEU_GENERAL_ATTN_9 0xa024 1185#define MISC_REG_AEU_GENERAL_ATTN_9 0xa024
1186#define MISC_REG_AEU_GENERAL_MASK 0xa61c
1161/* [RW 32] first 32b for inverting the input for function 0; for each bit: 1187/* [RW 32] first 32b for inverting the input for function 0; for each bit:
1162 0= do not invert; 1= invert; mapped as follows: [0] NIG attention for 1188 0= do not invert; 1= invert; mapped as follows: [0] NIG attention for
1163 function0; [1] NIG attention for function1; [2] GPIO1 mcp; [3] GPIO2 mcp; 1189 function0; [1] NIG attention for function1; [2] GPIO1 mcp; [3] GPIO2 mcp;
@@ -1189,10 +1215,29 @@
1189#define MISC_REG_AEU_INVERTER_2_FUNC_0 0xa230 1215#define MISC_REG_AEU_INVERTER_2_FUNC_0 0xa230
1190#define MISC_REG_AEU_INVERTER_2_FUNC_1 0xa240 1216#define MISC_REG_AEU_INVERTER_2_FUNC_1 0xa240
1191/* [RW 10] [7:0] = mask 8 attention output signals toward IGU function0; 1217/* [RW 10] [7:0] = mask 8 attention output signals toward IGU function0;
1192 [9:8] = mask close the gates signals of function 0 toward PXP [8] and NIG 1218 [9:8] = raserved. Zero = mask; one = unmask */
1193 [9]. Zero = mask; one = unmask */
1194#define MISC_REG_AEU_MASK_ATTN_FUNC_0 0xa060 1219#define MISC_REG_AEU_MASK_ATTN_FUNC_0 0xa060
1195#define MISC_REG_AEU_MASK_ATTN_FUNC_1 0xa064 1220#define MISC_REG_AEU_MASK_ATTN_FUNC_1 0xa064
1221/* [RW 1] If set a system kill occurred */
1222#define MISC_REG_AEU_SYS_KILL_OCCURRED 0xa610
1223/* [RW 32] Represent the status of the input vector to the AEU when a system
1224 kill occurred. The register is reset in por reset. Mapped as follows: [0]
1225 NIG attention for function0; [1] NIG attention for function1; [2] GPIO1
1226 mcp; [3] GPIO2 mcp; [4] GPIO3 mcp; [5] GPIO4 mcp; [6] GPIO1 function 1;
1227 [7] GPIO2 function 1; [8] GPIO3 function 1; [9] GPIO4 function 1; [10]
1228 PCIE glue/PXP VPD event function0; [11] PCIE glue/PXP VPD event
1229 function1; [12] PCIE glue/PXP Expansion ROM event0; [13] PCIE glue/PXP
1230 Expansion ROM event1; [14] SPIO4; [15] SPIO5; [16] MSI/X indication for
1231 mcp; [17] MSI/X indication for function 1; [18] BRB Parity error; [19]
1232 BRB Hw interrupt; [20] PRS Parity error; [21] PRS Hw interrupt; [22] SRC
1233 Parity error; [23] SRC Hw interrupt; [24] TSDM Parity error; [25] TSDM Hw
1234 interrupt; [26] TCM Parity error; [27] TCM Hw interrupt; [28] TSEMI
1235 Parity error; [29] TSEMI Hw interrupt; [30] PBF Parity error; [31] PBF Hw
1236 interrupt; */
1237#define MISC_REG_AEU_SYS_KILL_STATUS_0 0xa600
1238#define MISC_REG_AEU_SYS_KILL_STATUS_1 0xa604
1239#define MISC_REG_AEU_SYS_KILL_STATUS_2 0xa608
1240#define MISC_REG_AEU_SYS_KILL_STATUS_3 0xa60c
1196/* [R 4] This field indicates the type of the device. '0' - 2 Ports; '1' - 1 1241/* [R 4] This field indicates the type of the device. '0' - 2 Ports; '1' - 1
1197 Port. */ 1242 Port. */
1198#define MISC_REG_BOND_ID 0xa400 1243#define MISC_REG_BOND_ID 0xa400
@@ -1206,8 +1251,80 @@
1206 starts at 0x0 for the A0 tape-out and increments by one for each 1251 starts at 0x0 for the A0 tape-out and increments by one for each
1207 all-layer tape-out. */ 1252 all-layer tape-out. */
1208#define MISC_REG_CHIP_REV 0xa40c 1253#define MISC_REG_CHIP_REV 0xa40c
1209/* [RW 32] The following driver registers(1..6) represent 6 drivers and 32 1254/* [RW 32] The following driver registers(1...16) represent 16 drivers and
1210 clients. Each client can be controlled by one driver only. One in each 1255 32 clients. Each client can be controlled by one driver only. One in each
1256 bit represent that this driver control the appropriate client (Ex: bit 5
1257 is set means this driver control client number 5). addr1 = set; addr0 =
1258 clear; read from both addresses will give the same result = status. write
1259 to address 1 will set a request to control all the clients that their
1260 appropriate bit (in the write command) is set. if the client is free (the
1261 appropriate bit in all the other drivers is clear) one will be written to
1262 that driver register; if the client isn't free the bit will remain zero.
1263 if the appropriate bit is set (the driver request to gain control on a
1264 client it already controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW
1265 interrupt will be asserted). write to address 0 will set a request to
1266 free all the clients that their appropriate bit (in the write command) is
1267 set. if the appropriate bit is clear (the driver request to free a client
1268 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will
1269 be asserted). */
1270#define MISC_REG_DRIVER_CONTROL_10 0xa3e0
1271#define MISC_REG_DRIVER_CONTROL_10_SIZE 2
1272/* [RW 32] The following driver registers(1...16) represent 16 drivers and
1273 32 clients. Each client can be controlled by one driver only. One in each
1274 bit represent that this driver control the appropriate client (Ex: bit 5
1275 is set means this driver control client number 5). addr1 = set; addr0 =
1276 clear; read from both addresses will give the same result = status. write
1277 to address 1 will set a request to control all the clients that their
1278 appropriate bit (in the write command) is set. if the client is free (the
1279 appropriate bit in all the other drivers is clear) one will be written to
1280 that driver register; if the client isn't free the bit will remain zero.
1281 if the appropriate bit is set (the driver request to gain control on a
1282 client it already controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW
1283 interrupt will be asserted). write to address 0 will set a request to
1284 free all the clients that their appropriate bit (in the write command) is
1285 set. if the appropriate bit is clear (the driver request to free a client
1286 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will
1287 be asserted). */
1288#define MISC_REG_DRIVER_CONTROL_11 0xa3e8
1289#define MISC_REG_DRIVER_CONTROL_11_SIZE 2
1290/* [RW 32] The following driver registers(1...16) represent 16 drivers and
1291 32 clients. Each client can be controlled by one driver only. One in each
1292 bit represent that this driver control the appropriate client (Ex: bit 5
1293 is set means this driver control client number 5). addr1 = set; addr0 =
1294 clear; read from both addresses will give the same result = status. write
1295 to address 1 will set a request to control all the clients that their
1296 appropriate bit (in the write command) is set. if the client is free (the
1297 appropriate bit in all the other drivers is clear) one will be written to
1298 that driver register; if the client isn't free the bit will remain zero.
1299 if the appropriate bit is set (the driver request to gain control on a
1300 client it already controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW
1301 interrupt will be asserted). write to address 0 will set a request to
1302 free all the clients that their appropriate bit (in the write command) is
1303 set. if the appropriate bit is clear (the driver request to free a client
1304 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will
1305 be asserted). */
1306#define MISC_REG_DRIVER_CONTROL_12 0xa3f0
1307#define MISC_REG_DRIVER_CONTROL_12_SIZE 2
1308/* [RW 32] The following driver registers(1...16) represent 16 drivers and
1309 32 clients. Each client can be controlled by one driver only. One in each
1310 bit represent that this driver control the appropriate client (Ex: bit 5
1311 is set means this driver control client number 5). addr1 = set; addr0 =
1312 clear; read from both addresses will give the same result = status. write
1313 to address 1 will set a request to control all the clients that their
1314 appropriate bit (in the write command) is set. if the client is free (the
1315 appropriate bit in all the other drivers is clear) one will be written to
1316 that driver register; if the client isn't free the bit will remain zero.
1317 if the appropriate bit is set (the driver request to gain control on a
1318 client it already controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW
1319 interrupt will be asserted). write to address 0 will set a request to
1320 free all the clients that their appropriate bit (in the write command) is
1321 set. if the appropriate bit is clear (the driver request to free a client
1322 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will
1323 be asserted). */
1324#define MISC_REG_DRIVER_CONTROL_13 0xa3f8
1325#define MISC_REG_DRIVER_CONTROL_13_SIZE 2
1326/* [RW 32] The following driver registers(1...16) represent 16 drivers and
1327 32 clients. Each client can be controlled by one driver only. One in each
1211 bit represent that this driver control the appropriate client (Ex: bit 5 1328 bit represent that this driver control the appropriate client (Ex: bit 5
1212 is set means this driver control client number 5). addr1 = set; addr0 = 1329 is set means this driver control client number 5). addr1 = set; addr0 =
1213 clear; read from both addresses will give the same result = status. write 1330 clear; read from both addresses will give the same result = status. write
@@ -1223,6 +1340,47 @@
1223 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will 1340 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will
1224 be asserted). */ 1341 be asserted). */
1225#define MISC_REG_DRIVER_CONTROL_1 0xa510 1342#define MISC_REG_DRIVER_CONTROL_1 0xa510
1343#define MISC_REG_DRIVER_CONTROL_14 0xa5e0
1344#define MISC_REG_DRIVER_CONTROL_14_SIZE 2
1345/* [RW 32] The following driver registers(1...16) represent 16 drivers and
1346 32 clients. Each client can be controlled by one driver only. One in each
1347 bit represent that this driver control the appropriate client (Ex: bit 5
1348 is set means this driver control client number 5). addr1 = set; addr0 =
1349 clear; read from both addresses will give the same result = status. write
1350 to address 1 will set a request to control all the clients that their
1351 appropriate bit (in the write command) is set. if the client is free (the
1352 appropriate bit in all the other drivers is clear) one will be written to
1353 that driver register; if the client isn't free the bit will remain zero.
1354 if the appropriate bit is set (the driver request to gain control on a
1355 client it already controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW
1356 interrupt will be asserted). write to address 0 will set a request to
1357 free all the clients that their appropriate bit (in the write command) is
1358 set. if the appropriate bit is clear (the driver request to free a client
1359 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will
1360 be asserted). */
1361#define MISC_REG_DRIVER_CONTROL_15 0xa5e8
1362#define MISC_REG_DRIVER_CONTROL_15_SIZE 2
1363/* [RW 32] The following driver registers(1...16) represent 16 drivers and
1364 32 clients. Each client can be controlled by one driver only. One in each
1365 bit represent that this driver control the appropriate client (Ex: bit 5
1366 is set means this driver control client number 5). addr1 = set; addr0 =
1367 clear; read from both addresses will give the same result = status. write
1368 to address 1 will set a request to control all the clients that their
1369 appropriate bit (in the write command) is set. if the client is free (the
1370 appropriate bit in all the other drivers is clear) one will be written to
1371 that driver register; if the client isn't free the bit will remain zero.
1372 if the appropriate bit is set (the driver request to gain control on a
1373 client it already controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW
1374 interrupt will be asserted). write to address 0 will set a request to
1375 free all the clients that their appropriate bit (in the write command) is
1376 set. if the appropriate bit is clear (the driver request to free a client
1377 it doesn't controls the ~MISC_REGISTERS_INT_STS.GENERIC_SW interrupt will
1378 be asserted). */
1379#define MISC_REG_DRIVER_CONTROL_16 0xa5f0
1380#define MISC_REG_DRIVER_CONTROL_16_SIZE 2
1381/* [RW 1] e1hmf for WOL. If clr WOL signal o the PXP will be send on bit 0
1382 only. */
1383#define MISC_REG_E1HMF_MODE 0xa5f8
1226/* [RW 32] GPIO. [31-28] FLOAT port 0; [27-24] FLOAT port 0; When any of 1384/* [RW 32] GPIO. [31-28] FLOAT port 0; [27-24] FLOAT port 0; When any of
1227 these bits is written as a '1'; the corresponding SPIO bit will turn off 1385 these bits is written as a '1'; the corresponding SPIO bit will turn off
1228 it's drivers and become an input. This is the reset state of all GPIO 1386 it's drivers and become an input. This is the reset state of all GPIO
@@ -1240,6 +1398,18 @@
1240 This is the result value of the pin; not the drive value. Writing these 1398 This is the result value of the pin; not the drive value. Writing these
1241 bits will have not effect. */ 1399 bits will have not effect. */
1242#define MISC_REG_GPIO 0xa490 1400#define MISC_REG_GPIO 0xa490
1401/* [R 28] this field hold the last information that caused reserved
1402 attention. bits [19:0] - address; [22:20] function; [23] reserved;
1403 [27:24] the master thatcaused the attention - according to the following
1404 encodeing:1 = pxp; 2 = mcp; 3 = usdm; 4 = tsdm; 5 = xsdm; 6 = csdm; 7 =
1405 dbu; 8 = dmae */
1406#define MISC_REG_GRC_RSV_ATTN 0xa3c0
1407/* [R 28] this field hold the last information that caused timeout
1408 attention. bits [19:0] - address; [22:20] function; [23] reserved;
1409 [27:24] the master thatcaused the attention - according to the following
1410 encodeing:1 = pxp; 2 = mcp; 3 = usdm; 4 = tsdm; 5 = xsdm; 6 = csdm; 7 =
1411 dbu; 8 = dmae */
1412#define MISC_REG_GRC_TIMEOUT_ATTN 0xa3c4
1243/* [RW 1] Setting this bit enables a timer in the GRC block to timeout any 1413/* [RW 1] Setting this bit enables a timer in the GRC block to timeout any
1244 access that does not finish within 1414 access that does not finish within
1245 ~misc_registers_grc_timout_val.grc_timeout_val cycles. When this bit is 1415 ~misc_registers_grc_timout_val.grc_timeout_val cycles. When this bit is
@@ -1282,6 +1452,11 @@
1282#define MISC_REG_MISC_PRTY_MASK 0xa398 1452#define MISC_REG_MISC_PRTY_MASK 0xa398
1283/* [R 1] Parity register #0 read */ 1453/* [R 1] Parity register #0 read */
1284#define MISC_REG_MISC_PRTY_STS 0xa38c 1454#define MISC_REG_MISC_PRTY_STS 0xa38c
1455#define MISC_REG_NIG_WOL_P0 0xa270
1456#define MISC_REG_NIG_WOL_P1 0xa274
1457/* [R 1] If set indicate that the pcie_rst_b was asserted without perst
1458 assertion */
1459#define MISC_REG_PCIE_HOT_RESET 0xa618
1285/* [RW 32] 32 LSB of storm PLL first register; reset val = 0x 071d2911. 1460/* [RW 32] 32 LSB of storm PLL first register; reset val = 0x 071d2911.
1286 inside order of the bits is: [0] P1 divider[0] (reset value 1); [1] P1 1461 inside order of the bits is: [0] P1 divider[0] (reset value 1); [1] P1
1287 divider[1] (reset value 0); [2] P1 divider[2] (reset value 0); [3] P1 1462 divider[1] (reset value 0); [2] P1 divider[2] (reset value 0); [3] P1
@@ -1303,7 +1478,7 @@
1303#define MISC_REG_PLL_STORM_CTRL_2 0xa298 1478#define MISC_REG_PLL_STORM_CTRL_2 0xa298
1304#define MISC_REG_PLL_STORM_CTRL_3 0xa29c 1479#define MISC_REG_PLL_STORM_CTRL_3 0xa29c
1305#define MISC_REG_PLL_STORM_CTRL_4 0xa2a0 1480#define MISC_REG_PLL_STORM_CTRL_4 0xa2a0
1306/* [RW 32] reset reg#1; rite/read one = the specific block is out of reset; 1481/* [RW 32] reset reg#2; rite/read one = the specific block is out of reset;
1307 write/read zero = the specific block is in reset; addr 0-wr- the write 1482 write/read zero = the specific block is in reset; addr 0-wr- the write
1308 value will be written to the register; addr 1-set - one will be written 1483 value will be written to the register; addr 1-set - one will be written
1309 to all the bits that have the value of one in the data written (bits that 1484 to all the bits that have the value of one in the data written (bits that
@@ -1311,14 +1486,12 @@
1311 written to all the bits that have the value of one in the data written 1486 written to all the bits that have the value of one in the data written
1312 (bits that have the value of zero will not be change); addr 3-ignore; 1487 (bits that have the value of zero will not be change); addr 3-ignore;
1313 read ignore from all addr except addr 00; inside order of the bits is: 1488 read ignore from all addr except addr 00; inside order of the bits is:
1314 [0] rst_brb1; [1] rst_prs; [2] rst_src; [3] rst_tsdm; [4] rst_tsem; [5] 1489 [0] rst_bmac0; [1] rst_bmac1; [2] rst_emac0; [3] rst_emac1; [4] rst_grc;
1315 rst_tcm; [6] rst_rbcr; [7] rst_nig; [8] rst_usdm; [9] rst_ucm; [10] 1490 [5] rst_mcp_n_reset_reg_hard_core; [6] rst_ mcp_n_hard_core_rst_b; [7]
1316 rst_usem; [11] rst_upb; [12] rst_ccm; [13] rst_csem; [14] rst_csdm; [15] 1491 rst_ mcp_n_reset_cmn_cpu; [8] rst_ mcp_n_reset_cmn_core; [9] rst_rbcn;
1317 rst_rbcu; [16] rst_pbf; [17] rst_qm; [18] rst_tm; [19] rst_dorq; [20] 1492 [10] rst_dbg; [11] rst_misc_core; [12] rst_dbue (UART); [13]
1318 rst_xcm; [21] rst_xsdm; [22] rst_xsem; [23] rst_rbct; [24] rst_cdu; [25] 1493 Pci_resetmdio_n; [14] rst_emac0_hard_core; [15] rst_emac1_hard_core; 16]
1319 rst_cfc; [26] rst_pxp; [27] rst_pxpv; [28] rst_rbcp; [29] rst_hc; [30] 1494 rst_pxp_rq_rd_wr; 31:17] reserved */
1320 rst_dmae; [31] rst_semi_rtc; */
1321#define MISC_REG_RESET_REG_1 0xa580
1322#define MISC_REG_RESET_REG_2 0xa590 1495#define MISC_REG_RESET_REG_2 0xa590
1323/* [RW 20] 20 bit GRC address where the scratch-pad of the MCP that is 1496/* [RW 20] 20 bit GRC address where the scratch-pad of the MCP that is
1324 shared with the driver resides */ 1497 shared with the driver resides */
@@ -1345,7 +1518,7 @@
1345 select VAUX supply. (This is an output pin only; it is not controlled by 1518 select VAUX supply. (This is an output pin only; it is not controlled by
1346 the SET and CLR fields; it is controlled by the Main Power SM; the FLOAT 1519 the SET and CLR fields; it is controlled by the Main Power SM; the FLOAT
1347 field is not applicable for this pin; only the VALUE fields is relevant - 1520 field is not applicable for this pin; only the VALUE fields is relevant -
1348 it reflects the output value); [3] reserved; [4] spio_4; [5] spio_5; [6] 1521 it reflects the output value); [3] port swap [4] spio_4; [5] spio_5; [6]
1349 Bit 0 of UMP device ID select; read by UMP firmware; [7] Bit 1 of UMP 1522 Bit 0 of UMP device ID select; read by UMP firmware; [7] Bit 1 of UMP
1350 device ID select; read by UMP firmware. */ 1523 device ID select; read by UMP firmware. */
1351#define MISC_REG_SPIO 0xa4fc 1524#define MISC_REG_SPIO 0xa4fc
@@ -1394,8 +1567,9 @@
1394#define NIG_REG_BRB1_PAUSE_IN_EN 0x100c8 1567#define NIG_REG_BRB1_PAUSE_IN_EN 0x100c8
1395/* [RW 1] output enable for RX BRB1 LP IF */ 1568/* [RW 1] output enable for RX BRB1 LP IF */
1396#define NIG_REG_BRB_LB_OUT_EN 0x10100 1569#define NIG_REG_BRB_LB_OUT_EN 0x10100
1397/* [WB_W 72] Debug packet to LP from RBC; Data spelling:[63:0] data; 64] 1570/* [WB_W 82] Debug packet to LP from RBC; Data spelling:[63:0] data; 64]
1398 error; [67:65]eop_bvalid; [68]eop; [69]sop; [70]port_id; 71]flush */ 1571 error; [67:65]eop_bvalid; [68]eop; [69]sop; [70]port_id; 71]flush;
1572 72:73]-vnic_num; 81:74]-sideband_info */
1399#define NIG_REG_DEBUG_PACKET_LB 0x10800 1573#define NIG_REG_DEBUG_PACKET_LB 0x10800
1400/* [RW 1] Input enable for TX Debug packet */ 1574/* [RW 1] Input enable for TX Debug packet */
1401#define NIG_REG_EGRESS_DEBUG_IN_EN 0x100dc 1575#define NIG_REG_EGRESS_DEBUG_IN_EN 0x100dc
@@ -1409,6 +1583,8 @@
1409/* [RW 1] MAC configuration for packets of port0. If 1 - all packet outputs 1583/* [RW 1] MAC configuration for packets of port0. If 1 - all packet outputs
1410 to emac for port0; other way to bmac for port0 */ 1584 to emac for port0; other way to bmac for port0 */
1411#define NIG_REG_EGRESS_EMAC0_PORT 0x10058 1585#define NIG_REG_EGRESS_EMAC0_PORT 0x10058
1586/* [RW 32] TX_MNG_FIFO in NIG_TX_PORT0; data[31:0] written in FIFO order. */
1587#define NIG_REG_EGRESS_MNG0_FIFO 0x1045c
1412/* [RW 1] Input enable for TX PBF user packet port0 IF */ 1588/* [RW 1] Input enable for TX PBF user packet port0 IF */
1413#define NIG_REG_EGRESS_PBF0_IN_EN 0x100cc 1589#define NIG_REG_EGRESS_PBF0_IN_EN 0x100cc
1414/* [RW 1] Input enable for TX PBF user packet port1 IF */ 1590/* [RW 1] Input enable for TX PBF user packet port1 IF */
@@ -1438,6 +1614,8 @@
1438#define NIG_REG_INGRESS_EOP_LB_FIFO 0x104e4 1614#define NIG_REG_INGRESS_EOP_LB_FIFO 0x104e4
1439/* [RW 1] led 10g for port 0 */ 1615/* [RW 1] led 10g for port 0 */
1440#define NIG_REG_LED_10G_P0 0x10320 1616#define NIG_REG_LED_10G_P0 0x10320
1617/* [RW 1] led 10g for port 1 */
1618#define NIG_REG_LED_10G_P1 0x10324
1441/* [RW 1] Port0: This bit is set to enable the use of the 1619/* [RW 1] Port0: This bit is set to enable the use of the
1442 ~nig_registers_led_control_blink_rate_p0.led_control_blink_rate_p0 field 1620 ~nig_registers_led_control_blink_rate_p0.led_control_blink_rate_p0 field
1443 defined below. If this bit is cleared; then the blink rate will be about 1621 defined below. If this bit is cleared; then the blink rate will be about
@@ -1470,19 +1648,47 @@
1470/* [RW 4] led mode for port0: 0 MAC; 1-3 PHY1; 4 MAC2; 5-7 PHY4; 8-MAC3; 1648/* [RW 4] led mode for port0: 0 MAC; 1-3 PHY1; 4 MAC2; 5-7 PHY4; 8-MAC3;
1471 9-11PHY7; 12 MAC4; 13-15 PHY10; */ 1649 9-11PHY7; 12 MAC4; 13-15 PHY10; */
1472#define NIG_REG_LED_MODE_P0 0x102f0 1650#define NIG_REG_LED_MODE_P0 0x102f0
1651#define NIG_REG_LLH0_ACPI_PAT_0_CRC 0x1015c
1652#define NIG_REG_LLH0_ACPI_PAT_6_LEN 0x10154
1473#define NIG_REG_LLH0_BRB1_DRV_MASK 0x10244 1653#define NIG_REG_LLH0_BRB1_DRV_MASK 0x10244
1654#define NIG_REG_LLH0_BRB1_DRV_MASK_MF 0x16048
1474/* [RW 1] send to BRB1 if no match on any of RMP rules. */ 1655/* [RW 1] send to BRB1 if no match on any of RMP rules. */
1475#define NIG_REG_LLH0_BRB1_NOT_MCP 0x1025c 1656#define NIG_REG_LLH0_BRB1_NOT_MCP 0x1025c
1657/* [RW 2] Determine the classification participants. 0: no classification.1:
1658 classification upon VLAN id. 2: classification upon MAC address. 3:
1659 classification upon both VLAN id & MAC addr. */
1660#define NIG_REG_LLH0_CLS_TYPE 0x16080
1476/* [RW 32] cm header for llh0 */ 1661/* [RW 32] cm header for llh0 */
1477#define NIG_REG_LLH0_CM_HEADER 0x1007c 1662#define NIG_REG_LLH0_CM_HEADER 0x1007c
1663#define NIG_REG_LLH0_DEST_IP_0_1 0x101dc
1664#define NIG_REG_LLH0_DEST_MAC_0_0 0x101c0
1665/* [RW 16] destination TCP address 1. The LLH will look for this address in
1666 all incoming packets. */
1667#define NIG_REG_LLH0_DEST_TCP_0 0x10220
1668/* [RW 16] destination UDP address 1 The LLH will look for this address in
1669 all incoming packets. */
1670#define NIG_REG_LLH0_DEST_UDP_0 0x10214
1478#define NIG_REG_LLH0_ERROR_MASK 0x1008c 1671#define NIG_REG_LLH0_ERROR_MASK 0x1008c
1479/* [RW 8] event id for llh0 */ 1672/* [RW 8] event id for llh0 */
1480#define NIG_REG_LLH0_EVENT_ID 0x10084 1673#define NIG_REG_LLH0_EVENT_ID 0x10084
1674#define NIG_REG_LLH0_FUNC_EN 0x160fc
1675#define NIG_REG_LLH0_FUNC_VLAN_ID 0x16100
1676/* [RW 1] Determine the IP version to look for in
1677 ~nig_registers_llh0_dest_ip_0.llh0_dest_ip_0. 0 - IPv6; 1-IPv4 */
1678#define NIG_REG_LLH0_IPV4_IPV6_0 0x10208
1679/* [RW 1] t bit for llh0 */
1680#define NIG_REG_LLH0_T_BIT 0x10074
1681/* [RW 12] VLAN ID 1. In case of VLAN packet the LLH will look for this ID. */
1682#define NIG_REG_LLH0_VLAN_ID_0 0x1022c
1481/* [RW 8] init credit counter for port0 in LLH */ 1683/* [RW 8] init credit counter for port0 in LLH */
1482#define NIG_REG_LLH0_XCM_INIT_CREDIT 0x10554 1684#define NIG_REG_LLH0_XCM_INIT_CREDIT 0x10554
1483#define NIG_REG_LLH0_XCM_MASK 0x10130 1685#define NIG_REG_LLH0_XCM_MASK 0x10130
1484/* [RW 1] send to BRB1 if no match on any of RMP rules. */ 1686/* [RW 1] send to BRB1 if no match on any of RMP rules. */
1485#define NIG_REG_LLH1_BRB1_NOT_MCP 0x102dc 1687#define NIG_REG_LLH1_BRB1_NOT_MCP 0x102dc
1688/* [RW 2] Determine the classification participants. 0: no classification.1:
1689 classification upon VLAN id. 2: classification upon MAC address. 3:
1690 classification upon both VLAN id & MAC addr. */
1691#define NIG_REG_LLH1_CLS_TYPE 0x16084
1486/* [RW 32] cm header for llh1 */ 1692/* [RW 32] cm header for llh1 */
1487#define NIG_REG_LLH1_CM_HEADER 0x10080 1693#define NIG_REG_LLH1_CM_HEADER 0x10080
1488#define NIG_REG_LLH1_ERROR_MASK 0x10090 1694#define NIG_REG_LLH1_ERROR_MASK 0x10090
@@ -1491,13 +1697,26 @@
1491/* [RW 8] init credit counter for port1 in LLH */ 1697/* [RW 8] init credit counter for port1 in LLH */
1492#define NIG_REG_LLH1_XCM_INIT_CREDIT 0x10564 1698#define NIG_REG_LLH1_XCM_INIT_CREDIT 0x10564
1493#define NIG_REG_LLH1_XCM_MASK 0x10134 1699#define NIG_REG_LLH1_XCM_MASK 0x10134
1700/* [RW 1] When this bit is set; the LLH will expect all packets to be with
1701 e1hov */
1702#define NIG_REG_LLH_E1HOV_MODE 0x160d8
1703/* [RW 1] When this bit is set; the LLH will classify the packet before
1704 sending it to the BRB or calculating WoL on it. */
1705#define NIG_REG_LLH_MF_MODE 0x16024
1494#define NIG_REG_MASK_INTERRUPT_PORT0 0x10330 1706#define NIG_REG_MASK_INTERRUPT_PORT0 0x10330
1495#define NIG_REG_MASK_INTERRUPT_PORT1 0x10334 1707#define NIG_REG_MASK_INTERRUPT_PORT1 0x10334
1496/* [RW 1] Output signal from NIG to EMAC0. When set enables the EMAC0 block. */ 1708/* [RW 1] Output signal from NIG to EMAC0. When set enables the EMAC0 block. */
1497#define NIG_REG_NIG_EMAC0_EN 0x1003c 1709#define NIG_REG_NIG_EMAC0_EN 0x1003c
1710/* [RW 1] Output signal from NIG to EMAC1. When set enables the EMAC1 block. */
1711#define NIG_REG_NIG_EMAC1_EN 0x10040
1498/* [RW 1] Output signal from NIG to TX_EMAC0. When set indicates to the 1712/* [RW 1] Output signal from NIG to TX_EMAC0. When set indicates to the
1499 EMAC0 to strip the CRC from the ingress packets. */ 1713 EMAC0 to strip the CRC from the ingress packets. */
1500#define NIG_REG_NIG_INGRESS_EMAC0_NO_CRC 0x10044 1714#define NIG_REG_NIG_INGRESS_EMAC0_NO_CRC 0x10044
1715/* [R 32] Interrupt register #0 read */
1716#define NIG_REG_NIG_INT_STS_0 0x103b0
1717#define NIG_REG_NIG_INT_STS_1 0x103c0
1718/* [R 32] Parity register #0 read */
1719#define NIG_REG_NIG_PRTY_STS 0x103d0
1501/* [RW 1] Input enable for RX PBF LP IF */ 1720/* [RW 1] Input enable for RX PBF LP IF */
1502#define NIG_REG_PBF_LB_IN_EN 0x100b4 1721#define NIG_REG_PBF_LB_IN_EN 0x100b4
1503/* [RW 1] Value of this register will be transmitted to port swap when 1722/* [RW 1] Value of this register will be transmitted to port swap when
@@ -1529,8 +1748,12 @@
1529#define NIG_REG_XCM0_OUT_EN 0x100f0 1748#define NIG_REG_XCM0_OUT_EN 0x100f0
1530/* [RW 1] output enable for RX_XCM1 IF */ 1749/* [RW 1] output enable for RX_XCM1 IF */
1531#define NIG_REG_XCM1_OUT_EN 0x100f4 1750#define NIG_REG_XCM1_OUT_EN 0x100f4
1751/* [RW 1] control to xgxs - remote PHY in-band MDIO */
1752#define NIG_REG_XGXS0_CTRL_EXTREMOTEMDIOST 0x10348
1532/* [RW 5] control to xgxs - CL45 DEVAD */ 1753/* [RW 5] control to xgxs - CL45 DEVAD */
1533#define NIG_REG_XGXS0_CTRL_MD_DEVAD 0x1033c 1754#define NIG_REG_XGXS0_CTRL_MD_DEVAD 0x1033c
1755/* [RW 1] control to xgxs; 0 - clause 45; 1 - clause 22 */
1756#define NIG_REG_XGXS0_CTRL_MD_ST 0x10338
1534/* [RW 5] control to xgxs - CL22 PHY_ADD and CL45 PRTAD */ 1757/* [RW 5] control to xgxs - CL22 PHY_ADD and CL45 PRTAD */
1535#define NIG_REG_XGXS0_CTRL_PHY_ADDR 0x10340 1758#define NIG_REG_XGXS0_CTRL_PHY_ADDR 0x10340
1536/* [R 1] status from xgxs0 that inputs to interrupt logic of link10g. */ 1759/* [R 1] status from xgxs0 that inputs to interrupt logic of link10g. */
@@ -1658,11 +1881,15 @@
1658#define PRS_REG_CM_HDR_TYPE_4 0x40088 1881#define PRS_REG_CM_HDR_TYPE_4 0x40088
1659/* [RW 32] The CM header in case there was not a match on the connection */ 1882/* [RW 32] The CM header in case there was not a match on the connection */
1660#define PRS_REG_CM_NO_MATCH_HDR 0x400b8 1883#define PRS_REG_CM_NO_MATCH_HDR 0x400b8
1884/* [RW 1] Indicates if in e1hov mode. 0=non-e1hov mode; 1=e1hov mode. */
1885#define PRS_REG_E1HOV_MODE 0x401c8
1661/* [RW 8] The 8-bit event ID for a match and packet type 1. Used in packet 1886/* [RW 8] The 8-bit event ID for a match and packet type 1. Used in packet
1662 start message to TCM. */ 1887 start message to TCM. */
1663#define PRS_REG_EVENT_ID_1 0x40054 1888#define PRS_REG_EVENT_ID_1 0x40054
1664#define PRS_REG_EVENT_ID_2 0x40058 1889#define PRS_REG_EVENT_ID_2 0x40058
1665#define PRS_REG_EVENT_ID_3 0x4005c 1890#define PRS_REG_EVENT_ID_3 0x4005c
1891/* [RW 16] The Ethernet type value for FCoE */
1892#define PRS_REG_FCOE_TYPE 0x401d0
1666/* [RW 8] Context region for flush packet with packet type 0. Used in CFC 1893/* [RW 8] Context region for flush packet with packet type 0. Used in CFC
1667 load request message. */ 1894 load request message. */
1668#define PRS_REG_FLUSH_REGIONS_TYPE_0 0x40004 1895#define PRS_REG_FLUSH_REGIONS_TYPE_0 0x40004
@@ -1732,6 +1959,11 @@
1732#define PXP2_REG_HST_HEADER_FIFO_STATUS 0x120478 1959#define PXP2_REG_HST_HEADER_FIFO_STATUS 0x120478
1733#define PXP2_REG_PGL_CONTROL0 0x120490 1960#define PXP2_REG_PGL_CONTROL0 0x120490
1734#define PXP2_REG_PGL_CONTROL1 0x120514 1961#define PXP2_REG_PGL_CONTROL1 0x120514
1962/* [RW 32] third dword data of expansion rom request. this register is
1963 special. reading from it provides a vector outstanding read requests. if
1964 a bit is zero it means that a read request on the corresponding tag did
1965 not finish yet (not all completions have arrived for it) */
1966#define PXP2_REG_PGL_EXP_ROM2 0x120808
1735/* [RW 32] Inbound interrupt table for CSDM: bits[31:16]-mask; 1967/* [RW 32] Inbound interrupt table for CSDM: bits[31:16]-mask;
1736 its[15:0]-address */ 1968 its[15:0]-address */
1737#define PXP2_REG_PGL_INT_CSDM_0 0x1204f4 1969#define PXP2_REG_PGL_INT_CSDM_0 0x1204f4
@@ -1775,8 +2007,7 @@
1775/* [R 1] this bit indicates that a read request was blocked because of 2007/* [R 1] this bit indicates that a read request was blocked because of
1776 bus_master_en was deasserted */ 2008 bus_master_en was deasserted */
1777#define PXP2_REG_PGL_READ_BLOCKED 0x120568 2009#define PXP2_REG_PGL_READ_BLOCKED 0x120568
1778/* [R 6] debug only */ 2010#define PXP2_REG_PGL_TAGS_LIMIT 0x1205a8
1779#define PXP2_REG_PGL_TXR_CDTS 0x120528
1780/* [R 18] debug only */ 2011/* [R 18] debug only */
1781#define PXP2_REG_PGL_TXW_CDTS 0x12052c 2012#define PXP2_REG_PGL_TXW_CDTS 0x12052c
1782/* [R 1] this bit indicates that a write request was blocked because of 2013/* [R 1] this bit indicates that a write request was blocked because of
@@ -1828,6 +2059,7 @@
1828#define PXP2_REG_PSWRQ_QM0_L2P 0x120038 2059#define PXP2_REG_PSWRQ_QM0_L2P 0x120038
1829#define PXP2_REG_PSWRQ_SRC0_L2P 0x120054 2060#define PXP2_REG_PSWRQ_SRC0_L2P 0x120054
1830#define PXP2_REG_PSWRQ_TM0_L2P 0x12001c 2061#define PXP2_REG_PSWRQ_TM0_L2P 0x12001c
2062#define PXP2_REG_PSWRQ_TSDM0_L2P 0x1200e0
1831/* [RW 25] Interrupt mask register #0 read/write */ 2063/* [RW 25] Interrupt mask register #0 read/write */
1832#define PXP2_REG_PXP2_INT_MASK 0x120578 2064#define PXP2_REG_PXP2_INT_MASK 0x120578
1833/* [R 25] Interrupt register #0 read */ 2065/* [R 25] Interrupt register #0 read */
@@ -2016,8 +2248,12 @@
2016#define PXP2_REG_RQ_BW_WR_UBOUND29 0x1202a4 2248#define PXP2_REG_RQ_BW_WR_UBOUND29 0x1202a4
2017/* [RW 7] Bandwidth upper bound for VQ30 */ 2249/* [RW 7] Bandwidth upper bound for VQ30 */
2018#define PXP2_REG_RQ_BW_WR_UBOUND30 0x1202a8 2250#define PXP2_REG_RQ_BW_WR_UBOUND30 0x1202a8
2251/* [RW 18] external first_mem_addr field in L2P table for CDU module port 0 */
2252#define PXP2_REG_RQ_CDU0_EFIRST_MEM_ADDR 0x120008
2019/* [RW 2] Endian mode for cdu */ 2253/* [RW 2] Endian mode for cdu */
2020#define PXP2_REG_RQ_CDU_ENDIAN_M 0x1201a0 2254#define PXP2_REG_RQ_CDU_ENDIAN_M 0x1201a0
2255#define PXP2_REG_RQ_CDU_FIRST_ILT 0x12061c
2256#define PXP2_REG_RQ_CDU_LAST_ILT 0x120620
2021/* [RW 3] page size in L2P table for CDU module; -4k; -8k; -16k; -32k; -64k; 2257/* [RW 3] page size in L2P table for CDU module; -4k; -8k; -16k; -32k; -64k;
2022 -128k */ 2258 -128k */
2023#define PXP2_REG_RQ_CDU_P_SIZE 0x120018 2259#define PXP2_REG_RQ_CDU_P_SIZE 0x120018
@@ -2029,14 +2265,26 @@
2029/* [RW 1] When '1'; requests will enter input buffers but wont get out 2265/* [RW 1] When '1'; requests will enter input buffers but wont get out
2030 towards the glue */ 2266 towards the glue */
2031#define PXP2_REG_RQ_DISABLE_INPUTS 0x120330 2267#define PXP2_REG_RQ_DISABLE_INPUTS 0x120330
2268/* [RW 1] 1 - SR will be aligned by 64B; 0 - SR will be aligned by 8B */
2269#define PXP2_REG_RQ_DRAM_ALIGN 0x1205b0
2270/* [RW 1] If 1 ILT failiue will not result in ELT access; An interrupt will
2271 be asserted */
2272#define PXP2_REG_RQ_ELT_DISABLE 0x12066c
2032/* [RW 2] Endian mode for hc */ 2273/* [RW 2] Endian mode for hc */
2033#define PXP2_REG_RQ_HC_ENDIAN_M 0x1201a8 2274#define PXP2_REG_RQ_HC_ENDIAN_M 0x1201a8
2275/* [RW 1] when '0' ILT logic will work as in A0; otherwise B0; for back
2276 compatibility needs; Note that different registers are used per mode */
2277#define PXP2_REG_RQ_ILT_MODE 0x1205b4
2034/* [WB 53] Onchip address table */ 2278/* [WB 53] Onchip address table */
2035#define PXP2_REG_RQ_ONCHIP_AT 0x122000 2279#define PXP2_REG_RQ_ONCHIP_AT 0x122000
2280/* [WB 53] Onchip address table - B0 */
2281#define PXP2_REG_RQ_ONCHIP_AT_B0 0x128000
2036/* [RW 13] Pending read limiter threshold; in Dwords */ 2282/* [RW 13] Pending read limiter threshold; in Dwords */
2037#define PXP2_REG_RQ_PDR_LIMIT 0x12033c 2283#define PXP2_REG_RQ_PDR_LIMIT 0x12033c
2038/* [RW 2] Endian mode for qm */ 2284/* [RW 2] Endian mode for qm */
2039#define PXP2_REG_RQ_QM_ENDIAN_M 0x120194 2285#define PXP2_REG_RQ_QM_ENDIAN_M 0x120194
2286#define PXP2_REG_RQ_QM_FIRST_ILT 0x120634
2287#define PXP2_REG_RQ_QM_LAST_ILT 0x120638
2040/* [RW 3] page size in L2P table for QM module; -4k; -8k; -16k; -32k; -64k; 2288/* [RW 3] page size in L2P table for QM module; -4k; -8k; -16k; -32k; -64k;
2041 -128k */ 2289 -128k */
2042#define PXP2_REG_RQ_QM_P_SIZE 0x120050 2290#define PXP2_REG_RQ_QM_P_SIZE 0x120050
@@ -2050,16 +2298,22 @@
2050#define PXP2_REG_RQ_RD_MBS1 0x120168 2298#define PXP2_REG_RQ_RD_MBS1 0x120168
2051/* [RW 2] Endian mode for src */ 2299/* [RW 2] Endian mode for src */
2052#define PXP2_REG_RQ_SRC_ENDIAN_M 0x12019c 2300#define PXP2_REG_RQ_SRC_ENDIAN_M 0x12019c
2301#define PXP2_REG_RQ_SRC_FIRST_ILT 0x12063c
2302#define PXP2_REG_RQ_SRC_LAST_ILT 0x120640
2053/* [RW 3] page size in L2P table for SRC module; -4k; -8k; -16k; -32k; -64k; 2303/* [RW 3] page size in L2P table for SRC module; -4k; -8k; -16k; -32k; -64k;
2054 -128k */ 2304 -128k */
2055#define PXP2_REG_RQ_SRC_P_SIZE 0x12006c 2305#define PXP2_REG_RQ_SRC_P_SIZE 0x12006c
2056/* [RW 2] Endian mode for tm */ 2306/* [RW 2] Endian mode for tm */
2057#define PXP2_REG_RQ_TM_ENDIAN_M 0x120198 2307#define PXP2_REG_RQ_TM_ENDIAN_M 0x120198
2308#define PXP2_REG_RQ_TM_FIRST_ILT 0x120644
2309#define PXP2_REG_RQ_TM_LAST_ILT 0x120648
2058/* [RW 3] page size in L2P table for TM module; -4k; -8k; -16k; -32k; -64k; 2310/* [RW 3] page size in L2P table for TM module; -4k; -8k; -16k; -32k; -64k;
2059 -128k */ 2311 -128k */
2060#define PXP2_REG_RQ_TM_P_SIZE 0x120034 2312#define PXP2_REG_RQ_TM_P_SIZE 0x120034
2061/* [R 5] Number of entries in the ufifo; his fifo has l2p completions */ 2313/* [R 5] Number of entries in the ufifo; his fifo has l2p completions */
2062#define PXP2_REG_RQ_UFIFO_NUM_OF_ENTRY 0x12080c 2314#define PXP2_REG_RQ_UFIFO_NUM_OF_ENTRY 0x12080c
2315/* [RW 18] external first_mem_addr field in L2P table for USDM module port 0 */
2316#define PXP2_REG_RQ_USDM0_EFIRST_MEM_ADDR 0x120094
2063/* [R 8] Number of entries occupied by vq 0 in pswrq memory */ 2317/* [R 8] Number of entries occupied by vq 0 in pswrq memory */
2064#define PXP2_REG_RQ_VQ0_ENTRY_CNT 0x120810 2318#define PXP2_REG_RQ_VQ0_ENTRY_CNT 0x120810
2065/* [R 8] Number of entries occupied by vq 10 in pswrq memory */ 2319/* [R 8] Number of entries occupied by vq 10 in pswrq memory */
@@ -2130,19 +2384,63 @@
2130/* [RW 3] Max burst size filed for write requests port 1; 000 - 128B; 2384/* [RW 3] Max burst size filed for write requests port 1; 000 - 128B;
2131 001:256B; 010: 512B; */ 2385 001:256B; 010: 512B; */
2132#define PXP2_REG_RQ_WR_MBS1 0x120164 2386#define PXP2_REG_RQ_WR_MBS1 0x120164
2387/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2388 buffer reaches this number has_payload will be asserted */
2389#define PXP2_REG_WR_CDU_MPS 0x1205f0
2390/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2391 buffer reaches this number has_payload will be asserted */
2392#define PXP2_REG_WR_CSDM_MPS 0x1205d0
2393/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2394 buffer reaches this number has_payload will be asserted */
2395#define PXP2_REG_WR_DBG_MPS 0x1205e8
2396/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2397 buffer reaches this number has_payload will be asserted */
2398#define PXP2_REG_WR_DMAE_MPS 0x1205ec
2133/* [RW 10] if Number of entries in dmae fifo will be higer than this 2399/* [RW 10] if Number of entries in dmae fifo will be higer than this
2134 threshold then has_payload indication will be asserted; the default value 2400 threshold then has_payload indication will be asserted; the default value
2135 should be equal to &gt; write MBS size! */ 2401 should be equal to &gt; write MBS size! */
2136#define PXP2_REG_WR_DMAE_TH 0x120368 2402#define PXP2_REG_WR_DMAE_TH 0x120368
2403/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2404 buffer reaches this number has_payload will be asserted */
2405#define PXP2_REG_WR_HC_MPS 0x1205c8
2406/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2407 buffer reaches this number has_payload will be asserted */
2408#define PXP2_REG_WR_QM_MPS 0x1205dc
2409/* [RW 1] 0 - working in A0 mode; - working in B0 mode */
2410#define PXP2_REG_WR_REV_MODE 0x120670
2411/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2412 buffer reaches this number has_payload will be asserted */
2413#define PXP2_REG_WR_SRC_MPS 0x1205e4
2414/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2415 buffer reaches this number has_payload will be asserted */
2416#define PXP2_REG_WR_TM_MPS 0x1205e0
2417/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2418 buffer reaches this number has_payload will be asserted */
2419#define PXP2_REG_WR_TSDM_MPS 0x1205d4
2137/* [RW 10] if Number of entries in usdmdp fifo will be higer than this 2420/* [RW 10] if Number of entries in usdmdp fifo will be higer than this
2138 threshold then has_payload indication will be asserted; the default value 2421 threshold then has_payload indication will be asserted; the default value
2139 should be equal to &gt; write MBS size! */ 2422 should be equal to &gt; write MBS size! */
2140#define PXP2_REG_WR_USDMDP_TH 0x120348 2423#define PXP2_REG_WR_USDMDP_TH 0x120348
2424/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2425 buffer reaches this number has_payload will be asserted */
2426#define PXP2_REG_WR_USDM_MPS 0x1205cc
2427/* [RW 2] 0 - 128B; - 256B; - 512B; - 1024B; when the payload in the
2428 buffer reaches this number has_payload will be asserted */
2429#define PXP2_REG_WR_XSDM_MPS 0x1205d8
2141/* [R 1] debug only: Indication if PSWHST arbiter is idle */ 2430/* [R 1] debug only: Indication if PSWHST arbiter is idle */
2142#define PXP_REG_HST_ARB_IS_IDLE 0x103004 2431#define PXP_REG_HST_ARB_IS_IDLE 0x103004
2143/* [R 8] debug only: A bit mask for all PSWHST arbiter clients. '1' means 2432/* [R 8] debug only: A bit mask for all PSWHST arbiter clients. '1' means
2144 this client is waiting for the arbiter. */ 2433 this client is waiting for the arbiter. */
2145#define PXP_REG_HST_CLIENTS_WAITING_TO_ARB 0x103008 2434#define PXP_REG_HST_CLIENTS_WAITING_TO_ARB 0x103008
2435/* [R 1] debug only: '1' means this PSWHST is discarding doorbells. This bit
2436 should update accoring to 'hst_discard_doorbells' register when the state
2437 machine is idle */
2438#define PXP_REG_HST_DISCARD_DOORBELLS_STATUS 0x1030a0
2439/* [R 6] debug only: A bit mask for all PSWHST internal write clients. '1'
2440 means this PSWHST is discarding inputs from this client. Each bit should
2441 update accoring to 'hst_discard_internal_writes' register when the state
2442 machine is idle. */
2443#define PXP_REG_HST_DISCARD_INTERNAL_WRITES_STATUS 0x10309c
2146/* [WB 160] Used for initialization of the inbound interrupts memory */ 2444/* [WB 160] Used for initialization of the inbound interrupts memory */
2147#define PXP_REG_HST_INBOUND_INT 0x103800 2445#define PXP_REG_HST_INBOUND_INT 0x103800
2148/* [RW 32] Interrupt mask register #0 read/write */ 2446/* [RW 32] Interrupt mask register #0 read/write */
@@ -2165,18 +2463,25 @@
2165#define QM_REG_ACTCTRINITVAL_3 0x16804c 2463#define QM_REG_ACTCTRINITVAL_3 0x16804c
2166/* [RW 32] The base logical address (in bytes) of each physical queue. The 2464/* [RW 32] The base logical address (in bytes) of each physical queue. The
2167 index I represents the physical queue number. The 12 lsbs are ignore and 2465 index I represents the physical queue number. The 12 lsbs are ignore and
2168 considered zero so practically there are only 20 bits in this register. */ 2466 considered zero so practically there are only 20 bits in this register;
2467 queues 63-0 */
2169#define QM_REG_BASEADDR 0x168900 2468#define QM_REG_BASEADDR 0x168900
2170/* [RW 16] The byte credit cost for each task. This value is for both ports */ 2469/* [RW 16] The byte credit cost for each task. This value is for both ports */
2171#define QM_REG_BYTECRDCOST 0x168234 2470#define QM_REG_BYTECRDCOST 0x168234
2172/* [RW 16] The initial byte credit value for both ports. */ 2471/* [RW 16] The initial byte credit value for both ports. */
2173#define QM_REG_BYTECRDINITVAL 0x168238 2472#define QM_REG_BYTECRDINITVAL 0x168238
2174/* [RW 32] A bit per physical queue. If the bit is cleared then the physical 2473/* [RW 32] A bit per physical queue. If the bit is cleared then the physical
2175 queue uses port 0 else it uses port 1. */ 2474 queue uses port 0 else it uses port 1; queues 31-0 */
2176#define QM_REG_BYTECRDPORT_LSB 0x168228 2475#define QM_REG_BYTECRDPORT_LSB 0x168228
2177/* [RW 32] A bit per physical queue. If the bit is cleared then the physical 2476/* [RW 32] A bit per physical queue. If the bit is cleared then the physical
2178 queue uses port 0 else it uses port 1. */ 2477 queue uses port 0 else it uses port 1; queues 95-64 */
2478#define QM_REG_BYTECRDPORT_LSB_EXT_A 0x16e520
2479/* [RW 32] A bit per physical queue. If the bit is cleared then the physical
2480 queue uses port 0 else it uses port 1; queues 63-32 */
2179#define QM_REG_BYTECRDPORT_MSB 0x168224 2481#define QM_REG_BYTECRDPORT_MSB 0x168224
2482/* [RW 32] A bit per physical queue. If the bit is cleared then the physical
2483 queue uses port 0 else it uses port 1; queues 127-96 */
2484#define QM_REG_BYTECRDPORT_MSB_EXT_A 0x16e51c
2180/* [RW 16] The byte credit value that if above the QM is considered almost 2485/* [RW 16] The byte credit value that if above the QM is considered almost
2181 full */ 2486 full */
2182#define QM_REG_BYTECREDITAFULLTHR 0x168094 2487#define QM_REG_BYTECREDITAFULLTHR 0x168094
@@ -2203,7 +2508,7 @@
2203#define QM_REG_CMINTVOQMASK_6 0x16820c 2508#define QM_REG_CMINTVOQMASK_6 0x16820c
2204#define QM_REG_CMINTVOQMASK_7 0x168210 2509#define QM_REG_CMINTVOQMASK_7 0x168210
2205/* [RW 20] The number of connections divided by 16 which dictates the size 2510/* [RW 20] The number of connections divided by 16 which dictates the size
2206 of each queue per port 0 */ 2511 of each queue which belongs to even function number. */
2207#define QM_REG_CONNNUM_0 0x168020 2512#define QM_REG_CONNNUM_0 0x168020
2208/* [R 6] Keep the fill level of the fifo from write client 4 */ 2513/* [R 6] Keep the fill level of the fifo from write client 4 */
2209#define QM_REG_CQM_WRC_FIFOLVL 0x168018 2514#define QM_REG_CQM_WRC_FIFOLVL 0x168018
@@ -2216,74 +2521,179 @@
2216 bypass enable */ 2521 bypass enable */
2217#define QM_REG_ENBYPVOQMASK 0x16823c 2522#define QM_REG_ENBYPVOQMASK 0x16823c
2218/* [RW 32] A bit mask per each physical queue. If a bit is set then the 2523/* [RW 32] A bit mask per each physical queue. If a bit is set then the
2219 physical queue uses the byte credit */ 2524 physical queue uses the byte credit; queues 31-0 */
2220#define QM_REG_ENBYTECRD_LSB 0x168220 2525#define QM_REG_ENBYTECRD_LSB 0x168220
2221/* [RW 32] A bit mask per each physical queue. If a bit is set then the 2526/* [RW 32] A bit mask per each physical queue. If a bit is set then the
2222 physical queue uses the byte credit */ 2527 physical queue uses the byte credit; queues 95-64 */
2528#define QM_REG_ENBYTECRD_LSB_EXT_A 0x16e518
2529/* [RW 32] A bit mask per each physical queue. If a bit is set then the
2530 physical queue uses the byte credit; queues 63-32 */
2223#define QM_REG_ENBYTECRD_MSB 0x16821c 2531#define QM_REG_ENBYTECRD_MSB 0x16821c
2532/* [RW 32] A bit mask per each physical queue. If a bit is set then the
2533 physical queue uses the byte credit; queues 127-96 */
2534#define QM_REG_ENBYTECRD_MSB_EXT_A 0x16e514
2224/* [RW 4] If cleared then the secondary interface will not be served by the 2535/* [RW 4] If cleared then the secondary interface will not be served by the
2225 RR arbiter */ 2536 RR arbiter */
2226#define QM_REG_ENSEC 0x1680f0 2537#define QM_REG_ENSEC 0x1680f0
2227/* [RW 32] A bit vector per each physical queue which selects which function 2538/* [RW 32] NA */
2228 number to use on PCI access for that queue. */
2229#define QM_REG_FUNCNUMSEL_LSB 0x168230 2539#define QM_REG_FUNCNUMSEL_LSB 0x168230
2230/* [RW 32] A bit vector per each physical queue which selects which function 2540/* [RW 32] NA */
2231 number to use on PCI access for that queue. */
2232#define QM_REG_FUNCNUMSEL_MSB 0x16822c 2541#define QM_REG_FUNCNUMSEL_MSB 0x16822c
2233/* [RW 32] A mask register to mask the Almost empty signals which will not 2542/* [RW 32] A mask register to mask the Almost empty signals which will not
2234 be use for the almost empty indication to the HW block */ 2543 be use for the almost empty indication to the HW block; queues 31:0 */
2235#define QM_REG_HWAEMPTYMASK_LSB 0x168218 2544#define QM_REG_HWAEMPTYMASK_LSB 0x168218
2236/* [RW 32] A mask register to mask the Almost empty signals which will not 2545/* [RW 32] A mask register to mask the Almost empty signals which will not
2237 be use for the almost empty indication to the HW block */ 2546 be use for the almost empty indication to the HW block; queues 95-64 */
2547#define QM_REG_HWAEMPTYMASK_LSB_EXT_A 0x16e510
2548/* [RW 32] A mask register to mask the Almost empty signals which will not
2549 be use for the almost empty indication to the HW block; queues 63:32 */
2238#define QM_REG_HWAEMPTYMASK_MSB 0x168214 2550#define QM_REG_HWAEMPTYMASK_MSB 0x168214
2551/* [RW 32] A mask register to mask the Almost empty signals which will not
2552 be use for the almost empty indication to the HW block; queues 127-96 */
2553#define QM_REG_HWAEMPTYMASK_MSB_EXT_A 0x16e50c
2239/* [RW 4] The number of outstanding request to CFC */ 2554/* [RW 4] The number of outstanding request to CFC */
2240#define QM_REG_OUTLDREQ 0x168804 2555#define QM_REG_OUTLDREQ 0x168804
2241/* [RC 1] A flag to indicate that overflow error occurred in one of the 2556/* [RC 1] A flag to indicate that overflow error occurred in one of the
2242 queues. */ 2557 queues. */
2243#define QM_REG_OVFERROR 0x16805c 2558#define QM_REG_OVFERROR 0x16805c
2244/* [RC 6] the Q were the qverflow occurs */ 2559/* [RC 7] the Q were the qverflow occurs */
2245#define QM_REG_OVFQNUM 0x168058 2560#define QM_REG_OVFQNUM 0x168058
2246/* [R 32] Pause state for physical queues 31-0 */ 2561/* [R 16] Pause state for physical queues 15-0 */
2247#define QM_REG_PAUSESTATE0 0x168410 2562#define QM_REG_PAUSESTATE0 0x168410
2248/* [R 32] Pause state for physical queues 64-32 */ 2563/* [R 16] Pause state for physical queues 31-16 */
2249#define QM_REG_PAUSESTATE1 0x168414 2564#define QM_REG_PAUSESTATE1 0x168414
2565/* [R 16] Pause state for physical queues 47-32 */
2566#define QM_REG_PAUSESTATE2 0x16e684
2567/* [R 16] Pause state for physical queues 63-48 */
2568#define QM_REG_PAUSESTATE3 0x16e688
2569/* [R 16] Pause state for physical queues 79-64 */
2570#define QM_REG_PAUSESTATE4 0x16e68c
2571/* [R 16] Pause state for physical queues 95-80 */
2572#define QM_REG_PAUSESTATE5 0x16e690
2573/* [R 16] Pause state for physical queues 111-96 */
2574#define QM_REG_PAUSESTATE6 0x16e694
2575/* [R 16] Pause state for physical queues 127-112 */
2576#define QM_REG_PAUSESTATE7 0x16e698
2250/* [RW 2] The PCI attributes field used in the PCI request. */ 2577/* [RW 2] The PCI attributes field used in the PCI request. */
2251#define QM_REG_PCIREQAT 0x168054 2578#define QM_REG_PCIREQAT 0x168054
2252/* [R 16] The byte credit of port 0 */ 2579/* [R 16] The byte credit of port 0 */
2253#define QM_REG_PORT0BYTECRD 0x168300 2580#define QM_REG_PORT0BYTECRD 0x168300
2254/* [R 16] The byte credit of port 1 */ 2581/* [R 16] The byte credit of port 1 */
2255#define QM_REG_PORT1BYTECRD 0x168304 2582#define QM_REG_PORT1BYTECRD 0x168304
2256/* [WB 54] Pointer Table Memory; The mapping is as follow: ptrtbl[53:30] 2583/* [RW 3] pci function number of queues 15-0 */
2257 read pointer; ptrtbl[29:6] write pointer; ptrtbl[5:4] read bank0; 2584#define QM_REG_PQ2PCIFUNC_0 0x16e6bc
2258 ptrtbl[3:2] read bank 1; ptrtbl[1:0] write bank; */ 2585#define QM_REG_PQ2PCIFUNC_1 0x16e6c0
2586#define QM_REG_PQ2PCIFUNC_2 0x16e6c4
2587#define QM_REG_PQ2PCIFUNC_3 0x16e6c8
2588#define QM_REG_PQ2PCIFUNC_4 0x16e6cc
2589#define QM_REG_PQ2PCIFUNC_5 0x16e6d0
2590#define QM_REG_PQ2PCIFUNC_6 0x16e6d4
2591#define QM_REG_PQ2PCIFUNC_7 0x16e6d8
2592/* [WB 54] Pointer Table Memory for queues 63-0; The mapping is as follow:
2593 ptrtbl[53:30] read pointer; ptrtbl[29:6] write pointer; ptrtbl[5:4] read
2594 bank0; ptrtbl[3:2] read bank 1; ptrtbl[1:0] write bank; */
2259#define QM_REG_PTRTBL 0x168a00 2595#define QM_REG_PTRTBL 0x168a00
2596/* [WB 54] Pointer Table Memory for queues 127-64; The mapping is as follow:
2597 ptrtbl[53:30] read pointer; ptrtbl[29:6] write pointer; ptrtbl[5:4] read
2598 bank0; ptrtbl[3:2] read bank 1; ptrtbl[1:0] write bank; */
2599#define QM_REG_PTRTBL_EXT_A 0x16e200
2260/* [RW 2] Interrupt mask register #0 read/write */ 2600/* [RW 2] Interrupt mask register #0 read/write */
2261#define QM_REG_QM_INT_MASK 0x168444 2601#define QM_REG_QM_INT_MASK 0x168444
2262/* [R 2] Interrupt register #0 read */ 2602/* [R 2] Interrupt register #0 read */
2263#define QM_REG_QM_INT_STS 0x168438 2603#define QM_REG_QM_INT_STS 0x168438
2264/* [RW 9] Parity mask register #0 read/write */ 2604/* [RW 12] Parity mask register #0 read/write */
2265#define QM_REG_QM_PRTY_MASK 0x168454 2605#define QM_REG_QM_PRTY_MASK 0x168454
2266/* [R 9] Parity register #0 read */ 2606/* [R 12] Parity register #0 read */
2267#define QM_REG_QM_PRTY_STS 0x168448 2607#define QM_REG_QM_PRTY_STS 0x168448
2268/* [R 32] Current queues in pipeline: Queues from 32 to 63 */ 2608/* [R 32] Current queues in pipeline: Queues from 32 to 63 */
2269#define QM_REG_QSTATUS_HIGH 0x16802c 2609#define QM_REG_QSTATUS_HIGH 0x16802c
2610/* [R 32] Current queues in pipeline: Queues from 96 to 127 */
2611#define QM_REG_QSTATUS_HIGH_EXT_A 0x16e408
2270/* [R 32] Current queues in pipeline: Queues from 0 to 31 */ 2612/* [R 32] Current queues in pipeline: Queues from 0 to 31 */
2271#define QM_REG_QSTATUS_LOW 0x168028 2613#define QM_REG_QSTATUS_LOW 0x168028
2272/* [R 24] The number of tasks queued for each queue */ 2614/* [R 32] Current queues in pipeline: Queues from 64 to 95 */
2615#define QM_REG_QSTATUS_LOW_EXT_A 0x16e404
2616/* [R 24] The number of tasks queued for each queue; queues 63-0 */
2273#define QM_REG_QTASKCTR_0 0x168308 2617#define QM_REG_QTASKCTR_0 0x168308
2618/* [R 24] The number of tasks queued for each queue; queues 127-64 */
2619#define QM_REG_QTASKCTR_EXT_A_0 0x16e584
2274/* [RW 4] Queue tied to VOQ */ 2620/* [RW 4] Queue tied to VOQ */
2275#define QM_REG_QVOQIDX_0 0x1680f4 2621#define QM_REG_QVOQIDX_0 0x1680f4
2276#define QM_REG_QVOQIDX_10 0x16811c 2622#define QM_REG_QVOQIDX_10 0x16811c
2623#define QM_REG_QVOQIDX_100 0x16e49c
2624#define QM_REG_QVOQIDX_101 0x16e4a0
2625#define QM_REG_QVOQIDX_102 0x16e4a4
2626#define QM_REG_QVOQIDX_103 0x16e4a8
2627#define QM_REG_QVOQIDX_104 0x16e4ac
2628#define QM_REG_QVOQIDX_105 0x16e4b0
2629#define QM_REG_QVOQIDX_106 0x16e4b4
2630#define QM_REG_QVOQIDX_107 0x16e4b8
2631#define QM_REG_QVOQIDX_108 0x16e4bc
2632#define QM_REG_QVOQIDX_109 0x16e4c0
2633#define QM_REG_QVOQIDX_100 0x16e49c
2634#define QM_REG_QVOQIDX_101 0x16e4a0
2635#define QM_REG_QVOQIDX_102 0x16e4a4
2636#define QM_REG_QVOQIDX_103 0x16e4a8
2637#define QM_REG_QVOQIDX_104 0x16e4ac
2638#define QM_REG_QVOQIDX_105 0x16e4b0
2639#define QM_REG_QVOQIDX_106 0x16e4b4
2640#define QM_REG_QVOQIDX_107 0x16e4b8
2641#define QM_REG_QVOQIDX_108 0x16e4bc
2642#define QM_REG_QVOQIDX_109 0x16e4c0
2277#define QM_REG_QVOQIDX_11 0x168120 2643#define QM_REG_QVOQIDX_11 0x168120
2644#define QM_REG_QVOQIDX_110 0x16e4c4
2645#define QM_REG_QVOQIDX_111 0x16e4c8
2646#define QM_REG_QVOQIDX_112 0x16e4cc
2647#define QM_REG_QVOQIDX_113 0x16e4d0
2648#define QM_REG_QVOQIDX_114 0x16e4d4
2649#define QM_REG_QVOQIDX_115 0x16e4d8
2650#define QM_REG_QVOQIDX_116 0x16e4dc
2651#define QM_REG_QVOQIDX_117 0x16e4e0
2652#define QM_REG_QVOQIDX_118 0x16e4e4
2653#define QM_REG_QVOQIDX_119 0x16e4e8
2654#define QM_REG_QVOQIDX_110 0x16e4c4
2655#define QM_REG_QVOQIDX_111 0x16e4c8
2656#define QM_REG_QVOQIDX_112 0x16e4cc
2657#define QM_REG_QVOQIDX_113 0x16e4d0
2658#define QM_REG_QVOQIDX_114 0x16e4d4
2659#define QM_REG_QVOQIDX_115 0x16e4d8
2660#define QM_REG_QVOQIDX_116 0x16e4dc
2661#define QM_REG_QVOQIDX_117 0x16e4e0
2662#define QM_REG_QVOQIDX_118 0x16e4e4
2663#define QM_REG_QVOQIDX_119 0x16e4e8
2278#define QM_REG_QVOQIDX_12 0x168124 2664#define QM_REG_QVOQIDX_12 0x168124
2665#define QM_REG_QVOQIDX_120 0x16e4ec
2666#define QM_REG_QVOQIDX_121 0x16e4f0
2667#define QM_REG_QVOQIDX_122 0x16e4f4
2668#define QM_REG_QVOQIDX_123 0x16e4f8
2669#define QM_REG_QVOQIDX_124 0x16e4fc
2670#define QM_REG_QVOQIDX_125 0x16e500
2671#define QM_REG_QVOQIDX_126 0x16e504
2672#define QM_REG_QVOQIDX_127 0x16e508
2673#define QM_REG_QVOQIDX_120 0x16e4ec
2674#define QM_REG_QVOQIDX_121 0x16e4f0
2675#define QM_REG_QVOQIDX_122 0x16e4f4
2676#define QM_REG_QVOQIDX_123 0x16e4f8
2677#define QM_REG_QVOQIDX_124 0x16e4fc
2678#define QM_REG_QVOQIDX_125 0x16e500
2679#define QM_REG_QVOQIDX_126 0x16e504
2680#define QM_REG_QVOQIDX_127 0x16e508
2279#define QM_REG_QVOQIDX_13 0x168128 2681#define QM_REG_QVOQIDX_13 0x168128
2280#define QM_REG_QVOQIDX_14 0x16812c 2682#define QM_REG_QVOQIDX_14 0x16812c
2281#define QM_REG_QVOQIDX_15 0x168130 2683#define QM_REG_QVOQIDX_15 0x168130
2282#define QM_REG_QVOQIDX_16 0x168134 2684#define QM_REG_QVOQIDX_16 0x168134
2283#define QM_REG_QVOQIDX_17 0x168138 2685#define QM_REG_QVOQIDX_17 0x168138
2284#define QM_REG_QVOQIDX_21 0x168148 2686#define QM_REG_QVOQIDX_21 0x168148
2687#define QM_REG_QVOQIDX_22 0x16814c
2688#define QM_REG_QVOQIDX_23 0x168150
2689#define QM_REG_QVOQIDX_24 0x168154
2285#define QM_REG_QVOQIDX_25 0x168158 2690#define QM_REG_QVOQIDX_25 0x168158
2691#define QM_REG_QVOQIDX_26 0x16815c
2692#define QM_REG_QVOQIDX_27 0x168160
2693#define QM_REG_QVOQIDX_28 0x168164
2286#define QM_REG_QVOQIDX_29 0x168168 2694#define QM_REG_QVOQIDX_29 0x168168
2695#define QM_REG_QVOQIDX_30 0x16816c
2696#define QM_REG_QVOQIDX_31 0x168170
2287#define QM_REG_QVOQIDX_32 0x168174 2697#define QM_REG_QVOQIDX_32 0x168174
2288#define QM_REG_QVOQIDX_33 0x168178 2698#define QM_REG_QVOQIDX_33 0x168178
2289#define QM_REG_QVOQIDX_34 0x16817c 2699#define QM_REG_QVOQIDX_34 0x16817c
@@ -2328,17 +2738,95 @@
2328#define QM_REG_QVOQIDX_61 0x1681e8 2738#define QM_REG_QVOQIDX_61 0x1681e8
2329#define QM_REG_QVOQIDX_62 0x1681ec 2739#define QM_REG_QVOQIDX_62 0x1681ec
2330#define QM_REG_QVOQIDX_63 0x1681f0 2740#define QM_REG_QVOQIDX_63 0x1681f0
2741#define QM_REG_QVOQIDX_64 0x16e40c
2742#define QM_REG_QVOQIDX_65 0x16e410
2743#define QM_REG_QVOQIDX_66 0x16e414
2744#define QM_REG_QVOQIDX_67 0x16e418
2745#define QM_REG_QVOQIDX_68 0x16e41c
2746#define QM_REG_QVOQIDX_69 0x16e420
2331#define QM_REG_QVOQIDX_60 0x1681e4 2747#define QM_REG_QVOQIDX_60 0x1681e4
2332#define QM_REG_QVOQIDX_61 0x1681e8 2748#define QM_REG_QVOQIDX_61 0x1681e8
2333#define QM_REG_QVOQIDX_62 0x1681ec 2749#define QM_REG_QVOQIDX_62 0x1681ec
2334#define QM_REG_QVOQIDX_63 0x1681f0 2750#define QM_REG_QVOQIDX_63 0x1681f0
2751#define QM_REG_QVOQIDX_64 0x16e40c
2752#define QM_REG_QVOQIDX_65 0x16e410
2753#define QM_REG_QVOQIDX_69 0x16e420
2335#define QM_REG_QVOQIDX_7 0x168110 2754#define QM_REG_QVOQIDX_7 0x168110
2755#define QM_REG_QVOQIDX_70 0x16e424
2756#define QM_REG_QVOQIDX_71 0x16e428
2757#define QM_REG_QVOQIDX_72 0x16e42c
2758#define QM_REG_QVOQIDX_73 0x16e430
2759#define QM_REG_QVOQIDX_74 0x16e434
2760#define QM_REG_QVOQIDX_75 0x16e438
2761#define QM_REG_QVOQIDX_76 0x16e43c
2762#define QM_REG_QVOQIDX_77 0x16e440
2763#define QM_REG_QVOQIDX_78 0x16e444
2764#define QM_REG_QVOQIDX_79 0x16e448
2765#define QM_REG_QVOQIDX_70 0x16e424
2766#define QM_REG_QVOQIDX_71 0x16e428
2767#define QM_REG_QVOQIDX_72 0x16e42c
2768#define QM_REG_QVOQIDX_73 0x16e430
2769#define QM_REG_QVOQIDX_74 0x16e434
2770#define QM_REG_QVOQIDX_75 0x16e438
2771#define QM_REG_QVOQIDX_76 0x16e43c
2772#define QM_REG_QVOQIDX_77 0x16e440
2773#define QM_REG_QVOQIDX_78 0x16e444
2774#define QM_REG_QVOQIDX_79 0x16e448
2336#define QM_REG_QVOQIDX_8 0x168114 2775#define QM_REG_QVOQIDX_8 0x168114
2776#define QM_REG_QVOQIDX_80 0x16e44c
2777#define QM_REG_QVOQIDX_81 0x16e450
2778#define QM_REG_QVOQIDX_82 0x16e454
2779#define QM_REG_QVOQIDX_83 0x16e458
2780#define QM_REG_QVOQIDX_84 0x16e45c
2781#define QM_REG_QVOQIDX_85 0x16e460
2782#define QM_REG_QVOQIDX_86 0x16e464
2783#define QM_REG_QVOQIDX_87 0x16e468
2784#define QM_REG_QVOQIDX_88 0x16e46c
2785#define QM_REG_QVOQIDX_89 0x16e470
2786#define QM_REG_QVOQIDX_80 0x16e44c
2787#define QM_REG_QVOQIDX_81 0x16e450
2788#define QM_REG_QVOQIDX_85 0x16e460
2789#define QM_REG_QVOQIDX_86 0x16e464
2790#define QM_REG_QVOQIDX_87 0x16e468
2791#define QM_REG_QVOQIDX_88 0x16e46c
2792#define QM_REG_QVOQIDX_89 0x16e470
2337#define QM_REG_QVOQIDX_9 0x168118 2793#define QM_REG_QVOQIDX_9 0x168118
2338/* [R 24] Remaining pause timeout for port 0 */ 2794#define QM_REG_QVOQIDX_90 0x16e474
2795#define QM_REG_QVOQIDX_91 0x16e478
2796#define QM_REG_QVOQIDX_92 0x16e47c
2797#define QM_REG_QVOQIDX_93 0x16e480
2798#define QM_REG_QVOQIDX_94 0x16e484
2799#define QM_REG_QVOQIDX_95 0x16e488
2800#define QM_REG_QVOQIDX_96 0x16e48c
2801#define QM_REG_QVOQIDX_97 0x16e490
2802#define QM_REG_QVOQIDX_98 0x16e494
2803#define QM_REG_QVOQIDX_99 0x16e498
2804#define QM_REG_QVOQIDX_90 0x16e474
2805#define QM_REG_QVOQIDX_91 0x16e478
2806#define QM_REG_QVOQIDX_92 0x16e47c
2807#define QM_REG_QVOQIDX_93 0x16e480
2808#define QM_REG_QVOQIDX_94 0x16e484
2809#define QM_REG_QVOQIDX_95 0x16e488
2810#define QM_REG_QVOQIDX_96 0x16e48c
2811#define QM_REG_QVOQIDX_97 0x16e490
2812#define QM_REG_QVOQIDX_98 0x16e494
2813#define QM_REG_QVOQIDX_99 0x16e498
2814/* [R 24] Remaining pause timeout for queues 15-0 */
2339#define QM_REG_REMAINPAUSETM0 0x168418 2815#define QM_REG_REMAINPAUSETM0 0x168418
2340/* [R 24] Remaining pause timeout for port 1 */ 2816/* [R 24] Remaining pause timeout for queues 31-16 */
2341#define QM_REG_REMAINPAUSETM1 0x16841c 2817#define QM_REG_REMAINPAUSETM1 0x16841c
2818/* [R 24] Remaining pause timeout for queues 47-32 */
2819#define QM_REG_REMAINPAUSETM2 0x16e69c
2820/* [R 24] Remaining pause timeout for queues 63-48 */
2821#define QM_REG_REMAINPAUSETM3 0x16e6a0
2822/* [R 24] Remaining pause timeout for queues 79-64 */
2823#define QM_REG_REMAINPAUSETM4 0x16e6a4
2824/* [R 24] Remaining pause timeout for queues 95-80 */
2825#define QM_REG_REMAINPAUSETM5 0x16e6a8
2826/* [R 24] Remaining pause timeout for queues 111-96 */
2827#define QM_REG_REMAINPAUSETM6 0x16e6ac
2828/* [R 24] Remaining pause timeout for queues 127-112 */
2829#define QM_REG_REMAINPAUSETM7 0x16e6b0
2342/* [RW 1] Initialization bit command */ 2830/* [RW 1] Initialization bit command */
2343#define QM_REG_SOFT_RESET 0x168428 2831#define QM_REG_SOFT_RESET 0x168428
2344/* [RW 8] The credit cost per every task in the QM. A value per each VOQ */ 2832/* [RW 8] The credit cost per every task in the QM. A value per each VOQ */
@@ -2372,44 +2860,103 @@
2372#define QM_REG_VOQINITCREDIT_4 0x168070 2860#define QM_REG_VOQINITCREDIT_4 0x168070
2373#define QM_REG_VOQINITCREDIT_5 0x168074 2861#define QM_REG_VOQINITCREDIT_5 0x168074
2374/* [RW 1] The port of which VOQ belongs */ 2862/* [RW 1] The port of which VOQ belongs */
2863#define QM_REG_VOQPORT_0 0x1682a0
2375#define QM_REG_VOQPORT_1 0x1682a4 2864#define QM_REG_VOQPORT_1 0x1682a4
2376#define QM_REG_VOQPORT_10 0x1682c8 2865#define QM_REG_VOQPORT_10 0x1682c8
2377#define QM_REG_VOQPORT_11 0x1682cc 2866#define QM_REG_VOQPORT_11 0x1682cc
2378#define QM_REG_VOQPORT_2 0x1682a8 2867#define QM_REG_VOQPORT_2 0x1682a8
2379/* [RW 32] The physical queue number associated with each VOQ */ 2868/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2380#define QM_REG_VOQQMASK_0_LSB 0x168240 2869#define QM_REG_VOQQMASK_0_LSB 0x168240
2381/* [RW 32] The physical queue number associated with each VOQ */ 2870/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2871#define QM_REG_VOQQMASK_0_LSB_EXT_A 0x16e524
2872/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2382#define QM_REG_VOQQMASK_0_MSB 0x168244 2873#define QM_REG_VOQQMASK_0_MSB 0x168244
2383/* [RW 32] The physical queue number associated with each VOQ */ 2874/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2875#define QM_REG_VOQQMASK_0_MSB_EXT_A 0x16e528
2876/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2877#define QM_REG_VOQQMASK_10_LSB 0x168290
2878/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2879#define QM_REG_VOQQMASK_10_LSB_EXT_A 0x16e574
2880/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2881#define QM_REG_VOQQMASK_10_MSB 0x168294
2882/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2883#define QM_REG_VOQQMASK_10_MSB_EXT_A 0x16e578
2884/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2885#define QM_REG_VOQQMASK_11_LSB 0x168298
2886/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2887#define QM_REG_VOQQMASK_11_LSB_EXT_A 0x16e57c
2888/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2889#define QM_REG_VOQQMASK_11_MSB 0x16829c
2890/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2891#define QM_REG_VOQQMASK_11_MSB_EXT_A 0x16e580
2892/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2893#define QM_REG_VOQQMASK_1_LSB 0x168248
2894/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2895#define QM_REG_VOQQMASK_1_LSB_EXT_A 0x16e52c
2896/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2384#define QM_REG_VOQQMASK_1_MSB 0x16824c 2897#define QM_REG_VOQQMASK_1_MSB 0x16824c
2385/* [RW 32] The physical queue number associated with each VOQ */ 2898/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2899#define QM_REG_VOQQMASK_1_MSB_EXT_A 0x16e530
2900/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2386#define QM_REG_VOQQMASK_2_LSB 0x168250 2901#define QM_REG_VOQQMASK_2_LSB 0x168250
2387/* [RW 32] The physical queue number associated with each VOQ */ 2902/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2903#define QM_REG_VOQQMASK_2_LSB_EXT_A 0x16e534
2904/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2388#define QM_REG_VOQQMASK_2_MSB 0x168254 2905#define QM_REG_VOQQMASK_2_MSB 0x168254
2389/* [RW 32] The physical queue number associated with each VOQ */ 2906/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2907#define QM_REG_VOQQMASK_2_MSB_EXT_A 0x16e538
2908/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2390#define QM_REG_VOQQMASK_3_LSB 0x168258 2909#define QM_REG_VOQQMASK_3_LSB 0x168258
2391/* [RW 32] The physical queue number associated with each VOQ */ 2910/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2911#define QM_REG_VOQQMASK_3_LSB_EXT_A 0x16e53c
2912/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2913#define QM_REG_VOQQMASK_3_MSB_EXT_A 0x16e540
2914/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2392#define QM_REG_VOQQMASK_4_LSB 0x168260 2915#define QM_REG_VOQQMASK_4_LSB 0x168260
2393/* [RW 32] The physical queue number associated with each VOQ */ 2916/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2917#define QM_REG_VOQQMASK_4_LSB_EXT_A 0x16e544
2918/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2394#define QM_REG_VOQQMASK_4_MSB 0x168264 2919#define QM_REG_VOQQMASK_4_MSB 0x168264
2395/* [RW 32] The physical queue number associated with each VOQ */ 2920/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2921#define QM_REG_VOQQMASK_4_MSB_EXT_A 0x16e548
2922/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2396#define QM_REG_VOQQMASK_5_LSB 0x168268 2923#define QM_REG_VOQQMASK_5_LSB 0x168268
2397/* [RW 32] The physical queue number associated with each VOQ */ 2924/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2925#define QM_REG_VOQQMASK_5_LSB_EXT_A 0x16e54c
2926/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2398#define QM_REG_VOQQMASK_5_MSB 0x16826c 2927#define QM_REG_VOQQMASK_5_MSB 0x16826c
2399/* [RW 32] The physical queue number associated with each VOQ */ 2928/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2929#define QM_REG_VOQQMASK_5_MSB_EXT_A 0x16e550
2930/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2400#define QM_REG_VOQQMASK_6_LSB 0x168270 2931#define QM_REG_VOQQMASK_6_LSB 0x168270
2401/* [RW 32] The physical queue number associated with each VOQ */ 2932/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2933#define QM_REG_VOQQMASK_6_LSB_EXT_A 0x16e554
2934/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2402#define QM_REG_VOQQMASK_6_MSB 0x168274 2935#define QM_REG_VOQQMASK_6_MSB 0x168274
2403/* [RW 32] The physical queue number associated with each VOQ */ 2936/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2937#define QM_REG_VOQQMASK_6_MSB_EXT_A 0x16e558
2938/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2404#define QM_REG_VOQQMASK_7_LSB 0x168278 2939#define QM_REG_VOQQMASK_7_LSB 0x168278
2405/* [RW 32] The physical queue number associated with each VOQ */ 2940/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2941#define QM_REG_VOQQMASK_7_LSB_EXT_A 0x16e55c
2942/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2406#define QM_REG_VOQQMASK_7_MSB 0x16827c 2943#define QM_REG_VOQQMASK_7_MSB 0x16827c
2407/* [RW 32] The physical queue number associated with each VOQ */ 2944/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2945#define QM_REG_VOQQMASK_7_MSB_EXT_A 0x16e560
2946/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2408#define QM_REG_VOQQMASK_8_LSB 0x168280 2947#define QM_REG_VOQQMASK_8_LSB 0x168280
2409/* [RW 32] The physical queue number associated with each VOQ */ 2948/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2949#define QM_REG_VOQQMASK_8_LSB_EXT_A 0x16e564
2950/* [RW 32] The physical queue number associated with each VOQ; queues 63-32 */
2410#define QM_REG_VOQQMASK_8_MSB 0x168284 2951#define QM_REG_VOQQMASK_8_MSB 0x168284
2411/* [RW 32] The physical queue number associated with each VOQ */ 2952/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2953#define QM_REG_VOQQMASK_8_MSB_EXT_A 0x16e568
2954/* [RW 32] The physical queue number associated with each VOQ; queues 31-0 */
2412#define QM_REG_VOQQMASK_9_LSB 0x168288 2955#define QM_REG_VOQQMASK_9_LSB 0x168288
2956/* [RW 32] The physical queue number associated with each VOQ; queues 95-64 */
2957#define QM_REG_VOQQMASK_9_LSB_EXT_A 0x16e56c
2958/* [RW 32] The physical queue number associated with each VOQ; queues 127-96 */
2959#define QM_REG_VOQQMASK_9_MSB_EXT_A 0x16e570
2413/* [RW 32] Wrr weights */ 2960/* [RW 32] Wrr weights */
2414#define QM_REG_WRRWEIGHTS_0 0x16880c 2961#define QM_REG_WRRWEIGHTS_0 0x16880c
2415#define QM_REG_WRRWEIGHTS_1 0x168810 2962#define QM_REG_WRRWEIGHTS_1 0x168810
@@ -2431,14 +2978,78 @@
2431#define QM_REG_WRRWEIGHTS_15 0x168828 2978#define QM_REG_WRRWEIGHTS_15 0x168828
2432#define QM_REG_WRRWEIGHTS_15_SIZE 1 2979#define QM_REG_WRRWEIGHTS_15_SIZE 1
2433/* [RW 32] Wrr weights */ 2980/* [RW 32] Wrr weights */
2981#define QM_REG_WRRWEIGHTS_16 0x16e000
2982#define QM_REG_WRRWEIGHTS_16_SIZE 1
2983/* [RW 32] Wrr weights */
2984#define QM_REG_WRRWEIGHTS_17 0x16e004
2985#define QM_REG_WRRWEIGHTS_17_SIZE 1
2986/* [RW 32] Wrr weights */
2987#define QM_REG_WRRWEIGHTS_18 0x16e008
2988#define QM_REG_WRRWEIGHTS_18_SIZE 1
2989/* [RW 32] Wrr weights */
2990#define QM_REG_WRRWEIGHTS_19 0x16e00c
2991#define QM_REG_WRRWEIGHTS_19_SIZE 1
2992/* [RW 32] Wrr weights */
2434#define QM_REG_WRRWEIGHTS_10 0x168814 2993#define QM_REG_WRRWEIGHTS_10 0x168814
2435#define QM_REG_WRRWEIGHTS_11 0x168818 2994#define QM_REG_WRRWEIGHTS_11 0x168818
2436#define QM_REG_WRRWEIGHTS_12 0x16881c 2995#define QM_REG_WRRWEIGHTS_12 0x16881c
2437#define QM_REG_WRRWEIGHTS_13 0x168820 2996#define QM_REG_WRRWEIGHTS_13 0x168820
2438#define QM_REG_WRRWEIGHTS_14 0x168824 2997#define QM_REG_WRRWEIGHTS_14 0x168824
2439#define QM_REG_WRRWEIGHTS_15 0x168828 2998#define QM_REG_WRRWEIGHTS_15 0x168828
2999#define QM_REG_WRRWEIGHTS_16 0x16e000
3000#define QM_REG_WRRWEIGHTS_17 0x16e004
3001#define QM_REG_WRRWEIGHTS_18 0x16e008
3002#define QM_REG_WRRWEIGHTS_19 0x16e00c
2440#define QM_REG_WRRWEIGHTS_2 0x16882c 3003#define QM_REG_WRRWEIGHTS_2 0x16882c
3004#define QM_REG_WRRWEIGHTS_20 0x16e010
3005#define QM_REG_WRRWEIGHTS_20_SIZE 1
3006/* [RW 32] Wrr weights */
3007#define QM_REG_WRRWEIGHTS_21 0x16e014
3008#define QM_REG_WRRWEIGHTS_21_SIZE 1
3009/* [RW 32] Wrr weights */
3010#define QM_REG_WRRWEIGHTS_22 0x16e018
3011#define QM_REG_WRRWEIGHTS_22_SIZE 1
3012/* [RW 32] Wrr weights */
3013#define QM_REG_WRRWEIGHTS_23 0x16e01c
3014#define QM_REG_WRRWEIGHTS_23_SIZE 1
3015/* [RW 32] Wrr weights */
3016#define QM_REG_WRRWEIGHTS_24 0x16e020
3017#define QM_REG_WRRWEIGHTS_24_SIZE 1
3018/* [RW 32] Wrr weights */
3019#define QM_REG_WRRWEIGHTS_25 0x16e024
3020#define QM_REG_WRRWEIGHTS_25_SIZE 1
3021/* [RW 32] Wrr weights */
3022#define QM_REG_WRRWEIGHTS_26 0x16e028
3023#define QM_REG_WRRWEIGHTS_26_SIZE 1
3024/* [RW 32] Wrr weights */
3025#define QM_REG_WRRWEIGHTS_27 0x16e02c
3026#define QM_REG_WRRWEIGHTS_27_SIZE 1
3027/* [RW 32] Wrr weights */
3028#define QM_REG_WRRWEIGHTS_28 0x16e030
3029#define QM_REG_WRRWEIGHTS_28_SIZE 1
3030/* [RW 32] Wrr weights */
3031#define QM_REG_WRRWEIGHTS_29 0x16e034
3032#define QM_REG_WRRWEIGHTS_29_SIZE 1
3033/* [RW 32] Wrr weights */
3034#define QM_REG_WRRWEIGHTS_20 0x16e010
3035#define QM_REG_WRRWEIGHTS_21 0x16e014
3036#define QM_REG_WRRWEIGHTS_22 0x16e018
3037#define QM_REG_WRRWEIGHTS_23 0x16e01c
3038#define QM_REG_WRRWEIGHTS_24 0x16e020
3039#define QM_REG_WRRWEIGHTS_25 0x16e024
3040#define QM_REG_WRRWEIGHTS_26 0x16e028
3041#define QM_REG_WRRWEIGHTS_27 0x16e02c
3042#define QM_REG_WRRWEIGHTS_28 0x16e030
3043#define QM_REG_WRRWEIGHTS_29 0x16e034
2441#define QM_REG_WRRWEIGHTS_3 0x168830 3044#define QM_REG_WRRWEIGHTS_3 0x168830
3045#define QM_REG_WRRWEIGHTS_30 0x16e038
3046#define QM_REG_WRRWEIGHTS_30_SIZE 1
3047/* [RW 32] Wrr weights */
3048#define QM_REG_WRRWEIGHTS_31 0x16e03c
3049#define QM_REG_WRRWEIGHTS_31_SIZE 1
3050/* [RW 32] Wrr weights */
3051#define QM_REG_WRRWEIGHTS_30 0x16e038
3052#define QM_REG_WRRWEIGHTS_31 0x16e03c
2442#define QM_REG_WRRWEIGHTS_4 0x168834 3053#define QM_REG_WRRWEIGHTS_4 0x168834
2443#define QM_REG_WRRWEIGHTS_5 0x168838 3054#define QM_REG_WRRWEIGHTS_5 0x168838
2444#define QM_REG_WRRWEIGHTS_6 0x16883c 3055#define QM_REG_WRRWEIGHTS_6 0x16883c
@@ -2447,6 +3058,70 @@
2447#define QM_REG_WRRWEIGHTS_9 0x168848 3058#define QM_REG_WRRWEIGHTS_9 0x168848
2448/* [R 6] Keep the fill level of the fifo from write client 1 */ 3059/* [R 6] Keep the fill level of the fifo from write client 1 */
2449#define QM_REG_XQM_WRC_FIFOLVL 0x168000 3060#define QM_REG_XQM_WRC_FIFOLVL 0x168000
3061#define BRB1_BRB1_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3062#define BRB1_BRB1_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3063#define BRB1_BRB1_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3064#define BRB1_BRB1_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3065#define BRB1_BRB1_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3066#define BRB1_BRB1_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3067#define BRB1_BRB1_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3068#define BRB1_BRB1_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3069#define CCM_CCM_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3070#define CCM_CCM_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3071#define CCM_CCM_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3072#define CCM_CCM_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3073#define CCM_CCM_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3074#define CCM_CCM_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3075#define CCM_CCM_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3076#define CCM_CCM_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3077#define CDU_CDU_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3078#define CDU_CDU_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3079#define CDU_CDU_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3080#define CDU_CDU_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3081#define CDU_CDU_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3082#define CDU_CDU_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3083#define CDU_CDU_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3084#define CDU_CDU_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3085#define CFC_CFC_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3086#define CFC_CFC_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3087#define CFC_CFC_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3088#define CFC_CFC_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3089#define CFC_CFC_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3090#define CFC_CFC_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3091#define CFC_CFC_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3092#define CFC_CFC_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3093#define CSDM_CSDM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3094#define CSDM_CSDM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3095#define CSDM_CSDM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3096#define CSDM_CSDM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3097#define CSDM_CSDM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3098#define CSDM_CSDM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3099#define CSDM_CSDM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3100#define CSDM_CSDM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3101#define CSEM_CSEM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3102#define CSEM_CSEM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3103#define CSEM_CSEM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3104#define CSEM_CSEM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3105#define CSEM_CSEM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3106#define CSEM_CSEM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3107#define CSEM_CSEM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3108#define CSEM_CSEM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3109#define DBG_DBG_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3110#define DBG_DBG_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3111#define DBG_DBG_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3112#define DBG_DBG_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3113#define DBG_DBG_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3114#define DBG_DBG_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3115#define DBG_DBG_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3116#define DBG_DBG_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3117#define DMAE_DMAE_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3118#define DMAE_DMAE_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3119#define DMAE_DMAE_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3120#define DMAE_DMAE_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3121#define DMAE_DMAE_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3122#define DMAE_DMAE_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3123#define DMAE_DMAE_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3124#define DMAE_DMAE_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
2450#define DORQ_DORQ_INT_STS_REG_ADDRESS_ERROR (0x1<<0) 3125#define DORQ_DORQ_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
2451#define DORQ_DORQ_INT_STS_REG_ADDRESS_ERROR_SIZE 0 3126#define DORQ_DORQ_INT_STS_REG_ADDRESS_ERROR_SIZE 0
2452#define DORQ_DORQ_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0) 3127#define DORQ_DORQ_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
@@ -2455,6 +3130,22 @@
2455#define DORQ_DORQ_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0 3130#define DORQ_DORQ_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
2456#define DORQ_DORQ_INT_MASK_REG_ADDRESS_ERROR (0x1<<0) 3131#define DORQ_DORQ_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
2457#define DORQ_DORQ_INT_MASK_REG_ADDRESS_ERROR_SIZE 0 3132#define DORQ_DORQ_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3133#define HC_HC_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3134#define HC_HC_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3135#define HC_HC_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3136#define HC_HC_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3137#define HC_HC_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3138#define HC_HC_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3139#define HC_HC_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3140#define HC_HC_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3141#define MISC_MISC_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3142#define MISC_MISC_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3143#define MISC_MISC_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3144#define MISC_MISC_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3145#define MISC_MISC_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3146#define MISC_MISC_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3147#define MISC_MISC_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3148#define MISC_MISC_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
2458#define NIG_NIG_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0) 3149#define NIG_NIG_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
2459#define NIG_NIG_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0 3150#define NIG_NIG_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
2460#define NIG_NIG_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0) 3151#define NIG_NIG_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
@@ -2463,6 +3154,70 @@
2463#define NIG_NIG_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0 3154#define NIG_NIG_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
2464#define NIG_NIG_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0) 3155#define NIG_NIG_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
2465#define NIG_NIG_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0 3156#define NIG_NIG_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3157#define PBF_PBF_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3158#define PBF_PBF_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3159#define PBF_PBF_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3160#define PBF_PBF_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3161#define PBF_PBF_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3162#define PBF_PBF_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3163#define PBF_PBF_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3164#define PBF_PBF_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3165#define PB_PB_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3166#define PB_PB_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3167#define PB_PB_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3168#define PB_PB_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3169#define PB_PB_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3170#define PB_PB_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3171#define PB_PB_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3172#define PB_PB_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3173#define PRS_PRS_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3174#define PRS_PRS_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3175#define PRS_PRS_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3176#define PRS_PRS_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3177#define PRS_PRS_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3178#define PRS_PRS_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3179#define PRS_PRS_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3180#define PRS_PRS_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3181#define PXP2_PXP2_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3182#define PXP2_PXP2_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3183#define PXP2_PXP2_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3184#define PXP2_PXP2_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3185#define PXP2_PXP2_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3186#define PXP2_PXP2_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3187#define PXP2_PXP2_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3188#define PXP2_PXP2_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3189#define PXP_PXP_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3190#define PXP_PXP_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3191#define PXP_PXP_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3192#define PXP_PXP_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3193#define PXP_PXP_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3194#define PXP_PXP_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3195#define PXP_PXP_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3196#define PXP_PXP_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3197#define QM_QM_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3198#define QM_QM_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3199#define QM_QM_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3200#define QM_QM_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3201#define QM_QM_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3202#define QM_QM_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3203#define QM_QM_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3204#define QM_QM_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3205#define SEM_FAST_SEM_FAST_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3206#define SEM_FAST_SEM_FAST_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3207#define SEM_FAST_SEM_FAST_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3208#define SEM_FAST_SEM_FAST_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3209#define SEM_FAST_SEM_FAST_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3210#define SEM_FAST_SEM_FAST_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3211#define SEM_FAST_SEM_FAST_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3212#define SEM_FAST_SEM_FAST_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3213#define SRC_SRC_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3214#define SRC_SRC_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3215#define SRC_SRC_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3216#define SRC_SRC_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3217#define SRC_SRC_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3218#define SRC_SRC_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3219#define SRC_SRC_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3220#define SRC_SRC_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
2466#define TCM_TCM_INT_STS_REG_ADDRESS_ERROR (0x1<<0) 3221#define TCM_TCM_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
2467#define TCM_TCM_INT_STS_REG_ADDRESS_ERROR_SIZE 0 3222#define TCM_TCM_INT_STS_REG_ADDRESS_ERROR_SIZE 0
2468#define TCM_TCM_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0) 3223#define TCM_TCM_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
@@ -2471,6 +3226,78 @@
2471#define TCM_TCM_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0 3226#define TCM_TCM_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
2472#define TCM_TCM_INT_MASK_REG_ADDRESS_ERROR (0x1<<0) 3227#define TCM_TCM_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
2473#define TCM_TCM_INT_MASK_REG_ADDRESS_ERROR_SIZE 0 3228#define TCM_TCM_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3229#define TM_TM_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3230#define TM_TM_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3231#define TM_TM_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3232#define TM_TM_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3233#define TM_TM_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3234#define TM_TM_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3235#define TM_TM_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3236#define TM_TM_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3237#define TSDM_TSDM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3238#define TSDM_TSDM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3239#define TSDM_TSDM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3240#define TSDM_TSDM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3241#define TSDM_TSDM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3242#define TSDM_TSDM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3243#define TSDM_TSDM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3244#define TSDM_TSDM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3245#define TSEM_TSEM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3246#define TSEM_TSEM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3247#define TSEM_TSEM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3248#define TSEM_TSEM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3249#define TSEM_TSEM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3250#define TSEM_TSEM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3251#define TSEM_TSEM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3252#define TSEM_TSEM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3253#define UCM_UCM_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3254#define UCM_UCM_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3255#define UCM_UCM_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3256#define UCM_UCM_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3257#define UCM_UCM_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3258#define UCM_UCM_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3259#define UCM_UCM_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3260#define UCM_UCM_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3261#define USDM_USDM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3262#define USDM_USDM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3263#define USDM_USDM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3264#define USDM_USDM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3265#define USDM_USDM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3266#define USDM_USDM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3267#define USDM_USDM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3268#define USDM_USDM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3269#define USEM_USEM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3270#define USEM_USEM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3271#define USEM_USEM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3272#define USEM_USEM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3273#define USEM_USEM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3274#define USEM_USEM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3275#define USEM_USEM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3276#define USEM_USEM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3277#define XCM_XCM_INT_STS_REG_ADDRESS_ERROR (0x1<<0)
3278#define XCM_XCM_INT_STS_REG_ADDRESS_ERROR_SIZE 0
3279#define XCM_XCM_INT_STS_CLR_REG_ADDRESS_ERROR (0x1<<0)
3280#define XCM_XCM_INT_STS_CLR_REG_ADDRESS_ERROR_SIZE 0
3281#define XCM_XCM_INT_STS_WR_REG_ADDRESS_ERROR (0x1<<0)
3282#define XCM_XCM_INT_STS_WR_REG_ADDRESS_ERROR_SIZE 0
3283#define XCM_XCM_INT_MASK_REG_ADDRESS_ERROR (0x1<<0)
3284#define XCM_XCM_INT_MASK_REG_ADDRESS_ERROR_SIZE 0
3285#define XSDM_XSDM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3286#define XSDM_XSDM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3287#define XSDM_XSDM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3288#define XSDM_XSDM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3289#define XSDM_XSDM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3290#define XSDM_XSDM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3291#define XSDM_XSDM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3292#define XSDM_XSDM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
3293#define XSEM_XSEM_INT_STS_0_REG_ADDRESS_ERROR (0x1<<0)
3294#define XSEM_XSEM_INT_STS_0_REG_ADDRESS_ERROR_SIZE 0
3295#define XSEM_XSEM_INT_STS_CLR_0_REG_ADDRESS_ERROR (0x1<<0)
3296#define XSEM_XSEM_INT_STS_CLR_0_REG_ADDRESS_ERROR_SIZE 0
3297#define XSEM_XSEM_INT_STS_WR_0_REG_ADDRESS_ERROR (0x1<<0)
3298#define XSEM_XSEM_INT_STS_WR_0_REG_ADDRESS_ERROR_SIZE 0
3299#define XSEM_XSEM_INT_MASK_0_REG_ADDRESS_ERROR (0x1<<0)
3300#define XSEM_XSEM_INT_MASK_0_REG_ADDRESS_ERROR_SIZE 0
2474#define CFC_DEBUG1_REG_WRITE_AC (0x1<<4) 3301#define CFC_DEBUG1_REG_WRITE_AC (0x1<<4)
2475#define CFC_DEBUG1_REG_WRITE_AC_SIZE 4 3302#define CFC_DEBUG1_REG_WRITE_AC_SIZE 4
2476/* [R 1] debug only: This bit indicates wheter indicates that external 3303/* [R 1] debug only: This bit indicates wheter indicates that external
@@ -2483,6 +3310,14 @@
2483 ~dbg_registers_debug_target=0 (internal buffer) */ 3310 ~dbg_registers_debug_target=0 (internal buffer) */
2484#define DBG_REG_WRAP_ON_INT_BUFFER 0xc128 3311#define DBG_REG_WRAP_ON_INT_BUFFER 0xc128
2485#define DBG_REG_WRAP_ON_INT_BUFFER_SIZE 1 3312#define DBG_REG_WRAP_ON_INT_BUFFER_SIZE 1
3313#define QM_QM_PRTY_STS_REG_WRBUFF (0x1<<8)
3314#define QM_QM_PRTY_STS_REG_WRBUFF_SIZE 8
3315#define QM_QM_PRTY_STS_CLR_REG_WRBUFF (0x1<<8)
3316#define QM_QM_PRTY_STS_CLR_REG_WRBUFF_SIZE 8
3317#define QM_QM_PRTY_STS_WR_REG_WRBUFF (0x1<<8)
3318#define QM_QM_PRTY_STS_WR_REG_WRBUFF_SIZE 8
3319#define QM_QM_PRTY_MASK_REG_WRBUFF (0x1<<8)
3320#define QM_QM_PRTY_MASK_REG_WRBUFF_SIZE 8
2486/* [RW 32] Wrr weights */ 3321/* [RW 32] Wrr weights */
2487#define QM_REG_WRRWEIGHTS_0 0x16880c 3322#define QM_REG_WRRWEIGHTS_0 0x16880c
2488#define QM_REG_WRRWEIGHTS_0_SIZE 1 3323#define QM_REG_WRRWEIGHTS_0_SIZE 1
@@ -2531,20 +3366,67 @@
2531/* [RW 32] Wrr weights */ 3366/* [RW 32] Wrr weights */
2532#define QM_REG_WRRWEIGHTS_9 0x168848 3367#define QM_REG_WRRWEIGHTS_9 0x168848
2533#define QM_REG_WRRWEIGHTS_9_SIZE 1 3368#define QM_REG_WRRWEIGHTS_9_SIZE 1
2534/* [RW 22] Number of free element in the free list of T2 entries - port 0. */ 3369/* [RW 32] Wrr weights */
3370#define QM_REG_WRRWEIGHTS_16 0x16e000
3371#define QM_REG_WRRWEIGHTS_16_SIZE 1
3372/* [RW 32] Wrr weights */
3373#define QM_REG_WRRWEIGHTS_17 0x16e004
3374#define QM_REG_WRRWEIGHTS_17_SIZE 1
3375/* [RW 32] Wrr weights */
3376#define QM_REG_WRRWEIGHTS_18 0x16e008
3377#define QM_REG_WRRWEIGHTS_18_SIZE 1
3378/* [RW 32] Wrr weights */
3379#define QM_REG_WRRWEIGHTS_19 0x16e00c
3380#define QM_REG_WRRWEIGHTS_19_SIZE 1
3381/* [RW 32] Wrr weights */
3382#define QM_REG_WRRWEIGHTS_20 0x16e010
3383#define QM_REG_WRRWEIGHTS_20_SIZE 1
3384/* [RW 32] Wrr weights */
3385#define QM_REG_WRRWEIGHTS_21 0x16e014
3386#define QM_REG_WRRWEIGHTS_21_SIZE 1
3387/* [RW 32] Wrr weights */
3388#define QM_REG_WRRWEIGHTS_22 0x16e018
3389#define QM_REG_WRRWEIGHTS_22_SIZE 1
3390/* [RW 32] Wrr weights */
3391#define QM_REG_WRRWEIGHTS_23 0x16e01c
3392#define QM_REG_WRRWEIGHTS_23_SIZE 1
3393/* [RW 32] Wrr weights */
3394#define QM_REG_WRRWEIGHTS_24 0x16e020
3395#define QM_REG_WRRWEIGHTS_24_SIZE 1
3396/* [RW 32] Wrr weights */
3397#define QM_REG_WRRWEIGHTS_25 0x16e024
3398#define QM_REG_WRRWEIGHTS_25_SIZE 1
3399/* [RW 32] Wrr weights */
3400#define QM_REG_WRRWEIGHTS_26 0x16e028
3401#define QM_REG_WRRWEIGHTS_26_SIZE 1
3402/* [RW 32] Wrr weights */
3403#define QM_REG_WRRWEIGHTS_27 0x16e02c
3404#define QM_REG_WRRWEIGHTS_27_SIZE 1
3405/* [RW 32] Wrr weights */
3406#define QM_REG_WRRWEIGHTS_28 0x16e030
3407#define QM_REG_WRRWEIGHTS_28_SIZE 1
3408/* [RW 32] Wrr weights */
3409#define QM_REG_WRRWEIGHTS_29 0x16e034
3410#define QM_REG_WRRWEIGHTS_29_SIZE 1
3411/* [RW 32] Wrr weights */
3412#define QM_REG_WRRWEIGHTS_30 0x16e038
3413#define QM_REG_WRRWEIGHTS_30_SIZE 1
3414/* [RW 32] Wrr weights */
3415#define QM_REG_WRRWEIGHTS_31 0x16e03c
3416#define QM_REG_WRRWEIGHTS_31_SIZE 1
2535#define SRC_REG_COUNTFREE0 0x40500 3417#define SRC_REG_COUNTFREE0 0x40500
2536/* [WB 64] First free element in the free list of T2 entries - port 0. */ 3418/* [RW 1] If clr the searcher is compatible to E1 A0 - support only two
3419 ports. If set the searcher support 8 functions. */
3420#define SRC_REG_E1HMF_ENABLE 0x404cc
2537#define SRC_REG_FIRSTFREE0 0x40510 3421#define SRC_REG_FIRSTFREE0 0x40510
2538#define SRC_REG_KEYRSS0_0 0x40408 3422#define SRC_REG_KEYRSS0_0 0x40408
3423#define SRC_REG_KEYRSS0_7 0x40424
2539#define SRC_REG_KEYRSS1_9 0x40454 3424#define SRC_REG_KEYRSS1_9 0x40454
2540/* [WB 64] Last free element in the free list of T2 entries - port 0. */
2541#define SRC_REG_LASTFREE0 0x40530 3425#define SRC_REG_LASTFREE0 0x40530
2542/* [RW 5] The number of hash bits used for the search (h); Values can be 8
2543 to 24. */
2544#define SRC_REG_NUMBER_HASH_BITS0 0x40400 3426#define SRC_REG_NUMBER_HASH_BITS0 0x40400
2545/* [RW 1] Reset internal state machines. */ 3427/* [RW 1] Reset internal state machines. */
2546#define SRC_REG_SOFT_RST 0x4049c 3428#define SRC_REG_SOFT_RST 0x4049c
2547/* [R 1] Interrupt register #0 read */ 3429/* [R 3] Interrupt register #0 read */
2548#define SRC_REG_SRC_INT_STS 0x404ac 3430#define SRC_REG_SRC_INT_STS 0x404ac
2549/* [RW 3] Parity mask register #0 read/write */ 3431/* [RW 3] Parity mask register #0 read/write */
2550#define SRC_REG_SRC_PRTY_MASK 0x404c8 3432#define SRC_REG_SRC_PRTY_MASK 0x404c8
@@ -2637,11 +3519,14 @@
2637 weight 8 (the most prioritised); 1 stands for weight 1(least 3519 weight 8 (the most prioritised); 1 stands for weight 1(least
2638 prioritised); 2 stands for weight 2; tc. */ 3520 prioritised); 2 stands for weight 2; tc. */
2639#define TCM_REG_PBF_WEIGHT 0x500b4 3521#define TCM_REG_PBF_WEIGHT 0x500b4
2640/* [RW 6] The physical queue number 0 per port index. */
2641#define TCM_REG_PHYS_QNUM0_0 0x500e0 3522#define TCM_REG_PHYS_QNUM0_0 0x500e0
2642#define TCM_REG_PHYS_QNUM0_1 0x500e4 3523#define TCM_REG_PHYS_QNUM0_1 0x500e4
2643/* [RW 6] The physical queue number 1 per port index. */
2644#define TCM_REG_PHYS_QNUM1_0 0x500e8 3524#define TCM_REG_PHYS_QNUM1_0 0x500e8
3525#define TCM_REG_PHYS_QNUM1_1 0x500ec
3526#define TCM_REG_PHYS_QNUM2_0 0x500f0
3527#define TCM_REG_PHYS_QNUM2_1 0x500f4
3528#define TCM_REG_PHYS_QNUM3_0 0x500f8
3529#define TCM_REG_PHYS_QNUM3_1 0x500fc
2645/* [RW 1] Input prs Interface enable. If 0 - the valid input is disregarded; 3530/* [RW 1] Input prs Interface enable. If 0 - the valid input is disregarded;
2646 acknowledge output is deasserted; all other signals are treated as usual; 3531 acknowledge output is deasserted; all other signals are treated as usual;
2647 if 1 - normal activity. */ 3532 if 1 - normal activity. */
@@ -2670,6 +3555,8 @@
2670#define TCM_REG_TCM_INT_MASK 0x501dc 3555#define TCM_REG_TCM_INT_MASK 0x501dc
2671/* [R 11] Interrupt register #0 read */ 3556/* [R 11] Interrupt register #0 read */
2672#define TCM_REG_TCM_INT_STS 0x501d0 3557#define TCM_REG_TCM_INT_STS 0x501d0
3558/* [R 27] Parity register #0 read */
3559#define TCM_REG_TCM_PRTY_STS 0x501e0
2673/* [RW 3] The size of AG context region 0 in REG-pairs. Designates the MS 3560/* [RW 3] The size of AG context region 0 in REG-pairs. Designates the MS
2674 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5). 3561 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5).
2675 Is used to determine the number of the AG context REG-pairs written back; 3562 Is used to determine the number of the AG context REG-pairs written back;
@@ -2729,6 +3616,7 @@
2729 mechanism. The fields are: [5:0] - length of the message; 15:6] - message 3616 mechanism. The fields are: [5:0] - length of the message; 15:6] - message
2730 pointer; 20:16] - next pointer. */ 3617 pointer; 20:16] - next pointer. */
2731#define TCM_REG_XX_DESCR_TABLE 0x50280 3618#define TCM_REG_XX_DESCR_TABLE 0x50280
3619#define TCM_REG_XX_DESCR_TABLE_SIZE 32
2732/* [R 6] Use to read the value of XX protection Free counter. */ 3620/* [R 6] Use to read the value of XX protection Free counter. */
2733#define TCM_REG_XX_FREE 0x50178 3621#define TCM_REG_XX_FREE 0x50178
2734/* [RW 6] Initial value for the credit counter; responsible for fulfilling 3622/* [RW 6] Initial value for the credit counter; responsible for fulfilling
@@ -2780,7 +3668,7 @@
2780/* [RW 4] Load value for expiration credit cnt. CFC max number of 3668/* [RW 4] Load value for expiration credit cnt. CFC max number of
2781 outstanding load requests for timers (expiration) context loading. */ 3669 outstanding load requests for timers (expiration) context loading. */
2782#define TM_REG_EXP_CRDCNT_VAL 0x164238 3670#define TM_REG_EXP_CRDCNT_VAL 0x164238
2783/* [RW 18] Linear0 Max active cid. */ 3671/* [RW 18] Linear0 Max active cid (in banks of 32 entries). */
2784#define TM_REG_LIN0_MAX_ACTIVE_CID 0x164048 3672#define TM_REG_LIN0_MAX_ACTIVE_CID 0x164048
2785/* [WB 64] Linear0 phy address. */ 3673/* [WB 64] Linear0 phy address. */
2786#define TM_REG_LIN0_PHY_ADDR 0x164270 3674#define TM_REG_LIN0_PHY_ADDR 0x164270
@@ -2804,6 +3692,21 @@
2804#define TM_REG_TM_INT_STS 0x1640f0 3692#define TM_REG_TM_INT_STS 0x1640f0
2805/* [RW 8] The event id for aggregated interrupt 0 */ 3693/* [RW 8] The event id for aggregated interrupt 0 */
2806#define TSDM_REG_AGG_INT_EVENT_0 0x42038 3694#define TSDM_REG_AGG_INT_EVENT_0 0x42038
3695#define TSDM_REG_AGG_INT_EVENT_2 0x42040
3696#define TSDM_REG_AGG_INT_EVENT_20 0x42088
3697#define TSDM_REG_AGG_INT_EVENT_21 0x4208c
3698#define TSDM_REG_AGG_INT_EVENT_22 0x42090
3699#define TSDM_REG_AGG_INT_EVENT_23 0x42094
3700#define TSDM_REG_AGG_INT_EVENT_24 0x42098
3701#define TSDM_REG_AGG_INT_EVENT_25 0x4209c
3702#define TSDM_REG_AGG_INT_EVENT_26 0x420a0
3703#define TSDM_REG_AGG_INT_EVENT_27 0x420a4
3704#define TSDM_REG_AGG_INT_EVENT_28 0x420a8
3705#define TSDM_REG_AGG_INT_EVENT_29 0x420ac
3706#define TSDM_REG_AGG_INT_EVENT_3 0x42044
3707#define TSDM_REG_AGG_INT_EVENT_30 0x420b0
3708#define TSDM_REG_AGG_INT_EVENT_31 0x420b4
3709#define TSDM_REG_AGG_INT_EVENT_4 0x42048
2807/* [RW 13] The start address in the internal RAM for the cfc_rsp lcid */ 3710/* [RW 13] The start address in the internal RAM for the cfc_rsp lcid */
2808#define TSDM_REG_CFC_RSP_START_ADDR 0x42008 3711#define TSDM_REG_CFC_RSP_START_ADDR 0x42008
2809/* [RW 16] The maximum value of the competion counter #0 */ 3712/* [RW 16] The maximum value of the competion counter #0 */
@@ -2868,6 +3771,9 @@
2868/* [RW 32] Interrupt mask register #0 read/write */ 3771/* [RW 32] Interrupt mask register #0 read/write */
2869#define TSDM_REG_TSDM_INT_MASK_0 0x4229c 3772#define TSDM_REG_TSDM_INT_MASK_0 0x4229c
2870#define TSDM_REG_TSDM_INT_MASK_1 0x422ac 3773#define TSDM_REG_TSDM_INT_MASK_1 0x422ac
3774/* [R 32] Interrupt register #0 read */
3775#define TSDM_REG_TSDM_INT_STS_0 0x42290
3776#define TSDM_REG_TSDM_INT_STS_1 0x422a0
2871/* [RW 11] Parity mask register #0 read/write */ 3777/* [RW 11] Parity mask register #0 read/write */
2872#define TSDM_REG_TSDM_PRTY_MASK 0x422bc 3778#define TSDM_REG_TSDM_PRTY_MASK 0x422bc
2873/* [R 11] Parity register #0 read */ 3779/* [R 11] Parity register #0 read */
@@ -2908,9 +3814,8 @@
2908#define TSEM_REG_ENABLE_OUT 0x1800a8 3814#define TSEM_REG_ENABLE_OUT 0x1800a8
2909/* [RW 32] This address space contains all registers and memories that are 3815/* [RW 32] This address space contains all registers and memories that are
2910 placed in SEM_FAST block. The SEM_FAST registers are described in 3816 placed in SEM_FAST block. The SEM_FAST registers are described in
2911 appendix B. In order to access the SEM_FAST registers the base address 3817 appendix B. In order to access the sem_fast registers the base address
2912 TSEM_REGISTERS_FAST_MEMORY (Offset: 0x1a0000) should be added to each 3818 ~fast_memory.fast_memory should be added to eachsem_fast register offset. */
2913 SEM_FAST register offset. */
2914#define TSEM_REG_FAST_MEMORY 0x1a0000 3819#define TSEM_REG_FAST_MEMORY 0x1a0000
2915/* [RW 1] Disables input messages from FIC0 May be updated during run_time 3820/* [RW 1] Disables input messages from FIC0 May be updated during run_time
2916 by the microcode */ 3821 by the microcode */
@@ -2921,6 +3826,7 @@
2921/* [RW 15] Interrupt table Read and write access to it is not possible in 3826/* [RW 15] Interrupt table Read and write access to it is not possible in
2922 the middle of the work */ 3827 the middle of the work */
2923#define TSEM_REG_INT_TABLE 0x180400 3828#define TSEM_REG_INT_TABLE 0x180400
3829#define TSEM_REG_INT_TABLE_SIZE 256
2924/* [ST 24] Statistics register. The number of messages that entered through 3830/* [ST 24] Statistics register. The number of messages that entered through
2925 FIC0 */ 3831 FIC0 */
2926#define TSEM_REG_MSG_NUM_FIC0 0x180000 3832#define TSEM_REG_MSG_NUM_FIC0 0x180000
@@ -2993,6 +3899,9 @@
2993/* [RW 32] Interrupt mask register #0 read/write */ 3899/* [RW 32] Interrupt mask register #0 read/write */
2994#define TSEM_REG_TSEM_INT_MASK_0 0x180100 3900#define TSEM_REG_TSEM_INT_MASK_0 0x180100
2995#define TSEM_REG_TSEM_INT_MASK_1 0x180110 3901#define TSEM_REG_TSEM_INT_MASK_1 0x180110
3902/* [R 32] Interrupt register #0 read */
3903#define TSEM_REG_TSEM_INT_STS_0 0x1800f4
3904#define TSEM_REG_TSEM_INT_STS_1 0x180104
2996/* [RW 32] Parity mask register #0 read/write */ 3905/* [RW 32] Parity mask register #0 read/write */
2997#define TSEM_REG_TSEM_PRTY_MASK_0 0x180120 3906#define TSEM_REG_TSEM_PRTY_MASK_0 0x180120
2998#define TSEM_REG_TSEM_PRTY_MASK_1 0x180130 3907#define TSEM_REG_TSEM_PRTY_MASK_1 0x180130
@@ -3088,12 +3997,15 @@
3088#define UCM_REG_N_SM_CTX_LD_2 0xe005c 3997#define UCM_REG_N_SM_CTX_LD_2 0xe005c
3089#define UCM_REG_N_SM_CTX_LD_3 0xe0060 3998#define UCM_REG_N_SM_CTX_LD_3 0xe0060
3090#define UCM_REG_N_SM_CTX_LD_4 0xe0064 3999#define UCM_REG_N_SM_CTX_LD_4 0xe0064
3091/* [RW 6] The physical queue number 0 per port index (CID[23]) */ 4000#define UCM_REG_N_SM_CTX_LD_5 0xe0068
3092#define UCM_REG_PHYS_QNUM0_0 0xe0110 4001#define UCM_REG_PHYS_QNUM0_0 0xe0110
3093#define UCM_REG_PHYS_QNUM0_1 0xe0114 4002#define UCM_REG_PHYS_QNUM0_1 0xe0114
3094/* [RW 6] The physical queue number 1 per port index (CID[23]) */
3095#define UCM_REG_PHYS_QNUM1_0 0xe0118 4003#define UCM_REG_PHYS_QNUM1_0 0xe0118
3096#define UCM_REG_PHYS_QNUM1_1 0xe011c 4004#define UCM_REG_PHYS_QNUM1_1 0xe011c
4005#define UCM_REG_PHYS_QNUM2_0 0xe0120
4006#define UCM_REG_PHYS_QNUM2_1 0xe0124
4007#define UCM_REG_PHYS_QNUM3_0 0xe0128
4008#define UCM_REG_PHYS_QNUM3_1 0xe012c
3097/* [RW 8] The Event ID for Timers formatting in case of stop done. */ 4009/* [RW 8] The Event ID for Timers formatting in case of stop done. */
3098#define UCM_REG_STOP_EVNT_ID 0xe00ac 4010#define UCM_REG_STOP_EVNT_ID 0xe00ac
3099/* [RC 1] Set when the message length mismatch (relative to last indication) 4011/* [RC 1] Set when the message length mismatch (relative to last indication)
@@ -3132,6 +4044,8 @@
3132#define UCM_REG_UCM_INT_MASK 0xe01d4 4044#define UCM_REG_UCM_INT_MASK 0xe01d4
3133/* [R 11] Interrupt register #0 read */ 4045/* [R 11] Interrupt register #0 read */
3134#define UCM_REG_UCM_INT_STS 0xe01c8 4046#define UCM_REG_UCM_INT_STS 0xe01c8
4047/* [R 27] Parity register #0 read */
4048#define UCM_REG_UCM_PRTY_STS 0xe01d8
3135/* [RW 2] The size of AG context region 0 in REG-pairs. Designates the MS 4049/* [RW 2] The size of AG context region 0 in REG-pairs. Designates the MS
3136 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5). 4050 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5).
3137 Is used to determine the number of the AG context REG-pairs written back; 4051 Is used to determine the number of the AG context REG-pairs written back;
@@ -3189,6 +4103,7 @@
3189 mechanism. The fields are:[5:0] - message length; 14:6] - message 4103 mechanism. The fields are:[5:0] - message length; 14:6] - message
3190 pointer; 19:15] - next pointer. */ 4104 pointer; 19:15] - next pointer. */
3191#define UCM_REG_XX_DESCR_TABLE 0xe0280 4105#define UCM_REG_XX_DESCR_TABLE 0xe0280
4106#define UCM_REG_XX_DESCR_TABLE_SIZE 32
3192/* [R 6] Use to read the XX protection Free counter. */ 4107/* [R 6] Use to read the XX protection Free counter. */
3193#define UCM_REG_XX_FREE 0xe016c 4108#define UCM_REG_XX_FREE 0xe016c
3194/* [RW 6] Initial value for the credit counter; responsible for fulfilling 4109/* [RW 6] Initial value for the credit counter; responsible for fulfilling
@@ -3218,6 +4133,21 @@
3218#define USDM_REG_AGG_INT_EVENT_17 0xc407c 4133#define USDM_REG_AGG_INT_EVENT_17 0xc407c
3219#define USDM_REG_AGG_INT_EVENT_18 0xc4080 4134#define USDM_REG_AGG_INT_EVENT_18 0xc4080
3220#define USDM_REG_AGG_INT_EVENT_19 0xc4084 4135#define USDM_REG_AGG_INT_EVENT_19 0xc4084
4136#define USDM_REG_AGG_INT_EVENT_2 0xc4040
4137#define USDM_REG_AGG_INT_EVENT_20 0xc4088
4138#define USDM_REG_AGG_INT_EVENT_21 0xc408c
4139#define USDM_REG_AGG_INT_EVENT_22 0xc4090
4140#define USDM_REG_AGG_INT_EVENT_23 0xc4094
4141#define USDM_REG_AGG_INT_EVENT_24 0xc4098
4142#define USDM_REG_AGG_INT_EVENT_25 0xc409c
4143#define USDM_REG_AGG_INT_EVENT_26 0xc40a0
4144#define USDM_REG_AGG_INT_EVENT_27 0xc40a4
4145#define USDM_REG_AGG_INT_EVENT_28 0xc40a8
4146#define USDM_REG_AGG_INT_EVENT_29 0xc40ac
4147#define USDM_REG_AGG_INT_EVENT_3 0xc4044
4148#define USDM_REG_AGG_INT_EVENT_30 0xc40b0
4149#define USDM_REG_AGG_INT_EVENT_31 0xc40b4
4150#define USDM_REG_AGG_INT_EVENT_4 0xc4048
3221/* [RW 1] For each aggregated interrupt index whether the mode is normal (0) 4151/* [RW 1] For each aggregated interrupt index whether the mode is normal (0)
3222 or auto-mask-mode (1) */ 4152 or auto-mask-mode (1) */
3223#define USDM_REG_AGG_INT_MODE_0 0xc41b8 4153#define USDM_REG_AGG_INT_MODE_0 0xc41b8
@@ -3298,6 +4228,9 @@
3298/* [RW 32] Interrupt mask register #0 read/write */ 4228/* [RW 32] Interrupt mask register #0 read/write */
3299#define USDM_REG_USDM_INT_MASK_0 0xc42a0 4229#define USDM_REG_USDM_INT_MASK_0 0xc42a0
3300#define USDM_REG_USDM_INT_MASK_1 0xc42b0 4230#define USDM_REG_USDM_INT_MASK_1 0xc42b0
4231/* [R 32] Interrupt register #0 read */
4232#define USDM_REG_USDM_INT_STS_0 0xc4294
4233#define USDM_REG_USDM_INT_STS_1 0xc42a4
3301/* [RW 11] Parity mask register #0 read/write */ 4234/* [RW 11] Parity mask register #0 read/write */
3302#define USDM_REG_USDM_PRTY_MASK 0xc42c0 4235#define USDM_REG_USDM_PRTY_MASK 0xc42c0
3303/* [R 11] Parity register #0 read */ 4236/* [R 11] Parity register #0 read */
@@ -3338,9 +4271,8 @@
3338#define USEM_REG_ENABLE_OUT 0x3000a8 4271#define USEM_REG_ENABLE_OUT 0x3000a8
3339/* [RW 32] This address space contains all registers and memories that are 4272/* [RW 32] This address space contains all registers and memories that are
3340 placed in SEM_FAST block. The SEM_FAST registers are described in 4273 placed in SEM_FAST block. The SEM_FAST registers are described in
3341 appendix B. In order to access the SEM_FAST registers... the base address 4274 appendix B. In order to access the sem_fast registers the base address
3342 USEM_REGISTERS_FAST_MEMORY (Offset: 0x320000) should be added to each 4275 ~fast_memory.fast_memory should be added to eachsem_fast register offset. */
3343 SEM_FAST register offset. */
3344#define USEM_REG_FAST_MEMORY 0x320000 4276#define USEM_REG_FAST_MEMORY 0x320000
3345/* [RW 1] Disables input messages from FIC0 May be updated during run_time 4277/* [RW 1] Disables input messages from FIC0 May be updated during run_time
3346 by the microcode */ 4278 by the microcode */
@@ -3351,6 +4283,7 @@
3351/* [RW 15] Interrupt table Read and write access to it is not possible in 4283/* [RW 15] Interrupt table Read and write access to it is not possible in
3352 the middle of the work */ 4284 the middle of the work */
3353#define USEM_REG_INT_TABLE 0x300400 4285#define USEM_REG_INT_TABLE 0x300400
4286#define USEM_REG_INT_TABLE_SIZE 256
3354/* [ST 24] Statistics register. The number of messages that entered through 4287/* [ST 24] Statistics register. The number of messages that entered through
3355 FIC0 */ 4288 FIC0 */
3356#define USEM_REG_MSG_NUM_FIC0 0x300000 4289#define USEM_REG_MSG_NUM_FIC0 0x300000
@@ -3423,6 +4356,9 @@
3423/* [RW 32] Interrupt mask register #0 read/write */ 4356/* [RW 32] Interrupt mask register #0 read/write */
3424#define USEM_REG_USEM_INT_MASK_0 0x300110 4357#define USEM_REG_USEM_INT_MASK_0 0x300110
3425#define USEM_REG_USEM_INT_MASK_1 0x300120 4358#define USEM_REG_USEM_INT_MASK_1 0x300120
4359/* [R 32] Interrupt register #0 read */
4360#define USEM_REG_USEM_INT_STS_0 0x300104
4361#define USEM_REG_USEM_INT_STS_1 0x300114
3426/* [RW 32] Parity mask register #0 read/write */ 4362/* [RW 32] Parity mask register #0 read/write */
3427#define USEM_REG_USEM_PRTY_MASK_0 0x300130 4363#define USEM_REG_USEM_PRTY_MASK_0 0x300130
3428#define USEM_REG_USEM_PRTY_MASK_1 0x300140 4364#define USEM_REG_USEM_PRTY_MASK_1 0x300140
@@ -3491,11 +4427,8 @@
3491 writes the initial credit value; read returns the current value of the 4427 writes the initial credit value; read returns the current value of the
3492 credit counter. Must be initialized to 64 at start-up. */ 4428 credit counter. Must be initialized to 64 at start-up. */
3493#define XCM_REG_FIC1_INIT_CRD 0x20410 4429#define XCM_REG_FIC1_INIT_CRD 0x20410
3494/* [RW 8] The maximum delayed ACK counter value.Must be at least 2. Per port
3495 value. */
3496#define XCM_REG_GLB_DEL_ACK_MAX_CNT_0 0x20118 4430#define XCM_REG_GLB_DEL_ACK_MAX_CNT_0 0x20118
3497#define XCM_REG_GLB_DEL_ACK_MAX_CNT_1 0x2011c 4431#define XCM_REG_GLB_DEL_ACK_MAX_CNT_1 0x2011c
3498/* [RW 28] The delayed ACK timeout in ticks. Per port value. */
3499#define XCM_REG_GLB_DEL_ACK_TMR_VAL_0 0x20108 4432#define XCM_REG_GLB_DEL_ACK_TMR_VAL_0 0x20108
3500#define XCM_REG_GLB_DEL_ACK_TMR_VAL_1 0x2010c 4433#define XCM_REG_GLB_DEL_ACK_TMR_VAL_1 0x2010c
3501/* [RW 1] Arbitratiojn between Input Arbiter groups: 0 - fair Round-Robin; 1 4434/* [RW 1] Arbitratiojn between Input Arbiter groups: 0 - fair Round-Robin; 1
@@ -3545,6 +4478,7 @@
3545#define XCM_REG_N_SM_CTX_LD_2 0x20068 4478#define XCM_REG_N_SM_CTX_LD_2 0x20068
3546#define XCM_REG_N_SM_CTX_LD_3 0x2006c 4479#define XCM_REG_N_SM_CTX_LD_3 0x2006c
3547#define XCM_REG_N_SM_CTX_LD_4 0x20070 4480#define XCM_REG_N_SM_CTX_LD_4 0x20070
4481#define XCM_REG_N_SM_CTX_LD_5 0x20074
3548/* [RW 1] Input pbf Interface enable. If 0 - the valid input is disregarded; 4482/* [RW 1] Input pbf Interface enable. If 0 - the valid input is disregarded;
3549 acknowledge output is deasserted; all other signals are treated as usual; 4483 acknowledge output is deasserted; all other signals are treated as usual;
3550 if 1 - normal activity. */ 4484 if 1 - normal activity. */
@@ -3556,6 +4490,8 @@
3556 weight 8 (the most prioritised); 1 stands for weight 1(least 4490 weight 8 (the most prioritised); 1 stands for weight 1(least
3557 prioritised); 2 stands for weight 2; tc. */ 4491 prioritised); 2 stands for weight 2; tc. */
3558#define XCM_REG_PBF_WEIGHT 0x200d0 4492#define XCM_REG_PBF_WEIGHT 0x200d0
4493#define XCM_REG_PHYS_QNUM3_0 0x20100
4494#define XCM_REG_PHYS_QNUM3_1 0x20104
3559/* [RW 8] The Event ID for Timers formatting in case of stop done. */ 4495/* [RW 8] The Event ID for Timers formatting in case of stop done. */
3560#define XCM_REG_STOP_EVNT_ID 0x200b8 4496#define XCM_REG_STOP_EVNT_ID 0x200b8
3561/* [RC 1] Set at message length mismatch (relative to last indication) at 4497/* [RC 1] Set at message length mismatch (relative to last indication) at
@@ -3603,53 +4539,17 @@
3603 weight 8 (the most prioritised); 1 stands for weight 1(least 4539 weight 8 (the most prioritised); 1 stands for weight 1(least
3604 prioritised); 2 stands for weight 2; tc. */ 4540 prioritised); 2 stands for weight 2; tc. */
3605#define XCM_REG_USEM_WEIGHT 0x200c8 4541#define XCM_REG_USEM_WEIGHT 0x200c8
3606/* [RW 2] DA counter command; used in case of window update doorbell.The
3607 first index stands for the value DaEnable of that connection. The second
3608 index stands for port number. */
3609#define XCM_REG_WU_DA_CNT_CMD00 0x201d4 4542#define XCM_REG_WU_DA_CNT_CMD00 0x201d4
3610/* [RW 2] DA counter command; used in case of window update doorbell.The
3611 first index stands for the value DaEnable of that connection. The second
3612 index stands for port number. */
3613#define XCM_REG_WU_DA_CNT_CMD01 0x201d8 4543#define XCM_REG_WU_DA_CNT_CMD01 0x201d8
3614/* [RW 2] DA counter command; used in case of window update doorbell.The
3615 first index stands for the value DaEnable of that connection. The second
3616 index stands for port number. */
3617#define XCM_REG_WU_DA_CNT_CMD10 0x201dc 4544#define XCM_REG_WU_DA_CNT_CMD10 0x201dc
3618/* [RW 2] DA counter command; used in case of window update doorbell.The
3619 first index stands for the value DaEnable of that connection. The second
3620 index stands for port number. */
3621#define XCM_REG_WU_DA_CNT_CMD11 0x201e0 4545#define XCM_REG_WU_DA_CNT_CMD11 0x201e0
3622/* [RW 8] DA counter update value used in case of window update doorbell.The
3623 first index stands for the value DaEnable of that connection. The second
3624 index stands for port number. */
3625#define XCM_REG_WU_DA_CNT_UPD_VAL00 0x201e4 4546#define XCM_REG_WU_DA_CNT_UPD_VAL00 0x201e4
3626/* [RW 8] DA counter update value; used in case of window update
3627 doorbell.The first index stands for the value DaEnable of that
3628 connection. The second index stands for port number. */
3629#define XCM_REG_WU_DA_CNT_UPD_VAL01 0x201e8 4547#define XCM_REG_WU_DA_CNT_UPD_VAL01 0x201e8
3630/* [RW 8] DA counter update value; used in case of window update
3631 doorbell.The first index stands for the value DaEnable of that
3632 connection. The second index stands for port number. */
3633#define XCM_REG_WU_DA_CNT_UPD_VAL10 0x201ec 4548#define XCM_REG_WU_DA_CNT_UPD_VAL10 0x201ec
3634/* [RW 8] DA counter update value; used in case of window update
3635 doorbell.The first index stands for the value DaEnable of that
3636 connection. The second index stands for port number. */
3637#define XCM_REG_WU_DA_CNT_UPD_VAL11 0x201f0 4549#define XCM_REG_WU_DA_CNT_UPD_VAL11 0x201f0
3638/* [RW 1] DA timer command; used in case of window update doorbell.The first
3639 index stands for the value DaEnable of that connection. The second index
3640 stands for port number. */
3641#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD00 0x201c4 4550#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD00 0x201c4
3642/* [RW 1] DA timer command; used in case of window update doorbell.The first
3643 index stands for the value DaEnable of that connection. The second index
3644 stands for port number. */
3645#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD01 0x201c8 4551#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD01 0x201c8
3646/* [RW 1] DA timer command; used in case of window update doorbell.The first
3647 index stands for the value DaEnable of that connection. The second index
3648 stands for port number. */
3649#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD10 0x201cc 4552#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD10 0x201cc
3650/* [RW 1] DA timer command; used in case of window update doorbell.The first
3651 index stands for the value DaEnable of that connection. The second index
3652 stands for port number. */
3653#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD11 0x201d0 4553#define XCM_REG_WU_DA_SET_TMR_CNT_FLG_CMD11 0x201d0
3654/* [RW 1] CM - CFC Interface enable. If 0 - the valid input is disregarded; 4554/* [RW 1] CM - CFC Interface enable. If 0 - the valid input is disregarded;
3655 acknowledge output is deasserted; all other signals are treated as usual; 4555 acknowledge output is deasserted; all other signals are treated as usual;
@@ -3659,6 +4559,8 @@
3659#define XCM_REG_XCM_INT_MASK 0x202b4 4559#define XCM_REG_XCM_INT_MASK 0x202b4
3660/* [R 14] Interrupt register #0 read */ 4560/* [R 14] Interrupt register #0 read */
3661#define XCM_REG_XCM_INT_STS 0x202a8 4561#define XCM_REG_XCM_INT_STS 0x202a8
4562/* [R 30] Parity register #0 read */
4563#define XCM_REG_XCM_PRTY_STS 0x202b8
3662/* [RW 4] The size of AG context region 0 in REG-pairs. Designates the MS 4564/* [RW 4] The size of AG context region 0 in REG-pairs. Designates the MS
3663 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5). 4565 REG-pair number (e.g. if region 0 is 6 REG-pairs; the value should be 5).
3664 Is used to determine the number of the AG context REG-pairs written back; 4566 Is used to determine the number of the AG context REG-pairs written back;
@@ -3715,6 +4617,7 @@
3715 mechanism. The fields are: [5:0] - message length; 11:6] - message 4617 mechanism. The fields are: [5:0] - message length; 11:6] - message
3716 pointer; 16:12] - next pointer. */ 4618 pointer; 16:12] - next pointer. */
3717#define XCM_REG_XX_DESCR_TABLE 0x20480 4619#define XCM_REG_XX_DESCR_TABLE 0x20480
4620#define XCM_REG_XX_DESCR_TABLE_SIZE 32
3718/* [R 6] Used to read the XX protection Free counter. */ 4621/* [R 6] Used to read the XX protection Free counter. */
3719#define XCM_REG_XX_FREE 0x20240 4622#define XCM_REG_XX_FREE 0x20240
3720/* [RW 6] Initial value for the credit counter; responsible for fulfilling 4623/* [RW 6] Initial value for the credit counter; responsible for fulfilling
@@ -3728,7 +4631,7 @@
3728#define XCM_REG_XX_MSG_NUM 0x20428 4631#define XCM_REG_XX_MSG_NUM 0x20428
3729/* [RW 8] The Event ID; sent to the STORM in case of XX overflow. */ 4632/* [RW 8] The Event ID; sent to the STORM in case of XX overflow. */
3730#define XCM_REG_XX_OVFL_EVNT_ID 0x20058 4633#define XCM_REG_XX_OVFL_EVNT_ID 0x20058
3731/* [RW 15] Indirect access to the XX table of the XX protection mechanism. 4634/* [RW 16] Indirect access to the XX table of the XX protection mechanism.
3732 The fields are:[4:0] - tail pointer; 9:5] - Link List size; 14:10] - 4635 The fields are:[4:0] - tail pointer; 9:5] - Link List size; 14:10] -
3733 header pointer. */ 4636 header pointer. */
3734#define XCM_REG_XX_TABLE 0x20500 4637#define XCM_REG_XX_TABLE 0x20500
@@ -3745,6 +4648,9 @@
3745#define XSDM_REG_AGG_INT_EVENT_17 0x16607c 4648#define XSDM_REG_AGG_INT_EVENT_17 0x16607c
3746#define XSDM_REG_AGG_INT_EVENT_18 0x166080 4649#define XSDM_REG_AGG_INT_EVENT_18 0x166080
3747#define XSDM_REG_AGG_INT_EVENT_19 0x166084 4650#define XSDM_REG_AGG_INT_EVENT_19 0x166084
4651#define XSDM_REG_AGG_INT_EVENT_10 0x166060
4652#define XSDM_REG_AGG_INT_EVENT_11 0x166064
4653#define XSDM_REG_AGG_INT_EVENT_12 0x166068
3748#define XSDM_REG_AGG_INT_EVENT_2 0x166040 4654#define XSDM_REG_AGG_INT_EVENT_2 0x166040
3749#define XSDM_REG_AGG_INT_EVENT_20 0x166088 4655#define XSDM_REG_AGG_INT_EVENT_20 0x166088
3750#define XSDM_REG_AGG_INT_EVENT_21 0x16608c 4656#define XSDM_REG_AGG_INT_EVENT_21 0x16608c
@@ -3756,6 +4662,15 @@
3756#define XSDM_REG_AGG_INT_EVENT_27 0x1660a4 4662#define XSDM_REG_AGG_INT_EVENT_27 0x1660a4
3757#define XSDM_REG_AGG_INT_EVENT_28 0x1660a8 4663#define XSDM_REG_AGG_INT_EVENT_28 0x1660a8
3758#define XSDM_REG_AGG_INT_EVENT_29 0x1660ac 4664#define XSDM_REG_AGG_INT_EVENT_29 0x1660ac
4665#define XSDM_REG_AGG_INT_EVENT_3 0x166044
4666#define XSDM_REG_AGG_INT_EVENT_30 0x1660b0
4667#define XSDM_REG_AGG_INT_EVENT_31 0x1660b4
4668#define XSDM_REG_AGG_INT_EVENT_4 0x166048
4669#define XSDM_REG_AGG_INT_EVENT_5 0x16604c
4670#define XSDM_REG_AGG_INT_EVENT_6 0x166050
4671#define XSDM_REG_AGG_INT_EVENT_7 0x166054
4672#define XSDM_REG_AGG_INT_EVENT_8 0x166058
4673#define XSDM_REG_AGG_INT_EVENT_9 0x16605c
3759/* [RW 1] For each aggregated interrupt index whether the mode is normal (0) 4674/* [RW 1] For each aggregated interrupt index whether the mode is normal (0)
3760 or auto-mask-mode (1) */ 4675 or auto-mask-mode (1) */
3761#define XSDM_REG_AGG_INT_MODE_0 0x1661b8 4676#define XSDM_REG_AGG_INT_MODE_0 0x1661b8
@@ -3832,6 +4747,9 @@
3832/* [RW 32] Interrupt mask register #0 read/write */ 4747/* [RW 32] Interrupt mask register #0 read/write */
3833#define XSDM_REG_XSDM_INT_MASK_0 0x16629c 4748#define XSDM_REG_XSDM_INT_MASK_0 0x16629c
3834#define XSDM_REG_XSDM_INT_MASK_1 0x1662ac 4749#define XSDM_REG_XSDM_INT_MASK_1 0x1662ac
4750/* [R 32] Interrupt register #0 read */
4751#define XSDM_REG_XSDM_INT_STS_0 0x166290
4752#define XSDM_REG_XSDM_INT_STS_1 0x1662a0
3835/* [RW 11] Parity mask register #0 read/write */ 4753/* [RW 11] Parity mask register #0 read/write */
3836#define XSDM_REG_XSDM_PRTY_MASK 0x1662bc 4754#define XSDM_REG_XSDM_PRTY_MASK 0x1662bc
3837/* [R 11] Parity register #0 read */ 4755/* [R 11] Parity register #0 read */
@@ -3872,9 +4790,8 @@
3872#define XSEM_REG_ENABLE_OUT 0x2800a8 4790#define XSEM_REG_ENABLE_OUT 0x2800a8
3873/* [RW 32] This address space contains all registers and memories that are 4791/* [RW 32] This address space contains all registers and memories that are
3874 placed in SEM_FAST block. The SEM_FAST registers are described in 4792 placed in SEM_FAST block. The SEM_FAST registers are described in
3875 appendix B. In order to access the SEM_FAST registers the base address 4793 appendix B. In order to access the sem_fast registers the base address
3876 XSEM_REGISTERS_FAST_MEMORY (Offset: 0x2a0000) should be added to each 4794 ~fast_memory.fast_memory should be added to eachsem_fast register offset. */
3877 SEM_FAST register offset. */
3878#define XSEM_REG_FAST_MEMORY 0x2a0000 4795#define XSEM_REG_FAST_MEMORY 0x2a0000
3879/* [RW 1] Disables input messages from FIC0 May be updated during run_time 4796/* [RW 1] Disables input messages from FIC0 May be updated during run_time
3880 by the microcode */ 4797 by the microcode */
@@ -3885,6 +4802,7 @@
3885/* [RW 15] Interrupt table Read and write access to it is not possible in 4802/* [RW 15] Interrupt table Read and write access to it is not possible in
3886 the middle of the work */ 4803 the middle of the work */
3887#define XSEM_REG_INT_TABLE 0x280400 4804#define XSEM_REG_INT_TABLE 0x280400
4805#define XSEM_REG_INT_TABLE_SIZE 256
3888/* [ST 24] Statistics register. The number of messages that entered through 4806/* [ST 24] Statistics register. The number of messages that entered through
3889 FIC0 */ 4807 FIC0 */
3890#define XSEM_REG_MSG_NUM_FIC0 0x280000 4808#define XSEM_REG_MSG_NUM_FIC0 0x280000
@@ -3957,6 +4875,9 @@
3957/* [RW 32] Interrupt mask register #0 read/write */ 4875/* [RW 32] Interrupt mask register #0 read/write */
3958#define XSEM_REG_XSEM_INT_MASK_0 0x280110 4876#define XSEM_REG_XSEM_INT_MASK_0 0x280110
3959#define XSEM_REG_XSEM_INT_MASK_1 0x280120 4877#define XSEM_REG_XSEM_INT_MASK_1 0x280120
4878/* [R 32] Interrupt register #0 read */
4879#define XSEM_REG_XSEM_INT_STS_0 0x280104
4880#define XSEM_REG_XSEM_INT_STS_1 0x280114
3960/* [RW 32] Parity mask register #0 read/write */ 4881/* [RW 32] Parity mask register #0 read/write */
3961#define XSEM_REG_XSEM_PRTY_MASK_0 0x280130 4882#define XSEM_REG_XSEM_PRTY_MASK_0 0x280130
3962#define XSEM_REG_XSEM_PRTY_MASK_1 0x280140 4883#define XSEM_REG_XSEM_PRTY_MASK_1 0x280140
@@ -3993,10 +4914,14 @@
3993#define BIGMAC_REGISTER_TX_SOURCE_ADDR (0x08<<3) 4914#define BIGMAC_REGISTER_TX_SOURCE_ADDR (0x08<<3)
3994#define BIGMAC_REGISTER_TX_STAT_GTBYT (0x20<<3) 4915#define BIGMAC_REGISTER_TX_STAT_GTBYT (0x20<<3)
3995#define BIGMAC_REGISTER_TX_STAT_GTPKT (0x0C<<3) 4916#define BIGMAC_REGISTER_TX_STAT_GTPKT (0x0C<<3)
4917#define EMAC_LED_1000MB_OVERRIDE (1L<<1)
4918#define EMAC_LED_100MB_OVERRIDE (1L<<2)
4919#define EMAC_LED_10MB_OVERRIDE (1L<<3)
4920#define EMAC_LED_2500MB_OVERRIDE (1L<<12)
4921#define EMAC_LED_OVERRIDE (1L<<0)
4922#define EMAC_LED_TRAFFIC (1L<<6)
3996#define EMAC_MDIO_COMM_COMMAND_ADDRESS (0L<<26) 4923#define EMAC_MDIO_COMM_COMMAND_ADDRESS (0L<<26)
3997#define EMAC_MDIO_COMM_COMMAND_READ_22 (2L<<26)
3998#define EMAC_MDIO_COMM_COMMAND_READ_45 (3L<<26) 4924#define EMAC_MDIO_COMM_COMMAND_READ_45 (3L<<26)
3999#define EMAC_MDIO_COMM_COMMAND_WRITE_22 (1L<<26)
4000#define EMAC_MDIO_COMM_COMMAND_WRITE_45 (1L<<26) 4925#define EMAC_MDIO_COMM_COMMAND_WRITE_45 (1L<<26)
4001#define EMAC_MDIO_COMM_DATA (0xffffL<<0) 4926#define EMAC_MDIO_COMM_DATA (0xffffL<<0)
4002#define EMAC_MDIO_COMM_START_BUSY (1L<<29) 4927#define EMAC_MDIO_COMM_START_BUSY (1L<<29)
@@ -4013,6 +4938,7 @@
4013#define EMAC_MODE_PORT_MII (1L<<2) 4938#define EMAC_MODE_PORT_MII (1L<<2)
4014#define EMAC_MODE_PORT_MII_10M (3L<<2) 4939#define EMAC_MODE_PORT_MII_10M (3L<<2)
4015#define EMAC_MODE_RESET (1L<<0) 4940#define EMAC_MODE_RESET (1L<<0)
4941#define EMAC_REG_EMAC_LED 0xc
4016#define EMAC_REG_EMAC_MAC_MATCH 0x10 4942#define EMAC_REG_EMAC_MAC_MATCH 0x10
4017#define EMAC_REG_EMAC_MDIO_COMM 0xac 4943#define EMAC_REG_EMAC_MDIO_COMM 0xac
4018#define EMAC_REG_EMAC_MDIO_MODE 0xb4 4944#define EMAC_REG_EMAC_MDIO_MODE 0xb4
@@ -4030,14 +4956,16 @@
4030#define EMAC_RX_MODE_PROMISCUOUS (1L<<8) 4956#define EMAC_RX_MODE_PROMISCUOUS (1L<<8)
4031#define EMAC_RX_MTU_SIZE_JUMBO_ENA (1L<<31) 4957#define EMAC_RX_MTU_SIZE_JUMBO_ENA (1L<<31)
4032#define EMAC_TX_MODE_EXT_PAUSE_EN (1L<<3) 4958#define EMAC_TX_MODE_EXT_PAUSE_EN (1L<<3)
4033#define EMAC_TX_MODE_RESET (1L<<0) 4959#define MISC_REGISTERS_GPIO_0 0
4034#define MISC_REGISTERS_GPIO_1 1 4960#define MISC_REGISTERS_GPIO_1 1
4035#define MISC_REGISTERS_GPIO_2 2 4961#define MISC_REGISTERS_GPIO_2 2
4036#define MISC_REGISTERS_GPIO_3 3 4962#define MISC_REGISTERS_GPIO_3 3
4037#define MISC_REGISTERS_GPIO_CLR_POS 16 4963#define MISC_REGISTERS_GPIO_CLR_POS 16
4038#define MISC_REGISTERS_GPIO_FLOAT (0xffL<<24) 4964#define MISC_REGISTERS_GPIO_FLOAT (0xffL<<24)
4039#define MISC_REGISTERS_GPIO_FLOAT_POS 24 4965#define MISC_REGISTERS_GPIO_FLOAT_POS 24
4966#define MISC_REGISTERS_GPIO_HIGH 1
4040#define MISC_REGISTERS_GPIO_INPUT_HI_Z 2 4967#define MISC_REGISTERS_GPIO_INPUT_HI_Z 2
4968#define MISC_REGISTERS_GPIO_LOW 0
4041#define MISC_REGISTERS_GPIO_OUTPUT_HIGH 1 4969#define MISC_REGISTERS_GPIO_OUTPUT_HIGH 1
4042#define MISC_REGISTERS_GPIO_OUTPUT_LOW 0 4970#define MISC_REGISTERS_GPIO_OUTPUT_LOW 0
4043#define MISC_REGISTERS_GPIO_PORT_SHIFT 4 4971#define MISC_REGISTERS_GPIO_PORT_SHIFT 4
@@ -4127,7 +5055,7 @@
4127#define AEU_INPUTS_ATTN_BITS_XSEMI_PARITY_ERROR (1<<10) 5055#define AEU_INPUTS_ATTN_BITS_XSEMI_PARITY_ERROR (1<<10)
4128#define RESERVED_GENERAL_ATTENTION_BIT_0 0 5056#define RESERVED_GENERAL_ATTENTION_BIT_0 0
4129 5057
4130#define EVEREST_GEN_ATTN_IN_USE_MASK 0x3e0 5058#define EVEREST_GEN_ATTN_IN_USE_MASK 0x3ffe0
4131#define EVEREST_LATCHED_ATTN_IN_USE_MASK 0xffe00000 5059#define EVEREST_LATCHED_ATTN_IN_USE_MASK 0xffe00000
4132 5060
4133#define RESERVED_GENERAL_ATTENTION_BIT_6 6 5061#define RESERVED_GENERAL_ATTENTION_BIT_6 6
@@ -4156,6 +5084,17 @@
4156/* mcp error attention bit */ 5084/* mcp error attention bit */
4157#define MCP_FATAL_ASSERT_ATTENTION_BIT RESERVED_GENERAL_ATTENTION_BIT_11 5085#define MCP_FATAL_ASSERT_ATTENTION_BIT RESERVED_GENERAL_ATTENTION_BIT_11
4158 5086
5087/*E1H NIG status sync attention mapped to group 4-7*/
5088#define LINK_SYNC_ATTENTION_BIT_FUNC_0 RESERVED_GENERAL_ATTENTION_BIT_12
5089#define LINK_SYNC_ATTENTION_BIT_FUNC_1 RESERVED_GENERAL_ATTENTION_BIT_13
5090#define LINK_SYNC_ATTENTION_BIT_FUNC_2 RESERVED_GENERAL_ATTENTION_BIT_14
5091#define LINK_SYNC_ATTENTION_BIT_FUNC_3 RESERVED_GENERAL_ATTENTION_BIT_15
5092#define LINK_SYNC_ATTENTION_BIT_FUNC_4 RESERVED_GENERAL_ATTENTION_BIT_16
5093#define LINK_SYNC_ATTENTION_BIT_FUNC_5 RESERVED_GENERAL_ATTENTION_BIT_17
5094#define LINK_SYNC_ATTENTION_BIT_FUNC_6 RESERVED_GENERAL_ATTENTION_BIT_18
5095#define LINK_SYNC_ATTENTION_BIT_FUNC_7 RESERVED_GENERAL_ATTENTION_BIT_19
5096
5097
4159#define LATCHED_ATTN_RBCR 23 5098#define LATCHED_ATTN_RBCR 23
4160#define LATCHED_ATTN_RBCT 24 5099#define LATCHED_ATTN_RBCT 24
4161#define LATCHED_ATTN_RBCN 25 5100#define LATCHED_ATTN_RBCN 25
@@ -4221,22 +5160,41 @@
4221#define PCICFG_OFFSET 0x2000 5160#define PCICFG_OFFSET 0x2000
4222#define PCICFG_VENDOR_ID_OFFSET 0x00 5161#define PCICFG_VENDOR_ID_OFFSET 0x00
4223#define PCICFG_DEVICE_ID_OFFSET 0x02 5162#define PCICFG_DEVICE_ID_OFFSET 0x02
4224#define PCICFG_SUBSYSTEM_VENDOR_ID_OFFSET 0x2c 5163#define PCICFG_COMMAND_OFFSET 0x04
4225#define PCICFG_SUBSYSTEM_ID_OFFSET 0x2e 5164#define PCICFG_STATUS_OFFSET 0x06
4226#define PCICFG_INT_LINE 0x3c 5165#define PCICFG_REVESION_ID 0x08
4227#define PCICFG_INT_PIN 0x3d
4228#define PCICFG_CACHE_LINE_SIZE 0x0c 5166#define PCICFG_CACHE_LINE_SIZE 0x0c
4229#define PCICFG_LATENCY_TIMER 0x0d 5167#define PCICFG_LATENCY_TIMER 0x0d
4230#define PCICFG_REVESION_ID 0x08 5168#define PCICFG_BAR_1_LOW 0x10
4231#define PCICFG_BAR_1_LOW 0x10 5169#define PCICFG_BAR_1_HIGH 0x14
4232#define PCICFG_BAR_1_HIGH 0x14 5170#define PCICFG_BAR_2_LOW 0x18
4233#define PCICFG_BAR_2_LOW 0x18 5171#define PCICFG_BAR_2_HIGH 0x1c
4234#define PCICFG_BAR_2_HIGH 0x1c 5172#define PCICFG_SUBSYSTEM_VENDOR_ID_OFFSET 0x2c
4235#define PCICFG_GRC_ADDRESS 0x78 5173#define PCICFG_SUBSYSTEM_ID_OFFSET 0x2e
4236#define PCICFG_GRC_DATA 0x80 5174#define PCICFG_INT_LINE 0x3c
5175#define PCICFG_INT_PIN 0x3d
5176#define PCICFG_PM_CSR_OFFSET 0x4c
5177#define PCICFG_GRC_ADDRESS 0x78
5178#define PCICFG_GRC_DATA 0x80
4237#define PCICFG_DEVICE_CONTROL 0xb4 5179#define PCICFG_DEVICE_CONTROL 0xb4
4238#define PCICFG_LINK_CONTROL 0xbc 5180#define PCICFG_LINK_CONTROL 0xbc
4239 5181
5182#define PCICFG_COMMAND_IO_SPACE (1<<0)
5183#define PCICFG_COMMAND_MEM_SPACE (1<<1)
5184#define PCICFG_COMMAND_BUS_MASTER (1<<2)
5185#define PCICFG_COMMAND_SPECIAL_CYCLES (1<<3)
5186#define PCICFG_COMMAND_MWI_CYCLES (1<<4)
5187#define PCICFG_COMMAND_VGA_SNOOP (1<<5)
5188#define PCICFG_COMMAND_PERR_ENA (1<<6)
5189#define PCICFG_COMMAND_STEPPING (1<<7)
5190#define PCICFG_COMMAND_SERR_ENA (1<<8)
5191#define PCICFG_COMMAND_FAST_B2B (1<<9)
5192#define PCICFG_COMMAND_INT_DISABLE (1<<10)
5193#define PCICFG_COMMAND_RESERVED (0x1f<<11)
5194
5195#define PCICFG_PM_CSR_STATE (0x3<<0)
5196#define PCICFG_PM_CSR_PME_STATUS (1<<15)
5197
4240#define BAR_USTRORM_INTMEM 0x400000 5198#define BAR_USTRORM_INTMEM 0x400000
4241#define BAR_CSTRORM_INTMEM 0x410000 5199#define BAR_CSTRORM_INTMEM 0x410000
4242#define BAR_XSTRORM_INTMEM 0x420000 5200#define BAR_XSTRORM_INTMEM 0x420000
@@ -4336,7 +5294,7 @@
4336#define MDIO_CL73_IEEEB0_CL73_AN_CONTROL_MAIN_RST 0x8000 5294#define MDIO_CL73_IEEEB0_CL73_AN_CONTROL_MAIN_RST 0x8000
4337 5295
4338#define MDIO_REG_BANK_CL73_IEEEB1 0x10 5296#define MDIO_REG_BANK_CL73_IEEEB1 0x10
4339#define MDIO_CL73_IEEEB1_AN_ADV2 0x01 5297#define MDIO_CL73_IEEEB1_AN_ADV2 0x01
4340#define MDIO_CL73_IEEEB1_AN_ADV2_ADVR_1000M 0x0000 5298#define MDIO_CL73_IEEEB1_AN_ADV2_ADVR_1000M 0x0000
4341#define MDIO_CL73_IEEEB1_AN_ADV2_ADVR_1000M_KX 0x0020 5299#define MDIO_CL73_IEEEB1_AN_ADV2_ADVR_1000M_KX 0x0020
4342#define MDIO_CL73_IEEEB1_AN_ADV2_ADVR_10G_KX4 0x0040 5300#define MDIO_CL73_IEEEB1_AN_ADV2_ADVR_10G_KX4 0x0040
@@ -4365,7 +5323,7 @@
4365#define MDIO_REG_BANK_RX_ALL 0x80f0 5323#define MDIO_REG_BANK_RX_ALL 0x80f0
4366#define MDIO_RX_ALL_RX_EQ_BOOST 0x1c 5324#define MDIO_RX_ALL_RX_EQ_BOOST 0x1c
4367#define MDIO_RX_ALL_RX_EQ_BOOST_EQUALIZER_CTRL_MASK 0x7 5325#define MDIO_RX_ALL_RX_EQ_BOOST_EQUALIZER_CTRL_MASK 0x7
4368#define MDIO_RX_ALL_RX_EQ_BOOST_OFFSET_CTRL 0x10 5326#define MDIO_RX_ALL_RX_EQ_BOOST_OFFSET_CTRL 0x10
4369 5327
4370#define MDIO_REG_BANK_TX0 0x8060 5328#define MDIO_REG_BANK_TX0 0x8060
4371#define MDIO_TX0_TX_DRIVER 0x17 5329#define MDIO_TX0_TX_DRIVER 0x17
@@ -4392,213 +5350,266 @@
4392#define MDIO_XGXS_BLOCK2_RX_LN_SWAP 0x10 5350#define MDIO_XGXS_BLOCK2_RX_LN_SWAP 0x10
4393#define MDIO_XGXS_BLOCK2_RX_LN_SWAP_ENABLE 0x8000 5351#define MDIO_XGXS_BLOCK2_RX_LN_SWAP_ENABLE 0x8000
4394#define MDIO_XGXS_BLOCK2_RX_LN_SWAP_FORCE_ENABLE 0x4000 5352#define MDIO_XGXS_BLOCK2_RX_LN_SWAP_FORCE_ENABLE 0x4000
4395#define MDIO_XGXS_BLOCK2_TX_LN_SWAP 0x11 5353#define MDIO_XGXS_BLOCK2_TX_LN_SWAP 0x11
4396#define MDIO_XGXS_BLOCK2_TX_LN_SWAP_ENABLE 0x8000 5354#define MDIO_XGXS_BLOCK2_TX_LN_SWAP_ENABLE 0x8000
4397#define MDIO_XGXS_BLOCK2_UNICORE_MODE_10G 0x14 5355#define MDIO_XGXS_BLOCK2_UNICORE_MODE_10G 0x14
4398#define MDIO_XGXS_BLOCK2_UNICORE_MODE_10G_CX4_XGXS 0x0001 5356#define MDIO_XGXS_BLOCK2_UNICORE_MODE_10G_CX4_XGXS 0x0001
4399#define MDIO_XGXS_BLOCK2_UNICORE_MODE_10G_HIGIG_XGXS 0x0010 5357#define MDIO_XGXS_BLOCK2_UNICORE_MODE_10G_HIGIG_XGXS 0x0010
4400#define MDIO_XGXS_BLOCK2_TEST_MODE_LANE 0x15 5358#define MDIO_XGXS_BLOCK2_TEST_MODE_LANE 0x15
4401 5359
4402#define MDIO_REG_BANK_GP_STATUS 0x8120 5360#define MDIO_REG_BANK_GP_STATUS 0x8120
4403#define MDIO_GP_STATUS_TOP_AN_STATUS1 0x1B 5361#define MDIO_GP_STATUS_TOP_AN_STATUS1 0x1B
4404#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL73_AUTONEG_COMPLETE 0x0001 5362#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL73_AUTONEG_COMPLETE 0x0001
4405#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL37_AUTONEG_COMPLETE 0x0002 5363#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL37_AUTONEG_COMPLETE 0x0002
4406#define MDIO_GP_STATUS_TOP_AN_STATUS1_LINK_STATUS 0x0004 5364#define MDIO_GP_STATUS_TOP_AN_STATUS1_LINK_STATUS 0x0004
4407#define MDIO_GP_STATUS_TOP_AN_STATUS1_DUPLEX_STATUS 0x0008 5365#define MDIO_GP_STATUS_TOP_AN_STATUS1_DUPLEX_STATUS 0x0008
4408#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL73_MR_LP_NP_AN_ABLE 0x0010 5366#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL73_MR_LP_NP_AN_ABLE 0x0010
4409#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL73_LP_NP_BAM_ABLE 0x0020 5367#define MDIO_GP_STATUS_TOP_AN_STATUS1_CL73_LP_NP_BAM_ABLE 0x0020
4410 5368#define MDIO_GP_STATUS_TOP_AN_STATUS1_PAUSE_RSOLUTION_TXSIDE 0x0040
4411#define MDIO_GP_STATUS_TOP_AN_STATUS1_PAUSE_RSOLUTION_TXSIDE 0x0040 5369#define MDIO_GP_STATUS_TOP_AN_STATUS1_PAUSE_RSOLUTION_RXSIDE 0x0080
4412#define MDIO_GP_STATUS_TOP_AN_STATUS1_PAUSE_RSOLUTION_RXSIDE 0x0080 5370#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_MASK 0x3f00
4413#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_MASK 0x3f00 5371#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10M 0x0000
4414#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10M 0x0000 5372#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_100M 0x0100
4415#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_100M 0x0100 5373#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_1G 0x0200
4416#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_1G 0x0200 5374#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_2_5G 0x0300
4417#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_2_5G 0x0300 5375#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_5G 0x0400
4418#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_5G 0x0400 5376#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_6G 0x0500
4419#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_6G 0x0500 5377#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10G_HIG 0x0600
4420#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10G_HIG 0x0600 5378#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10G_CX4 0x0700
4421#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10G_CX4 0x0700 5379#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_12G_HIG 0x0800
4422#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_12G_HIG 0x0800 5380#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_12_5G 0x0900
4423#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_12_5G 0x0900 5381#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_13G 0x0A00
4424#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_13G 0x0A00 5382#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_15G 0x0B00
4425#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_15G 0x0B00 5383#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_16G 0x0C00
4426#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_16G 0x0C00 5384#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_1G_KX 0x0D00
4427#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_1G_KX 0x0D00 5385#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10G_KX4 0x0E00
4428#define MDIO_GP_STATUS_TOP_AN_STATUS1_ACTUAL_SPEED_10G_KX4 0x0E00
4429 5386
4430 5387
4431#define MDIO_REG_BANK_10G_PARALLEL_DETECT 0x8130 5388#define MDIO_REG_BANK_10G_PARALLEL_DETECT 0x8130
4432#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_CONTROL 0x11 5389#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_CONTROL 0x11
4433#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_CONTROL_PARDET10G_EN 0x1 5390#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_CONTROL_PARDET10G_EN 0x1
4434#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_LINK 0x13 5391#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_LINK 0x13
4435#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_LINK_CNT (0xb71<<1) 5392#define MDIO_10G_PARALLEL_DETECT_PAR_DET_10G_LINK_CNT (0xb71<<1)
4436 5393
4437#define MDIO_REG_BANK_SERDES_DIGITAL 0x8300 5394#define MDIO_REG_BANK_SERDES_DIGITAL 0x8300
4438#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1 0x10 5395#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1 0x10
4439#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_FIBER_MODE 0x0001 5396#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_FIBER_MODE 0x0001
4440#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_TBI_IF 0x0002 5397#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_TBI_IF 0x0002
4441#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_SIGNAL_DETECT_EN 0x0004 5398#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_SIGNAL_DETECT_EN 0x0004
4442#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_INVERT_SIGNAL_DETECT 0x0008 5399#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_INVERT_SIGNAL_DETECT 0x0008
4443#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_AUTODET 0x0010 5400#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_AUTODET 0x0010
4444#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_MSTR_MODE 0x0020 5401#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL1_MSTR_MODE 0x0020
4445#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL2 0x11 5402#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL2 0x11
4446#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL2_PRL_DT_EN 0x0001 5403#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL2_PRL_DT_EN 0x0001
4447#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL2_AN_FST_TMR 0x0040 5404#define MDIO_SERDES_DIGITAL_A_1000X_CONTROL2_AN_FST_TMR 0x0040
4448#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1 0x14 5405#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1 0x14
4449#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_DUPLEX 0x0004 5406#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_DUPLEX 0x0004
4450#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_MASK 0x0018 5407#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_MASK 0x0018
4451#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_SHIFT 3 5408#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_SHIFT 3
4452#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_2_5G 0x0018 5409#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_2_5G 0x0018
4453#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_1G 0x0010 5410#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_1G 0x0010
4454#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_100M 0x0008 5411#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_100M 0x0008
4455#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_10M 0x0000 5412#define MDIO_SERDES_DIGITAL_A_1000X_STATUS1_SPEED_10M 0x0000
4456#define MDIO_SERDES_DIGITAL_MISC1 0x18 5413#define MDIO_SERDES_DIGITAL_MISC1 0x18
4457#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_MASK 0xE000 5414#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_MASK 0xE000
4458#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_25M 0x0000 5415#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_25M 0x0000
4459#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_100M 0x2000 5416#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_100M 0x2000
4460#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_125M 0x4000 5417#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_125M 0x4000
4461#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_156_25M 0x6000 5418#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_156_25M 0x6000
4462#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_187_5M 0x8000 5419#define MDIO_SERDES_DIGITAL_MISC1_REFCLK_SEL_187_5M 0x8000
4463#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_SEL 0x0010 5420#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_SEL 0x0010
4464#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_MASK 0x000f 5421#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_MASK 0x000f
4465#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_2_5G 0x0000 5422#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_2_5G 0x0000
4466#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_5G 0x0001 5423#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_5G 0x0001
4467#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_6G 0x0002 5424#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_6G 0x0002
4468#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_10G_HIG 0x0003 5425#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_10G_HIG 0x0003
4469#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_10G_CX4 0x0004 5426#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_10G_CX4 0x0004
4470#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_12G 0x0005 5427#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_12G 0x0005
4471#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_12_5G 0x0006 5428#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_12_5G 0x0006
4472#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_13G 0x0007 5429#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_13G 0x0007
4473#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_15G 0x0008 5430#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_15G 0x0008
4474#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_16G 0x0009 5431#define MDIO_SERDES_DIGITAL_MISC1_FORCE_SPEED_16G 0x0009
4475 5432
4476#define MDIO_REG_BANK_OVER_1G 0x8320 5433#define MDIO_REG_BANK_OVER_1G 0x8320
4477#define MDIO_OVER_1G_DIGCTL_3_4 0x14 5434#define MDIO_OVER_1G_DIGCTL_3_4 0x14
4478#define MDIO_OVER_1G_DIGCTL_3_4_MP_ID_MASK 0xffe0 5435#define MDIO_OVER_1G_DIGCTL_3_4_MP_ID_MASK 0xffe0
4479#define MDIO_OVER_1G_DIGCTL_3_4_MP_ID_SHIFT 5 5436#define MDIO_OVER_1G_DIGCTL_3_4_MP_ID_SHIFT 5
4480#define MDIO_OVER_1G_UP1 0x19 5437#define MDIO_OVER_1G_UP1 0x19
4481#define MDIO_OVER_1G_UP1_2_5G 0x0001 5438#define MDIO_OVER_1G_UP1_2_5G 0x0001
4482#define MDIO_OVER_1G_UP1_5G 0x0002 5439#define MDIO_OVER_1G_UP1_5G 0x0002
4483#define MDIO_OVER_1G_UP1_6G 0x0004 5440#define MDIO_OVER_1G_UP1_6G 0x0004
4484#define MDIO_OVER_1G_UP1_10G 0x0010 5441#define MDIO_OVER_1G_UP1_10G 0x0010
4485#define MDIO_OVER_1G_UP1_10GH 0x0008 5442#define MDIO_OVER_1G_UP1_10GH 0x0008
4486#define MDIO_OVER_1G_UP1_12G 0x0020 5443#define MDIO_OVER_1G_UP1_12G 0x0020
4487#define MDIO_OVER_1G_UP1_12_5G 0x0040 5444#define MDIO_OVER_1G_UP1_12_5G 0x0040
4488#define MDIO_OVER_1G_UP1_13G 0x0080 5445#define MDIO_OVER_1G_UP1_13G 0x0080
4489#define MDIO_OVER_1G_UP1_15G 0x0100 5446#define MDIO_OVER_1G_UP1_15G 0x0100
4490#define MDIO_OVER_1G_UP1_16G 0x0200 5447#define MDIO_OVER_1G_UP1_16G 0x0200
4491#define MDIO_OVER_1G_UP2 0x1A 5448#define MDIO_OVER_1G_UP2 0x1A
4492#define MDIO_OVER_1G_UP2_IPREDRIVER_MASK 0x0007 5449#define MDIO_OVER_1G_UP2_IPREDRIVER_MASK 0x0007
4493#define MDIO_OVER_1G_UP2_IDRIVER_MASK 0x0038 5450#define MDIO_OVER_1G_UP2_IDRIVER_MASK 0x0038
4494#define MDIO_OVER_1G_UP2_PREEMPHASIS_MASK 0x03C0 5451#define MDIO_OVER_1G_UP2_PREEMPHASIS_MASK 0x03C0
4495#define MDIO_OVER_1G_UP3 0x1B 5452#define MDIO_OVER_1G_UP3 0x1B
4496#define MDIO_OVER_1G_UP3_HIGIG2 0x0001 5453#define MDIO_OVER_1G_UP3_HIGIG2 0x0001
4497#define MDIO_OVER_1G_LP_UP1 0x1C 5454#define MDIO_OVER_1G_LP_UP1 0x1C
4498#define MDIO_OVER_1G_LP_UP2 0x1D 5455#define MDIO_OVER_1G_LP_UP2 0x1D
4499#define MDIO_OVER_1G_LP_UP2_MR_ADV_OVER_1G_MASK 0x03ff 5456#define MDIO_OVER_1G_LP_UP2_MR_ADV_OVER_1G_MASK 0x03ff
4500#define MDIO_OVER_1G_LP_UP2_PREEMPHASIS_MASK 0x0780 5457#define MDIO_OVER_1G_LP_UP2_PREEMPHASIS_MASK 0x0780
4501#define MDIO_OVER_1G_LP_UP2_PREEMPHASIS_SHIFT 7 5458#define MDIO_OVER_1G_LP_UP2_PREEMPHASIS_SHIFT 7
4502#define MDIO_OVER_1G_LP_UP3 0x1E 5459#define MDIO_OVER_1G_LP_UP3 0x1E
4503 5460
4504#define MDIO_REG_BANK_BAM_NEXT_PAGE 0x8350 5461#define MDIO_REG_BANK_BAM_NEXT_PAGE 0x8350
4505#define MDIO_BAM_NEXT_PAGE_MP5_NEXT_PAGE_CTRL 0x10 5462#define MDIO_BAM_NEXT_PAGE_MP5_NEXT_PAGE_CTRL 0x10
4506#define MDIO_BAM_NEXT_PAGE_MP5_NEXT_PAGE_CTRL_BAM_MODE 0x0001 5463#define MDIO_BAM_NEXT_PAGE_MP5_NEXT_PAGE_CTRL_BAM_MODE 0x0001
4507#define MDIO_BAM_NEXT_PAGE_MP5_NEXT_PAGE_CTRL_TETON_AN 0x0002 5464#define MDIO_BAM_NEXT_PAGE_MP5_NEXT_PAGE_CTRL_TETON_AN 0x0002
5465
5466#define MDIO_REG_BANK_CL73_USERB0 0x8370
5467#define MDIO_CL73_USERB0_CL73_BAM_CTRL1 0x12
5468#define MDIO_CL73_USERB0_CL73_BAM_CTRL1_BAM_EN 0x8000
5469#define MDIO_CL73_USERB0_CL73_BAM_CTRL1_BAM_STATION_MNGR_EN 0x4000
5470#define MDIO_CL73_USERB0_CL73_BAM_CTRL1_BAM_NP_AFTER_BP_EN 0x2000
5471#define MDIO_CL73_USERB0_CL73_BAM_CTRL3 0x14
5472#define MDIO_CL73_USERB0_CL73_BAM_CTRL3_USE_CL73_HCD_MR 0x0001
5473
5474#define MDIO_REG_BANK_AER_BLOCK 0xFFD0
5475#define MDIO_AER_BLOCK_AER_REG 0x1E
5476
5477#define MDIO_REG_BANK_COMBO_IEEE0 0xFFE0
5478#define MDIO_COMBO_IEEE0_MII_CONTROL 0x10
5479#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_MASK 0x2040
5480#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_10 0x0000
5481#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_100 0x2000
5482#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_1000 0x0040
5483#define MDIO_COMBO_IEEO_MII_CONTROL_FULL_DUPLEX 0x0100
5484#define MDIO_COMBO_IEEO_MII_CONTROL_RESTART_AN 0x0200
5485#define MDIO_COMBO_IEEO_MII_CONTROL_AN_EN 0x1000
5486#define MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK 0x4000
5487#define MDIO_COMBO_IEEO_MII_CONTROL_RESET 0x8000
5488#define MDIO_COMBO_IEEE0_MII_STATUS 0x11
5489#define MDIO_COMBO_IEEE0_MII_STATUS_LINK_PASS 0x0004
5490#define MDIO_COMBO_IEEE0_MII_STATUS_AUTONEG_COMPLETE 0x0020
5491#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV 0x14
5492#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_FULL_DUPLEX 0x0020
5493#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_HALF_DUPLEX 0x0040
5494#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_MASK 0x0180
5495#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_NONE 0x0000
5496#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_SYMMETRIC 0x0080
5497#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_ASYMMETRIC 0x0100
5498#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_BOTH 0x0180
5499#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_NEXT_PAGE 0x8000
5500#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1 0x15
5501#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_NEXT_PAGE 0x8000
5502#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_ACK 0x4000
5503#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_PAUSE_MASK 0x0180
5504#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_PAUSE_NONE 0x0000
5505#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_PAUSE_BOTH 0x0180
5506#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_HALF_DUP_CAP 0x0040
5507#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_FULL_DUP_CAP 0x0020
5508/*WhenthelinkpartnerisinSGMIImode(bit0=1),then
5509bit15=link,bit12=duplex,bits11:10=speed,bit14=acknowledge.
5510Theotherbitsarereservedandshouldbezero*/
5511#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_SGMII_MODE 0x0001
5512
5513
5514#define MDIO_PMA_DEVAD 0x1
5515/*ieee*/
5516#define MDIO_PMA_REG_CTRL 0x0
5517#define MDIO_PMA_REG_STATUS 0x1
5518#define MDIO_PMA_REG_10G_CTRL2 0x7
5519#define MDIO_PMA_REG_RX_SD 0xa
5520/*bcm*/
5521#define MDIO_PMA_REG_BCM_CTRL 0x0096
5522#define MDIO_PMA_REG_FEC_CTRL 0x00ab
5523#define MDIO_PMA_REG_RX_ALARM_CTRL 0x9000
5524#define MDIO_PMA_REG_LASI_CTRL 0x9002
5525#define MDIO_PMA_REG_RX_ALARM 0x9003
5526#define MDIO_PMA_REG_TX_ALARM 0x9004
5527#define MDIO_PMA_REG_LASI_STATUS 0x9005
5528#define MDIO_PMA_REG_PHY_IDENTIFIER 0xc800
5529#define MDIO_PMA_REG_DIGITAL_CTRL 0xc808
5530#define MDIO_PMA_REG_DIGITAL_STATUS 0xc809
5531#define MDIO_PMA_REG_TX_POWER_DOWN 0xca02
5532#define MDIO_PMA_REG_CMU_PLL_BYPASS 0xca09
5533#define MDIO_PMA_REG_MISC_CTRL 0xca0a
5534#define MDIO_PMA_REG_GEN_CTRL 0xca10
5535#define MDIO_PMA_REG_GEN_CTRL_ROM_RESET_INTERNAL_MP 0x0188
5536#define MDIO_PMA_REG_GEN_CTRL_ROM_MICRO_RESET 0x018a
5537#define MDIO_PMA_REG_ROM_VER1 0xca19
5538#define MDIO_PMA_REG_ROM_VER2 0xca1a
5539#define MDIO_PMA_REG_EDC_FFE_MAIN 0xca1b
5540#define MDIO_PMA_REG_PLL_BANDWIDTH 0xca1d
5541#define MDIO_PMA_REG_CDR_BANDWIDTH 0xca46
5542#define MDIO_PMA_REG_MISC_CTRL1 0xca85
5543
5544#define MDIO_PMA_REG_7101_RESET 0xc000
5545#define MDIO_PMA_REG_7107_LED_CNTL 0xc007
5546#define MDIO_PMA_REG_7101_VER1 0xc026
5547#define MDIO_PMA_REG_7101_VER2 0xc027
5548
5549
5550#define MDIO_WIS_DEVAD 0x2
5551/*bcm*/
5552#define MDIO_WIS_REG_LASI_CNTL 0x9002
5553#define MDIO_WIS_REG_LASI_STATUS 0x9005
5554
5555#define MDIO_PCS_DEVAD 0x3
5556#define MDIO_PCS_REG_STATUS 0x0020
5557#define MDIO_PCS_REG_LASI_STATUS 0x9005
5558#define MDIO_PCS_REG_7101_DSP_ACCESS 0xD000
5559#define MDIO_PCS_REG_7101_SPI_MUX 0xD008
5560#define MDIO_PCS_REG_7101_SPI_CTRL_ADDR 0xE12A
5561#define MDIO_PCS_REG_7101_SPI_RESET_BIT (5)
5562#define MDIO_PCS_REG_7101_SPI_FIFO_ADDR 0xE02A
5563#define MDIO_PCS_REG_7101_SPI_FIFO_ADDR_WRITE_ENABLE_CMD (6)
5564#define MDIO_PCS_REG_7101_SPI_FIFO_ADDR_BULK_ERASE_CMD (0xC7)
5565#define MDIO_PCS_REG_7101_SPI_FIFO_ADDR_PAGE_PROGRAM_CMD (2)
5566#define MDIO_PCS_REG_7101_SPI_BYTES_TO_TRANSFER_ADDR 0xE028
5567
4508 5568
4509#define MDIO_REG_BANK_CL73_USERB0 0x8370 5569#define MDIO_XS_DEVAD 0x4
4510#define MDIO_CL73_USERB0_CL73_BAM_CTRL1 0x12 5570#define MDIO_XS_PLL_SEQUENCER 0x8000
4511#define MDIO_CL73_USERB0_CL73_BAM_CTRL1_BAM_EN 0x8000 5571#define MDIO_XS_SFX7101_XGXS_TEST1 0xc00a
4512#define MDIO_CL73_USERB0_CL73_BAM_CTRL1_BAM_STATION_MNGR_EN 0x4000
4513#define MDIO_CL73_USERB0_CL73_BAM_CTRL1_BAM_NP_AFTER_BP_EN 0x2000
4514#define MDIO_CL73_USERB0_CL73_BAM_CTRL3 0x14
4515#define MDIO_CL73_USERB0_CL73_BAM_CTRL3_USE_CL73_HCD_MR 0x0001
4516 5572
4517#define MDIO_REG_BANK_AER_BLOCK 0xFFD0 5573#define MDIO_AN_DEVAD 0x7
4518#define MDIO_AER_BLOCK_AER_REG 0x1E 5574/*ieee*/
5575#define MDIO_AN_REG_CTRL 0x0000
5576#define MDIO_AN_REG_STATUS 0x0001
5577#define MDIO_AN_REG_STATUS_AN_COMPLETE 0x0020
5578#define MDIO_AN_REG_ADV_PAUSE 0x0010
5579#define MDIO_AN_REG_ADV_PAUSE_PAUSE 0x0400
5580#define MDIO_AN_REG_ADV_PAUSE_ASYMMETRIC 0x0800
5581#define MDIO_AN_REG_ADV_PAUSE_BOTH 0x0C00
5582#define MDIO_AN_REG_ADV_PAUSE_MASK 0x0C00
5583#define MDIO_AN_REG_ADV 0x0011
5584#define MDIO_AN_REG_ADV2 0x0012
5585#define MDIO_AN_REG_LP_AUTO_NEG 0x0013
5586#define MDIO_AN_REG_MASTER_STATUS 0x0021
5587/*bcm*/
5588#define MDIO_AN_REG_LINK_STATUS 0x8304
5589#define MDIO_AN_REG_CL37_CL73 0x8370
5590#define MDIO_AN_REG_CL37_AN 0xffe0
5591#define MDIO_AN_REG_CL37_FD 0xffe4
4519 5592
4520#define MDIO_REG_BANK_COMBO_IEEE0 0xFFE0
4521#define MDIO_COMBO_IEEE0_MII_CONTROL 0x10
4522#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_MASK 0x2040
4523#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_10 0x0000
4524#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_100 0x2000
4525#define MDIO_COMBO_IEEO_MII_CONTROL_MAN_SGMII_SP_1000 0x0040
4526#define MDIO_COMBO_IEEO_MII_CONTROL_FULL_DUPLEX 0x0100
4527#define MDIO_COMBO_IEEO_MII_CONTROL_RESTART_AN 0x0200
4528#define MDIO_COMBO_IEEO_MII_CONTROL_AN_EN 0x1000
4529#define MDIO_COMBO_IEEO_MII_CONTROL_LOOPBACK 0x4000
4530#define MDIO_COMBO_IEEO_MII_CONTROL_RESET 0x8000
4531#define MDIO_COMBO_IEEE0_MII_STATUS 0x11
4532#define MDIO_COMBO_IEEE0_MII_STATUS_LINK_PASS 0x0004
4533#define MDIO_COMBO_IEEE0_MII_STATUS_AUTONEG_COMPLETE 0x0020
4534#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV 0x14
4535#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_FULL_DUPLEX 0x0020
4536#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_HALF_DUPLEX 0x0040
4537#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_MASK 0x0180
4538#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_NONE 0x0000
4539#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_SYMMETRIC 0x0080
4540#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_ASYMMETRIC 0x0100
4541#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_PAUSE_BOTH 0x0180
4542#define MDIO_COMBO_IEEE0_AUTO_NEG_ADV_NEXT_PAGE 0x8000
4543#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1 0x15
4544#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_NEXT_PAGE 0x8000
4545#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_ACK 0x4000
4546#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_PAUSE_MASK 0x0180
4547#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_PAUSE_NONE\
4548 0x0000
4549#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_PAUSE_BOTH\
4550 0x0180
4551#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_HALF_DUP_CAP 0x0040
4552#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_FULL_DUP_CAP 0x0020
4553#define MDIO_COMBO_IEEE0_AUTO_NEG_LINK_PARTNER_ABILITY1_SGMII_MODE 0x0001
4554 5593
5594#define IGU_FUNC_BASE 0x0400
4555 5595
4556#define EXT_PHY_AUTO_NEG_DEVAD 0x7 5596#define IGU_ADDR_MSIX 0x0000
4557#define EXT_PHY_OPT_PMA_PMD_DEVAD 0x1 5597#define IGU_ADDR_INT_ACK 0x0200
4558#define EXT_PHY_OPT_WIS_DEVAD 0x2 5598#define IGU_ADDR_PROD_UPD 0x0201
4559#define EXT_PHY_OPT_PCS_DEVAD 0x3 5599#define IGU_ADDR_ATTN_BITS_UPD 0x0202
4560#define EXT_PHY_OPT_PHY_XS_DEVAD 0x4 5600#define IGU_ADDR_ATTN_BITS_SET 0x0203
4561#define EXT_PHY_OPT_CNTL 0x0 5601#define IGU_ADDR_ATTN_BITS_CLR 0x0204
4562#define EXT_PHY_OPT_CNTL2 0x7 5602#define IGU_ADDR_COALESCE_NOW 0x0205
4563#define EXT_PHY_OPT_PMD_RX_SD 0xa 5603#define IGU_ADDR_SIMD_MASK 0x0206
4564#define EXT_PHY_OPT_PMD_MISC_CNTL 0xca0a 5604#define IGU_ADDR_SIMD_NOMASK 0x0207
4565#define EXT_PHY_OPT_PHY_IDENTIFIER 0xc800 5605#define IGU_ADDR_MSI_CTL 0x0210
4566#define EXT_PHY_OPT_PMD_DIGITAL_CNT 0xc808 5606#define IGU_ADDR_MSI_ADDR_LO 0x0211
4567#define EXT_PHY_OPT_PMD_DIGITAL_SATUS 0xc809 5607#define IGU_ADDR_MSI_ADDR_HI 0x0212
4568#define EXT_PHY_OPT_CMU_PLL_BYPASS 0xca09 5608#define IGU_ADDR_MSI_DATA 0x0213
4569#define EXT_PHY_OPT_LASI_CNTL 0x9002
4570#define EXT_PHY_OPT_RX_ALARM 0x9003
4571#define EXT_PHY_OPT_LASI_STATUS 0x9005
4572#define EXT_PHY_OPT_PCS_STATUS 0x0020
4573#define EXT_PHY_OPT_XGXS_LANE_STATUS 0x0018
4574#define EXT_PHY_OPT_AN_LINK_STATUS 0x8304
4575#define EXT_PHY_OPT_AN_CL37_CL73 0x8370
4576#define EXT_PHY_OPT_AN_CL37_FD 0xffe4
4577#define EXT_PHY_OPT_AN_CL37_AN 0xffe0
4578#define EXT_PHY_OPT_AN_ADV 0x11
4579 5609
4580#define EXT_PHY_KR_PMA_PMD_DEVAD 0x1 5610#define IGU_INT_ENABLE 0
4581#define EXT_PHY_KR_PCS_DEVAD 0x3 5611#define IGU_INT_DISABLE 1
4582#define EXT_PHY_KR_AUTO_NEG_DEVAD 0x7 5612#define IGU_INT_NOP 2
4583#define EXT_PHY_KR_CTRL 0x0000 5613#define IGU_INT_NOP2 3
4584#define EXT_PHY_KR_STATUS 0x0001
4585#define EXT_PHY_KR_AUTO_NEG_COMPLETE 0x0020
4586#define EXT_PHY_KR_AUTO_NEG_ADVERT 0x0010
4587#define EXT_PHY_KR_AUTO_NEG_ADVERT_PAUSE 0x0400
4588#define EXT_PHY_KR_AUTO_NEG_ADVERT_PAUSE_ASYMMETRIC 0x0800
4589#define EXT_PHY_KR_AUTO_NEG_ADVERT_PAUSE_BOTH 0x0C00
4590#define EXT_PHY_KR_AUTO_NEG_ADVERT_PAUSE_MASK 0x0C00
4591#define EXT_PHY_KR_LP_AUTO_NEG 0x0013
4592#define EXT_PHY_KR_CTRL2 0x0007
4593#define EXT_PHY_KR_PCS_STATUS 0x0020
4594#define EXT_PHY_KR_PMD_CTRL 0x0096
4595#define EXT_PHY_KR_LASI_CNTL 0x9002
4596#define EXT_PHY_KR_LASI_STATUS 0x9005
4597#define EXT_PHY_KR_MISC_CTRL1 0xca85
4598#define EXT_PHY_KR_GEN_CTRL 0xca10
4599#define EXT_PHY_KR_ROM_CODE 0xca19
4600#define EXT_PHY_KR_ROM_RESET_INTERNAL_MP 0x0188
4601#define EXT_PHY_KR_ROM_MICRO_RESET 0x018a
4602 5614
4603#define EXT_PHY_SFX7101_XGXS_TEST1 0xc00a
4604 5615