Merge branch 'mlxsw-devlink=health-reporter-extensions'
[linux-block.git] / drivers / net / ethernet / microchip / lan966x / lan966x_regs.h
CommitLineData
db8bcaad
HV
1/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
2
3/* This file is autogenerated by cml-utils 2021-10-10 13:25:08 +0200.
4 * Commit ID: 26db2002924973d36a30b369c94f025a678fe9ea (dirty)
5 */
6
7#ifndef _LAN966X_REGS_H_
8#define _LAN966X_REGS_H_
9
10#include <linux/bitfield.h>
11#include <linux/types.h>
12#include <linux/bug.h>
13
14enum lan966x_target {
15 TARGET_AFI = 2,
16 TARGET_ANA = 3,
17 TARGET_CHIP_TOP = 5,
18 TARGET_CPU = 6,
19 TARGET_DEV = 13,
20 TARGET_GCB = 27,
21 TARGET_ORG = 36,
22 TARGET_QS = 42,
23 TARGET_QSYS = 46,
24 TARGET_REW = 47,
25 TARGET_SYS = 52,
26 NUM_TARGETS = 66
27};
28
29#define __REG(...) __VA_ARGS__
30
31/* AFI:PORT_TBL:PORT_FRM_OUT */
32#define AFI_PORT_FRM_OUT(g) __REG(TARGET_AFI, 0, 1, 98816, g, 10, 8, 0, 0, 1, 4)
33
34#define AFI_PORT_FRM_OUT_FRM_OUT_CNT GENMASK(26, 16)
35#define AFI_PORT_FRM_OUT_FRM_OUT_CNT_SET(x)\
36 FIELD_PREP(AFI_PORT_FRM_OUT_FRM_OUT_CNT, x)
37#define AFI_PORT_FRM_OUT_FRM_OUT_CNT_GET(x)\
38 FIELD_GET(AFI_PORT_FRM_OUT_FRM_OUT_CNT, x)
39
40/* AFI:PORT_TBL:PORT_CFG */
41#define AFI_PORT_CFG(g) __REG(TARGET_AFI, 0, 1, 98816, g, 10, 8, 4, 0, 1, 4)
42
43#define AFI_PORT_CFG_FC_SKIP_TTI_INJ BIT(16)
44#define AFI_PORT_CFG_FC_SKIP_TTI_INJ_SET(x)\
45 FIELD_PREP(AFI_PORT_CFG_FC_SKIP_TTI_INJ, x)
46#define AFI_PORT_CFG_FC_SKIP_TTI_INJ_GET(x)\
47 FIELD_GET(AFI_PORT_CFG_FC_SKIP_TTI_INJ, x)
48
49#define AFI_PORT_CFG_FRM_OUT_MAX GENMASK(9, 0)
50#define AFI_PORT_CFG_FRM_OUT_MAX_SET(x)\
51 FIELD_PREP(AFI_PORT_CFG_FRM_OUT_MAX, x)
52#define AFI_PORT_CFG_FRM_OUT_MAX_GET(x)\
53 FIELD_GET(AFI_PORT_CFG_FRM_OUT_MAX, x)
54
55/* ANA:ANA:ADVLEARN */
56#define ANA_ADVLEARN __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 0, 0, 1, 4)
57
58#define ANA_ADVLEARN_VLAN_CHK BIT(0)
59#define ANA_ADVLEARN_VLAN_CHK_SET(x)\
60 FIELD_PREP(ANA_ADVLEARN_VLAN_CHK, x)
61#define ANA_ADVLEARN_VLAN_CHK_GET(x)\
62 FIELD_GET(ANA_ADVLEARN_VLAN_CHK, x)
63
64/* ANA:ANA:ANAINTR */
65#define ANA_ANAINTR __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 16, 0, 1, 4)
66
67#define ANA_ANAINTR_INTR BIT(1)
68#define ANA_ANAINTR_INTR_SET(x)\
69 FIELD_PREP(ANA_ANAINTR_INTR, x)
70#define ANA_ANAINTR_INTR_GET(x)\
71 FIELD_GET(ANA_ANAINTR_INTR, x)
72
73#define ANA_ANAINTR_INTR_ENA BIT(0)
74#define ANA_ANAINTR_INTR_ENA_SET(x)\
75 FIELD_PREP(ANA_ANAINTR_INTR_ENA, x)
76#define ANA_ANAINTR_INTR_ENA_GET(x)\
77 FIELD_GET(ANA_ANAINTR_INTR_ENA, x)
78
79/* ANA:ANA:AUTOAGE */
80#define ANA_AUTOAGE __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 44, 0, 1, 4)
81
82#define ANA_AUTOAGE_AGE_PERIOD GENMASK(20, 1)
83#define ANA_AUTOAGE_AGE_PERIOD_SET(x)\
84 FIELD_PREP(ANA_AUTOAGE_AGE_PERIOD, x)
85#define ANA_AUTOAGE_AGE_PERIOD_GET(x)\
86 FIELD_GET(ANA_AUTOAGE_AGE_PERIOD, x)
87
88/* ANA:ANA:FLOODING */
89#define ANA_FLOODING(r) __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 68, r, 8, 4)
90
91#define ANA_FLOODING_FLD_BROADCAST GENMASK(11, 6)
92#define ANA_FLOODING_FLD_BROADCAST_SET(x)\
93 FIELD_PREP(ANA_FLOODING_FLD_BROADCAST, x)
94#define ANA_FLOODING_FLD_BROADCAST_GET(x)\
95 FIELD_GET(ANA_FLOODING_FLD_BROADCAST, x)
96
97#define ANA_FLOODING_FLD_MULTICAST GENMASK(5, 0)
98#define ANA_FLOODING_FLD_MULTICAST_SET(x)\
99 FIELD_PREP(ANA_FLOODING_FLD_MULTICAST, x)
100#define ANA_FLOODING_FLD_MULTICAST_GET(x)\
101 FIELD_GET(ANA_FLOODING_FLD_MULTICAST, x)
102
103/* ANA:ANA:FLOODING_IPMC */
104#define ANA_FLOODING_IPMC __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 100, 0, 1, 4)
105
106#define ANA_FLOODING_IPMC_FLD_MC4_CTRL GENMASK(23, 18)
107#define ANA_FLOODING_IPMC_FLD_MC4_CTRL_SET(x)\
108 FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC4_CTRL, x)
109#define ANA_FLOODING_IPMC_FLD_MC4_CTRL_GET(x)\
110 FIELD_GET(ANA_FLOODING_IPMC_FLD_MC4_CTRL, x)
111
112#define ANA_FLOODING_IPMC_FLD_MC4_DATA GENMASK(17, 12)
113#define ANA_FLOODING_IPMC_FLD_MC4_DATA_SET(x)\
114 FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC4_DATA, x)
115#define ANA_FLOODING_IPMC_FLD_MC4_DATA_GET(x)\
116 FIELD_GET(ANA_FLOODING_IPMC_FLD_MC4_DATA, x)
117
118#define ANA_FLOODING_IPMC_FLD_MC6_CTRL GENMASK(11, 6)
119#define ANA_FLOODING_IPMC_FLD_MC6_CTRL_SET(x)\
120 FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC6_CTRL, x)
121#define ANA_FLOODING_IPMC_FLD_MC6_CTRL_GET(x)\
122 FIELD_GET(ANA_FLOODING_IPMC_FLD_MC6_CTRL, x)
123
124#define ANA_FLOODING_IPMC_FLD_MC6_DATA GENMASK(5, 0)
125#define ANA_FLOODING_IPMC_FLD_MC6_DATA_SET(x)\
126 FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC6_DATA, x)
127#define ANA_FLOODING_IPMC_FLD_MC6_DATA_GET(x)\
128 FIELD_GET(ANA_FLOODING_IPMC_FLD_MC6_DATA, x)
129
130/* ANA:PGID:PGID */
131#define ANA_PGID(g) __REG(TARGET_ANA, 0, 1, 27648, g, 89, 8, 0, 0, 1, 4)
132
133#define ANA_PGID_PGID GENMASK(8, 0)
134#define ANA_PGID_PGID_SET(x)\
135 FIELD_PREP(ANA_PGID_PGID, x)
136#define ANA_PGID_PGID_GET(x)\
137 FIELD_GET(ANA_PGID_PGID, x)
138
139/* ANA:PGID:PGID_CFG */
140#define ANA_PGID_CFG(g) __REG(TARGET_ANA, 0, 1, 27648, g, 89, 8, 4, 0, 1, 4)
141
142#define ANA_PGID_CFG_OBEY_VLAN BIT(0)
143#define ANA_PGID_CFG_OBEY_VLAN_SET(x)\
144 FIELD_PREP(ANA_PGID_CFG_OBEY_VLAN, x)
145#define ANA_PGID_CFG_OBEY_VLAN_GET(x)\
146 FIELD_GET(ANA_PGID_CFG_OBEY_VLAN, x)
147
148/* ANA:ANA_TABLES:MACHDATA */
149#define ANA_MACHDATA __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 40, 0, 1, 4)
150
151/* ANA:ANA_TABLES:MACLDATA */
152#define ANA_MACLDATA __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 44, 0, 1, 4)
153
154/* ANA:ANA_TABLES:MACACCESS */
155#define ANA_MACACCESS __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 48, 0, 1, 4)
156
157#define ANA_MACACCESS_CHANGE2SW BIT(17)
158#define ANA_MACACCESS_CHANGE2SW_SET(x)\
159 FIELD_PREP(ANA_MACACCESS_CHANGE2SW, x)
160#define ANA_MACACCESS_CHANGE2SW_GET(x)\
161 FIELD_GET(ANA_MACACCESS_CHANGE2SW, x)
162
163#define ANA_MACACCESS_VALID BIT(12)
164#define ANA_MACACCESS_VALID_SET(x)\
165 FIELD_PREP(ANA_MACACCESS_VALID, x)
166#define ANA_MACACCESS_VALID_GET(x)\
167 FIELD_GET(ANA_MACACCESS_VALID, x)
168
169#define ANA_MACACCESS_ENTRYTYPE GENMASK(11, 10)
170#define ANA_MACACCESS_ENTRYTYPE_SET(x)\
171 FIELD_PREP(ANA_MACACCESS_ENTRYTYPE, x)
172#define ANA_MACACCESS_ENTRYTYPE_GET(x)\
173 FIELD_GET(ANA_MACACCESS_ENTRYTYPE, x)
174
175#define ANA_MACACCESS_DEST_IDX GENMASK(9, 4)
176#define ANA_MACACCESS_DEST_IDX_SET(x)\
177 FIELD_PREP(ANA_MACACCESS_DEST_IDX, x)
178#define ANA_MACACCESS_DEST_IDX_GET(x)\
179 FIELD_GET(ANA_MACACCESS_DEST_IDX, x)
180
181#define ANA_MACACCESS_MAC_TABLE_CMD GENMASK(3, 0)
182#define ANA_MACACCESS_MAC_TABLE_CMD_SET(x)\
183 FIELD_PREP(ANA_MACACCESS_MAC_TABLE_CMD, x)
184#define ANA_MACACCESS_MAC_TABLE_CMD_GET(x)\
185 FIELD_GET(ANA_MACACCESS_MAC_TABLE_CMD, x)
186
187/* ANA:PORT:CPU_FWD_CFG */
188#define ANA_CPU_FWD_CFG(g) __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 96, 0, 1, 4)
189
190#define ANA_CPU_FWD_CFG_SRC_COPY_ENA BIT(3)
191#define ANA_CPU_FWD_CFG_SRC_COPY_ENA_SET(x)\
192 FIELD_PREP(ANA_CPU_FWD_CFG_SRC_COPY_ENA, x)
193#define ANA_CPU_FWD_CFG_SRC_COPY_ENA_GET(x)\
194 FIELD_GET(ANA_CPU_FWD_CFG_SRC_COPY_ENA, x)
195
196/* ANA:PORT:CPU_FWD_BPDU_CFG */
197#define ANA_CPU_FWD_BPDU_CFG(g) __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 100, 0, 1, 4)
198
199/* ANA:PORT:PORT_CFG */
200#define ANA_PORT_CFG(g) __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 112, 0, 1, 4)
201
202#define ANA_PORT_CFG_LEARNAUTO BIT(6)
203#define ANA_PORT_CFG_LEARNAUTO_SET(x)\
204 FIELD_PREP(ANA_PORT_CFG_LEARNAUTO, x)
205#define ANA_PORT_CFG_LEARNAUTO_GET(x)\
206 FIELD_GET(ANA_PORT_CFG_LEARNAUTO, x)
207
208#define ANA_PORT_CFG_LEARN_ENA BIT(5)
209#define ANA_PORT_CFG_LEARN_ENA_SET(x)\
210 FIELD_PREP(ANA_PORT_CFG_LEARN_ENA, x)
211#define ANA_PORT_CFG_LEARN_ENA_GET(x)\
212 FIELD_GET(ANA_PORT_CFG_LEARN_ENA, x)
213
214#define ANA_PORT_CFG_RECV_ENA BIT(4)
215#define ANA_PORT_CFG_RECV_ENA_SET(x)\
216 FIELD_PREP(ANA_PORT_CFG_RECV_ENA, x)
217#define ANA_PORT_CFG_RECV_ENA_GET(x)\
218 FIELD_GET(ANA_PORT_CFG_RECV_ENA, x)
219
220#define ANA_PORT_CFG_PORTID_VAL GENMASK(3, 0)
221#define ANA_PORT_CFG_PORTID_VAL_SET(x)\
222 FIELD_PREP(ANA_PORT_CFG_PORTID_VAL, x)
223#define ANA_PORT_CFG_PORTID_VAL_GET(x)\
224 FIELD_GET(ANA_PORT_CFG_PORTID_VAL, x)
225
226/* ANA:PFC:PFC_CFG */
227#define ANA_PFC_CFG(g) __REG(TARGET_ANA, 0, 1, 30720, g, 8, 64, 0, 0, 1, 4)
228
229#define ANA_PFC_CFG_FC_LINK_SPEED GENMASK(1, 0)
230#define ANA_PFC_CFG_FC_LINK_SPEED_SET(x)\
231 FIELD_PREP(ANA_PFC_CFG_FC_LINK_SPEED, x)
232#define ANA_PFC_CFG_FC_LINK_SPEED_GET(x)\
233 FIELD_GET(ANA_PFC_CFG_FC_LINK_SPEED, x)
234
235/* CHIP_TOP:CUPHY_CFG:CUPHY_PORT_CFG */
236#define CHIP_TOP_CUPHY_PORT_CFG(r) __REG(TARGET_CHIP_TOP, 0, 1, 16, 0, 1, 20, 8, r, 2, 4)
237
238#define CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA BIT(0)
239#define CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA_SET(x)\
240 FIELD_PREP(CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA, x)
241#define CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA_GET(x)\
242 FIELD_GET(CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA, x)
243
244/* DEV:PORT_MODE:CLOCK_CFG */
245#define DEV_CLOCK_CFG(t) __REG(TARGET_DEV, t, 8, 0, 0, 1, 28, 0, 0, 1, 4)
246
247#define DEV_CLOCK_CFG_MAC_TX_RST BIT(7)
248#define DEV_CLOCK_CFG_MAC_TX_RST_SET(x)\
249 FIELD_PREP(DEV_CLOCK_CFG_MAC_TX_RST, x)
250#define DEV_CLOCK_CFG_MAC_TX_RST_GET(x)\
251 FIELD_GET(DEV_CLOCK_CFG_MAC_TX_RST, x)
252
253#define DEV_CLOCK_CFG_MAC_RX_RST BIT(6)
254#define DEV_CLOCK_CFG_MAC_RX_RST_SET(x)\
255 FIELD_PREP(DEV_CLOCK_CFG_MAC_RX_RST, x)
256#define DEV_CLOCK_CFG_MAC_RX_RST_GET(x)\
257 FIELD_GET(DEV_CLOCK_CFG_MAC_RX_RST, x)
258
259#define DEV_CLOCK_CFG_PCS_TX_RST BIT(5)
260#define DEV_CLOCK_CFG_PCS_TX_RST_SET(x)\
261 FIELD_PREP(DEV_CLOCK_CFG_PCS_TX_RST, x)
262#define DEV_CLOCK_CFG_PCS_TX_RST_GET(x)\
263 FIELD_GET(DEV_CLOCK_CFG_PCS_TX_RST, x)
264
265#define DEV_CLOCK_CFG_PCS_RX_RST BIT(4)
266#define DEV_CLOCK_CFG_PCS_RX_RST_SET(x)\
267 FIELD_PREP(DEV_CLOCK_CFG_PCS_RX_RST, x)
268#define DEV_CLOCK_CFG_PCS_RX_RST_GET(x)\
269 FIELD_GET(DEV_CLOCK_CFG_PCS_RX_RST, x)
270
271#define DEV_CLOCK_CFG_PORT_RST BIT(3)
272#define DEV_CLOCK_CFG_PORT_RST_SET(x)\
273 FIELD_PREP(DEV_CLOCK_CFG_PORT_RST, x)
274#define DEV_CLOCK_CFG_PORT_RST_GET(x)\
275 FIELD_GET(DEV_CLOCK_CFG_PORT_RST, x)
276
277#define DEV_CLOCK_CFG_LINK_SPEED GENMASK(1, 0)
278#define DEV_CLOCK_CFG_LINK_SPEED_SET(x)\
279 FIELD_PREP(DEV_CLOCK_CFG_LINK_SPEED, x)
280#define DEV_CLOCK_CFG_LINK_SPEED_GET(x)\
281 FIELD_GET(DEV_CLOCK_CFG_LINK_SPEED, x)
282
283/* DEV:MAC_CFG_STATUS:MAC_ENA_CFG */
284#define DEV_MAC_ENA_CFG(t) __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 0, 0, 1, 4)
285
286#define DEV_MAC_ENA_CFG_RX_ENA BIT(4)
287#define DEV_MAC_ENA_CFG_RX_ENA_SET(x)\
288 FIELD_PREP(DEV_MAC_ENA_CFG_RX_ENA, x)
289#define DEV_MAC_ENA_CFG_RX_ENA_GET(x)\
290 FIELD_GET(DEV_MAC_ENA_CFG_RX_ENA, x)
291
292#define DEV_MAC_ENA_CFG_TX_ENA BIT(0)
293#define DEV_MAC_ENA_CFG_TX_ENA_SET(x)\
294 FIELD_PREP(DEV_MAC_ENA_CFG_TX_ENA, x)
295#define DEV_MAC_ENA_CFG_TX_ENA_GET(x)\
296 FIELD_GET(DEV_MAC_ENA_CFG_TX_ENA, x)
297
298/* DEV:MAC_CFG_STATUS:MAC_MODE_CFG */
299#define DEV_MAC_MODE_CFG(t) __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 4, 0, 1, 4)
300
301#define DEV_MAC_MODE_CFG_GIGA_MODE_ENA BIT(4)
302#define DEV_MAC_MODE_CFG_GIGA_MODE_ENA_SET(x)\
303 FIELD_PREP(DEV_MAC_MODE_CFG_GIGA_MODE_ENA, x)
304#define DEV_MAC_MODE_CFG_GIGA_MODE_ENA_GET(x)\
305 FIELD_GET(DEV_MAC_MODE_CFG_GIGA_MODE_ENA, x)
306
307/* DEV:MAC_CFG_STATUS:MAC_MAXLEN_CFG */
308#define DEV_MAC_MAXLEN_CFG(t) __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 8, 0, 1, 4)
309
310#define DEV_MAC_MAXLEN_CFG_MAX_LEN GENMASK(15, 0)
311#define DEV_MAC_MAXLEN_CFG_MAX_LEN_SET(x)\
312 FIELD_PREP(DEV_MAC_MAXLEN_CFG_MAX_LEN, x)
313#define DEV_MAC_MAXLEN_CFG_MAX_LEN_GET(x)\
314 FIELD_GET(DEV_MAC_MAXLEN_CFG_MAX_LEN, x)
315
316/* DEV:MAC_CFG_STATUS:MAC_IFG_CFG */
317#define DEV_MAC_IFG_CFG(t) __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 20, 0, 1, 4)
318
319#define DEV_MAC_IFG_CFG_TX_IFG GENMASK(12, 8)
320#define DEV_MAC_IFG_CFG_TX_IFG_SET(x)\
321 FIELD_PREP(DEV_MAC_IFG_CFG_TX_IFG, x)
322#define DEV_MAC_IFG_CFG_TX_IFG_GET(x)\
323 FIELD_GET(DEV_MAC_IFG_CFG_TX_IFG, x)
324
325#define DEV_MAC_IFG_CFG_RX_IFG2 GENMASK(7, 4)
326#define DEV_MAC_IFG_CFG_RX_IFG2_SET(x)\
327 FIELD_PREP(DEV_MAC_IFG_CFG_RX_IFG2, x)
328#define DEV_MAC_IFG_CFG_RX_IFG2_GET(x)\
329 FIELD_GET(DEV_MAC_IFG_CFG_RX_IFG2, x)
330
331#define DEV_MAC_IFG_CFG_RX_IFG1 GENMASK(3, 0)
332#define DEV_MAC_IFG_CFG_RX_IFG1_SET(x)\
333 FIELD_PREP(DEV_MAC_IFG_CFG_RX_IFG1, x)
334#define DEV_MAC_IFG_CFG_RX_IFG1_GET(x)\
335 FIELD_GET(DEV_MAC_IFG_CFG_RX_IFG1, x)
336
337/* DEV:MAC_CFG_STATUS:MAC_HDX_CFG */
338#define DEV_MAC_HDX_CFG(t) __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 24, 0, 1, 4)
339
340#define DEV_MAC_HDX_CFG_SEED GENMASK(23, 16)
341#define DEV_MAC_HDX_CFG_SEED_SET(x)\
342 FIELD_PREP(DEV_MAC_HDX_CFG_SEED, x)
343#define DEV_MAC_HDX_CFG_SEED_GET(x)\
344 FIELD_GET(DEV_MAC_HDX_CFG_SEED, x)
345
346#define DEV_MAC_HDX_CFG_SEED_LOAD BIT(12)
347#define DEV_MAC_HDX_CFG_SEED_LOAD_SET(x)\
348 FIELD_PREP(DEV_MAC_HDX_CFG_SEED_LOAD, x)
349#define DEV_MAC_HDX_CFG_SEED_LOAD_GET(x)\
350 FIELD_GET(DEV_MAC_HDX_CFG_SEED_LOAD, x)
351
352/* DEV:MAC_CFG_STATUS:MAC_FC_MAC_LOW_CFG */
353#define DEV_FC_MAC_LOW_CFG(t) __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 32, 0, 1, 4)
354
355/* DEV:MAC_CFG_STATUS:MAC_FC_MAC_HIGH_CFG */
356#define DEV_FC_MAC_HIGH_CFG(t) __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 36, 0, 1, 4)
357
358/* DEV:PCS1G_CFG_STATUS:PCS1G_CFG */
359#define DEV_PCS1G_CFG(t) __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 0, 0, 1, 4)
360
361#define DEV_PCS1G_CFG_PCS_ENA BIT(0)
362#define DEV_PCS1G_CFG_PCS_ENA_SET(x)\
363 FIELD_PREP(DEV_PCS1G_CFG_PCS_ENA, x)
364#define DEV_PCS1G_CFG_PCS_ENA_GET(x)\
365 FIELD_GET(DEV_PCS1G_CFG_PCS_ENA, x)
366
367/* DEV:PCS1G_CFG_STATUS:PCS1G_MODE_CFG */
368#define DEV_PCS1G_MODE_CFG(t) __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 4, 0, 1, 4)
369
370#define DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA BIT(0)
371#define DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA_SET(x)\
372 FIELD_PREP(DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA, x)
373#define DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA_GET(x)\
374 FIELD_GET(DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA, x)
375
376/* DEV:PCS1G_CFG_STATUS:PCS1G_SD_CFG */
377#define DEV_PCS1G_SD_CFG(t) __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 8, 0, 1, 4)
378
379#define DEV_PCS1G_SD_CFG_SD_ENA BIT(0)
380#define DEV_PCS1G_SD_CFG_SD_ENA_SET(x)\
381 FIELD_PREP(DEV_PCS1G_SD_CFG_SD_ENA, x)
382#define DEV_PCS1G_SD_CFG_SD_ENA_GET(x)\
383 FIELD_GET(DEV_PCS1G_SD_CFG_SD_ENA, x)
384
385/* DEV:PCS1G_CFG_STATUS:PCS1G_ANEG_CFG */
386#define DEV_PCS1G_ANEG_CFG(t) __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 12, 0, 1, 4)
387
388#define DEV_PCS1G_ANEG_CFG_ADV_ABILITY GENMASK(31, 16)
389#define DEV_PCS1G_ANEG_CFG_ADV_ABILITY_SET(x)\
390 FIELD_PREP(DEV_PCS1G_ANEG_CFG_ADV_ABILITY, x)
391#define DEV_PCS1G_ANEG_CFG_ADV_ABILITY_GET(x)\
392 FIELD_GET(DEV_PCS1G_ANEG_CFG_ADV_ABILITY, x)
393
394#define DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA BIT(8)
395#define DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA_SET(x)\
396 FIELD_PREP(DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA, x)
397#define DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA_GET(x)\
398 FIELD_GET(DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA, x)
399
400#define DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT BIT(1)
401#define DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT_SET(x)\
402 FIELD_PREP(DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT, x)
403#define DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT_GET(x)\
404 FIELD_GET(DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT, x)
405
406#define DEV_PCS1G_ANEG_CFG_ENA BIT(0)
407#define DEV_PCS1G_ANEG_CFG_ENA_SET(x)\
408 FIELD_PREP(DEV_PCS1G_ANEG_CFG_ENA, x)
409#define DEV_PCS1G_ANEG_CFG_ENA_GET(x)\
410 FIELD_GET(DEV_PCS1G_ANEG_CFG_ENA, x)
411
412/* DEV:PCS1G_CFG_STATUS:PCS1G_ANEG_STATUS */
413#define DEV_PCS1G_ANEG_STATUS(t) __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 32, 0, 1, 4)
414
415#define DEV_PCS1G_ANEG_STATUS_LP_ADV GENMASK(31, 16)
416#define DEV_PCS1G_ANEG_STATUS_LP_ADV_SET(x)\
417 FIELD_PREP(DEV_PCS1G_ANEG_STATUS_LP_ADV, x)
418#define DEV_PCS1G_ANEG_STATUS_LP_ADV_GET(x)\
419 FIELD_GET(DEV_PCS1G_ANEG_STATUS_LP_ADV, x)
420
421#define DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE BIT(0)
422#define DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE_SET(x)\
423 FIELD_PREP(DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE, x)
424#define DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE_GET(x)\
425 FIELD_GET(DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE, x)
426
427/* DEV:PCS1G_CFG_STATUS:PCS1G_LINK_STATUS */
428#define DEV_PCS1G_LINK_STATUS(t) __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 40, 0, 1, 4)
429
430#define DEV_PCS1G_LINK_STATUS_LINK_STATUS BIT(4)
431#define DEV_PCS1G_LINK_STATUS_LINK_STATUS_SET(x)\
432 FIELD_PREP(DEV_PCS1G_LINK_STATUS_LINK_STATUS, x)
433#define DEV_PCS1G_LINK_STATUS_LINK_STATUS_GET(x)\
434 FIELD_GET(DEV_PCS1G_LINK_STATUS_LINK_STATUS, x)
435
436#define DEV_PCS1G_LINK_STATUS_SYNC_STATUS BIT(0)
437#define DEV_PCS1G_LINK_STATUS_SYNC_STATUS_SET(x)\
438 FIELD_PREP(DEV_PCS1G_LINK_STATUS_SYNC_STATUS, x)
439#define DEV_PCS1G_LINK_STATUS_SYNC_STATUS_GET(x)\
440 FIELD_GET(DEV_PCS1G_LINK_STATUS_SYNC_STATUS, x)
441
442/* DEV:PCS1G_CFG_STATUS:PCS1G_STICKY */
443#define DEV_PCS1G_STICKY(t) __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 48, 0, 1, 4)
444
445#define DEV_PCS1G_STICKY_LINK_DOWN_STICKY BIT(4)
446#define DEV_PCS1G_STICKY_LINK_DOWN_STICKY_SET(x)\
447 FIELD_PREP(DEV_PCS1G_STICKY_LINK_DOWN_STICKY, x)
448#define DEV_PCS1G_STICKY_LINK_DOWN_STICKY_GET(x)\
449 FIELD_GET(DEV_PCS1G_STICKY_LINK_DOWN_STICKY, x)
450
451/* DEVCPU_QS:XTR:XTR_GRP_CFG */
452#define QS_XTR_GRP_CFG(r) __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 0, r, 2, 4)
453
454#define QS_XTR_GRP_CFG_MODE GENMASK(3, 2)
455#define QS_XTR_GRP_CFG_MODE_SET(x)\
456 FIELD_PREP(QS_XTR_GRP_CFG_MODE, x)
457#define QS_XTR_GRP_CFG_MODE_GET(x)\
458 FIELD_GET(QS_XTR_GRP_CFG_MODE, x)
459
460#define QS_XTR_GRP_CFG_BYTE_SWAP BIT(0)
461#define QS_XTR_GRP_CFG_BYTE_SWAP_SET(x)\
462 FIELD_PREP(QS_XTR_GRP_CFG_BYTE_SWAP, x)
463#define QS_XTR_GRP_CFG_BYTE_SWAP_GET(x)\
464 FIELD_GET(QS_XTR_GRP_CFG_BYTE_SWAP, x)
465
466/* DEVCPU_QS:XTR:XTR_RD */
467#define QS_XTR_RD(r) __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 8, r, 2, 4)
468
469/* DEVCPU_QS:XTR:XTR_FLUSH */
470#define QS_XTR_FLUSH __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 24, 0, 1, 4)
471
472/* DEVCPU_QS:XTR:XTR_DATA_PRESENT */
473#define QS_XTR_DATA_PRESENT __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 28, 0, 1, 4)
474
475/* DEVCPU_QS:INJ:INJ_GRP_CFG */
476#define QS_INJ_GRP_CFG(r) __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 0, r, 2, 4)
477
478#define QS_INJ_GRP_CFG_MODE GENMASK(3, 2)
479#define QS_INJ_GRP_CFG_MODE_SET(x)\
480 FIELD_PREP(QS_INJ_GRP_CFG_MODE, x)
481#define QS_INJ_GRP_CFG_MODE_GET(x)\
482 FIELD_GET(QS_INJ_GRP_CFG_MODE, x)
483
484#define QS_INJ_GRP_CFG_BYTE_SWAP BIT(0)
485#define QS_INJ_GRP_CFG_BYTE_SWAP_SET(x)\
486 FIELD_PREP(QS_INJ_GRP_CFG_BYTE_SWAP, x)
487#define QS_INJ_GRP_CFG_BYTE_SWAP_GET(x)\
488 FIELD_GET(QS_INJ_GRP_CFG_BYTE_SWAP, x)
489
490/* DEVCPU_QS:INJ:INJ_WR */
491#define QS_INJ_WR(r) __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 8, r, 2, 4)
492
493/* DEVCPU_QS:INJ:INJ_CTRL */
494#define QS_INJ_CTRL(r) __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 16, r, 2, 4)
495
496#define QS_INJ_CTRL_GAP_SIZE GENMASK(24, 21)
497#define QS_INJ_CTRL_GAP_SIZE_SET(x)\
498 FIELD_PREP(QS_INJ_CTRL_GAP_SIZE, x)
499#define QS_INJ_CTRL_GAP_SIZE_GET(x)\
500 FIELD_GET(QS_INJ_CTRL_GAP_SIZE, x)
501
502#define QS_INJ_CTRL_EOF BIT(19)
503#define QS_INJ_CTRL_EOF_SET(x)\
504 FIELD_PREP(QS_INJ_CTRL_EOF, x)
505#define QS_INJ_CTRL_EOF_GET(x)\
506 FIELD_GET(QS_INJ_CTRL_EOF, x)
507
508#define QS_INJ_CTRL_SOF BIT(18)
509#define QS_INJ_CTRL_SOF_SET(x)\
510 FIELD_PREP(QS_INJ_CTRL_SOF, x)
511#define QS_INJ_CTRL_SOF_GET(x)\
512 FIELD_GET(QS_INJ_CTRL_SOF, x)
513
514#define QS_INJ_CTRL_VLD_BYTES GENMASK(17, 16)
515#define QS_INJ_CTRL_VLD_BYTES_SET(x)\
516 FIELD_PREP(QS_INJ_CTRL_VLD_BYTES, x)
517#define QS_INJ_CTRL_VLD_BYTES_GET(x)\
518 FIELD_GET(QS_INJ_CTRL_VLD_BYTES, x)
519
520/* DEVCPU_QS:INJ:INJ_STATUS */
521#define QS_INJ_STATUS __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 24, 0, 1, 4)
522
523#define QS_INJ_STATUS_WMARK_REACHED GENMASK(5, 4)
524#define QS_INJ_STATUS_WMARK_REACHED_SET(x)\
525 FIELD_PREP(QS_INJ_STATUS_WMARK_REACHED, x)
526#define QS_INJ_STATUS_WMARK_REACHED_GET(x)\
527 FIELD_GET(QS_INJ_STATUS_WMARK_REACHED, x)
528
529#define QS_INJ_STATUS_FIFO_RDY GENMASK(3, 2)
530#define QS_INJ_STATUS_FIFO_RDY_SET(x)\
531 FIELD_PREP(QS_INJ_STATUS_FIFO_RDY, x)
532#define QS_INJ_STATUS_FIFO_RDY_GET(x)\
533 FIELD_GET(QS_INJ_STATUS_FIFO_RDY, x)
534
535/* QSYS:SYSTEM:PORT_MODE */
536#define QSYS_PORT_MODE(r) __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 0, r, 10, 4)
537
538#define QSYS_PORT_MODE_DEQUEUE_DIS BIT(1)
539#define QSYS_PORT_MODE_DEQUEUE_DIS_SET(x)\
540 FIELD_PREP(QSYS_PORT_MODE_DEQUEUE_DIS, x)
541#define QSYS_PORT_MODE_DEQUEUE_DIS_GET(x)\
542 FIELD_GET(QSYS_PORT_MODE_DEQUEUE_DIS, x)
543
544/* QSYS:SYSTEM:SWITCH_PORT_MODE */
545#define QSYS_SW_PORT_MODE(r) __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 80, r, 9, 4)
546
547#define QSYS_SW_PORT_MODE_PORT_ENA BIT(18)
548#define QSYS_SW_PORT_MODE_PORT_ENA_SET(x)\
549 FIELD_PREP(QSYS_SW_PORT_MODE_PORT_ENA, x)
550#define QSYS_SW_PORT_MODE_PORT_ENA_GET(x)\
551 FIELD_GET(QSYS_SW_PORT_MODE_PORT_ENA, x)
552
553#define QSYS_SW_PORT_MODE_SCH_NEXT_CFG GENMASK(16, 14)
554#define QSYS_SW_PORT_MODE_SCH_NEXT_CFG_SET(x)\
555 FIELD_PREP(QSYS_SW_PORT_MODE_SCH_NEXT_CFG, x)
556#define QSYS_SW_PORT_MODE_SCH_NEXT_CFG_GET(x)\
557 FIELD_GET(QSYS_SW_PORT_MODE_SCH_NEXT_CFG, x)
558
559#define QSYS_SW_PORT_MODE_INGRESS_DROP_MODE BIT(12)
560#define QSYS_SW_PORT_MODE_INGRESS_DROP_MODE_SET(x)\
561 FIELD_PREP(QSYS_SW_PORT_MODE_INGRESS_DROP_MODE, x)
562#define QSYS_SW_PORT_MODE_INGRESS_DROP_MODE_GET(x)\
563 FIELD_GET(QSYS_SW_PORT_MODE_INGRESS_DROP_MODE, x)
564
565#define QSYS_SW_PORT_MODE_TX_PFC_ENA GENMASK(11, 4)
566#define QSYS_SW_PORT_MODE_TX_PFC_ENA_SET(x)\
567 FIELD_PREP(QSYS_SW_PORT_MODE_TX_PFC_ENA, x)
568#define QSYS_SW_PORT_MODE_TX_PFC_ENA_GET(x)\
569 FIELD_GET(QSYS_SW_PORT_MODE_TX_PFC_ENA, x)
570
571#define QSYS_SW_PORT_MODE_AGING_MODE GENMASK(1, 0)
572#define QSYS_SW_PORT_MODE_AGING_MODE_SET(x)\
573 FIELD_PREP(QSYS_SW_PORT_MODE_AGING_MODE, x)
574#define QSYS_SW_PORT_MODE_AGING_MODE_GET(x)\
575 FIELD_GET(QSYS_SW_PORT_MODE_AGING_MODE, x)
576
577/* QSYS:SYSTEM:SW_STATUS */
578#define QSYS_SW_STATUS(r) __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 164, r, 9, 4)
579
580#define QSYS_SW_STATUS_EQ_AVAIL GENMASK(7, 0)
581#define QSYS_SW_STATUS_EQ_AVAIL_SET(x)\
582 FIELD_PREP(QSYS_SW_STATUS_EQ_AVAIL, x)
583#define QSYS_SW_STATUS_EQ_AVAIL_GET(x)\
584 FIELD_GET(QSYS_SW_STATUS_EQ_AVAIL, x)
585
586/* QSYS:SYSTEM:CPU_GROUP_MAP */
587#define QSYS_CPU_GROUP_MAP __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 204, 0, 1, 4)
588
589/* QSYS:RES_CTRL:RES_CFG */
590#define QSYS_RES_CFG(g) __REG(TARGET_QSYS, 0, 1, 32768, g, 1024, 8, 0, 0, 1, 4)
591
592/* REW:PORT:PORT_CFG */
593#define REW_PORT_CFG(g) __REG(TARGET_REW, 0, 1, 0, g, 10, 128, 8, 0, 1, 4)
594
595#define REW_PORT_CFG_NO_REWRITE BIT(0)
596#define REW_PORT_CFG_NO_REWRITE_SET(x)\
597 FIELD_PREP(REW_PORT_CFG_NO_REWRITE, x)
598#define REW_PORT_CFG_NO_REWRITE_GET(x)\
599 FIELD_GET(REW_PORT_CFG_NO_REWRITE, x)
600
601/* SYS:SYSTEM:RESET_CFG */
602#define SYS_RESET_CFG __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 0, 0, 1, 4)
603
604#define SYS_RESET_CFG_CORE_ENA BIT(0)
605#define SYS_RESET_CFG_CORE_ENA_SET(x)\
606 FIELD_PREP(SYS_RESET_CFG_CORE_ENA, x)
607#define SYS_RESET_CFG_CORE_ENA_GET(x)\
608 FIELD_GET(SYS_RESET_CFG_CORE_ENA, x)
609
610/* SYS:SYSTEM:PORT_MODE */
611#define SYS_PORT_MODE(r) __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 44, r, 10, 4)
612
613#define SYS_PORT_MODE_INCL_INJ_HDR GENMASK(5, 4)
614#define SYS_PORT_MODE_INCL_INJ_HDR_SET(x)\
615 FIELD_PREP(SYS_PORT_MODE_INCL_INJ_HDR, x)
616#define SYS_PORT_MODE_INCL_INJ_HDR_GET(x)\
617 FIELD_GET(SYS_PORT_MODE_INCL_INJ_HDR, x)
618
619#define SYS_PORT_MODE_INCL_XTR_HDR GENMASK(3, 2)
620#define SYS_PORT_MODE_INCL_XTR_HDR_SET(x)\
621 FIELD_PREP(SYS_PORT_MODE_INCL_XTR_HDR, x)
622#define SYS_PORT_MODE_INCL_XTR_HDR_GET(x)\
623 FIELD_GET(SYS_PORT_MODE_INCL_XTR_HDR, x)
624
625/* SYS:SYSTEM:FRONT_PORT_MODE */
626#define SYS_FRONT_PORT_MODE(r) __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 84, r, 8, 4)
627
628#define SYS_FRONT_PORT_MODE_HDX_MODE BIT(1)
629#define SYS_FRONT_PORT_MODE_HDX_MODE_SET(x)\
630 FIELD_PREP(SYS_FRONT_PORT_MODE_HDX_MODE, x)
631#define SYS_FRONT_PORT_MODE_HDX_MODE_GET(x)\
632 FIELD_GET(SYS_FRONT_PORT_MODE_HDX_MODE, x)
633
634/* SYS:SYSTEM:FRM_AGING */
635#define SYS_FRM_AGING __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 116, 0, 1, 4)
636
637#define SYS_FRM_AGING_AGE_TX_ENA BIT(20)
638#define SYS_FRM_AGING_AGE_TX_ENA_SET(x)\
639 FIELD_PREP(SYS_FRM_AGING_AGE_TX_ENA, x)
640#define SYS_FRM_AGING_AGE_TX_ENA_GET(x)\
641 FIELD_GET(SYS_FRM_AGING_AGE_TX_ENA, x)
642
643/* SYS:SYSTEM:STAT_CFG */
644#define SYS_STAT_CFG __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 120, 0, 1, 4)
645
646#define SYS_STAT_CFG_STAT_VIEW GENMASK(9, 0)
647#define SYS_STAT_CFG_STAT_VIEW_SET(x)\
648 FIELD_PREP(SYS_STAT_CFG_STAT_VIEW, x)
649#define SYS_STAT_CFG_STAT_VIEW_GET(x)\
650 FIELD_GET(SYS_STAT_CFG_STAT_VIEW, x)
651
652/* SYS:PAUSE_CFG:PAUSE_CFG */
653#define SYS_PAUSE_CFG(r) __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 0, r, 9, 4)
654
655#define SYS_PAUSE_CFG_PAUSE_START GENMASK(18, 10)
656#define SYS_PAUSE_CFG_PAUSE_START_SET(x)\
657 FIELD_PREP(SYS_PAUSE_CFG_PAUSE_START, x)
658#define SYS_PAUSE_CFG_PAUSE_START_GET(x)\
659 FIELD_GET(SYS_PAUSE_CFG_PAUSE_START, x)
660
661#define SYS_PAUSE_CFG_PAUSE_STOP GENMASK(9, 1)
662#define SYS_PAUSE_CFG_PAUSE_STOP_SET(x)\
663 FIELD_PREP(SYS_PAUSE_CFG_PAUSE_STOP, x)
664#define SYS_PAUSE_CFG_PAUSE_STOP_GET(x)\
665 FIELD_GET(SYS_PAUSE_CFG_PAUSE_STOP, x)
666
667#define SYS_PAUSE_CFG_PAUSE_ENA BIT(0)
668#define SYS_PAUSE_CFG_PAUSE_ENA_SET(x)\
669 FIELD_PREP(SYS_PAUSE_CFG_PAUSE_ENA, x)
670#define SYS_PAUSE_CFG_PAUSE_ENA_GET(x)\
671 FIELD_GET(SYS_PAUSE_CFG_PAUSE_ENA, x)
672
673/* SYS:PAUSE_CFG:ATOP */
674#define SYS_ATOP(r) __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 40, r, 9, 4)
675
676/* SYS:PAUSE_CFG:ATOP_TOT_CFG */
677#define SYS_ATOP_TOT_CFG __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 76, 0, 1, 4)
678
679/* SYS:PAUSE_CFG:MAC_FC_CFG */
680#define SYS_MAC_FC_CFG(r) __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 80, r, 8, 4)
681
682#define SYS_MAC_FC_CFG_FC_LINK_SPEED GENMASK(27, 26)
683#define SYS_MAC_FC_CFG_FC_LINK_SPEED_SET(x)\
684 FIELD_PREP(SYS_MAC_FC_CFG_FC_LINK_SPEED, x)
685#define SYS_MAC_FC_CFG_FC_LINK_SPEED_GET(x)\
686 FIELD_GET(SYS_MAC_FC_CFG_FC_LINK_SPEED, x)
687
688#define SYS_MAC_FC_CFG_FC_LATENCY_CFG GENMASK(25, 20)
689#define SYS_MAC_FC_CFG_FC_LATENCY_CFG_SET(x)\
690 FIELD_PREP(SYS_MAC_FC_CFG_FC_LATENCY_CFG, x)
691#define SYS_MAC_FC_CFG_FC_LATENCY_CFG_GET(x)\
692 FIELD_GET(SYS_MAC_FC_CFG_FC_LATENCY_CFG, x)
693
694#define SYS_MAC_FC_CFG_ZERO_PAUSE_ENA BIT(18)
695#define SYS_MAC_FC_CFG_ZERO_PAUSE_ENA_SET(x)\
696 FIELD_PREP(SYS_MAC_FC_CFG_ZERO_PAUSE_ENA, x)
697#define SYS_MAC_FC_CFG_ZERO_PAUSE_ENA_GET(x)\
698 FIELD_GET(SYS_MAC_FC_CFG_ZERO_PAUSE_ENA, x)
699
700#define SYS_MAC_FC_CFG_TX_FC_ENA BIT(17)
701#define SYS_MAC_FC_CFG_TX_FC_ENA_SET(x)\
702 FIELD_PREP(SYS_MAC_FC_CFG_TX_FC_ENA, x)
703#define SYS_MAC_FC_CFG_TX_FC_ENA_GET(x)\
704 FIELD_GET(SYS_MAC_FC_CFG_TX_FC_ENA, x)
705
706#define SYS_MAC_FC_CFG_RX_FC_ENA BIT(16)
707#define SYS_MAC_FC_CFG_RX_FC_ENA_SET(x)\
708 FIELD_PREP(SYS_MAC_FC_CFG_RX_FC_ENA, x)
709#define SYS_MAC_FC_CFG_RX_FC_ENA_GET(x)\
710 FIELD_GET(SYS_MAC_FC_CFG_RX_FC_ENA, x)
711
712#define SYS_MAC_FC_CFG_PAUSE_VAL_CFG GENMASK(15, 0)
713#define SYS_MAC_FC_CFG_PAUSE_VAL_CFG_SET(x)\
714 FIELD_PREP(SYS_MAC_FC_CFG_PAUSE_VAL_CFG, x)
715#define SYS_MAC_FC_CFG_PAUSE_VAL_CFG_GET(x)\
716 FIELD_GET(SYS_MAC_FC_CFG_PAUSE_VAL_CFG, x)
717
718/* SYS:STAT:CNT */
719#define SYS_CNT(g) __REG(TARGET_SYS, 0, 1, 0, g, 896, 4, 0, 0, 1, 4)
720
721/* SYS:RAM_CTRL:RAM_INIT */
722#define SYS_RAM_INIT __REG(TARGET_SYS, 0, 1, 4432, 0, 1, 4, 0, 0, 1, 4)
723
724#define SYS_RAM_INIT_RAM_INIT BIT(1)
725#define SYS_RAM_INIT_RAM_INIT_SET(x)\
726 FIELD_PREP(SYS_RAM_INIT_RAM_INIT, x)
727#define SYS_RAM_INIT_RAM_INIT_GET(x)\
728 FIELD_GET(SYS_RAM_INIT_RAM_INIT, x)
729
730#endif /* _LAN966X_REGS_H_ */