1221167Sgnn/*-
2221167Sgnn * Copyright(c) 2002-2011 Exar Corp.
3221167Sgnn * All rights reserved.
4221167Sgnn *
5221167Sgnn * Redistribution and use in source and binary forms, with or without
6221167Sgnn * modification are permitted provided the following conditions are met:
7221167Sgnn *
8221167Sgnn *    1. Redistributions of source code must retain the above copyright notice,
9221167Sgnn *       this list of conditions and the following disclaimer.
10221167Sgnn *
11221167Sgnn *    2. Redistributions in binary form must reproduce the above copyright
12221167Sgnn *       notice, this list of conditions and the following disclaimer in the
13221167Sgnn *       documentation and/or other materials provided with the distribution.
14221167Sgnn *
15221167Sgnn *    3. Neither the name of the Exar Corporation nor the names of its
16221167Sgnn *       contributors may be used to endorse or promote products derived from
17221167Sgnn *       this software without specific prior written permission.
18221167Sgnn *
19221167Sgnn * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20221167Sgnn * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21221167Sgnn * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22221167Sgnn * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23221167Sgnn * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24221167Sgnn * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25221167Sgnn * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26221167Sgnn * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27221167Sgnn * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28221167Sgnn * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29221167Sgnn * POSSIBILITY OF SUCH DAMAGE.
30221167Sgnn */
31221167Sgnn/*$FreeBSD$*/
32221167Sgnn
33221167Sgnn#ifndef	VXGE_HAL_REGDEFS_H
34221167Sgnn#define	VXGE_HAL_REGDEFS_H
35221167Sgnn
36221167Sgnn__EXTERN_BEGIN_DECLS
37221167Sgnn
38221167Sgnn#define	VXGE_HAL_TITAN_ASIC_ID_GET_INITIAL_DEVICE_ID(bits)	bVAL16(bits, 0)
39221167Sgnn#define	VXGE_HAL_TITAN_ASIC_ID_GET_INITIAL_MAJOR_REVISION(bits)	bVAL8(bits, 48)
40221167Sgnn#define	VXGE_HAL_TITAN_ASIC_ID_GET_INITIAL_MINOR_REVISION(bits)	bVAL8(bits, 56)
41221167Sgnn
42221167Sgnn#define	VXGE_HAL_VPD_LEN						80
43221167Sgnn#define	VXGE_HAL_CARD_TITAN_VPD_ADDR					0x80
44221167Sgnn#define	VPD_READ_COMPLETE						0x80
45221167Sgnn
46221167Sgnn#define	VXGE_HAL_VPATH_TO_FUNC_MAP_CFG1_GET_CFG1(bits)		bVAL5(bits, 3)
47221167Sgnn
48221167Sgnn#define	VXGE_HAL_DEBUG_ASSIGNMENTS_GET_VHLABEL(bits)		bVAL5(bits, 3)
49221167Sgnn#define	VXGE_HAL_DEBUG_ASSIGNMENTS_GET_VPLANE(bits)		bVAL5(bits, 11)
50221167Sgnn#define	VXGE_HAL_DEBUG_ASSIGNMENTS_GET_FUNC(bits)		bVAL5(bits, 19)
51221167Sgnn
52221167Sgnn#define	VXGE_HAL_HOST_TYPE_ASSIGNMENTS_GET_HOST_TYPE_ASSIGNMENTS(bits)\
53221167Sgnn							    bVAL3(bits, 5)
54221167Sgnn#define	VXGE_HAL_VPLANE_ASSIGNMENTS_GET_VPLANE_ASSIGNMENTS(bits)    \
55221167Sgnn							    bVAL5(bits, 3)
56221167Sgnn
57221167Sgnn#define	VXGE_HAL_PF_SW_RESET_COMMAND					0xA5
58221167Sgnn
59221167Sgnn#define	VXGE_HAL_TITAN_PCICFGMGMT_REG_SPACES				17
60221167Sgnn#define	VXGE_HAL_TITAN_SRPCIM_REG_SPACES				17
61221167Sgnn#define	VXGE_HAL_TITAN_VPMGMT_REG_SPACES				17
62221167Sgnn#define	VXGE_HAL_TITAN_VPATH_REG_SPACES					17
63221167Sgnn
64221167Sgnn#define	VXGE_HAL_PRIV_VPATH_ACTION					5
65221167Sgnn#define	VXGE_HAL_BW_CONTROL						12
66221167Sgnn#define	VXGE_HAL_RTS_ACCESS_FW_MEMO_ACTION_NON_PRIV_BANDWIDTH_CTRL	32
67221167Sgnn#define	VXGE_HAL_RTS_ACCESS_FW_MEMO_ACTION_PRIV_NWIF			17
68221167Sgnn#define	VXGE_HAL_API_FUNC_MODE_COMMIT					21
69221167Sgnn
70221167Sgnn#define	VXGE_HAL_ASIC_MODE_RESERVED					0
71221167Sgnn#define	VXGE_HAL_ASIC_MODE_NO_IOV					1
72221167Sgnn#define	VXGE_HAL_ASIC_MODE_SR_IOV					2
73221167Sgnn#define	VXGE_HAL_ASIC_MODE_MR_IOV					3
74221167Sgnn
75221167Sgnn#define	VXGE_HAL_TXMAC_GEN_CFG1_TMAC_PERMA_STOP_EN		mBIT(3)
76221167Sgnn#define	VXGE_HAL_TXMAC_GEN_CFG1_BLOCK_BCAST_TO_WIRE		mBIT(19)
77221167Sgnn#define	VXGE_HAL_TXMAC_GEN_CFG1_BLOCK_BCAST_TO_SWITCH		mBIT(23)
78221167Sgnn#define	VXGE_HAL_TXMAC_GEN_CFG1_HOST_APPEND_FCS			mBIT(31)
79221167Sgnn
80221167Sgnn#define	VXGE_HAL_VPATH_IS_FIRST_GET_VPATH_IS_FIRST(bits)	bVAL1(bits, 3)
81221167Sgnn
82221167Sgnn#define	VXGE_HAL_TIM_VPATH_ASSIGNMENT_GET_BMAP_ROOT(bits)	bVAL32(bits, 0)
83221167Sgnn
84221167Sgnn#define	VXGE_HAL_RXMAC_CFG0_PORT_VPMGMT_CLONE_GET_MAX_PYLD_LEN(bits)\
85221167Sgnn							bVAL14(bits, 50)
86221167Sgnn
87221167Sgnn#define	VXGE_HAL_XMAC_VSPORT_CHOICES_VP_GET_VSPORT_VECTOR(bits)	bVAL17(bits, 0)
88221167Sgnn
89221167Sgnn#define	VXGE_HAL_XMAC_VPATH_TO_VSPORT_VPMGMT_CLONE_GET_VSPORT_NUMBER(bits)\
90221167Sgnn							bVAL5(bits, 3)
91221167Sgnn
92221167Sgnn#define	VXGE_HAL_KDFC_DRBL_TRIPLET_TOTAL_GET_KDFC_MAX_SIZE(bits)\
93221167Sgnn							bVAL15(bits, 17)
94221167Sgnn
95221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_0_CTRL_MODE_LEGACY_MODE			0
96221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_0_CTRL_MODE_NON_OFFLOAD_ONLY		1
97221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_0_CTRL_MODE_MULTI_OP_MODE		2
98221167Sgnn
99221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_1_CTRL_MODE_MESSAGES_ONLY		0
100221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_1_CTRL_MODE_MULTI_OP_MODE		1
101221167Sgnn
102221167Sgnn#define	VXGE_HAL_TOC_GET_KDFC_INITIAL_OFFSET(val)\
103221167Sgnn					(val&~VXGE_HAL_TOC_KDFC_INITIAL_BIR(7))
104221167Sgnn#define	VXGE_HAL_TOC_GET_KDFC_INITIAL_BIR(val)		    bVAL3(val, 61)
105221167Sgnn#define	VXGE_HAL_TOC_GET_USDC_INITIAL_OFFSET(val)\
106221167Sgnn					(val&~VXGE_HAL_TOC_USDC_INITIAL_BIR(7))
107221167Sgnn#define	VXGE_HAL_TOC_GET_USDC_INITIAL_BIR(val)		    bVAL3(val, 61)
108221167Sgnn
109221167Sgnn#define	VXGE_HAL_LAG_CFG_GET_MODE(bits)			    bVAL2(bits, 6)
110221167Sgnn#define	VXGE_HAL_LAG_TX_CFG_GET_DISTRIB_ALG_SEL(bits)	    bVAL2(bits, 6)
111221167Sgnn
112221167Sgnn#define	VXGE_HAL_TOC_KDFC_VPATH_STRIDE_GET_TOC_KDFC_VPATH_STRIDE(bits)	bits
113221167Sgnn#define	VXGE_HAL_TOC_KDFC_FIFO_STRIDE_GET_TOC_KDFC_FIFO_STRIDE(bits)	bits
114221167Sgnn
115221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_OFFSET_GET_KDFC_RCTR0(bits) bVAL15(bits, 1)
116221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_OFFSET_GET_KDFC_RCTR1(bits) bVAL15(bits, 17)
117221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_OFFSET_GET_KDFC_RCTR2(bits) bVAL15(bits, 33)
118221167Sgnn
119221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_OFFSET_KDFC_VAPTH_NUM(val)  vBIT(val, 42, 5)
120221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_OFFSET_KDFC_FIFO_NUM(val)   vBIT(val, 47, 2)
121221167Sgnn#define	VXGE_HAL_KDFC_TRPL_FIFO_OFFSET_KDFC_FIFO_OFFSET(val) vBIT(val, 49, 15)
122221167Sgnn
123221167Sgnn#define	VXGE_HAL_PRC_CFG4_RING_MODE_ONE_BUFFER				0
124221167Sgnn#define	VXGE_HAL_PRC_CFG4_RING_MODE_THREE_BUFFER			1
125221167Sgnn#define	VXGE_HAL_PRC_CFG4_RING_MODE_FIVE_BUFFER				2
126221167Sgnn
127221167Sgnn#define	VXGE_HAL_PRC_CFG7_SCATTER_MODE_A				0
128221167Sgnn#define	VXGE_HAL_PRC_CFG7_SCATTER_MODE_B				2
129221167Sgnn#define	VXGE_HAL_PRC_CFG7_SCATTER_MODE_C				1
130221167Sgnn
131221167Sgnn#define	VXGE_HAL_RTDMA_BW_CTRL_GET_DESIRED_BW(bits)	    bVAL18(bits, 46)
132221167Sgnn
133221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_WE_READ				0
134221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_WE_WRITE				1
135221167Sgnn
136221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_DA			0
137221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_VID			1
138221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_ETYPE		2
139221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_PN			3
140221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_RANGE_PN		4
141221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_RTH_GEN_CFG		5
142221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_RTH_SOLO_IT		6
143221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_RTH_JHASH_CFG	7
144221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_RTH_MASK		8
145221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_RTH_KEY		9
146221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_QOS			10
147221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_DS			11
148221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_RTH_MULTI_IT	12
149221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_CTRL_DATA_STRUCT_SEL_FW_MEMO		13
150221167Sgnn
151221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA0_GET_DA_MAC_ADDR(bits)  bVAL48(bits, 0)
152221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA0_DA_MAC_ADDR(val)	    vBIT(val, 0, 48)
153221167Sgnn
154221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA1_GET_DA_MAC_ADDR_MASK(bits) bVAL48(bits, 0)
155221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA1_DA_MAC_ADDR_MASK(val)  vBIT(val, 0, 48)
156221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA1_DA_MAC_ADDR_ADD_PRIVILEGED_MODE mBIT(54)
157221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA1_GET_DA_MAC_ADDR_ADD_VPATH(bits)\
158221167Sgnn							    bVAL5(bits, 55)
159221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA1_DA_MAC_ADDR_ADD_VPATH(val)	vBIT(val, 55, 5)
160221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA1_GET_DA_MAC_ADDR_ADD_MODE(bits)\
161221167Sgnn							    bVAL2(bits, 62)
162221167Sgnn#define	VXGE_HAL_RTS_MGR_STEER_DATA1_DA_MAC_ADDR_MODE(val)  vBIT(val, 62, 2)
163221167Sgnn
164221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_ADD_ENTRY			0
165221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_DELETE_ENTRY		1
166221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_LIST_FIRST_ENTRY		2
167221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_LIST_NEXT_ENTRY		3
168221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_READ_ENTRY		0
169221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_WRITE_ENTRY		1
170221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_CLEAR_TABLE		2
171221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_FW_MEMO_VERSION		0
172221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_FW_MEMO_CARD_INFO		3
173221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_LED_CONTROL		4
174221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_VPATH_MAP			5
175221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_PCI_CONFIG		6
176221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_UDP_RTH			10
177221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_FUNC_MODE			11
178221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_SEND_MSG			15
179221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_FW_UPGRADE		16
180221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_PORT_CTRL			17
181221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_PORT_INFO			18
182221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_COMMIT			21
183221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_GET_FUNC_COUNT		24
184221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_GET_FUNC_MODE		29
185221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_ACTION_ALL_CLEAR			172
186221167Sgnn
187221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_DA		0
188221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_VID		1
189221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_ETYPE		2
190221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_PN		3
191221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_RTH_GEN_CFG	5
192221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_RTH_SOLO_IT	6
193221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_RTH_JHASH_CFG	7
194221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_RTH_MASK		8
195221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_RTH_KEY		9
196221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_QOS		10
197221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_DS		11
198221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_RTH_MULTI_IT	12
199221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_DATA_STRUCT_SEL_FW_MEMO		13
200221167Sgnn#define	VXGE_HAL_MSG_SEND_TO_VPATH_MASK				0xFFFFFFFFUL
201221167Sgnn#define	VXGE_HAL_MSG_SEND_RETRY						100
202221167Sgnn
203221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_OFFSET_FW_UPGRADE_MODE		2
204221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_OFFSET_FW_UPGRADE_DATA		3
205221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_CTRL_OFFSET_FW_UPGRADE_COMMIT		4
206221167Sgnn
207221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_STREAM_SKIP	    mBIT(63)
208221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_RET_CODE(bits) \
209221167Sgnn							    bVAL8(bits, 56)
210221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_RET_CODE_OK	0
211221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_RET_CODE_DONE	1
212221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_RET_CODE_ERROR	2
213221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_RET_CODE_SKIP	3
214221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_SUB_CODE(bits) \
215221167Sgnn							    bVAL8(bits, 48)
216221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_SUB_SUB_CODE(bits) \
217221167Sgnn							    bVAL8(bits, 40)
218221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_UPGRADE_GET_SKIP_BYTES(bits) \
219221167Sgnn							    bVAL32(bits, 24)
220221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_FW_UPGRADE_GET_TOTAL_STEPS(bits) \
221221167Sgnn							    bVAL32(bits, 0)
222221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_FW_UPGRADE_GET_COMPL_STEPS(bits) \
223221167Sgnn							    bVAL32(bits, 32)
224221167Sgnn
225221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_DA_MAC_ADDR(bits) bVAL48(bits, 0)
226221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_DA_MAC_ADDR(val)    vBIT(val, 0, 48)
227221167Sgnn
228221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_VLAN_ID(bits)   bVAL11(bits, 0)
229221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_VLAN_ID(val)	    vBIT(val, 0, 12)
230221167Sgnn
231221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_ETYPE(bits)	    bVAL11(bits, 0)
232221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_ETYPE(val)	    vBIT(val, 0, 16)
233221167Sgnn
234221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_SEND_MSG_TYPE(val)	vBIT(val, 0, 8)
235221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_SEND_MSG_DEST(val)	vBIT(val, 8, 8)
236221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_SEND_MSG_SRC(val)    vBIT(val, 16, 8)
237221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_SEND_MSG_DATA(val)    vBIT(val, 32, 32)
238221167Sgnn
239221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_PN_SRC_DEST_SEL(bits) bVAL1(bits, 3)
240221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_PN_SRC_DEST_SEL	    mBIT(3)
241221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_PN_TCP_UDP_SEL(bits) bVAL1(bits, 7)
242221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_PN_TCP_UDP_SEL	    mBIT(7)
243221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_PN_PORT_NUM(bits) bVAL16(bits, 8)
244221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_PN_PORT_NUM(val)    vBIT(val, 8, 16)
245221167Sgnn
246221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_RTH_EN(bits) bVAL1(bits, 3)
247221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_RTH_EN	    mBIT(3)
248221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_BUCKET_SIZE(bits)\
249221167Sgnn							    bVAL4(bits, 4)
250221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_BUCKET_SIZE(val) vBIT(val, 4, 4)
251221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_ALG_SEL(bits)\
252221167Sgnn							    bVAL2(bits, 10)
253221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_ALG_SEL(val) vBIT(val, 10, 2)
254221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_ALG_SEL_JENKINS	0
255221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_ALG_SEL_MS_RSS	1
256221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_ALG_SEL_CRC32C	2
257221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_RTH_TCP_IPV4_EN(bits)\
258221167Sgnn							    bVAL1(bits, 15)
259221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_RTH_TCP_IPV4_EN	mBIT(15)
260221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_RTH_IPV4_EN(bits)\
261221167Sgnn							    bVAL1(bits, 19)
262221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_RTH_IPV4_EN mBIT(19)
263221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_RTH_TCP_IPV6_EN(bits)\
264221167Sgnn							    bVAL1(bits, 23)
265221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_RTH_TCP_IPV6_EN	mBIT(23)
266221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_RTH_IPV6_EN(bits)\
267221167Sgnn							    bVAL1(bits, 27)
268221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_RTH_IPV6_EN mBIT(27)
269221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_RTH_TCP_IPV6_EX_EN(bits)\
270221167Sgnn							    bVAL1(bits, 31)
271221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_RTH_TCP_IPV6_EX_EN mBIT(31)
272221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_RTH_IPV6_EX_EN(bits)\
273221167Sgnn							    bVAL1(bits, 35)
274221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_RTH_IPV6_EX_EN	mBIT(35)
275221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_ACTIVE_TABLE(bits)\
276221167Sgnn							    bVAL1(bits, 39)
277221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_ACTIVE_TABLE mBIT(39)
278221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_GEN_REPL_ENTRY_EN(bits)\
279221167Sgnn							    bVAL1(bits, 43)
280221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_GEN_REPL_ENTRY_EN mBIT(43)
281221167Sgnn
282221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_SOLO_IT_ENTRY_EN(bits)\
283221167Sgnn							    bVAL1(bits, 3)
284221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_SOLO_IT_ENTRY_EN mBIT(3)
285221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_SOLO_IT_BUCKET_DATA(bits)\
286221167Sgnn							    bVAL7(bits, 9)
287221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_SOLO_IT_BUCKET_DATA(val)\
288221167Sgnn							    vBIT(val, 9, 7)
289221167Sgnn
290221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_ITEM0_BUCKET_NUM(bits)\
291221167Sgnn							    bVAL8(bits, 0)
292221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_ITEM0_BUCKET_NUM(val)\
293221167Sgnn							    vBIT(val, 0, 8)
294221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_ITEM0_ENTRY_EN(bits)\
295221167Sgnn							    bVAL1(bits, 8)
296221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_ITEM0_ENTRY_EN  mBIT(8)
297221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_ITEM0_BUCKET_DATA(bits)\
298221167Sgnn							    bVAL7(bits, 9)
299221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_ITEM0_BUCKET_DATA(val)\
300221167Sgnn							    vBIT(val, 9, 7)
301221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_ITEM1_BUCKET_NUM(bits)\
302221167Sgnn							    bVAL8(bits, 16)
303221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_ITEM1_BUCKET_NUM(val)\
304221167Sgnn							    vBIT(val, 16, 8)
305221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_ITEM1_ENTRY_EN(bits)\
306221167Sgnn							    bVAL1(bits, 24)
307221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_ITEM1_ENTRY_EN  mBIT(24)
308221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_ITEM1_BUCKET_DATA(bits)\
309221167Sgnn							    bVAL7(bits, 25)
310221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_ITEM1_BUCKET_DATA(val)\
311221167Sgnn							    vBIT(val, 25, 7)
312221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM0_BUCKET_NUM(bits)\
313221167Sgnn							    bVAL8(bits, 0)
314221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM0_BUCKET_NUM(val)\
315221167Sgnn							    vBIT(val, 0, 8)
316221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM0_ENTRY_EN(bits)\
317221167Sgnn							    bVAL1(bits, 8)
318221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM0_ENTRY_EN  mBIT(8)
319221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM0_BUCKET_DATA(bits)\
320221167Sgnn							    bVAL7(bits, 9)
321221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM0_BUCKET_DATA(val)\
322221167Sgnn							    vBIT(val, 9, 7)
323221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM1_BUCKET_NUM(bits)\
324221167Sgnn							    bVAL8(bits, 16)
325221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM1_BUCKET_NUM(val)\
326221167Sgnn							    vBIT(val, 16, 8)
327221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM1_ENTRY_EN(bits)\
328221167Sgnn							    bVAL1(bits, 24)
329221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM1_ENTRY_EN  mBIT(24)
330221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM1_BUCKET_DATA(bits)\
331221167Sgnn							    bVAL7(bits, 25)
332221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM1_BUCKET_DATA(val)\
333221167Sgnn							    vBIT(val, 25, 7)
334221167Sgnn
335221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_JHASH_CFG_GOLDEN_RATIO(bits)\
336221167Sgnn							    bVAL32(bits, 0)
337221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_JHASH_CFG_GOLDEN_RATIO(val)\
338221167Sgnn							    vBIT(val, 0, 32)
339221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_JHASH_CFG_INIT_VALUE(bits)\
340221167Sgnn							    bVAL32(bits, 32)
341221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_JHASH_CFG_INIT_VALUE(val)\
342221167Sgnn							    vBIT(val, 32, 32)
343221167Sgnn
344221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_MASK_IPV6_SA_MASK(bits)\
345221167Sgnn							    bVAL16(bits, 0)
346221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_MASK_IPV6_SA_MASK(val)\
347221167Sgnn							    vBIT(val, 0, 16)
348221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_MASK_IPV6_DA_MASK(bits)\
349221167Sgnn							    bVAL16(bits, 16)
350221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_MASK_IPV6_DA_MASK(val)\
351221167Sgnn							    vBIT(val, 16, 16)
352221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_MASK_IPV4_SA_MASK(bits)\
353221167Sgnn							    bVAL4(bits, 32)
354221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_MASK_IPV4_SA_MASK(val)\
355221167Sgnn							    vBIT(val, 32, 4)
356221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_MASK_IPV4_DA_MASK(bits)\
357221167Sgnn							    bVAL4(bits, 36)
358221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_MASK_IPV4_DA_MASK(val)\
359221167Sgnn							    vBIT(val, 36, 4)
360221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_MASK_L4SP_MASK(bits)\
361221167Sgnn							    bVAL2(bits, 40)
362221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_MASK_L4SP_MASK(val)	vBIT(val, 40, 2)
363221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_MASK_L4DP_MASK(bits)\
364221167Sgnn							    bVAL2(bits, 42)
365221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_MASK_L4DP_MASK(val)	vBIT(val, 42, 2)
366221167Sgnn
367221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_RTH_KEY_KEY(bits)	bVAL64(bits, 0)
368221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_RTH_KEY_KEY		vBIT(val, 0, 64)
369221167Sgnn
370221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_QOS_ENTRY_EN(bits)	bVAL1(bits, 3)
371221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_QOS_ENTRY_EN		mBIT(3)
372221167Sgnn
373221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_DS_ENTRY_EN(bits)	bVAL1(bits, 3)
374221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_DS_ENTRY_EN		mBIT(3)
375221167Sgnn
376221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_DA_MAC_ADDR_MASK(bits)\
377221167Sgnn								bVAL48(bits, 0)
378221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_DA_MAC_ADDR_MASK(val)	vBIT(val, 0, 48)
379221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_DA_MAC_ADDR_ADD_PRIVILEGED_MODE	mBIT(54)
380221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_DA_MAC_ADDR_ADD_VPATH(bits)\
381221167Sgnn							    bVAL5(bits, 55)
382221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_DA_MAC_ADDR_ADD_VPATH(val)\
383221167Sgnn							    vBIT(val, 55, 5)
384221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_DA_MAC_ADDR_ADD_MODE(bits)\
385221167Sgnn							    bVAL2(bits, 62)
386221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_DA_MAC_ADDR_MODE(val)	vBIT(val, 62, 2)
387221167Sgnn
388221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM4_BUCKET_NUM(bits)\
389221167Sgnn							    bVAL8(bits, 0)
390221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM4_BUCKET_NUM(val)\
391221167Sgnn							    vBIT(val, 0, 8)
392221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM4_ENTRY_EN(bits)\
393221167Sgnn							    bVAL1(bits, 8)
394221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM4_ENTRY_EN  mBIT(8)
395221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM4_BUCKET_DATA(bits)\
396221167Sgnn							    bVAL7(bits, 9)
397221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM4_BUCKET_DATA(val)\
398221167Sgnn							    vBIT(val, 9, 7)
399221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM5_BUCKET_NUM(bits)\
400221167Sgnn							    bVAL8(bits, 16)
401221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM5_BUCKET_NUM(val)\
402221167Sgnn							    vBIT(val, 16, 8)
403221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM5_ENTRY_EN(bits)\
404221167Sgnn							    bVAL1(bits, 24)
405221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM5_ENTRY_EN  mBIT(24)
406221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM5_BUCKET_DATA(bits)\
407221167Sgnn							    bVAL7(bits, 25)
408221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM5_BUCKET_DATA(val)\
409221167Sgnn							    vBIT(val, 25, 7)
410221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM6_BUCKET_NUM(bits)\
411221167Sgnn							    bVAL8(bits, 32)
412221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM6_BUCKET_NUM(val)\
413221167Sgnn							    vBIT(val, 32, 8)
414221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM6_ENTRY_EN(bits)\
415221167Sgnn							    bVAL1(bits, 40)
416221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM6_ENTRY_EN  mBIT(40)
417221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM6_BUCKET_DATA(bits)\
418221167Sgnn							    bVAL7(bits, 41)
419221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM6_BUCKET_DATA(val)\
420221167Sgnn							    vBIT(val, 41, 7)
421221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM7_BUCKET_NUM(bits)\
422221167Sgnn							    bVAL8(bits, 48)
423221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM7_BUCKET_NUM(val)\
424221167Sgnn							    vBIT(val, 48, 8)
425221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM7_ENTRY_EN(bits)\
426221167Sgnn							    bVAL1(bits, 56)
427221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM7_ENTRY_EN  mBIT(56)
428221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RTH_ITEM7_BUCKET_DATA(bits)\
429221167Sgnn							    bVAL7(bits, 57)
430221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_RTH_ITEM7_BUCKET_DATA(val)\
431221167Sgnn							    vBIT(val, 57, 7)
432221167Sgnn
433221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_FW_VERSION		0
434221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PART_NUMBER		0
435221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_SERIAL_NUMBER		1
436221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_FLASH_VERSION		2
437221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PCI_MODE		3
438221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_DESC_0		4
439221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_DESC_1		5
440221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_DESC_2		6
441221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_DESC_3		7
442221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORTS			8
443221167Sgnn
444221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT0_PMD_TYPE	10
445221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT0_PMD_VENDOR	11
446221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT0_PMD_PARTNO	13
447221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT0_PMD_SERNO	14
448221167Sgnn
449221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT1_PMD_TYPE	20
450221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT1_PMD_VENDOR	21
451221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT1_PMD_PARTNO	23
452221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_PORT1_PMD_SERNO	24
453221167Sgnn
454221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_LAG_MODE		1
455221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_ACTIVE_PORT		2
456221167Sgnn
457221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_MEMO_ITEM_STATUS(bits)	\
458221167Sgnn							    bVAL8(bits, 56)
459221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_STATUS(val)		\
460221167Sgnn							    vBIT(val, 56, 8)
461221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_STATUS_SUCCESS	1
462221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MEMO_ITEM_STATUS_FAIL		0
463221167Sgnn
464221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_MEMO_ITEM_GET_LAG_MODE(bits)	\
465221167Sgnn							    bVAL3(bits, 61)
466221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_MEMO_ITEM_LAG_MODE(val)		\
467221167Sgnn							    vBIT(val, 61, 3)
468221167Sgnn
469221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_MEMO_ITEM_PREFFERRED_PORT   mBIT(62)
470221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_MEMO_ITEM_ACTIVE_PORT	    mBIT(63)
471221167Sgnn
472221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_LED_CONTROL_ON			1
473221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_LED_CONTROL_OFF			0
474221167Sgnn
475221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_PCI_ADDR(bits)  bVAL16(bits, 16)
476221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_PCI_ADDR(val)	    vBIT(val, 16, 16)
477221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_PCI_CONFIG_READ			0
478221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_PCI_CONFIG_WRITE	    mBIT(39)
479221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_BYTE_COUNT(bits) bVAL8(bits, 40)
480221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_BYTE_COUNT(val)	    vBIT(val, 40, 8)
481221167Sgnn
482221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_VH(bits)	    bVAL8(bits, 48)
483221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_VH(val)		    vBIT(val, 48, 8)
484221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FUNCTION(bits)  bVAL8(bits, 56)
485221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNCTION(val)	    vBIT(val, 56, 8)
486221167Sgnn
487221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_PCI_DATA(bits)  bVAL32(bits, 32)
488221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_PCI_DATA(val)	    vBIT(val, 32, 32)
489221167Sgnn
490221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_PCI_DATA(bits)  bVAL32(bits, 32)
491221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_PCI_DATA(val)	    vBIT(val, 32, 32)
492221167Sgnn
493221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_IS_VPATH_ASSIGNED(vpid) mBIT((63-vpid))
494221167Sgnn
495221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_IGNORE_IN_SVC_CHECK mBIT(0)
496221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_MSG_TYPE(bits)  bVAL7(bits, 1)
497221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE(val)	    vBIT(val, 1, 7)
498221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_UNKNOWN		0
499221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_DEVICE_RESET_BEGIN	1
500221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_DEVICE_RESET_END	2
501221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_VPATH_RESET_BEGIN	3
502221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_VPATH_RESET_END	4
503221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_PRIV_DRIVER_UP		5
504221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_PRIV_DRIVER_DOWN	6
505221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_TYPE_ACK			127
506221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_MSG_DEST(bits)  bVAL8(bits, 8)
507221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_DEST(val)	    vBIT(val, 8, 8)
508221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_MSG_DEST_MRPCIM	    0xfe
509221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_MSG_DEST_BROADCAST	    0xff
510221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_MSG_SRC(bits)   bVAL8(bits, 16)
511221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_SRC(val)	    vBIT(val, 16, 8)
512221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_SEQ_NUM(bits)   bVAL32(bits, 16)
513221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_SEQ_NUM(val)	    vBIT(val, 32, 16)
514221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_MSG_DATA(bits)  bVAL16(bits, 48)
515221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_DATA(val)	    vBIT(val, 48, 16)
516221167Sgnn
517221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_ERROR_PENDING	0
518221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_MSG_ERROR_NOT_IN_SVC	1
519221167Sgnn
520221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_UDP_RTH_ENABLE		mBIT(63)
521221167Sgnn
522221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_VHN(val)		vBIT(val, 48, 8)
523221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_VFID(val)		vBIT(val, 56, 8)
524221167Sgnn
525221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RX_PRIORITY(bits)	bVAL3(bits, 45)
526221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RX_MIN_BW(bits)	bVAL8(bits, 48)
527221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_RX_MAX_BW(bits)	bVAL8(bits, 56)
528221167Sgnn
529221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_SET_RX_PRIORITY(val)	vBIT(val, 45, 3)
530221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_SET_RX_MIN_BW(val)	vBIT(val, 48, 8)
531221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_SET_RX_MAX_BW(val)	vBIT(val, 56, 8)
532221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_SET_VPATH_OR_FUNC(val)	vBIT(val, 0, 8)
533221167Sgnn
534221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_TX_PRIORITY(bits)	bVAL3(bits, 21)
535221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_TX_MIN_BW(bits)	bVAL8(bits, 24)
536221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_GET_TX_MAX_BW(bits)	bVAL8(bits, 32)
537221167Sgnn
538221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_SET_TX_PRIORITY(val)	vBIT(val, 21, 3)
539221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_SET_TX_MIN_BW(val)	vBIT(val, 24, 8)
540221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA1_SET_TX_MAX_BW(val)	vBIT(val, 32, 8)
541221167Sgnn
542221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_NUM_FUNC(bits)	bVAL8(bits, 32)
543221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FUNC_MODE(bits)	bVAL8(bits, 56)
544221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE(val)		vBIT(val, 56, 8)
545221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_SF1_VP17	0
546221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MF8_VP2	1
547221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_SR17_VP1	2
548221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MR17_VP1	3
549221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MR8_VP2	4
550221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MF17_VP1	5
551221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_SR8_VP2	6
552221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_SR4_VP4	7
553221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MF2_VP8	8
554221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MF4_VP4	9
555221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MR4_VP4	10
556221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FUNC_MODE_MF8P_VP2	11
557221167Sgnn
558221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FW_VER_DAY(bits)\
559221167Sgnn							    bVAL8(bits, 0)
560221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_VER_DAY(val)	vBIT(val, 0, 8)
561221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FW_VER_MONTH(bits)\
562221167Sgnn							    bVAL8(bits, 8)
563221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_VER_MONTH(val)   vBIT(val, 8, 8)
564221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FW_VER_YEAR(bits) bVAL16(bits, 16)
565221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_VER_YEAR(val)    vBIT(val, 16, 16)
566221167Sgnn
567221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FW_VER_MAJOR(bits)\
568221167Sgnn							    bVAL8(bits, 32)
569221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_VER_MAJOR	vBIT(val, 32, 8)
570221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FW_VER_MINOR(bits)\
571221167Sgnn							    bVAL8(bits, 40)
572221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_VER_MINOR	vBIT(val, 40, 8)
573221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FW_VER_BUILD(bits)\
574221167Sgnn							    bVAL16(bits, 48)
575221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FW_VER_BUILD	vBIT(val, 48, 16)
576221167Sgnn
577221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FLASH_VER_DAY(bits)\
578221167Sgnn							    bVAL8(bits, 0)
579221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FLASH_VER_DAY(val)  vBIT(val, 0, 8)
580221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FLASH_VER_MONTH(bits)\
581221167Sgnn							    bVAL8(bits, 8)
582221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FLASH_VER_MONTH(val) vBIT(val, 8, 8)
583221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FLASH_VER_YEAR(bits)\
584221167Sgnn							    bVAL16(bits, 16)
585221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FLASH_VER_YEAR(val) vBIT(val, 16, 16)
586221167Sgnn
587221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FLASH_VER_MAJOR(bits)\
588221167Sgnn							    bVAL8(bits, 32)
589221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FLASH_VER_MAJOR	    vBIT(val, 32, 8)
590221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FLASH_VER_MINOR(bits)\
591221167Sgnn							    bVAL8(bits, 40)
592221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FLASH_VER_MINOR	    vBIT(val, 40, 8)
593221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_FLASH_VER_BUILD(bits)\
594221167Sgnn							    bVAL16(bits, 48)
595221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_FLASH_VER_BUILD	    vBIT(val, 48, 16)
596221167Sgnn
597221167Sgnn/* Netork port control API related */
598221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_SET_NWIF_CMD(val)	vBIT(val, 0, 8)
599221167Sgnn
600221167Sgnn/* Bandwidth & priority related MACROS */
601221167Sgnn#define	VXGE_HAL_RTS_ACCESS_STEER_DATA0_GET_API_VER(bits) \
602221167Sgnn							vxge_bVALn(bits, 0, 8)
603221167Sgnn
604221167Sgnn#define	VXGE_HAL_ASIC_NTWK_VP_CTRL_GET_XMACJ_SHOW_PORT_INFO(bits)\
605221167Sgnn							    bVAL1(bits, 55)
606221167Sgnn#define	VXGE_HAL_ASIC_NTWK_VP_CTRL_GET_XMACJ_PORT_NUM(bits) bVAL1(bits, 63)
607221167Sgnn
608221167Sgnn#define	VXGE_HAL_SRPCIM_TO_VPATH_ALARM_REG_GET_ALARM(bits)  bVAL17(bits, 0)
609221167Sgnn
610221167Sgnn#define	VXGE_HAL_RX_MULTI_CAST_STATS_GET_FRAME_DISCARD(bits) bVAL16(bits, 48)
611221167Sgnn#define	VXGE_HAL_RX_FRM_TRANSFERRED_GET_RX_FRM_TRANSFERRED(bits)\
612221167Sgnn							    bVAL32(bits, 32)
613221167Sgnn#define	VXGE_HAL_RXD_RETURNED_GET_RXD_RETURNED(bits)	    bVAL16(bits, 48)
614221167Sgnn#define	VXGE_HAL_PRC_RXD_DOORBELL_GET_NEW_QW_CNT(bits)	    bVAL16(bits, 48)
615221167Sgnn#define	VXGE_HAL_PRC_CFG6_GET_RXD_SPAT(bits)		    bVAL9(bits, 36)
616221167Sgnn#define	VXGE_HAL_VPATH_DEBUG_STATS0_GET_INI_NUM_MWR_SENT(bits) bVAL32(bits, 0)
617221167Sgnn#define	VXGE_HAL_VPATH_DEBUG_STATS1_GET_INI_NUM_MRD_SENT(bits) bVAL32(bits, 0)
618221167Sgnn#define	VXGE_HAL_VPATH_DEBUG_STATS2_GET_INI_NUM_CPL_RCVD(bits) bVAL32(bits, 0)
619221167Sgnn#define	VXGE_HAL_VPATH_DEBUG_STATS3_GET_INI_NUM_MWR_BYTE_SENT(bits) (bits)
620221167Sgnn#define	VXGE_HAL_VPATH_DEBUG_STATS4_GET_INI_NUM_CPL_BYTE_RCVD(bits) (bits)
621221167Sgnn#define	VXGE_HAL_VPATH_DEBUG_STATS5_GET_WRCRDTARB_XOFF(bits) bVAL32(bits, 32)
622221167Sgnn#define	VXGE_HAL_VPATH_DEBUG_STATS6_GET_RDCRDTARB_XOFF(bits) bVAL32(bits, 32)
623221167Sgnn#define	VXGE_HAL_VPATH_GENSTATS_COUNT01_GET_PPIF_VPATH_GENSTATS_COUNT1(bits)\
624221167Sgnn							    bVAL32(bits, 0)
625221167Sgnn#define	VXGE_HAL_VPATH_GENSTATS_COUNT01_GET_PPIF_VPATH_GENSTATS_COUNT0(bits)\
626221167Sgnn							    bVAL32(bits, 32)
627221167Sgnn#define	VXGE_HAL_VPATH_GENSTATS_COUNT23_GET_PPIF_VPATH_GENSTATS_COUNT3(bits)\
628221167Sgnn							    bVAL32(bits, 0)
629221167Sgnn#define	VXGE_HAL_VPATH_GENSTATS_COUNT23_GET_PPIF_VPATH_GENSTATS_COUNT2(bits)\
630221167Sgnn							    bVAL32(bits, 32)
631221167Sgnn#define	VXGE_HAL_VPATH_GENSTATS_COUNT4_GET_PPIF_VPATH_GENSTATS_COUNT4(bits)\
632221167Sgnn							    bVAL32(bits, 0)
633221167Sgnn#define	VXGE_HAL_VPATH_GENSTATS_COUNT5_GET_PPIF_VPATH_GENSTATS_COUNT5(bits)\
634221167Sgnn							    bVAL32(bits, 32)
635221167Sgnn#define	\
636221167Sgnn    VXGE_HAL_TX_VP_RESET_DISCARDED_FRMS_GET_TX_VP_RESET_DISCARDED_FRMS(bits)\
637221167Sgnn							    bVAL16(bits, 48)
638221167Sgnn#define	VXGE_HAL_DBG_STATS_GET_RX_MPA_CRC_FAIL_FRMS(bits)   bVAL16(bits, 0)
639221167Sgnn#define	VXGE_HAL_DBG_STATS_GET_RX_MPA_MRK_FAIL_FRMS(bits)   bVAL16(bits, 16)
640221167Sgnn#define	VXGE_HAL_DBG_STATS_GET_RX_MPA_LEN_FAIL_FRMS(bits)   bVAL16(bits, 32)
641221167Sgnn#define	VXGE_HAL_DBG_STATS_GET_RX_FAU_RX_WOL_FRMS(bits)	    bVAL16(bits, 0)
642221167Sgnn#define	VXGE_HAL_DBG_STATS_GET_RX_FAU_RX_VP_RESET_DISCARDED_FRMS(bits)\
643221167Sgnn							    bVAL16(bits, 16)
644221167Sgnn#define	VXGE_HAL_DBG_STATS_GET_RX_FAU_RX_PERMITTED_FRMS(bits) bVAL16(bits, 32)
645221167Sgnn
646221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_ADDR			0x0
647221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_WRITE			0x1
648221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_READ_INCR			0x2
649221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_READ			0x3
650221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_RESERVED			0x4
651221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_ADDR_WRITE		0x5
652221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_ADDR_READ_INCR		0x6
653221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_OP_TYPE_ADDR_READ			0x7
654221167Sgnn
655221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_PMA_CONTROL_1		0x0000
656221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_PMA_CONTROL_1_LOOPBACK	0x01
657221167Sgnn
658221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL		0x8000
659221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_1_BYTE	0x02
660221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_256_BYTES	0x03
661221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_COMPLETE	0x04
662221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_PROGRESS	0x08
663221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_FAILED	0x0C
664221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_STAT_MASK	0x0C
665221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_READ	0x00
666221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_WRITE	0x20
667221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_CONTROL_ADDR(val)	(val<<8)
668221167Sgnn
669221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_DATA_XFP_TEMP_1	0x8067
670221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_DATA_XFP_TEMP_2	0x8068
671221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_EEPROM_NVR_DATA_DATA(val)\
672221167Sgnn							    (val&0xff)
673221167Sgnn
674221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_ALARM_FLAG		0xA070
675221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_ALARM_FLAG_PWR_LOW	0x01
676221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_ALARM_FLAG_PWR_HIGH	0x02
677221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_ALARM_FLAG_CUR_LOW	0x04
678221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_ALARM_FLAG_CUR_HIGH	0x08
679221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_ALARM_FLAG_TEMP_LOW	0x40
680221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_ALARM_FLAG_TEMP_HIGH	0x80
681221167Sgnn
682221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_WARN_FLAG		0xA074
683221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_WARN_FLAG_PWR_LOW	0x01
684221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_WARN_FLAG_PWR_HIGH	0x02
685221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_WARN_FLAG_CUR_LOW	0x04
686221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_WARN_FLAG_CUR_HIGH	0x08
687221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_WARN_FLAG_TEMP_LOW	0x40
688221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_TX_WARN_FLAG_TEMP_HIGH	0x80
689221167Sgnn
690221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT			0xA100
691221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_SINGLE_UPDATE	0x0000
692221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_SLOW_PER_UPDATE	0x0001
693221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_INT_PER_UPDATE	0x0002
694221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_FAST_PER_UPDATE	0x0003
695221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_READ_IDLE	0x0000
696221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_READ_COMPLETE	0x0004
697221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_READ_PROGRESS	0x0008
698221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_READ_FAILED	0x000C
699221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_UPLOAD_EN	0x0010
700221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_256_BYTES	0x0000
701221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_1_BYTES		0x0100
702221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_WRITE_IDLE	0x0000
703221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_WRITE_COMPLETE	0x1000
704221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_WRITE_PROGRESS	0x2000
705221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_DOM_CMD_STAT_WRITE_FAILED	0x3000
706221167Sgnn
707221167Sgnn
708221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_TX_LED			0xD006
709221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_RX_LED			0xD007
710221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_ADDR_LINK_LED			0xD008
711221167Sgnn
712221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_DEVAD_PMA_PMD			1
713221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_DEVAD_PCS				3
714221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_DEVAD_PHY_XS			4
715221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_DEVAD_DTE_XS			5
716221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_PORT_DEVAD_AN				7
717221167Sgnn
718221167Sgnn#define	VXGE_HAL_MDIO_GEN_CFG_PORT_GET_MDIO_PHY_PRTAD(bits) bVAL5(bits, 19)
719221167Sgnn#define	VXGE_HAL_MDIO_GEN_CFG_PORT_MDIO_PHY_PRTAD(val)	    vBIT(val, 19, 5)
720221167Sgnn
721221167Sgnn#define	VXGE_HAL_XGXS_STATIC_CFG_PORT_GET_MDIO_DTE_PRTAD(bits) bVAL5(bits, 7)
722221167Sgnn#define	VXGE_HAL_XGXS_STATIC_CFG_PORT_MDIO_DTE_PRTAD(val)   vBIT(val, 7, 5)
723221167Sgnn
724221167Sgnn#define	VXGE_HAL_MDIO_MGR_ACCESS_GET_PORT_DATA(bits)	    bVAL16(bits, 32)
725221167Sgnn
726221167Sgnn#define	VXGE_HAL_MRPCIM_DEBUG_STATS0_GET_INI_WR_DROP(bits)  bVAL32(bits, 0)
727221167Sgnn#define	VXGE_HAL_MRPCIM_DEBUG_STATS0_GET_INI_RD_DROP(bits)  bVAL32(bits, 32)
728221167Sgnn#define	\
729221167Sgnn    VXGE_HAL_MRPCIM_DEBUG_STATS1_GET_VPLANE_WRCRDTARB_PH_CRDT_DEPLETED(bits)\
730221167Sgnn							    bVAL32(bits, 32)
731221167Sgnn#define	\
732221167Sgnn    VXGE_HAL_MRPCIM_DEBUG_STATS2_GET_VPLANE_WRCRDTARB_PD_CRDT_DEPLETED(bits)\
733221167Sgnn							    bVAL32(bits, 32)
734221167Sgnn#define	\
735221167Sgnn    VXGE_HAL_MRPCIM_DEBUG_STATS3_GET_VPLANE_RDCRDTARB_NPH_CRDT_DEPLETED(bits)\
736221167Sgnn							    bVAL32(bits, 32)
737221167Sgnn#define	VXGE_HAL_MRPCIM_DEBUG_STATS4_GET_INI_WR_VPIN_DROP(bits) bVAL32(bits, 0)
738221167Sgnn#define	VXGE_HAL_MRPCIM_DEBUG_STATS4_GET_INI_RD_VPIN_DROP(bits) bVAL32(bits, 32)
739221167Sgnn#define	VXGE_HAL_GENSTATS_COUNT01_GET_GENSTATS_COUNT1(bits) bVAL32(bits, 0)
740221167Sgnn#define	VXGE_HAL_GENSTATS_COUNT01_GET_GENSTATS_COUNT0(bits) bVAL32(bits, 32)
741221167Sgnn#define	VXGE_HAL_GENSTATS_COUNT23_GET_GENSTATS_COUNT3(bits) bVAL32(bits, 0)
742221167Sgnn#define	VXGE_HAL_GENSTATS_COUNT23_GET_GENSTATS_COUNT2(bits) bVAL32(bits, 32)
743221167Sgnn#define	VXGE_HAL_GENSTATS_COUNT4_GET_GENSTATS_COUNT4(bits)  bVAL32(bits, 32)
744221167Sgnn#define	VXGE_HAL_GENSTATS_COUNT5_GET_GENSTATS_COUNT5(bits)  bVAL32(bits, 32)
745221167Sgnn
746221167Sgnn#define	VXGE_HAL_DEBUG_STATS0_GET_RSTDROP_MSG(bits)	    bVAL32(bits, 0)
747221167Sgnn#define	VXGE_HAL_DEBUG_STATS0_GET_RSTDROP_CPL(bits)	    bVAL32(bits, 32)
748221167Sgnn#define	VXGE_HAL_DEBUG_STATS1_GET_RSTDROP_CLIENT0(bits)	    bVAL32(bits, 0)
749221167Sgnn#define	VXGE_HAL_DEBUG_STATS1_GET_RSTDROP_CLIENT1(bits)	    bVAL32(bits, 32)
750221167Sgnn#define	VXGE_HAL_DEBUG_STATS2_GET_RSTDROP_CLIENT2(bits)	    bVAL32(bits, 0)
751221167Sgnn#define	VXGE_HAL_DEBUG_STATS3_GET_VPLANE_DEPL_PH(bits)	    bVAL16(bits, 0)
752221167Sgnn#define	VXGE_HAL_DEBUG_STATS3_GET_VPLANE_DEPL_NPH(bits)	    bVAL16(bits, 16)
753221167Sgnn#define	VXGE_HAL_DEBUG_STATS3_GET_VPLANE_DEPL_CPLH(bits)    bVAL16(bits, 32)
754221167Sgnn#define	VXGE_HAL_DEBUG_STATS4_GET_VPLANE_DEPL_PD(bits)	    bVAL16(bits, 0)
755221167Sgnn#define	VXGE_HAL_DEBUG_STATS4_GET_VPLANE_DEPL_NPD(bits)	    bVAL16(bits, 16)
756221167Sgnn#define	VXGE_HAL_DEBUG_STATS4_GET_VPLANE_DEPL_CPLD(bits)    bVAL16(bits, 32)
757221167Sgnn
758221167Sgnn#define	VXGE_HAL_ORP_LRO_EVENTS_GET_ORP_LRO_EVENTS(bits)    (bits)
759221167Sgnn#define	VXGE_HAL_ORP_BS_EVENTS_GET_ORP_BS_EVENTS(bits)	    (bits)
760221167Sgnn#define	VXGE_HAL_ORP_IWARP_EVENTS_GET_ORP_IWARP_EVENTS(bits) (bits)
761221167Sgnn#define	VXGE_HAL_DBG_STATS_TPA_TX_PATH_GET_TX_PERMITTED_FRMS(bits)\
762221167Sgnn							    bVAL32(bits, 32)
763221167Sgnn
764221167Sgnn#define	VXGE_HAL_DBG_STAT_TX_ANY_FRMS_GET_PORT0_TX_ANY_FRMS(bits)\
765221167Sgnn							    bVAL8(bits, 0)
766221167Sgnn#define	VXGE_HAL_DBG_STAT_TX_ANY_FRMS_GET_PORT1_TX_ANY_FRMS(bits)\
767221167Sgnn							    bVAL8(bits, 8)
768221167Sgnn#define	VXGE_HAL_DBG_STAT_TX_ANY_FRMS_GET_PORT2_TX_ANY_FRMS(bits)\
769221167Sgnn							    bVAL8(bits, 16)
770221167Sgnn
771221167Sgnn#define	VXGE_HAL_DBG_STAT_RX_ANY_FRMS_GET_PORT0_RX_ANY_FRMS(bits)\
772221167Sgnn							    bVAL8(bits, 0)
773221167Sgnn#define	VXGE_HAL_DBG_STAT_RX_ANY_FRMS_GET_PORT1_RX_ANY_FRMS(bits)\
774221167Sgnn							    bVAL8(bits, 8)
775221167Sgnn#define	VXGE_HAL_DBG_STAT_RX_ANY_FRMS_GET_PORT2_RX_ANY_FRMS(bits)\
776221167Sgnn							    bVAL8(bits, 16)
777221167Sgnn
778221167Sgnn__EXTERN_END_DECLS
779221167Sgnn
780221167Sgnn#endif	/* VXGE_HAL_REGDEFS_H */
781