Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: (GPL-2.0 OR MIT) */
0002 
0003 /* This file is autogenerated by cml-utils 2021-10-10 13:25:08 +0200.
0004  * Commit ID: 26db2002924973d36a30b369c94f025a678fe9ea (dirty)
0005  */
0006 
0007 #ifndef _LAN966X_REGS_H_
0008 #define _LAN966X_REGS_H_
0009 
0010 #include <linux/bitfield.h>
0011 #include <linux/types.h>
0012 #include <linux/bug.h>
0013 
0014 enum lan966x_target {
0015     TARGET_AFI = 2,
0016     TARGET_ANA = 3,
0017     TARGET_CHIP_TOP = 5,
0018     TARGET_CPU = 6,
0019     TARGET_DEV = 13,
0020     TARGET_FDMA = 21,
0021     TARGET_GCB = 27,
0022     TARGET_ORG = 36,
0023     TARGET_PTP = 41,
0024     TARGET_QS = 42,
0025     TARGET_QSYS = 46,
0026     TARGET_REW = 47,
0027     TARGET_SYS = 52,
0028     NUM_TARGETS = 66
0029 };
0030 
0031 #define __REG(...)    __VA_ARGS__
0032 
0033 /*      AFI:PORT_TBL:PORT_FRM_OUT */
0034 #define AFI_PORT_FRM_OUT(g)       __REG(TARGET_AFI, 0, 1, 98816, g, 10, 8, 0, 0, 1, 4)
0035 
0036 #define AFI_PORT_FRM_OUT_FRM_OUT_CNT             GENMASK(26, 16)
0037 #define AFI_PORT_FRM_OUT_FRM_OUT_CNT_SET(x)\
0038     FIELD_PREP(AFI_PORT_FRM_OUT_FRM_OUT_CNT, x)
0039 #define AFI_PORT_FRM_OUT_FRM_OUT_CNT_GET(x)\
0040     FIELD_GET(AFI_PORT_FRM_OUT_FRM_OUT_CNT, x)
0041 
0042 /*      AFI:PORT_TBL:PORT_CFG */
0043 #define AFI_PORT_CFG(g)           __REG(TARGET_AFI, 0, 1, 98816, g, 10, 8, 4, 0, 1, 4)
0044 
0045 #define AFI_PORT_CFG_FC_SKIP_TTI_INJ             BIT(16)
0046 #define AFI_PORT_CFG_FC_SKIP_TTI_INJ_SET(x)\
0047     FIELD_PREP(AFI_PORT_CFG_FC_SKIP_TTI_INJ, x)
0048 #define AFI_PORT_CFG_FC_SKIP_TTI_INJ_GET(x)\
0049     FIELD_GET(AFI_PORT_CFG_FC_SKIP_TTI_INJ, x)
0050 
0051 #define AFI_PORT_CFG_FRM_OUT_MAX                 GENMASK(9, 0)
0052 #define AFI_PORT_CFG_FRM_OUT_MAX_SET(x)\
0053     FIELD_PREP(AFI_PORT_CFG_FRM_OUT_MAX, x)
0054 #define AFI_PORT_CFG_FRM_OUT_MAX_GET(x)\
0055     FIELD_GET(AFI_PORT_CFG_FRM_OUT_MAX, x)
0056 
0057 /*      ANA:ANA:ADVLEARN */
0058 #define ANA_ADVLEARN              __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 0, 0, 1, 4)
0059 
0060 #define ANA_ADVLEARN_VLAN_CHK                    BIT(0)
0061 #define ANA_ADVLEARN_VLAN_CHK_SET(x)\
0062     FIELD_PREP(ANA_ADVLEARN_VLAN_CHK, x)
0063 #define ANA_ADVLEARN_VLAN_CHK_GET(x)\
0064     FIELD_GET(ANA_ADVLEARN_VLAN_CHK, x)
0065 
0066 /*      ANA:ANA:VLANMASK */
0067 #define ANA_VLANMASK              __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 8, 0, 1, 4)
0068 
0069 /*      ANA:ANA:ANAINTR */
0070 #define ANA_ANAINTR               __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 16, 0, 1, 4)
0071 
0072 #define ANA_ANAINTR_INTR                         BIT(1)
0073 #define ANA_ANAINTR_INTR_SET(x)\
0074     FIELD_PREP(ANA_ANAINTR_INTR, x)
0075 #define ANA_ANAINTR_INTR_GET(x)\
0076     FIELD_GET(ANA_ANAINTR_INTR, x)
0077 
0078 #define ANA_ANAINTR_INTR_ENA                     BIT(0)
0079 #define ANA_ANAINTR_INTR_ENA_SET(x)\
0080     FIELD_PREP(ANA_ANAINTR_INTR_ENA, x)
0081 #define ANA_ANAINTR_INTR_ENA_GET(x)\
0082     FIELD_GET(ANA_ANAINTR_INTR_ENA, x)
0083 
0084 /*      ANA:ANA:AUTOAGE */
0085 #define ANA_AUTOAGE               __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 44, 0, 1, 4)
0086 
0087 #define ANA_AUTOAGE_AGE_PERIOD                   GENMASK(20, 1)
0088 #define ANA_AUTOAGE_AGE_PERIOD_SET(x)\
0089     FIELD_PREP(ANA_AUTOAGE_AGE_PERIOD, x)
0090 #define ANA_AUTOAGE_AGE_PERIOD_GET(x)\
0091     FIELD_GET(ANA_AUTOAGE_AGE_PERIOD, x)
0092 
0093 /*      ANA:ANA:FLOODING */
0094 #define ANA_FLOODING(r)           __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 68, r, 8, 4)
0095 
0096 #define ANA_FLOODING_FLD_UNICAST                 GENMASK(17, 12)
0097 #define ANA_FLOODING_FLD_UNICAST_SET(x)\
0098     FIELD_PREP(ANA_FLOODING_FLD_UNICAST, x)
0099 #define ANA_FLOODING_FLD_UNICAST_GET(x)\
0100     FIELD_GET(ANA_FLOODING_FLD_UNICAST, x)
0101 
0102 #define ANA_FLOODING_FLD_BROADCAST               GENMASK(11, 6)
0103 #define ANA_FLOODING_FLD_BROADCAST_SET(x)\
0104     FIELD_PREP(ANA_FLOODING_FLD_BROADCAST, x)
0105 #define ANA_FLOODING_FLD_BROADCAST_GET(x)\
0106     FIELD_GET(ANA_FLOODING_FLD_BROADCAST, x)
0107 
0108 #define ANA_FLOODING_FLD_MULTICAST               GENMASK(5, 0)
0109 #define ANA_FLOODING_FLD_MULTICAST_SET(x)\
0110     FIELD_PREP(ANA_FLOODING_FLD_MULTICAST, x)
0111 #define ANA_FLOODING_FLD_MULTICAST_GET(x)\
0112     FIELD_GET(ANA_FLOODING_FLD_MULTICAST, x)
0113 
0114 /*      ANA:ANA:FLOODING_IPMC */
0115 #define ANA_FLOODING_IPMC         __REG(TARGET_ANA, 0, 1, 29824, 0, 1, 244, 100, 0, 1, 4)
0116 
0117 #define ANA_FLOODING_IPMC_FLD_MC4_CTRL           GENMASK(23, 18)
0118 #define ANA_FLOODING_IPMC_FLD_MC4_CTRL_SET(x)\
0119     FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC4_CTRL, x)
0120 #define ANA_FLOODING_IPMC_FLD_MC4_CTRL_GET(x)\
0121     FIELD_GET(ANA_FLOODING_IPMC_FLD_MC4_CTRL, x)
0122 
0123 #define ANA_FLOODING_IPMC_FLD_MC4_DATA           GENMASK(17, 12)
0124 #define ANA_FLOODING_IPMC_FLD_MC4_DATA_SET(x)\
0125     FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC4_DATA, x)
0126 #define ANA_FLOODING_IPMC_FLD_MC4_DATA_GET(x)\
0127     FIELD_GET(ANA_FLOODING_IPMC_FLD_MC4_DATA, x)
0128 
0129 #define ANA_FLOODING_IPMC_FLD_MC6_CTRL           GENMASK(11, 6)
0130 #define ANA_FLOODING_IPMC_FLD_MC6_CTRL_SET(x)\
0131     FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC6_CTRL, x)
0132 #define ANA_FLOODING_IPMC_FLD_MC6_CTRL_GET(x)\
0133     FIELD_GET(ANA_FLOODING_IPMC_FLD_MC6_CTRL, x)
0134 
0135 #define ANA_FLOODING_IPMC_FLD_MC6_DATA           GENMASK(5, 0)
0136 #define ANA_FLOODING_IPMC_FLD_MC6_DATA_SET(x)\
0137     FIELD_PREP(ANA_FLOODING_IPMC_FLD_MC6_DATA, x)
0138 #define ANA_FLOODING_IPMC_FLD_MC6_DATA_GET(x)\
0139     FIELD_GET(ANA_FLOODING_IPMC_FLD_MC6_DATA, x)
0140 
0141 /*      ANA:PGID:PGID */
0142 #define ANA_PGID(g)               __REG(TARGET_ANA, 0, 1, 27648, g, 89, 8, 0, 0, 1, 4)
0143 
0144 #define ANA_PGID_PGID                            GENMASK(8, 0)
0145 #define ANA_PGID_PGID_SET(x)\
0146     FIELD_PREP(ANA_PGID_PGID, x)
0147 #define ANA_PGID_PGID_GET(x)\
0148     FIELD_GET(ANA_PGID_PGID, x)
0149 
0150 /*      ANA:PGID:PGID_CFG */
0151 #define ANA_PGID_CFG(g)           __REG(TARGET_ANA, 0, 1, 27648, g, 89, 8, 4, 0, 1, 4)
0152 
0153 #define ANA_PGID_CFG_OBEY_VLAN                   BIT(0)
0154 #define ANA_PGID_CFG_OBEY_VLAN_SET(x)\
0155     FIELD_PREP(ANA_PGID_CFG_OBEY_VLAN, x)
0156 #define ANA_PGID_CFG_OBEY_VLAN_GET(x)\
0157     FIELD_GET(ANA_PGID_CFG_OBEY_VLAN, x)
0158 
0159 /*      ANA:ANA_TABLES:MACHDATA */
0160 #define ANA_MACHDATA              __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 40, 0, 1, 4)
0161 
0162 /*      ANA:ANA_TABLES:MACLDATA */
0163 #define ANA_MACLDATA              __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 44, 0, 1, 4)
0164 
0165 /*      ANA:ANA_TABLES:MACACCESS */
0166 #define ANA_MACACCESS             __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 48, 0, 1, 4)
0167 
0168 #define ANA_MACACCESS_CHANGE2SW                  BIT(17)
0169 #define ANA_MACACCESS_CHANGE2SW_SET(x)\
0170     FIELD_PREP(ANA_MACACCESS_CHANGE2SW, x)
0171 #define ANA_MACACCESS_CHANGE2SW_GET(x)\
0172     FIELD_GET(ANA_MACACCESS_CHANGE2SW, x)
0173 
0174 #define ANA_MACACCESS_MAC_CPU_COPY               BIT(16)
0175 #define ANA_MACACCESS_MAC_CPU_COPY_SET(x)\
0176     FIELD_PREP(ANA_MACACCESS_MAC_CPU_COPY, x)
0177 #define ANA_MACACCESS_MAC_CPU_COPY_GET(x)\
0178     FIELD_GET(ANA_MACACCESS_MAC_CPU_COPY, x)
0179 
0180 #define ANA_MACACCESS_VALID                      BIT(12)
0181 #define ANA_MACACCESS_VALID_SET(x)\
0182     FIELD_PREP(ANA_MACACCESS_VALID, x)
0183 #define ANA_MACACCESS_VALID_GET(x)\
0184     FIELD_GET(ANA_MACACCESS_VALID, x)
0185 
0186 #define ANA_MACACCESS_ENTRYTYPE                  GENMASK(11, 10)
0187 #define ANA_MACACCESS_ENTRYTYPE_SET(x)\
0188     FIELD_PREP(ANA_MACACCESS_ENTRYTYPE, x)
0189 #define ANA_MACACCESS_ENTRYTYPE_GET(x)\
0190     FIELD_GET(ANA_MACACCESS_ENTRYTYPE, x)
0191 
0192 #define ANA_MACACCESS_DEST_IDX                   GENMASK(9, 4)
0193 #define ANA_MACACCESS_DEST_IDX_SET(x)\
0194     FIELD_PREP(ANA_MACACCESS_DEST_IDX, x)
0195 #define ANA_MACACCESS_DEST_IDX_GET(x)\
0196     FIELD_GET(ANA_MACACCESS_DEST_IDX, x)
0197 
0198 #define ANA_MACACCESS_MAC_TABLE_CMD              GENMASK(3, 0)
0199 #define ANA_MACACCESS_MAC_TABLE_CMD_SET(x)\
0200     FIELD_PREP(ANA_MACACCESS_MAC_TABLE_CMD, x)
0201 #define ANA_MACACCESS_MAC_TABLE_CMD_GET(x)\
0202     FIELD_GET(ANA_MACACCESS_MAC_TABLE_CMD, x)
0203 
0204 /*      ANA:ANA_TABLES:MACTINDX */
0205 #define ANA_MACTINDX              __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 52, 0, 1, 4)
0206 
0207 #define ANA_MACTINDX_BUCKET                      GENMASK(12, 11)
0208 #define ANA_MACTINDX_BUCKET_SET(x)\
0209     FIELD_PREP(ANA_MACTINDX_BUCKET, x)
0210 #define ANA_MACTINDX_BUCKET_GET(x)\
0211     FIELD_GET(ANA_MACTINDX_BUCKET, x)
0212 
0213 #define ANA_MACTINDX_M_INDEX                     GENMASK(10, 0)
0214 #define ANA_MACTINDX_M_INDEX_SET(x)\
0215     FIELD_PREP(ANA_MACTINDX_M_INDEX, x)
0216 #define ANA_MACTINDX_M_INDEX_GET(x)\
0217     FIELD_GET(ANA_MACTINDX_M_INDEX, x)
0218 
0219 /*      ANA:ANA_TABLES:VLAN_PORT_MASK */
0220 #define ANA_VLAN_PORT_MASK        __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 56, 0, 1, 4)
0221 
0222 #define ANA_VLAN_PORT_MASK_VLAN_PORT_MASK        GENMASK(8, 0)
0223 #define ANA_VLAN_PORT_MASK_VLAN_PORT_MASK_SET(x)\
0224     FIELD_PREP(ANA_VLAN_PORT_MASK_VLAN_PORT_MASK, x)
0225 #define ANA_VLAN_PORT_MASK_VLAN_PORT_MASK_GET(x)\
0226     FIELD_GET(ANA_VLAN_PORT_MASK_VLAN_PORT_MASK, x)
0227 
0228 /*      ANA:ANA_TABLES:VLANACCESS */
0229 #define ANA_VLANACCESS            __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 60, 0, 1, 4)
0230 
0231 #define ANA_VLANACCESS_VLAN_TBL_CMD              GENMASK(1, 0)
0232 #define ANA_VLANACCESS_VLAN_TBL_CMD_SET(x)\
0233     FIELD_PREP(ANA_VLANACCESS_VLAN_TBL_CMD, x)
0234 #define ANA_VLANACCESS_VLAN_TBL_CMD_GET(x)\
0235     FIELD_GET(ANA_VLANACCESS_VLAN_TBL_CMD, x)
0236 
0237 /*      ANA:ANA_TABLES:VLANTIDX */
0238 #define ANA_VLANTIDX              __REG(TARGET_ANA, 0, 1, 27520, 0, 1, 128, 64, 0, 1, 4)
0239 
0240 #define ANA_VLANTIDX_VLAN_PGID_CPU_DIS           BIT(18)
0241 #define ANA_VLANTIDX_VLAN_PGID_CPU_DIS_SET(x)\
0242     FIELD_PREP(ANA_VLANTIDX_VLAN_PGID_CPU_DIS, x)
0243 #define ANA_VLANTIDX_VLAN_PGID_CPU_DIS_GET(x)\
0244     FIELD_GET(ANA_VLANTIDX_VLAN_PGID_CPU_DIS, x)
0245 
0246 #define ANA_VLANTIDX_V_INDEX                     GENMASK(11, 0)
0247 #define ANA_VLANTIDX_V_INDEX_SET(x)\
0248     FIELD_PREP(ANA_VLANTIDX_V_INDEX, x)
0249 #define ANA_VLANTIDX_V_INDEX_GET(x)\
0250     FIELD_GET(ANA_VLANTIDX_V_INDEX, x)
0251 
0252 /*      ANA:PORT:VLAN_CFG */
0253 #define ANA_VLAN_CFG(g)           __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 0, 0, 1, 4)
0254 
0255 #define ANA_VLAN_CFG_VLAN_AWARE_ENA              BIT(20)
0256 #define ANA_VLAN_CFG_VLAN_AWARE_ENA_SET(x)\
0257     FIELD_PREP(ANA_VLAN_CFG_VLAN_AWARE_ENA, x)
0258 #define ANA_VLAN_CFG_VLAN_AWARE_ENA_GET(x)\
0259     FIELD_GET(ANA_VLAN_CFG_VLAN_AWARE_ENA, x)
0260 
0261 #define ANA_VLAN_CFG_VLAN_POP_CNT                GENMASK(19, 18)
0262 #define ANA_VLAN_CFG_VLAN_POP_CNT_SET(x)\
0263     FIELD_PREP(ANA_VLAN_CFG_VLAN_POP_CNT, x)
0264 #define ANA_VLAN_CFG_VLAN_POP_CNT_GET(x)\
0265     FIELD_GET(ANA_VLAN_CFG_VLAN_POP_CNT, x)
0266 
0267 #define ANA_VLAN_CFG_VLAN_VID                    GENMASK(11, 0)
0268 #define ANA_VLAN_CFG_VLAN_VID_SET(x)\
0269     FIELD_PREP(ANA_VLAN_CFG_VLAN_VID, x)
0270 #define ANA_VLAN_CFG_VLAN_VID_GET(x)\
0271     FIELD_GET(ANA_VLAN_CFG_VLAN_VID, x)
0272 
0273 /*      ANA:PORT:DROP_CFG */
0274 #define ANA_DROP_CFG(g)           __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 4, 0, 1, 4)
0275 
0276 #define ANA_DROP_CFG_DROP_UNTAGGED_ENA           BIT(6)
0277 #define ANA_DROP_CFG_DROP_UNTAGGED_ENA_SET(x)\
0278     FIELD_PREP(ANA_DROP_CFG_DROP_UNTAGGED_ENA, x)
0279 #define ANA_DROP_CFG_DROP_UNTAGGED_ENA_GET(x)\
0280     FIELD_GET(ANA_DROP_CFG_DROP_UNTAGGED_ENA, x)
0281 
0282 #define ANA_DROP_CFG_DROP_PRIO_S_TAGGED_ENA      BIT(3)
0283 #define ANA_DROP_CFG_DROP_PRIO_S_TAGGED_ENA_SET(x)\
0284     FIELD_PREP(ANA_DROP_CFG_DROP_PRIO_S_TAGGED_ENA, x)
0285 #define ANA_DROP_CFG_DROP_PRIO_S_TAGGED_ENA_GET(x)\
0286     FIELD_GET(ANA_DROP_CFG_DROP_PRIO_S_TAGGED_ENA, x)
0287 
0288 #define ANA_DROP_CFG_DROP_PRIO_C_TAGGED_ENA      BIT(2)
0289 #define ANA_DROP_CFG_DROP_PRIO_C_TAGGED_ENA_SET(x)\
0290     FIELD_PREP(ANA_DROP_CFG_DROP_PRIO_C_TAGGED_ENA, x)
0291 #define ANA_DROP_CFG_DROP_PRIO_C_TAGGED_ENA_GET(x)\
0292     FIELD_GET(ANA_DROP_CFG_DROP_PRIO_C_TAGGED_ENA, x)
0293 
0294 #define ANA_DROP_CFG_DROP_MC_SMAC_ENA            BIT(0)
0295 #define ANA_DROP_CFG_DROP_MC_SMAC_ENA_SET(x)\
0296     FIELD_PREP(ANA_DROP_CFG_DROP_MC_SMAC_ENA, x)
0297 #define ANA_DROP_CFG_DROP_MC_SMAC_ENA_GET(x)\
0298     FIELD_GET(ANA_DROP_CFG_DROP_MC_SMAC_ENA, x)
0299 
0300 /*      ANA:PORT:CPU_FWD_CFG */
0301 #define ANA_CPU_FWD_CFG(g)        __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 96, 0, 1, 4)
0302 
0303 #define ANA_CPU_FWD_CFG_MLD_REDIR_ENA            BIT(6)
0304 #define ANA_CPU_FWD_CFG_MLD_REDIR_ENA_SET(x)\
0305     FIELD_PREP(ANA_CPU_FWD_CFG_MLD_REDIR_ENA, x)
0306 #define ANA_CPU_FWD_CFG_MLD_REDIR_ENA_GET(x)\
0307     FIELD_GET(ANA_CPU_FWD_CFG_MLD_REDIR_ENA, x)
0308 
0309 #define ANA_CPU_FWD_CFG_IGMP_REDIR_ENA           BIT(5)
0310 #define ANA_CPU_FWD_CFG_IGMP_REDIR_ENA_SET(x)\
0311     FIELD_PREP(ANA_CPU_FWD_CFG_IGMP_REDIR_ENA, x)
0312 #define ANA_CPU_FWD_CFG_IGMP_REDIR_ENA_GET(x)\
0313     FIELD_GET(ANA_CPU_FWD_CFG_IGMP_REDIR_ENA, x)
0314 
0315 #define ANA_CPU_FWD_CFG_IPMC_CTRL_COPY_ENA       BIT(4)
0316 #define ANA_CPU_FWD_CFG_IPMC_CTRL_COPY_ENA_SET(x)\
0317     FIELD_PREP(ANA_CPU_FWD_CFG_IPMC_CTRL_COPY_ENA, x)
0318 #define ANA_CPU_FWD_CFG_IPMC_CTRL_COPY_ENA_GET(x)\
0319     FIELD_GET(ANA_CPU_FWD_CFG_IPMC_CTRL_COPY_ENA, x)
0320 
0321 #define ANA_CPU_FWD_CFG_SRC_COPY_ENA             BIT(3)
0322 #define ANA_CPU_FWD_CFG_SRC_COPY_ENA_SET(x)\
0323     FIELD_PREP(ANA_CPU_FWD_CFG_SRC_COPY_ENA, x)
0324 #define ANA_CPU_FWD_CFG_SRC_COPY_ENA_GET(x)\
0325     FIELD_GET(ANA_CPU_FWD_CFG_SRC_COPY_ENA, x)
0326 
0327 /*      ANA:PORT:CPU_FWD_BPDU_CFG */
0328 #define ANA_CPU_FWD_BPDU_CFG(g)   __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 100, 0, 1, 4)
0329 
0330 /*      ANA:PORT:PORT_CFG */
0331 #define ANA_PORT_CFG(g)           __REG(TARGET_ANA, 0, 1, 28672, g, 9, 128, 112, 0, 1, 4)
0332 
0333 #define ANA_PORT_CFG_LEARNAUTO                   BIT(6)
0334 #define ANA_PORT_CFG_LEARNAUTO_SET(x)\
0335     FIELD_PREP(ANA_PORT_CFG_LEARNAUTO, x)
0336 #define ANA_PORT_CFG_LEARNAUTO_GET(x)\
0337     FIELD_GET(ANA_PORT_CFG_LEARNAUTO, x)
0338 
0339 #define ANA_PORT_CFG_LEARN_ENA                   BIT(5)
0340 #define ANA_PORT_CFG_LEARN_ENA_SET(x)\
0341     FIELD_PREP(ANA_PORT_CFG_LEARN_ENA, x)
0342 #define ANA_PORT_CFG_LEARN_ENA_GET(x)\
0343     FIELD_GET(ANA_PORT_CFG_LEARN_ENA, x)
0344 
0345 #define ANA_PORT_CFG_RECV_ENA                    BIT(4)
0346 #define ANA_PORT_CFG_RECV_ENA_SET(x)\
0347     FIELD_PREP(ANA_PORT_CFG_RECV_ENA, x)
0348 #define ANA_PORT_CFG_RECV_ENA_GET(x)\
0349     FIELD_GET(ANA_PORT_CFG_RECV_ENA, x)
0350 
0351 #define ANA_PORT_CFG_PORTID_VAL                  GENMASK(3, 0)
0352 #define ANA_PORT_CFG_PORTID_VAL_SET(x)\
0353     FIELD_PREP(ANA_PORT_CFG_PORTID_VAL, x)
0354 #define ANA_PORT_CFG_PORTID_VAL_GET(x)\
0355     FIELD_GET(ANA_PORT_CFG_PORTID_VAL, x)
0356 
0357 /*      ANA:PFC:PFC_CFG */
0358 #define ANA_PFC_CFG(g)            __REG(TARGET_ANA, 0, 1, 30720, g, 8, 64, 0, 0, 1, 4)
0359 
0360 #define ANA_PFC_CFG_FC_LINK_SPEED                GENMASK(1, 0)
0361 #define ANA_PFC_CFG_FC_LINK_SPEED_SET(x)\
0362     FIELD_PREP(ANA_PFC_CFG_FC_LINK_SPEED, x)
0363 #define ANA_PFC_CFG_FC_LINK_SPEED_GET(x)\
0364     FIELD_GET(ANA_PFC_CFG_FC_LINK_SPEED, x)
0365 
0366 /*      CHIP_TOP:CUPHY_CFG:CUPHY_PORT_CFG */
0367 #define CHIP_TOP_CUPHY_PORT_CFG(r) __REG(TARGET_CHIP_TOP, 0, 1, 16, 0, 1, 20, 8, r, 2, 4)
0368 
0369 #define CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA      BIT(0)
0370 #define CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA_SET(x)\
0371     FIELD_PREP(CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA, x)
0372 #define CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA_GET(x)\
0373     FIELD_GET(CHIP_TOP_CUPHY_PORT_CFG_GTX_CLK_ENA, x)
0374 
0375 /*      DEV:PORT_MODE:CLOCK_CFG */
0376 #define DEV_CLOCK_CFG(t)          __REG(TARGET_DEV, t, 8, 0, 0, 1, 28, 0, 0, 1, 4)
0377 
0378 #define DEV_CLOCK_CFG_MAC_TX_RST                 BIT(7)
0379 #define DEV_CLOCK_CFG_MAC_TX_RST_SET(x)\
0380     FIELD_PREP(DEV_CLOCK_CFG_MAC_TX_RST, x)
0381 #define DEV_CLOCK_CFG_MAC_TX_RST_GET(x)\
0382     FIELD_GET(DEV_CLOCK_CFG_MAC_TX_RST, x)
0383 
0384 #define DEV_CLOCK_CFG_MAC_RX_RST                 BIT(6)
0385 #define DEV_CLOCK_CFG_MAC_RX_RST_SET(x)\
0386     FIELD_PREP(DEV_CLOCK_CFG_MAC_RX_RST, x)
0387 #define DEV_CLOCK_CFG_MAC_RX_RST_GET(x)\
0388     FIELD_GET(DEV_CLOCK_CFG_MAC_RX_RST, x)
0389 
0390 #define DEV_CLOCK_CFG_PCS_TX_RST                 BIT(5)
0391 #define DEV_CLOCK_CFG_PCS_TX_RST_SET(x)\
0392     FIELD_PREP(DEV_CLOCK_CFG_PCS_TX_RST, x)
0393 #define DEV_CLOCK_CFG_PCS_TX_RST_GET(x)\
0394     FIELD_GET(DEV_CLOCK_CFG_PCS_TX_RST, x)
0395 
0396 #define DEV_CLOCK_CFG_PCS_RX_RST                 BIT(4)
0397 #define DEV_CLOCK_CFG_PCS_RX_RST_SET(x)\
0398     FIELD_PREP(DEV_CLOCK_CFG_PCS_RX_RST, x)
0399 #define DEV_CLOCK_CFG_PCS_RX_RST_GET(x)\
0400     FIELD_GET(DEV_CLOCK_CFG_PCS_RX_RST, x)
0401 
0402 #define DEV_CLOCK_CFG_PORT_RST                   BIT(3)
0403 #define DEV_CLOCK_CFG_PORT_RST_SET(x)\
0404     FIELD_PREP(DEV_CLOCK_CFG_PORT_RST, x)
0405 #define DEV_CLOCK_CFG_PORT_RST_GET(x)\
0406     FIELD_GET(DEV_CLOCK_CFG_PORT_RST, x)
0407 
0408 #define DEV_CLOCK_CFG_LINK_SPEED                 GENMASK(1, 0)
0409 #define DEV_CLOCK_CFG_LINK_SPEED_SET(x)\
0410     FIELD_PREP(DEV_CLOCK_CFG_LINK_SPEED, x)
0411 #define DEV_CLOCK_CFG_LINK_SPEED_GET(x)\
0412     FIELD_GET(DEV_CLOCK_CFG_LINK_SPEED, x)
0413 
0414 /*      DEV:MAC_CFG_STATUS:MAC_ENA_CFG */
0415 #define DEV_MAC_ENA_CFG(t)        __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 0, 0, 1, 4)
0416 
0417 #define DEV_MAC_ENA_CFG_RX_ENA                   BIT(4)
0418 #define DEV_MAC_ENA_CFG_RX_ENA_SET(x)\
0419     FIELD_PREP(DEV_MAC_ENA_CFG_RX_ENA, x)
0420 #define DEV_MAC_ENA_CFG_RX_ENA_GET(x)\
0421     FIELD_GET(DEV_MAC_ENA_CFG_RX_ENA, x)
0422 
0423 #define DEV_MAC_ENA_CFG_TX_ENA                   BIT(0)
0424 #define DEV_MAC_ENA_CFG_TX_ENA_SET(x)\
0425     FIELD_PREP(DEV_MAC_ENA_CFG_TX_ENA, x)
0426 #define DEV_MAC_ENA_CFG_TX_ENA_GET(x)\
0427     FIELD_GET(DEV_MAC_ENA_CFG_TX_ENA, x)
0428 
0429 /*      DEV:MAC_CFG_STATUS:MAC_MODE_CFG */
0430 #define DEV_MAC_MODE_CFG(t)       __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 4, 0, 1, 4)
0431 
0432 #define DEV_MAC_MODE_CFG_GIGA_MODE_ENA           BIT(4)
0433 #define DEV_MAC_MODE_CFG_GIGA_MODE_ENA_SET(x)\
0434     FIELD_PREP(DEV_MAC_MODE_CFG_GIGA_MODE_ENA, x)
0435 #define DEV_MAC_MODE_CFG_GIGA_MODE_ENA_GET(x)\
0436     FIELD_GET(DEV_MAC_MODE_CFG_GIGA_MODE_ENA, x)
0437 
0438 /*      DEV:MAC_CFG_STATUS:MAC_MAXLEN_CFG */
0439 #define DEV_MAC_MAXLEN_CFG(t)     __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 8, 0, 1, 4)
0440 
0441 #define DEV_MAC_MAXLEN_CFG_MAX_LEN               GENMASK(15, 0)
0442 #define DEV_MAC_MAXLEN_CFG_MAX_LEN_SET(x)\
0443     FIELD_PREP(DEV_MAC_MAXLEN_CFG_MAX_LEN, x)
0444 #define DEV_MAC_MAXLEN_CFG_MAX_LEN_GET(x)\
0445     FIELD_GET(DEV_MAC_MAXLEN_CFG_MAX_LEN, x)
0446 
0447 /*      DEV:MAC_CFG_STATUS:MAC_IFG_CFG */
0448 #define DEV_MAC_IFG_CFG(t)        __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 20, 0, 1, 4)
0449 
0450 #define DEV_MAC_IFG_CFG_TX_IFG                   GENMASK(12, 8)
0451 #define DEV_MAC_IFG_CFG_TX_IFG_SET(x)\
0452     FIELD_PREP(DEV_MAC_IFG_CFG_TX_IFG, x)
0453 #define DEV_MAC_IFG_CFG_TX_IFG_GET(x)\
0454     FIELD_GET(DEV_MAC_IFG_CFG_TX_IFG, x)
0455 
0456 #define DEV_MAC_IFG_CFG_RX_IFG2                  GENMASK(7, 4)
0457 #define DEV_MAC_IFG_CFG_RX_IFG2_SET(x)\
0458     FIELD_PREP(DEV_MAC_IFG_CFG_RX_IFG2, x)
0459 #define DEV_MAC_IFG_CFG_RX_IFG2_GET(x)\
0460     FIELD_GET(DEV_MAC_IFG_CFG_RX_IFG2, x)
0461 
0462 #define DEV_MAC_IFG_CFG_RX_IFG1                  GENMASK(3, 0)
0463 #define DEV_MAC_IFG_CFG_RX_IFG1_SET(x)\
0464     FIELD_PREP(DEV_MAC_IFG_CFG_RX_IFG1, x)
0465 #define DEV_MAC_IFG_CFG_RX_IFG1_GET(x)\
0466     FIELD_GET(DEV_MAC_IFG_CFG_RX_IFG1, x)
0467 
0468 /*      DEV:MAC_CFG_STATUS:MAC_HDX_CFG */
0469 #define DEV_MAC_HDX_CFG(t)        __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 24, 0, 1, 4)
0470 
0471 #define DEV_MAC_HDX_CFG_SEED                     GENMASK(23, 16)
0472 #define DEV_MAC_HDX_CFG_SEED_SET(x)\
0473     FIELD_PREP(DEV_MAC_HDX_CFG_SEED, x)
0474 #define DEV_MAC_HDX_CFG_SEED_GET(x)\
0475     FIELD_GET(DEV_MAC_HDX_CFG_SEED, x)
0476 
0477 #define DEV_MAC_HDX_CFG_SEED_LOAD                BIT(12)
0478 #define DEV_MAC_HDX_CFG_SEED_LOAD_SET(x)\
0479     FIELD_PREP(DEV_MAC_HDX_CFG_SEED_LOAD, x)
0480 #define DEV_MAC_HDX_CFG_SEED_LOAD_GET(x)\
0481     FIELD_GET(DEV_MAC_HDX_CFG_SEED_LOAD, x)
0482 
0483 /*      DEV:MAC_CFG_STATUS:MAC_FC_MAC_LOW_CFG */
0484 #define DEV_FC_MAC_LOW_CFG(t)     __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 32, 0, 1, 4)
0485 
0486 /*      DEV:MAC_CFG_STATUS:MAC_FC_MAC_HIGH_CFG */
0487 #define DEV_FC_MAC_HIGH_CFG(t)    __REG(TARGET_DEV, t, 8, 28, 0, 1, 44, 36, 0, 1, 4)
0488 
0489 /*      DEV:PCS1G_CFG_STATUS:PCS1G_CFG */
0490 #define DEV_PCS1G_CFG(t)          __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 0, 0, 1, 4)
0491 
0492 #define DEV_PCS1G_CFG_PCS_ENA                    BIT(0)
0493 #define DEV_PCS1G_CFG_PCS_ENA_SET(x)\
0494     FIELD_PREP(DEV_PCS1G_CFG_PCS_ENA, x)
0495 #define DEV_PCS1G_CFG_PCS_ENA_GET(x)\
0496     FIELD_GET(DEV_PCS1G_CFG_PCS_ENA, x)
0497 
0498 /*      DEV:PCS1G_CFG_STATUS:PCS1G_MODE_CFG */
0499 #define DEV_PCS1G_MODE_CFG(t)     __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 4, 0, 1, 4)
0500 
0501 #define DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA        BIT(0)
0502 #define DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA_SET(x)\
0503     FIELD_PREP(DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA, x)
0504 #define DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA_GET(x)\
0505     FIELD_GET(DEV_PCS1G_MODE_CFG_SGMII_MODE_ENA, x)
0506 
0507 /*      DEV:PCS1G_CFG_STATUS:PCS1G_SD_CFG */
0508 #define DEV_PCS1G_SD_CFG(t)       __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 8, 0, 1, 4)
0509 
0510 #define DEV_PCS1G_SD_CFG_SD_ENA                  BIT(0)
0511 #define DEV_PCS1G_SD_CFG_SD_ENA_SET(x)\
0512     FIELD_PREP(DEV_PCS1G_SD_CFG_SD_ENA, x)
0513 #define DEV_PCS1G_SD_CFG_SD_ENA_GET(x)\
0514     FIELD_GET(DEV_PCS1G_SD_CFG_SD_ENA, x)
0515 
0516 /*      DEV:PCS1G_CFG_STATUS:PCS1G_ANEG_CFG */
0517 #define DEV_PCS1G_ANEG_CFG(t)     __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 12, 0, 1, 4)
0518 
0519 #define DEV_PCS1G_ANEG_CFG_ADV_ABILITY           GENMASK(31, 16)
0520 #define DEV_PCS1G_ANEG_CFG_ADV_ABILITY_SET(x)\
0521     FIELD_PREP(DEV_PCS1G_ANEG_CFG_ADV_ABILITY, x)
0522 #define DEV_PCS1G_ANEG_CFG_ADV_ABILITY_GET(x)\
0523     FIELD_GET(DEV_PCS1G_ANEG_CFG_ADV_ABILITY, x)
0524 
0525 #define DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA        BIT(8)
0526 #define DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA_SET(x)\
0527     FIELD_PREP(DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA, x)
0528 #define DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA_GET(x)\
0529     FIELD_GET(DEV_PCS1G_ANEG_CFG_SW_RESOLVE_ENA, x)
0530 
0531 #define DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT      BIT(1)
0532 #define DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT_SET(x)\
0533     FIELD_PREP(DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT, x)
0534 #define DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT_GET(x)\
0535     FIELD_GET(DEV_PCS1G_ANEG_CFG_RESTART_ONE_SHOT, x)
0536 
0537 #define DEV_PCS1G_ANEG_CFG_ENA                   BIT(0)
0538 #define DEV_PCS1G_ANEG_CFG_ENA_SET(x)\
0539     FIELD_PREP(DEV_PCS1G_ANEG_CFG_ENA, x)
0540 #define DEV_PCS1G_ANEG_CFG_ENA_GET(x)\
0541     FIELD_GET(DEV_PCS1G_ANEG_CFG_ENA, x)
0542 
0543 /*      DEV:PCS1G_CFG_STATUS:PCS1G_ANEG_STATUS */
0544 #define DEV_PCS1G_ANEG_STATUS(t)  __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 32, 0, 1, 4)
0545 
0546 #define DEV_PCS1G_ANEG_STATUS_LP_ADV             GENMASK(31, 16)
0547 #define DEV_PCS1G_ANEG_STATUS_LP_ADV_SET(x)\
0548     FIELD_PREP(DEV_PCS1G_ANEG_STATUS_LP_ADV, x)
0549 #define DEV_PCS1G_ANEG_STATUS_LP_ADV_GET(x)\
0550     FIELD_GET(DEV_PCS1G_ANEG_STATUS_LP_ADV, x)
0551 
0552 #define DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE      BIT(0)
0553 #define DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE_SET(x)\
0554     FIELD_PREP(DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE, x)
0555 #define DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE_GET(x)\
0556     FIELD_GET(DEV_PCS1G_ANEG_STATUS_ANEG_COMPLETE, x)
0557 
0558 /*      DEV:PCS1G_CFG_STATUS:PCS1G_LINK_STATUS */
0559 #define DEV_PCS1G_LINK_STATUS(t)  __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 40, 0, 1, 4)
0560 
0561 #define DEV_PCS1G_LINK_STATUS_LINK_STATUS        BIT(4)
0562 #define DEV_PCS1G_LINK_STATUS_LINK_STATUS_SET(x)\
0563     FIELD_PREP(DEV_PCS1G_LINK_STATUS_LINK_STATUS, x)
0564 #define DEV_PCS1G_LINK_STATUS_LINK_STATUS_GET(x)\
0565     FIELD_GET(DEV_PCS1G_LINK_STATUS_LINK_STATUS, x)
0566 
0567 #define DEV_PCS1G_LINK_STATUS_SYNC_STATUS        BIT(0)
0568 #define DEV_PCS1G_LINK_STATUS_SYNC_STATUS_SET(x)\
0569     FIELD_PREP(DEV_PCS1G_LINK_STATUS_SYNC_STATUS, x)
0570 #define DEV_PCS1G_LINK_STATUS_SYNC_STATUS_GET(x)\
0571     FIELD_GET(DEV_PCS1G_LINK_STATUS_SYNC_STATUS, x)
0572 
0573 /*      DEV:PCS1G_CFG_STATUS:PCS1G_STICKY */
0574 #define DEV_PCS1G_STICKY(t)       __REG(TARGET_DEV, t, 8, 72, 0, 1, 68, 48, 0, 1, 4)
0575 
0576 #define DEV_PCS1G_STICKY_LINK_DOWN_STICKY        BIT(4)
0577 #define DEV_PCS1G_STICKY_LINK_DOWN_STICKY_SET(x)\
0578     FIELD_PREP(DEV_PCS1G_STICKY_LINK_DOWN_STICKY, x)
0579 #define DEV_PCS1G_STICKY_LINK_DOWN_STICKY_GET(x)\
0580     FIELD_GET(DEV_PCS1G_STICKY_LINK_DOWN_STICKY, x)
0581 
0582 /*      FDMA:FDMA:FDMA_CH_ACTIVATE */
0583 #define FDMA_CH_ACTIVATE          __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 0, 0, 1, 4)
0584 
0585 #define FDMA_CH_ACTIVATE_CH_ACTIVATE             GENMASK(7, 0)
0586 #define FDMA_CH_ACTIVATE_CH_ACTIVATE_SET(x)\
0587     FIELD_PREP(FDMA_CH_ACTIVATE_CH_ACTIVATE, x)
0588 #define FDMA_CH_ACTIVATE_CH_ACTIVATE_GET(x)\
0589     FIELD_GET(FDMA_CH_ACTIVATE_CH_ACTIVATE, x)
0590 
0591 /*      FDMA:FDMA:FDMA_CH_RELOAD */
0592 #define FDMA_CH_RELOAD            __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 4, 0, 1, 4)
0593 
0594 #define FDMA_CH_RELOAD_CH_RELOAD                 GENMASK(7, 0)
0595 #define FDMA_CH_RELOAD_CH_RELOAD_SET(x)\
0596     FIELD_PREP(FDMA_CH_RELOAD_CH_RELOAD, x)
0597 #define FDMA_CH_RELOAD_CH_RELOAD_GET(x)\
0598     FIELD_GET(FDMA_CH_RELOAD_CH_RELOAD, x)
0599 
0600 /*      FDMA:FDMA:FDMA_CH_DISABLE */
0601 #define FDMA_CH_DISABLE           __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 8, 0, 1, 4)
0602 
0603 #define FDMA_CH_DISABLE_CH_DISABLE               GENMASK(7, 0)
0604 #define FDMA_CH_DISABLE_CH_DISABLE_SET(x)\
0605     FIELD_PREP(FDMA_CH_DISABLE_CH_DISABLE, x)
0606 #define FDMA_CH_DISABLE_CH_DISABLE_GET(x)\
0607     FIELD_GET(FDMA_CH_DISABLE_CH_DISABLE, x)
0608 
0609 /*      FDMA:FDMA:FDMA_CH_DB_DISCARD */
0610 #define FDMA_CH_DB_DISCARD        __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 16, 0, 1, 4)
0611 
0612 #define FDMA_CH_DB_DISCARD_DB_DISCARD            GENMASK(7, 0)
0613 #define FDMA_CH_DB_DISCARD_DB_DISCARD_SET(x)\
0614     FIELD_PREP(FDMA_CH_DB_DISCARD_DB_DISCARD, x)
0615 #define FDMA_CH_DB_DISCARD_DB_DISCARD_GET(x)\
0616     FIELD_GET(FDMA_CH_DB_DISCARD_DB_DISCARD, x)
0617 
0618 /*      FDMA:FDMA:FDMA_DCB_LLP */
0619 #define FDMA_DCB_LLP(r)           __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 52, r, 8, 4)
0620 
0621 /*      FDMA:FDMA:FDMA_DCB_LLP1 */
0622 #define FDMA_DCB_LLP1(r)          __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 84, r, 8, 4)
0623 
0624 /*      FDMA:FDMA:FDMA_CH_ACTIVE */
0625 #define FDMA_CH_ACTIVE            __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 180, 0, 1, 4)
0626 
0627 /*      FDMA:FDMA:FDMA_CH_CFG */
0628 #define FDMA_CH_CFG(r)            __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 224, r, 8, 4)
0629 
0630 #define FDMA_CH_CFG_CH_INTR_DB_EOF_ONLY          BIT(4)
0631 #define FDMA_CH_CFG_CH_INTR_DB_EOF_ONLY_SET(x)\
0632     FIELD_PREP(FDMA_CH_CFG_CH_INTR_DB_EOF_ONLY, x)
0633 #define FDMA_CH_CFG_CH_INTR_DB_EOF_ONLY_GET(x)\
0634     FIELD_GET(FDMA_CH_CFG_CH_INTR_DB_EOF_ONLY, x)
0635 
0636 #define FDMA_CH_CFG_CH_INJ_PORT                  BIT(3)
0637 #define FDMA_CH_CFG_CH_INJ_PORT_SET(x)\
0638     FIELD_PREP(FDMA_CH_CFG_CH_INJ_PORT, x)
0639 #define FDMA_CH_CFG_CH_INJ_PORT_GET(x)\
0640     FIELD_GET(FDMA_CH_CFG_CH_INJ_PORT, x)
0641 
0642 #define FDMA_CH_CFG_CH_DCB_DB_CNT                GENMASK(2, 1)
0643 #define FDMA_CH_CFG_CH_DCB_DB_CNT_SET(x)\
0644     FIELD_PREP(FDMA_CH_CFG_CH_DCB_DB_CNT, x)
0645 #define FDMA_CH_CFG_CH_DCB_DB_CNT_GET(x)\
0646     FIELD_GET(FDMA_CH_CFG_CH_DCB_DB_CNT, x)
0647 
0648 #define FDMA_CH_CFG_CH_MEM                       BIT(0)
0649 #define FDMA_CH_CFG_CH_MEM_SET(x)\
0650     FIELD_PREP(FDMA_CH_CFG_CH_MEM, x)
0651 #define FDMA_CH_CFG_CH_MEM_GET(x)\
0652     FIELD_GET(FDMA_CH_CFG_CH_MEM, x)
0653 
0654 /*      FDMA:FDMA:FDMA_PORT_CTRL */
0655 #define FDMA_PORT_CTRL(r)         __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 376, r, 2, 4)
0656 
0657 #define FDMA_PORT_CTRL_INJ_STOP                  BIT(4)
0658 #define FDMA_PORT_CTRL_INJ_STOP_SET(x)\
0659     FIELD_PREP(FDMA_PORT_CTRL_INJ_STOP, x)
0660 #define FDMA_PORT_CTRL_INJ_STOP_GET(x)\
0661     FIELD_GET(FDMA_PORT_CTRL_INJ_STOP, x)
0662 
0663 #define FDMA_PORT_CTRL_XTR_STOP                  BIT(2)
0664 #define FDMA_PORT_CTRL_XTR_STOP_SET(x)\
0665     FIELD_PREP(FDMA_PORT_CTRL_XTR_STOP, x)
0666 #define FDMA_PORT_CTRL_XTR_STOP_GET(x)\
0667     FIELD_GET(FDMA_PORT_CTRL_XTR_STOP, x)
0668 
0669 /*      FDMA:FDMA:FDMA_INTR_DB */
0670 #define FDMA_INTR_DB              __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 392, 0, 1, 4)
0671 
0672 /*      FDMA:FDMA:FDMA_INTR_DB_ENA */
0673 #define FDMA_INTR_DB_ENA          __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 396, 0, 1, 4)
0674 
0675 #define FDMA_INTR_DB_ENA_INTR_DB_ENA             GENMASK(7, 0)
0676 #define FDMA_INTR_DB_ENA_INTR_DB_ENA_SET(x)\
0677     FIELD_PREP(FDMA_INTR_DB_ENA_INTR_DB_ENA, x)
0678 #define FDMA_INTR_DB_ENA_INTR_DB_ENA_GET(x)\
0679     FIELD_GET(FDMA_INTR_DB_ENA_INTR_DB_ENA, x)
0680 
0681 /*      FDMA:FDMA:FDMA_INTR_ERR */
0682 #define FDMA_INTR_ERR             __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 400, 0, 1, 4)
0683 
0684 /*      FDMA:FDMA:FDMA_ERRORS */
0685 #define FDMA_ERRORS               __REG(TARGET_FDMA, 0, 1, 8, 0, 1, 428, 412, 0, 1, 4)
0686 
0687 /*      PTP:PTP_CFG:PTP_PIN_INTR */
0688 #define PTP_PIN_INTR              __REG(TARGET_PTP, 0, 1, 512, 0, 1, 16, 0, 0, 1, 4)
0689 
0690 #define PTP_PIN_INTR_INTR_PTP                    GENMASK(7, 0)
0691 #define PTP_PIN_INTR_INTR_PTP_SET(x)\
0692     FIELD_PREP(PTP_PIN_INTR_INTR_PTP, x)
0693 #define PTP_PIN_INTR_INTR_PTP_GET(x)\
0694     FIELD_GET(PTP_PIN_INTR_INTR_PTP, x)
0695 
0696 /*      PTP:PTP_CFG:PTP_PIN_INTR_ENA */
0697 #define PTP_PIN_INTR_ENA          __REG(TARGET_PTP, 0, 1, 512, 0, 1, 16, 4, 0, 1, 4)
0698 
0699 #define PTP_PIN_INTR_ENA_INTR_ENA                GENMASK(7, 0)
0700 #define PTP_PIN_INTR_ENA_INTR_ENA_SET(x)\
0701     FIELD_PREP(PTP_PIN_INTR_ENA_INTR_ENA, x)
0702 #define PTP_PIN_INTR_ENA_INTR_ENA_GET(x)\
0703     FIELD_GET(PTP_PIN_INTR_ENA_INTR_ENA, x)
0704 
0705 /*      PTP:PTP_CFG:PTP_DOM_CFG */
0706 #define PTP_DOM_CFG               __REG(TARGET_PTP, 0, 1, 512, 0, 1, 16, 12, 0, 1, 4)
0707 
0708 #define PTP_DOM_CFG_ENA                          GENMASK(11, 9)
0709 #define PTP_DOM_CFG_ENA_SET(x)\
0710     FIELD_PREP(PTP_DOM_CFG_ENA, x)
0711 #define PTP_DOM_CFG_ENA_GET(x)\
0712     FIELD_GET(PTP_DOM_CFG_ENA, x)
0713 
0714 #define PTP_DOM_CFG_CLKCFG_DIS                   GENMASK(2, 0)
0715 #define PTP_DOM_CFG_CLKCFG_DIS_SET(x)\
0716     FIELD_PREP(PTP_DOM_CFG_CLKCFG_DIS, x)
0717 #define PTP_DOM_CFG_CLKCFG_DIS_GET(x)\
0718     FIELD_GET(PTP_DOM_CFG_CLKCFG_DIS, x)
0719 
0720 /*      PTP:PTP_TOD_DOMAINS:CLK_PER_CFG */
0721 #define PTP_CLK_PER_CFG(g, r)     __REG(TARGET_PTP, 0, 1, 528, g, 3, 28, 0, r, 2, 4)
0722 
0723 /*      PTP:PTP_PINS:PTP_PIN_CFG */
0724 #define PTP_PIN_CFG(g)            __REG(TARGET_PTP, 0, 1, 0, g, 8, 64, 0, 0, 1, 4)
0725 
0726 #define PTP_PIN_CFG_PIN_ACTION                   GENMASK(29, 27)
0727 #define PTP_PIN_CFG_PIN_ACTION_SET(x)\
0728     FIELD_PREP(PTP_PIN_CFG_PIN_ACTION, x)
0729 #define PTP_PIN_CFG_PIN_ACTION_GET(x)\
0730     FIELD_GET(PTP_PIN_CFG_PIN_ACTION, x)
0731 
0732 #define PTP_PIN_CFG_PIN_SYNC                     GENMASK(26, 25)
0733 #define PTP_PIN_CFG_PIN_SYNC_SET(x)\
0734     FIELD_PREP(PTP_PIN_CFG_PIN_SYNC, x)
0735 #define PTP_PIN_CFG_PIN_SYNC_GET(x)\
0736     FIELD_GET(PTP_PIN_CFG_PIN_SYNC, x)
0737 
0738 #define PTP_PIN_CFG_PIN_SELECT                   GENMASK(23, 21)
0739 #define PTP_PIN_CFG_PIN_SELECT_SET(x)\
0740     FIELD_PREP(PTP_PIN_CFG_PIN_SELECT, x)
0741 #define PTP_PIN_CFG_PIN_SELECT_GET(x)\
0742     FIELD_GET(PTP_PIN_CFG_PIN_SELECT, x)
0743 
0744 #define PTP_PIN_CFG_PIN_DOM                      GENMASK(17, 16)
0745 #define PTP_PIN_CFG_PIN_DOM_SET(x)\
0746     FIELD_PREP(PTP_PIN_CFG_PIN_DOM, x)
0747 #define PTP_PIN_CFG_PIN_DOM_GET(x)\
0748     FIELD_GET(PTP_PIN_CFG_PIN_DOM, x)
0749 
0750 /*      PTP:PTP_PINS:PTP_TOD_SEC_MSB */
0751 #define PTP_TOD_SEC_MSB(g)        __REG(TARGET_PTP, 0, 1, 0, g, 8, 64, 4, 0, 1, 4)
0752 
0753 #define PTP_TOD_SEC_MSB_TOD_SEC_MSB              GENMASK(15, 0)
0754 #define PTP_TOD_SEC_MSB_TOD_SEC_MSB_SET(x)\
0755     FIELD_PREP(PTP_TOD_SEC_MSB_TOD_SEC_MSB, x)
0756 #define PTP_TOD_SEC_MSB_TOD_SEC_MSB_GET(x)\
0757     FIELD_GET(PTP_TOD_SEC_MSB_TOD_SEC_MSB, x)
0758 
0759 /*      PTP:PTP_PINS:PTP_TOD_SEC_LSB */
0760 #define PTP_TOD_SEC_LSB(g)        __REG(TARGET_PTP, 0, 1, 0, g, 8, 64, 8, 0, 1, 4)
0761 
0762 /*      PTP:PTP_PINS:PTP_TOD_NSEC */
0763 #define PTP_TOD_NSEC(g)           __REG(TARGET_PTP, 0, 1, 0, g, 8, 64, 12, 0, 1, 4)
0764 
0765 #define PTP_TOD_NSEC_TOD_NSEC                    GENMASK(29, 0)
0766 #define PTP_TOD_NSEC_TOD_NSEC_SET(x)\
0767     FIELD_PREP(PTP_TOD_NSEC_TOD_NSEC, x)
0768 #define PTP_TOD_NSEC_TOD_NSEC_GET(x)\
0769     FIELD_GET(PTP_TOD_NSEC_TOD_NSEC, x)
0770 
0771 /*      PTP:PTP_PINS:WF_HIGH_PERIOD */
0772 #define PTP_WF_HIGH_PERIOD(g)     __REG(TARGET_PTP,\
0773                     0, 1, 0, g, 8, 64, 24, 0, 1, 4)
0774 
0775 #define PTP_WF_HIGH_PERIOD_PIN_WFH(x)            ((x) & GENMASK(29, 0))
0776 #define PTP_WF_HIGH_PERIOD_PIN_WFH_M             GENMASK(29, 0)
0777 #define PTP_WF_HIGH_PERIOD_PIN_WFH_X(x)          ((x) & GENMASK(29, 0))
0778 
0779 /*      PTP:PTP_PINS:WF_LOW_PERIOD */
0780 #define PTP_WF_LOW_PERIOD(g)      __REG(TARGET_PTP,\
0781                     0, 1, 0, g, 8, 64, 28, 0, 1, 4)
0782 
0783 #define PTP_WF_LOW_PERIOD_PIN_WFL(x)             ((x) & GENMASK(29, 0))
0784 #define PTP_WF_LOW_PERIOD_PIN_WFL_M              GENMASK(29, 0)
0785 #define PTP_WF_LOW_PERIOD_PIN_WFL_X(x)           ((x) & GENMASK(29, 0))
0786 
0787 /*      PTP:PTP_TS_FIFO:PTP_TWOSTEP_CTRL */
0788 #define PTP_TWOSTEP_CTRL          __REG(TARGET_PTP, 0, 1, 612, 0, 1, 12, 0, 0, 1, 4)
0789 
0790 #define PTP_TWOSTEP_CTRL_NXT                     BIT(11)
0791 #define PTP_TWOSTEP_CTRL_NXT_SET(x)\
0792     FIELD_PREP(PTP_TWOSTEP_CTRL_NXT, x)
0793 #define PTP_TWOSTEP_CTRL_NXT_GET(x)\
0794     FIELD_GET(PTP_TWOSTEP_CTRL_NXT, x)
0795 
0796 #define PTP_TWOSTEP_CTRL_VLD                     BIT(10)
0797 #define PTP_TWOSTEP_CTRL_VLD_SET(x)\
0798     FIELD_PREP(PTP_TWOSTEP_CTRL_VLD, x)
0799 #define PTP_TWOSTEP_CTRL_VLD_GET(x)\
0800     FIELD_GET(PTP_TWOSTEP_CTRL_VLD, x)
0801 
0802 #define PTP_TWOSTEP_CTRL_STAMP_TX                BIT(9)
0803 #define PTP_TWOSTEP_CTRL_STAMP_TX_SET(x)\
0804     FIELD_PREP(PTP_TWOSTEP_CTRL_STAMP_TX, x)
0805 #define PTP_TWOSTEP_CTRL_STAMP_TX_GET(x)\
0806     FIELD_GET(PTP_TWOSTEP_CTRL_STAMP_TX, x)
0807 
0808 #define PTP_TWOSTEP_CTRL_STAMP_PORT              GENMASK(8, 1)
0809 #define PTP_TWOSTEP_CTRL_STAMP_PORT_SET(x)\
0810     FIELD_PREP(PTP_TWOSTEP_CTRL_STAMP_PORT, x)
0811 #define PTP_TWOSTEP_CTRL_STAMP_PORT_GET(x)\
0812     FIELD_GET(PTP_TWOSTEP_CTRL_STAMP_PORT, x)
0813 
0814 #define PTP_TWOSTEP_CTRL_OVFL                    BIT(0)
0815 #define PTP_TWOSTEP_CTRL_OVFL_SET(x)\
0816     FIELD_PREP(PTP_TWOSTEP_CTRL_OVFL, x)
0817 #define PTP_TWOSTEP_CTRL_OVFL_GET(x)\
0818     FIELD_GET(PTP_TWOSTEP_CTRL_OVFL, x)
0819 
0820 /*      PTP:PTP_TS_FIFO:PTP_TWOSTEP_STAMP */
0821 #define PTP_TWOSTEP_STAMP         __REG(TARGET_PTP, 0, 1, 612, 0, 1, 12, 4, 0, 1, 4)
0822 
0823 #define PTP_TWOSTEP_STAMP_STAMP_NSEC             GENMASK(31, 2)
0824 #define PTP_TWOSTEP_STAMP_STAMP_NSEC_SET(x)\
0825     FIELD_PREP(PTP_TWOSTEP_STAMP_STAMP_NSEC, x)
0826 #define PTP_TWOSTEP_STAMP_STAMP_NSEC_GET(x)\
0827     FIELD_GET(PTP_TWOSTEP_STAMP_STAMP_NSEC, x)
0828 
0829 /*      DEVCPU_QS:XTR:XTR_GRP_CFG */
0830 #define QS_XTR_GRP_CFG(r)         __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 0, r, 2, 4)
0831 
0832 #define QS_XTR_GRP_CFG_MODE                      GENMASK(3, 2)
0833 #define QS_XTR_GRP_CFG_MODE_SET(x)\
0834     FIELD_PREP(QS_XTR_GRP_CFG_MODE, x)
0835 #define QS_XTR_GRP_CFG_MODE_GET(x)\
0836     FIELD_GET(QS_XTR_GRP_CFG_MODE, x)
0837 
0838 #define QS_XTR_GRP_CFG_BYTE_SWAP                 BIT(0)
0839 #define QS_XTR_GRP_CFG_BYTE_SWAP_SET(x)\
0840     FIELD_PREP(QS_XTR_GRP_CFG_BYTE_SWAP, x)
0841 #define QS_XTR_GRP_CFG_BYTE_SWAP_GET(x)\
0842     FIELD_GET(QS_XTR_GRP_CFG_BYTE_SWAP, x)
0843 
0844 /*      DEVCPU_QS:XTR:XTR_RD */
0845 #define QS_XTR_RD(r)              __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 8, r, 2, 4)
0846 
0847 /*      DEVCPU_QS:XTR:XTR_FLUSH */
0848 #define QS_XTR_FLUSH              __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 24, 0, 1, 4)
0849 
0850 /*      DEVCPU_QS:XTR:XTR_DATA_PRESENT */
0851 #define QS_XTR_DATA_PRESENT       __REG(TARGET_QS, 0, 1, 0, 0, 1, 36, 28, 0, 1, 4)
0852 
0853 /*      DEVCPU_QS:INJ:INJ_GRP_CFG */
0854 #define QS_INJ_GRP_CFG(r)         __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 0, r, 2, 4)
0855 
0856 #define QS_INJ_GRP_CFG_MODE                      GENMASK(3, 2)
0857 #define QS_INJ_GRP_CFG_MODE_SET(x)\
0858     FIELD_PREP(QS_INJ_GRP_CFG_MODE, x)
0859 #define QS_INJ_GRP_CFG_MODE_GET(x)\
0860     FIELD_GET(QS_INJ_GRP_CFG_MODE, x)
0861 
0862 #define QS_INJ_GRP_CFG_BYTE_SWAP                 BIT(0)
0863 #define QS_INJ_GRP_CFG_BYTE_SWAP_SET(x)\
0864     FIELD_PREP(QS_INJ_GRP_CFG_BYTE_SWAP, x)
0865 #define QS_INJ_GRP_CFG_BYTE_SWAP_GET(x)\
0866     FIELD_GET(QS_INJ_GRP_CFG_BYTE_SWAP, x)
0867 
0868 /*      DEVCPU_QS:INJ:INJ_WR */
0869 #define QS_INJ_WR(r)              __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 8, r, 2, 4)
0870 
0871 /*      DEVCPU_QS:INJ:INJ_CTRL */
0872 #define QS_INJ_CTRL(r)            __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 16, r, 2, 4)
0873 
0874 #define QS_INJ_CTRL_GAP_SIZE                     GENMASK(24, 21)
0875 #define QS_INJ_CTRL_GAP_SIZE_SET(x)\
0876     FIELD_PREP(QS_INJ_CTRL_GAP_SIZE, x)
0877 #define QS_INJ_CTRL_GAP_SIZE_GET(x)\
0878     FIELD_GET(QS_INJ_CTRL_GAP_SIZE, x)
0879 
0880 #define QS_INJ_CTRL_EOF                          BIT(19)
0881 #define QS_INJ_CTRL_EOF_SET(x)\
0882     FIELD_PREP(QS_INJ_CTRL_EOF, x)
0883 #define QS_INJ_CTRL_EOF_GET(x)\
0884     FIELD_GET(QS_INJ_CTRL_EOF, x)
0885 
0886 #define QS_INJ_CTRL_SOF                          BIT(18)
0887 #define QS_INJ_CTRL_SOF_SET(x)\
0888     FIELD_PREP(QS_INJ_CTRL_SOF, x)
0889 #define QS_INJ_CTRL_SOF_GET(x)\
0890     FIELD_GET(QS_INJ_CTRL_SOF, x)
0891 
0892 #define QS_INJ_CTRL_VLD_BYTES                    GENMASK(17, 16)
0893 #define QS_INJ_CTRL_VLD_BYTES_SET(x)\
0894     FIELD_PREP(QS_INJ_CTRL_VLD_BYTES, x)
0895 #define QS_INJ_CTRL_VLD_BYTES_GET(x)\
0896     FIELD_GET(QS_INJ_CTRL_VLD_BYTES, x)
0897 
0898 /*      DEVCPU_QS:INJ:INJ_STATUS */
0899 #define QS_INJ_STATUS             __REG(TARGET_QS, 0, 1, 36, 0, 1, 40, 24, 0, 1, 4)
0900 
0901 #define QS_INJ_STATUS_WMARK_REACHED              GENMASK(5, 4)
0902 #define QS_INJ_STATUS_WMARK_REACHED_SET(x)\
0903     FIELD_PREP(QS_INJ_STATUS_WMARK_REACHED, x)
0904 #define QS_INJ_STATUS_WMARK_REACHED_GET(x)\
0905     FIELD_GET(QS_INJ_STATUS_WMARK_REACHED, x)
0906 
0907 #define QS_INJ_STATUS_FIFO_RDY                   GENMASK(3, 2)
0908 #define QS_INJ_STATUS_FIFO_RDY_SET(x)\
0909     FIELD_PREP(QS_INJ_STATUS_FIFO_RDY, x)
0910 #define QS_INJ_STATUS_FIFO_RDY_GET(x)\
0911     FIELD_GET(QS_INJ_STATUS_FIFO_RDY, x)
0912 
0913 /*      QSYS:SYSTEM:PORT_MODE */
0914 #define QSYS_PORT_MODE(r)         __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 0, r, 10, 4)
0915 
0916 #define QSYS_PORT_MODE_DEQUEUE_DIS               BIT(1)
0917 #define QSYS_PORT_MODE_DEQUEUE_DIS_SET(x)\
0918     FIELD_PREP(QSYS_PORT_MODE_DEQUEUE_DIS, x)
0919 #define QSYS_PORT_MODE_DEQUEUE_DIS_GET(x)\
0920     FIELD_GET(QSYS_PORT_MODE_DEQUEUE_DIS, x)
0921 
0922 /*      QSYS:SYSTEM:SWITCH_PORT_MODE */
0923 #define QSYS_SW_PORT_MODE(r)      __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 80, r, 9, 4)
0924 
0925 #define QSYS_SW_PORT_MODE_PORT_ENA               BIT(18)
0926 #define QSYS_SW_PORT_MODE_PORT_ENA_SET(x)\
0927     FIELD_PREP(QSYS_SW_PORT_MODE_PORT_ENA, x)
0928 #define QSYS_SW_PORT_MODE_PORT_ENA_GET(x)\
0929     FIELD_GET(QSYS_SW_PORT_MODE_PORT_ENA, x)
0930 
0931 #define QSYS_SW_PORT_MODE_SCH_NEXT_CFG           GENMASK(16, 14)
0932 #define QSYS_SW_PORT_MODE_SCH_NEXT_CFG_SET(x)\
0933     FIELD_PREP(QSYS_SW_PORT_MODE_SCH_NEXT_CFG, x)
0934 #define QSYS_SW_PORT_MODE_SCH_NEXT_CFG_GET(x)\
0935     FIELD_GET(QSYS_SW_PORT_MODE_SCH_NEXT_CFG, x)
0936 
0937 #define QSYS_SW_PORT_MODE_INGRESS_DROP_MODE      BIT(12)
0938 #define QSYS_SW_PORT_MODE_INGRESS_DROP_MODE_SET(x)\
0939     FIELD_PREP(QSYS_SW_PORT_MODE_INGRESS_DROP_MODE, x)
0940 #define QSYS_SW_PORT_MODE_INGRESS_DROP_MODE_GET(x)\
0941     FIELD_GET(QSYS_SW_PORT_MODE_INGRESS_DROP_MODE, x)
0942 
0943 #define QSYS_SW_PORT_MODE_TX_PFC_ENA             GENMASK(11, 4)
0944 #define QSYS_SW_PORT_MODE_TX_PFC_ENA_SET(x)\
0945     FIELD_PREP(QSYS_SW_PORT_MODE_TX_PFC_ENA, x)
0946 #define QSYS_SW_PORT_MODE_TX_PFC_ENA_GET(x)\
0947     FIELD_GET(QSYS_SW_PORT_MODE_TX_PFC_ENA, x)
0948 
0949 #define QSYS_SW_PORT_MODE_AGING_MODE             GENMASK(1, 0)
0950 #define QSYS_SW_PORT_MODE_AGING_MODE_SET(x)\
0951     FIELD_PREP(QSYS_SW_PORT_MODE_AGING_MODE, x)
0952 #define QSYS_SW_PORT_MODE_AGING_MODE_GET(x)\
0953     FIELD_GET(QSYS_SW_PORT_MODE_AGING_MODE, x)
0954 
0955 /*      QSYS:SYSTEM:SW_STATUS */
0956 #define QSYS_SW_STATUS(r)         __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 164, r, 9, 4)
0957 
0958 #define QSYS_SW_STATUS_EQ_AVAIL                  GENMASK(7, 0)
0959 #define QSYS_SW_STATUS_EQ_AVAIL_SET(x)\
0960     FIELD_PREP(QSYS_SW_STATUS_EQ_AVAIL, x)
0961 #define QSYS_SW_STATUS_EQ_AVAIL_GET(x)\
0962     FIELD_GET(QSYS_SW_STATUS_EQ_AVAIL, x)
0963 
0964 /*      QSYS:SYSTEM:CPU_GROUP_MAP */
0965 #define QSYS_CPU_GROUP_MAP        __REG(TARGET_QSYS, 0, 1, 28008, 0, 1, 216, 204, 0, 1, 4)
0966 
0967 /*      QSYS:RES_CTRL:RES_CFG */
0968 #define QSYS_RES_CFG(g)           __REG(TARGET_QSYS, 0, 1, 32768, g, 1024, 8, 0, 0, 1, 4)
0969 
0970 /*      REW:PORT:PORT_VLAN_CFG */
0971 #define REW_PORT_VLAN_CFG(g)      __REG(TARGET_REW, 0, 1, 0, g, 10, 128, 0, 0, 1, 4)
0972 
0973 #define REW_PORT_VLAN_CFG_PORT_TPID              GENMASK(31, 16)
0974 #define REW_PORT_VLAN_CFG_PORT_TPID_SET(x)\
0975     FIELD_PREP(REW_PORT_VLAN_CFG_PORT_TPID, x)
0976 #define REW_PORT_VLAN_CFG_PORT_TPID_GET(x)\
0977     FIELD_GET(REW_PORT_VLAN_CFG_PORT_TPID, x)
0978 
0979 #define REW_PORT_VLAN_CFG_PORT_VID               GENMASK(11, 0)
0980 #define REW_PORT_VLAN_CFG_PORT_VID_SET(x)\
0981     FIELD_PREP(REW_PORT_VLAN_CFG_PORT_VID, x)
0982 #define REW_PORT_VLAN_CFG_PORT_VID_GET(x)\
0983     FIELD_GET(REW_PORT_VLAN_CFG_PORT_VID, x)
0984 
0985 /*      REW:PORT:TAG_CFG */
0986 #define REW_TAG_CFG(g)            __REG(TARGET_REW, 0, 1, 0, g, 10, 128, 4, 0, 1, 4)
0987 
0988 #define REW_TAG_CFG_TAG_CFG                      GENMASK(8, 7)
0989 #define REW_TAG_CFG_TAG_CFG_SET(x)\
0990     FIELD_PREP(REW_TAG_CFG_TAG_CFG, x)
0991 #define REW_TAG_CFG_TAG_CFG_GET(x)\
0992     FIELD_GET(REW_TAG_CFG_TAG_CFG, x)
0993 
0994 #define REW_TAG_CFG_TAG_TPID_CFG                 GENMASK(6, 5)
0995 #define REW_TAG_CFG_TAG_TPID_CFG_SET(x)\
0996     FIELD_PREP(REW_TAG_CFG_TAG_TPID_CFG, x)
0997 #define REW_TAG_CFG_TAG_TPID_CFG_GET(x)\
0998     FIELD_GET(REW_TAG_CFG_TAG_TPID_CFG, x)
0999 
1000 /*      REW:PORT:PORT_CFG */
1001 #define REW_PORT_CFG(g)           __REG(TARGET_REW, 0, 1, 0, g, 10, 128, 8, 0, 1, 4)
1002 
1003 #define REW_PORT_CFG_NO_REWRITE                  BIT(0)
1004 #define REW_PORT_CFG_NO_REWRITE_SET(x)\
1005     FIELD_PREP(REW_PORT_CFG_NO_REWRITE, x)
1006 #define REW_PORT_CFG_NO_REWRITE_GET(x)\
1007     FIELD_GET(REW_PORT_CFG_NO_REWRITE, x)
1008 
1009 /*      SYS:SYSTEM:RESET_CFG */
1010 #define SYS_RESET_CFG             __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 0, 0, 1, 4)
1011 
1012 #define SYS_RESET_CFG_CORE_ENA                   BIT(0)
1013 #define SYS_RESET_CFG_CORE_ENA_SET(x)\
1014     FIELD_PREP(SYS_RESET_CFG_CORE_ENA, x)
1015 #define SYS_RESET_CFG_CORE_ENA_GET(x)\
1016     FIELD_GET(SYS_RESET_CFG_CORE_ENA, x)
1017 
1018 /*      SYS:SYSTEM:PORT_MODE */
1019 #define SYS_PORT_MODE(r)          __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 44, r, 10, 4)
1020 
1021 #define SYS_PORT_MODE_INCL_INJ_HDR               GENMASK(5, 4)
1022 #define SYS_PORT_MODE_INCL_INJ_HDR_SET(x)\
1023     FIELD_PREP(SYS_PORT_MODE_INCL_INJ_HDR, x)
1024 #define SYS_PORT_MODE_INCL_INJ_HDR_GET(x)\
1025     FIELD_GET(SYS_PORT_MODE_INCL_INJ_HDR, x)
1026 
1027 #define SYS_PORT_MODE_INCL_XTR_HDR               GENMASK(3, 2)
1028 #define SYS_PORT_MODE_INCL_XTR_HDR_SET(x)\
1029     FIELD_PREP(SYS_PORT_MODE_INCL_XTR_HDR, x)
1030 #define SYS_PORT_MODE_INCL_XTR_HDR_GET(x)\
1031     FIELD_GET(SYS_PORT_MODE_INCL_XTR_HDR, x)
1032 
1033 /*      SYS:SYSTEM:FRONT_PORT_MODE */
1034 #define SYS_FRONT_PORT_MODE(r)    __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 84, r, 8, 4)
1035 
1036 #define SYS_FRONT_PORT_MODE_HDX_MODE             BIT(1)
1037 #define SYS_FRONT_PORT_MODE_HDX_MODE_SET(x)\
1038     FIELD_PREP(SYS_FRONT_PORT_MODE_HDX_MODE, x)
1039 #define SYS_FRONT_PORT_MODE_HDX_MODE_GET(x)\
1040     FIELD_GET(SYS_FRONT_PORT_MODE_HDX_MODE, x)
1041 
1042 /*      SYS:SYSTEM:FRM_AGING */
1043 #define SYS_FRM_AGING             __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 116, 0, 1, 4)
1044 
1045 #define SYS_FRM_AGING_AGE_TX_ENA                 BIT(20)
1046 #define SYS_FRM_AGING_AGE_TX_ENA_SET(x)\
1047     FIELD_PREP(SYS_FRM_AGING_AGE_TX_ENA, x)
1048 #define SYS_FRM_AGING_AGE_TX_ENA_GET(x)\
1049     FIELD_GET(SYS_FRM_AGING_AGE_TX_ENA, x)
1050 
1051 /*      SYS:SYSTEM:STAT_CFG */
1052 #define SYS_STAT_CFG              __REG(TARGET_SYS, 0, 1, 4128, 0, 1, 168, 120, 0, 1, 4)
1053 
1054 #define SYS_STAT_CFG_STAT_VIEW                   GENMASK(9, 0)
1055 #define SYS_STAT_CFG_STAT_VIEW_SET(x)\
1056     FIELD_PREP(SYS_STAT_CFG_STAT_VIEW, x)
1057 #define SYS_STAT_CFG_STAT_VIEW_GET(x)\
1058     FIELD_GET(SYS_STAT_CFG_STAT_VIEW, x)
1059 
1060 /*      SYS:PAUSE_CFG:PAUSE_CFG */
1061 #define SYS_PAUSE_CFG(r)          __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 0, r, 9, 4)
1062 
1063 #define SYS_PAUSE_CFG_PAUSE_START                GENMASK(18, 10)
1064 #define SYS_PAUSE_CFG_PAUSE_START_SET(x)\
1065     FIELD_PREP(SYS_PAUSE_CFG_PAUSE_START, x)
1066 #define SYS_PAUSE_CFG_PAUSE_START_GET(x)\
1067     FIELD_GET(SYS_PAUSE_CFG_PAUSE_START, x)
1068 
1069 #define SYS_PAUSE_CFG_PAUSE_STOP                 GENMASK(9, 1)
1070 #define SYS_PAUSE_CFG_PAUSE_STOP_SET(x)\
1071     FIELD_PREP(SYS_PAUSE_CFG_PAUSE_STOP, x)
1072 #define SYS_PAUSE_CFG_PAUSE_STOP_GET(x)\
1073     FIELD_GET(SYS_PAUSE_CFG_PAUSE_STOP, x)
1074 
1075 #define SYS_PAUSE_CFG_PAUSE_ENA                  BIT(0)
1076 #define SYS_PAUSE_CFG_PAUSE_ENA_SET(x)\
1077     FIELD_PREP(SYS_PAUSE_CFG_PAUSE_ENA, x)
1078 #define SYS_PAUSE_CFG_PAUSE_ENA_GET(x)\
1079     FIELD_GET(SYS_PAUSE_CFG_PAUSE_ENA, x)
1080 
1081 /*      SYS:PAUSE_CFG:ATOP */
1082 #define SYS_ATOP(r)               __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 40, r, 9, 4)
1083 
1084 /*      SYS:PAUSE_CFG:ATOP_TOT_CFG */
1085 #define SYS_ATOP_TOT_CFG          __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 76, 0, 1, 4)
1086 
1087 /*      SYS:PAUSE_CFG:MAC_FC_CFG */
1088 #define SYS_MAC_FC_CFG(r)         __REG(TARGET_SYS, 0, 1, 4296, 0, 1, 112, 80, r, 8, 4)
1089 
1090 #define SYS_MAC_FC_CFG_FC_LINK_SPEED             GENMASK(27, 26)
1091 #define SYS_MAC_FC_CFG_FC_LINK_SPEED_SET(x)\
1092     FIELD_PREP(SYS_MAC_FC_CFG_FC_LINK_SPEED, x)
1093 #define SYS_MAC_FC_CFG_FC_LINK_SPEED_GET(x)\
1094     FIELD_GET(SYS_MAC_FC_CFG_FC_LINK_SPEED, x)
1095 
1096 #define SYS_MAC_FC_CFG_FC_LATENCY_CFG            GENMASK(25, 20)
1097 #define SYS_MAC_FC_CFG_FC_LATENCY_CFG_SET(x)\
1098     FIELD_PREP(SYS_MAC_FC_CFG_FC_LATENCY_CFG, x)
1099 #define SYS_MAC_FC_CFG_FC_LATENCY_CFG_GET(x)\
1100     FIELD_GET(SYS_MAC_FC_CFG_FC_LATENCY_CFG, x)
1101 
1102 #define SYS_MAC_FC_CFG_ZERO_PAUSE_ENA            BIT(18)
1103 #define SYS_MAC_FC_CFG_ZERO_PAUSE_ENA_SET(x)\
1104     FIELD_PREP(SYS_MAC_FC_CFG_ZERO_PAUSE_ENA, x)
1105 #define SYS_MAC_FC_CFG_ZERO_PAUSE_ENA_GET(x)\
1106     FIELD_GET(SYS_MAC_FC_CFG_ZERO_PAUSE_ENA, x)
1107 
1108 #define SYS_MAC_FC_CFG_TX_FC_ENA                 BIT(17)
1109 #define SYS_MAC_FC_CFG_TX_FC_ENA_SET(x)\
1110     FIELD_PREP(SYS_MAC_FC_CFG_TX_FC_ENA, x)
1111 #define SYS_MAC_FC_CFG_TX_FC_ENA_GET(x)\
1112     FIELD_GET(SYS_MAC_FC_CFG_TX_FC_ENA, x)
1113 
1114 #define SYS_MAC_FC_CFG_RX_FC_ENA                 BIT(16)
1115 #define SYS_MAC_FC_CFG_RX_FC_ENA_SET(x)\
1116     FIELD_PREP(SYS_MAC_FC_CFG_RX_FC_ENA, x)
1117 #define SYS_MAC_FC_CFG_RX_FC_ENA_GET(x)\
1118     FIELD_GET(SYS_MAC_FC_CFG_RX_FC_ENA, x)
1119 
1120 #define SYS_MAC_FC_CFG_PAUSE_VAL_CFG             GENMASK(15, 0)
1121 #define SYS_MAC_FC_CFG_PAUSE_VAL_CFG_SET(x)\
1122     FIELD_PREP(SYS_MAC_FC_CFG_PAUSE_VAL_CFG, x)
1123 #define SYS_MAC_FC_CFG_PAUSE_VAL_CFG_GET(x)\
1124     FIELD_GET(SYS_MAC_FC_CFG_PAUSE_VAL_CFG, x)
1125 
1126 /*      SYS:STAT:CNT */
1127 #define SYS_CNT(g)                __REG(TARGET_SYS, 0, 1, 0, g, 896, 4, 0, 0, 1, 4)
1128 
1129 /*      SYS:RAM_CTRL:RAM_INIT */
1130 #define SYS_RAM_INIT              __REG(TARGET_SYS, 0, 1, 4432, 0, 1, 4, 0, 0, 1, 4)
1131 
1132 #define SYS_RAM_INIT_RAM_INIT                    BIT(1)
1133 #define SYS_RAM_INIT_RAM_INIT_SET(x)\
1134     FIELD_PREP(SYS_RAM_INIT_RAM_INIT, x)
1135 #define SYS_RAM_INIT_RAM_INIT_GET(x)\
1136     FIELD_GET(SYS_RAM_INIT_RAM_INIT, x)
1137 
1138 #endif /* _LAN966X_REGS_H_ */