1*4882a593Smuzhiyun /* SPDX-License-Identifier: (GPL-2.0 OR MIT) */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Microsemi Ocelot Switch driver 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (c) 2017 Microsemi Corporation 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun #ifndef _MSCC_OCELOT_ANA_H_ 9*4882a593Smuzhiyun #define _MSCC_OCELOT_ANA_H_ 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun #define ANA_ANAGEFIL_B_DOM_EN BIT(22) 12*4882a593Smuzhiyun #define ANA_ANAGEFIL_B_DOM_VAL BIT(21) 13*4882a593Smuzhiyun #define ANA_ANAGEFIL_AGE_LOCKED BIT(20) 14*4882a593Smuzhiyun #define ANA_ANAGEFIL_PID_EN BIT(19) 15*4882a593Smuzhiyun #define ANA_ANAGEFIL_PID_VAL(x) (((x) << 14) & GENMASK(18, 14)) 16*4882a593Smuzhiyun #define ANA_ANAGEFIL_PID_VAL_M GENMASK(18, 14) 17*4882a593Smuzhiyun #define ANA_ANAGEFIL_PID_VAL_X(x) (((x) & GENMASK(18, 14)) >> 14) 18*4882a593Smuzhiyun #define ANA_ANAGEFIL_VID_EN BIT(13) 19*4882a593Smuzhiyun #define ANA_ANAGEFIL_VID_VAL(x) ((x) & GENMASK(12, 0)) 20*4882a593Smuzhiyun #define ANA_ANAGEFIL_VID_VAL_M GENMASK(12, 0) 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun #define ANA_STORMLIMIT_CFG_RSZ 0x4 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun #define ANA_STORMLIMIT_CFG_STORM_RATE(x) (((x) << 3) & GENMASK(6, 3)) 25*4882a593Smuzhiyun #define ANA_STORMLIMIT_CFG_STORM_RATE_M GENMASK(6, 3) 26*4882a593Smuzhiyun #define ANA_STORMLIMIT_CFG_STORM_RATE_X(x) (((x) & GENMASK(6, 3)) >> 3) 27*4882a593Smuzhiyun #define ANA_STORMLIMIT_CFG_STORM_UNIT BIT(2) 28*4882a593Smuzhiyun #define ANA_STORMLIMIT_CFG_STORM_MODE(x) ((x) & GENMASK(1, 0)) 29*4882a593Smuzhiyun #define ANA_STORMLIMIT_CFG_STORM_MODE_M GENMASK(1, 0) 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #define ANA_AUTOAGE_AGE_FAST BIT(21) 32*4882a593Smuzhiyun #define ANA_AUTOAGE_AGE_PERIOD(x) (((x) << 1) & GENMASK(20, 1)) 33*4882a593Smuzhiyun #define ANA_AUTOAGE_AGE_PERIOD_M GENMASK(20, 1) 34*4882a593Smuzhiyun #define ANA_AUTOAGE_AGE_PERIOD_X(x) (((x) & GENMASK(20, 1)) >> 1) 35*4882a593Smuzhiyun #define ANA_AUTOAGE_AUTOAGE_LOCKED BIT(0) 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun #define ANA_MACTOPTIONS_REDUCED_TABLE BIT(1) 38*4882a593Smuzhiyun #define ANA_MACTOPTIONS_SHADOW BIT(0) 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun #define ANA_AGENCTRL_FID_MASK(x) (((x) << 12) & GENMASK(23, 12)) 41*4882a593Smuzhiyun #define ANA_AGENCTRL_FID_MASK_M GENMASK(23, 12) 42*4882a593Smuzhiyun #define ANA_AGENCTRL_FID_MASK_X(x) (((x) & GENMASK(23, 12)) >> 12) 43*4882a593Smuzhiyun #define ANA_AGENCTRL_IGNORE_DMAC_FLAGS BIT(11) 44*4882a593Smuzhiyun #define ANA_AGENCTRL_IGNORE_SMAC_FLAGS BIT(10) 45*4882a593Smuzhiyun #define ANA_AGENCTRL_FLOOD_SPECIAL BIT(9) 46*4882a593Smuzhiyun #define ANA_AGENCTRL_FLOOD_IGNORE_VLAN BIT(8) 47*4882a593Smuzhiyun #define ANA_AGENCTRL_MIRROR_CPU BIT(7) 48*4882a593Smuzhiyun #define ANA_AGENCTRL_LEARN_CPU_COPY BIT(6) 49*4882a593Smuzhiyun #define ANA_AGENCTRL_LEARN_FWD_KILL BIT(5) 50*4882a593Smuzhiyun #define ANA_AGENCTRL_LEARN_IGNORE_VLAN BIT(4) 51*4882a593Smuzhiyun #define ANA_AGENCTRL_CPU_CPU_KILL_ENA BIT(3) 52*4882a593Smuzhiyun #define ANA_AGENCTRL_GREEN_COUNT_MODE BIT(2) 53*4882a593Smuzhiyun #define ANA_AGENCTRL_YELLOW_COUNT_MODE BIT(1) 54*4882a593Smuzhiyun #define ANA_AGENCTRL_RED_COUNT_MODE BIT(0) 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun #define ANA_FLOODING_RSZ 0x4 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun #define ANA_FLOODING_FLD_UNICAST(x) (((x) << 12) & GENMASK(17, 12)) 59*4882a593Smuzhiyun #define ANA_FLOODING_FLD_UNICAST_M GENMASK(17, 12) 60*4882a593Smuzhiyun #define ANA_FLOODING_FLD_UNICAST_X(x) (((x) & GENMASK(17, 12)) >> 12) 61*4882a593Smuzhiyun #define ANA_FLOODING_FLD_BROADCAST(x) (((x) << 6) & GENMASK(11, 6)) 62*4882a593Smuzhiyun #define ANA_FLOODING_FLD_BROADCAST_M GENMASK(11, 6) 63*4882a593Smuzhiyun #define ANA_FLOODING_FLD_BROADCAST_X(x) (((x) & GENMASK(11, 6)) >> 6) 64*4882a593Smuzhiyun #define ANA_FLOODING_FLD_MULTICAST(x) ((x) & GENMASK(5, 0)) 65*4882a593Smuzhiyun #define ANA_FLOODING_FLD_MULTICAST_M GENMASK(5, 0) 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC4_CTRL(x) (((x) << 18) & GENMASK(23, 18)) 68*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC4_CTRL_M GENMASK(23, 18) 69*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC4_CTRL_X(x) (((x) & GENMASK(23, 18)) >> 18) 70*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC4_DATA(x) (((x) << 12) & GENMASK(17, 12)) 71*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC4_DATA_M GENMASK(17, 12) 72*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC4_DATA_X(x) (((x) & GENMASK(17, 12)) >> 12) 73*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC6_CTRL(x) (((x) << 6) & GENMASK(11, 6)) 74*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC6_CTRL_M GENMASK(11, 6) 75*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC6_CTRL_X(x) (((x) & GENMASK(11, 6)) >> 6) 76*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC6_DATA(x) ((x) & GENMASK(5, 0)) 77*4882a593Smuzhiyun #define ANA_FLOODING_IPMC_FLD_MC6_DATA_M GENMASK(5, 0) 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun #define ANA_SFLOW_CFG_RSZ 0x4 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun #define ANA_SFLOW_CFG_SF_RATE(x) (((x) << 2) & GENMASK(13, 2)) 82*4882a593Smuzhiyun #define ANA_SFLOW_CFG_SF_RATE_M GENMASK(13, 2) 83*4882a593Smuzhiyun #define ANA_SFLOW_CFG_SF_RATE_X(x) (((x) & GENMASK(13, 2)) >> 2) 84*4882a593Smuzhiyun #define ANA_SFLOW_CFG_SF_SAMPLE_RX BIT(1) 85*4882a593Smuzhiyun #define ANA_SFLOW_CFG_SF_SAMPLE_TX BIT(0) 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun #define ANA_PORT_MODE_RSZ 0x4 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun #define ANA_PORT_MODE_REDTAG_PARSE_CFG BIT(3) 90*4882a593Smuzhiyun #define ANA_PORT_MODE_VLAN_PARSE_CFG(x) (((x) << 1) & GENMASK(2, 1)) 91*4882a593Smuzhiyun #define ANA_PORT_MODE_VLAN_PARSE_CFG_M GENMASK(2, 1) 92*4882a593Smuzhiyun #define ANA_PORT_MODE_VLAN_PARSE_CFG_X(x) (((x) & GENMASK(2, 1)) >> 1) 93*4882a593Smuzhiyun #define ANA_PORT_MODE_L3_PARSE_CFG BIT(0) 94*4882a593Smuzhiyun 95*4882a593Smuzhiyun #define ANA_CUT_THRU_CFG_RSZ 0x4 96*4882a593Smuzhiyun 97*4882a593Smuzhiyun #define ANA_PGID_PGID_RSZ 0x4 98*4882a593Smuzhiyun 99*4882a593Smuzhiyun #define ANA_PGID_PGID_PGID(x) ((x) & GENMASK(11, 0)) 100*4882a593Smuzhiyun #define ANA_PGID_PGID_PGID_M GENMASK(11, 0) 101*4882a593Smuzhiyun #define ANA_PGID_PGID_CPUQ_DST_PGID(x) (((x) << 27) & GENMASK(29, 27)) 102*4882a593Smuzhiyun #define ANA_PGID_PGID_CPUQ_DST_PGID_M GENMASK(29, 27) 103*4882a593Smuzhiyun #define ANA_PGID_PGID_CPUQ_DST_PGID_X(x) (((x) & GENMASK(29, 27)) >> 27) 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun #define ANA_TABLES_MACHDATA_VID(x) (((x) << 16) & GENMASK(28, 16)) 106*4882a593Smuzhiyun #define ANA_TABLES_MACHDATA_VID_M GENMASK(28, 16) 107*4882a593Smuzhiyun #define ANA_TABLES_MACHDATA_VID_X(x) (((x) & GENMASK(28, 16)) >> 16) 108*4882a593Smuzhiyun #define ANA_TABLES_MACHDATA_MACHDATA(x) ((x) & GENMASK(15, 0)) 109*4882a593Smuzhiyun #define ANA_TABLES_MACHDATA_MACHDATA_M GENMASK(15, 0) 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun #define ANA_TABLES_STREAMDATA_SSID_VALID BIT(16) 112*4882a593Smuzhiyun #define ANA_TABLES_STREAMDATA_SSID(x) (((x) << 9) & GENMASK(15, 9)) 113*4882a593Smuzhiyun #define ANA_TABLES_STREAMDATA_SSID_M GENMASK(15, 9) 114*4882a593Smuzhiyun #define ANA_TABLES_STREAMDATA_SSID_X(x) (((x) & GENMASK(15, 9)) >> 9) 115*4882a593Smuzhiyun #define ANA_TABLES_STREAMDATA_SFID_VALID BIT(8) 116*4882a593Smuzhiyun #define ANA_TABLES_STREAMDATA_SFID(x) ((x) & GENMASK(7, 0)) 117*4882a593Smuzhiyun #define ANA_TABLES_STREAMDATA_SFID_M GENMASK(7, 0) 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_MAC_CPU_COPY BIT(15) 120*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_SRC_KILL BIT(14) 121*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_IGNORE_VLAN BIT(13) 122*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_AGED_FLAG BIT(12) 123*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_VALID BIT(11) 124*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_ENTRYTYPE(x) (((x) << 9) & GENMASK(10, 9)) 125*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_ENTRYTYPE_M GENMASK(10, 9) 126*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_ENTRYTYPE_X(x) (((x) & GENMASK(10, 9)) >> 9) 127*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_DEST_IDX(x) (((x) << 3) & GENMASK(8, 3)) 128*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_DEST_IDX_M GENMASK(8, 3) 129*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_DEST_IDX_X(x) (((x) & GENMASK(8, 3)) >> 3) 130*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_MAC_TABLE_CMD(x) ((x) & GENMASK(2, 0)) 131*4882a593Smuzhiyun #define ANA_TABLES_MACACCESS_MAC_TABLE_CMD_M GENMASK(2, 0) 132*4882a593Smuzhiyun #define MACACCESS_CMD_IDLE 0 133*4882a593Smuzhiyun #define MACACCESS_CMD_LEARN 1 134*4882a593Smuzhiyun #define MACACCESS_CMD_FORGET 2 135*4882a593Smuzhiyun #define MACACCESS_CMD_AGE 3 136*4882a593Smuzhiyun #define MACACCESS_CMD_GET_NEXT 4 137*4882a593Smuzhiyun #define MACACCESS_CMD_INIT 5 138*4882a593Smuzhiyun #define MACACCESS_CMD_READ 6 139*4882a593Smuzhiyun #define MACACCESS_CMD_WRITE 7 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_VLAN_PORT_MASK(x) (((x) << 2) & GENMASK(13, 2)) 142*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_VLAN_PORT_MASK_M GENMASK(13, 2) 143*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_VLAN_PORT_MASK_X(x) (((x) & GENMASK(13, 2)) >> 2) 144*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_VLAN_TBL_CMD(x) ((x) & GENMASK(1, 0)) 145*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_VLAN_TBL_CMD_M GENMASK(1, 0) 146*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_CMD_IDLE 0x0 147*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_CMD_WRITE 0x2 148*4882a593Smuzhiyun #define ANA_TABLES_VLANACCESS_CMD_INIT 0x3 149*4882a593Smuzhiyun 150*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_VLAN_SEC_FWD_ENA BIT(17) 151*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_VLAN_FLOOD_DIS BIT(16) 152*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_VLAN_PRIV_VLAN BIT(15) 153*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_VLAN_LEARN_DISABLED BIT(14) 154*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_VLAN_MIRROR BIT(13) 155*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_VLAN_SRC_CHK BIT(12) 156*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_V_INDEX(x) ((x) & GENMASK(11, 0)) 157*4882a593Smuzhiyun #define ANA_TABLES_VLANTIDX_V_INDEX_M GENMASK(11, 0) 158*4882a593Smuzhiyun 159*4882a593Smuzhiyun #define ANA_TABLES_ISDXACCESS_ISDX_PORT_MASK(x) (((x) << 2) & GENMASK(8, 2)) 160*4882a593Smuzhiyun #define ANA_TABLES_ISDXACCESS_ISDX_PORT_MASK_M GENMASK(8, 2) 161*4882a593Smuzhiyun #define ANA_TABLES_ISDXACCESS_ISDX_PORT_MASK_X(x) (((x) & GENMASK(8, 2)) >> 2) 162*4882a593Smuzhiyun #define ANA_TABLES_ISDXACCESS_ISDX_TBL_CMD(x) ((x) & GENMASK(1, 0)) 163*4882a593Smuzhiyun #define ANA_TABLES_ISDXACCESS_ISDX_TBL_CMD_M GENMASK(1, 0) 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_SDLBI(x) (((x) << 21) & GENMASK(28, 21)) 166*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_SDLBI_M GENMASK(28, 21) 167*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_SDLBI_X(x) (((x) & GENMASK(28, 21)) >> 21) 168*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_MSTI(x) (((x) << 15) & GENMASK(20, 15)) 169*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_MSTI_M GENMASK(20, 15) 170*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_MSTI_X(x) (((x) & GENMASK(20, 15)) >> 15) 171*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_ES0_KEY_ENA BIT(14) 172*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_FORCE_ENA BIT(10) 173*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_INDEX(x) ((x) & GENMASK(7, 0)) 174*4882a593Smuzhiyun #define ANA_TABLES_ISDXTIDX_ISDX_INDEX_M GENMASK(7, 0) 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun #define ANA_TABLES_ENTRYLIM_RSZ 0x4 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun #define ANA_TABLES_ENTRYLIM_ENTRYLIM(x) (((x) << 14) & GENMASK(17, 14)) 179*4882a593Smuzhiyun #define ANA_TABLES_ENTRYLIM_ENTRYLIM_M GENMASK(17, 14) 180*4882a593Smuzhiyun #define ANA_TABLES_ENTRYLIM_ENTRYLIM_X(x) (((x) & GENMASK(17, 14)) >> 14) 181*4882a593Smuzhiyun #define ANA_TABLES_ENTRYLIM_ENTRYSTAT(x) ((x) & GENMASK(13, 0)) 182*4882a593Smuzhiyun #define ANA_TABLES_ENTRYLIM_ENTRYSTAT_M GENMASK(13, 0) 183*4882a593Smuzhiyun 184*4882a593Smuzhiyun #define ANA_TABLES_STREAMACCESS_GEN_REC_SEQ_NUM(x) (((x) << 4) & GENMASK(31, 4)) 185*4882a593Smuzhiyun #define ANA_TABLES_STREAMACCESS_GEN_REC_SEQ_NUM_M GENMASK(31, 4) 186*4882a593Smuzhiyun #define ANA_TABLES_STREAMACCESS_GEN_REC_SEQ_NUM_X(x) (((x) & GENMASK(31, 4)) >> 4) 187*4882a593Smuzhiyun #define ANA_TABLES_STREAMACCESS_SEQ_GEN_REC_ENA BIT(3) 188*4882a593Smuzhiyun #define ANA_TABLES_STREAMACCESS_GEN_REC_TYPE BIT(2) 189*4882a593Smuzhiyun #define ANA_TABLES_STREAMACCESS_STREAM_TBL_CMD(x) ((x) & GENMASK(1, 0)) 190*4882a593Smuzhiyun #define ANA_TABLES_STREAMACCESS_STREAM_TBL_CMD_M GENMASK(1, 0) 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_GEN_ERR_STATUS(x) (((x) << 30) & GENMASK(31, 30)) 193*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_GEN_ERR_STATUS_M GENMASK(31, 30) 194*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_GEN_ERR_STATUS_X(x) (((x) & GENMASK(31, 30)) >> 30) 195*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_S_INDEX(x) (((x) << 16) & GENMASK(22, 16)) 196*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_S_INDEX_M GENMASK(22, 16) 197*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_S_INDEX_X(x) (((x) & GENMASK(22, 16)) >> 16) 198*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_FORCE_SF_BEHAVIOUR BIT(14) 199*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_HISTORY_LEN(x) (((x) << 8) & GENMASK(13, 8)) 200*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_HISTORY_LEN_M GENMASK(13, 8) 201*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_HISTORY_LEN_X(x) (((x) & GENMASK(13, 8)) >> 8) 202*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_RESET_ON_ROGUE BIT(7) 203*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_REDTAG_POP BIT(6) 204*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_STREAM_SPLIT BIT(5) 205*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_SPACE_LOG2(x) ((x) & GENMASK(4, 0)) 206*4882a593Smuzhiyun #define ANA_TABLES_STREAMTIDX_SEQ_SPACE_LOG2_M GENMASK(4, 0) 207*4882a593Smuzhiyun 208*4882a593Smuzhiyun #define ANA_TABLES_SEQ_MASK_SPLIT_MASK(x) (((x) << 16) & GENMASK(22, 16)) 209*4882a593Smuzhiyun #define ANA_TABLES_SEQ_MASK_SPLIT_MASK_M GENMASK(22, 16) 210*4882a593Smuzhiyun #define ANA_TABLES_SEQ_MASK_SPLIT_MASK_X(x) (((x) & GENMASK(22, 16)) >> 16) 211*4882a593Smuzhiyun #define ANA_TABLES_SEQ_MASK_INPUT_PORT_MASK(x) ((x) & GENMASK(6, 0)) 212*4882a593Smuzhiyun #define ANA_TABLES_SEQ_MASK_INPUT_PORT_MASK_M GENMASK(6, 0) 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun #define ANA_TABLES_SFID_MASK_IGR_PORT_MASK(x) (((x) << 1) & GENMASK(7, 1)) 215*4882a593Smuzhiyun #define ANA_TABLES_SFID_MASK_IGR_PORT_MASK_M GENMASK(7, 1) 216*4882a593Smuzhiyun #define ANA_TABLES_SFID_MASK_IGR_PORT_MASK_X(x) (((x) & GENMASK(7, 1)) >> 1) 217*4882a593Smuzhiyun #define ANA_TABLES_SFID_MASK_IGR_SRCPORT_MATCH_ENA BIT(0) 218*4882a593Smuzhiyun 219*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_IGR_PRIO_MATCH_ENA BIT(22) 220*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_IGR_PRIO(x) (((x) << 19) & GENMASK(21, 19)) 221*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_IGR_PRIO_M GENMASK(21, 19) 222*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_IGR_PRIO_X(x) (((x) & GENMASK(21, 19)) >> 19) 223*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_FORCE_BLOCK BIT(18) 224*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_MAX_SDU_LEN(x) (((x) << 2) & GENMASK(17, 2)) 225*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_MAX_SDU_LEN_M GENMASK(17, 2) 226*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_MAX_SDU_LEN_X(x) (((x) & GENMASK(17, 2)) >> 2) 227*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_SFID_TBL_CMD(x) ((x) & GENMASK(1, 0)) 228*4882a593Smuzhiyun #define ANA_TABLES_SFIDACCESS_SFID_TBL_CMD_M GENMASK(1, 0) 229*4882a593Smuzhiyun 230*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_SGID_VALID BIT(26) 231*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_SGID(x) (((x) << 18) & GENMASK(25, 18)) 232*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_SGID_M GENMASK(25, 18) 233*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_SGID_X(x) (((x) & GENMASK(25, 18)) >> 18) 234*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_POL_ENA BIT(17) 235*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_POL_IDX(x) (((x) << 8) & GENMASK(16, 8)) 236*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_POL_IDX_M GENMASK(16, 8) 237*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_POL_IDX_X(x) (((x) & GENMASK(16, 8)) >> 8) 238*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_SFID_INDEX(x) ((x) & GENMASK(7, 0)) 239*4882a593Smuzhiyun #define ANA_TABLES_SFIDTIDX_SFID_INDEX_M GENMASK(7, 0) 240*4882a593Smuzhiyun 241*4882a593Smuzhiyun #define ANA_MSTI_STATE_RSZ 0x4 242*4882a593Smuzhiyun 243*4882a593Smuzhiyun #define ANA_OAM_UPM_LM_CNT_RSZ 0x4 244*4882a593Smuzhiyun 245*4882a593Smuzhiyun #define ANA_SG_ACCESS_CTRL_SGID(x) ((x) & GENMASK(7, 0)) 246*4882a593Smuzhiyun #define ANA_SG_ACCESS_CTRL_SGID_M GENMASK(7, 0) 247*4882a593Smuzhiyun #define ANA_SG_ACCESS_CTRL_CONFIG_CHANGE BIT(28) 248*4882a593Smuzhiyun 249*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_BASE_TIME_SEC_MSB(x) ((x) & GENMASK(15, 0)) 250*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_BASE_TIME_SEC_MSB_M GENMASK(15, 0) 251*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_LIST_LENGTH(x) (((x) << 16) & GENMASK(18, 16)) 252*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_LIST_LENGTH_M GENMASK(18, 16) 253*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_LIST_LENGTH_X(x) (((x) & GENMASK(18, 16)) >> 16) 254*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_GATE_ENABLE BIT(20) 255*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_INIT_IPS(x) (((x) << 21) & GENMASK(24, 21)) 256*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_INIT_IPS_M GENMASK(24, 21) 257*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_INIT_IPS_X(x) (((x) & GENMASK(24, 21)) >> 21) 258*4882a593Smuzhiyun #define ANA_SG_CONFIG_REG_3_INIT_GATE_STATE BIT(25) 259*4882a593Smuzhiyun 260*4882a593Smuzhiyun #define ANA_SG_GCL_GS_CONFIG_RSZ 0x4 261*4882a593Smuzhiyun 262*4882a593Smuzhiyun #define ANA_SG_GCL_GS_CONFIG_IPS(x) ((x) & GENMASK(3, 0)) 263*4882a593Smuzhiyun #define ANA_SG_GCL_GS_CONFIG_IPS_M GENMASK(3, 0) 264*4882a593Smuzhiyun #define ANA_SG_GCL_GS_CONFIG_GATE_STATE BIT(4) 265*4882a593Smuzhiyun 266*4882a593Smuzhiyun #define ANA_SG_GCL_TI_CONFIG_RSZ 0x4 267*4882a593Smuzhiyun 268*4882a593Smuzhiyun #define ANA_SG_STATUS_REG_3_CFG_CHG_TIME_SEC_MSB(x) ((x) & GENMASK(15, 0)) 269*4882a593Smuzhiyun #define ANA_SG_STATUS_REG_3_CFG_CHG_TIME_SEC_MSB_M GENMASK(15, 0) 270*4882a593Smuzhiyun #define ANA_SG_STATUS_REG_3_GATE_STATE BIT(16) 271*4882a593Smuzhiyun #define ANA_SG_STATUS_REG_3_IPS(x) (((x) << 20) & GENMASK(23, 20)) 272*4882a593Smuzhiyun #define ANA_SG_STATUS_REG_3_IPS_M GENMASK(23, 20) 273*4882a593Smuzhiyun #define ANA_SG_STATUS_REG_3_IPS_X(x) (((x) & GENMASK(23, 20)) >> 20) 274*4882a593Smuzhiyun #define ANA_SG_STATUS_REG_3_CONFIG_PENDING BIT(24) 275*4882a593Smuzhiyun 276*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_GSZ 0x100 277*4882a593Smuzhiyun 278*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_VID_AS_ISDX BIT(21) 279*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_AWARE_ENA BIT(20) 280*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_POP_CNT(x) (((x) << 18) & GENMASK(19, 18)) 281*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_POP_CNT_M GENMASK(19, 18) 282*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_POP_CNT_X(x) (((x) & GENMASK(19, 18)) >> 18) 283*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_INNER_TAG_ENA BIT(17) 284*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_TAG_TYPE BIT(16) 285*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_DEI BIT(15) 286*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_PCP(x) (((x) << 12) & GENMASK(14, 12)) 287*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_PCP_M GENMASK(14, 12) 288*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_PCP_X(x) (((x) & GENMASK(14, 12)) >> 12) 289*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_VID(x) ((x) & GENMASK(11, 0)) 290*4882a593Smuzhiyun #define ANA_PORT_VLAN_CFG_VLAN_VID_M GENMASK(11, 0) 291*4882a593Smuzhiyun 292*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_GSZ 0x100 293*4882a593Smuzhiyun 294*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_DROP_UNTAGGED_ENA BIT(6) 295*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_DROP_S_TAGGED_ENA BIT(5) 296*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_DROP_C_TAGGED_ENA BIT(4) 297*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_DROP_PRIO_S_TAGGED_ENA BIT(3) 298*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_DROP_PRIO_C_TAGGED_ENA BIT(2) 299*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_DROP_NULL_MAC_ENA BIT(1) 300*4882a593Smuzhiyun #define ANA_PORT_DROP_CFG_DROP_MC_SMAC_ENA BIT(0) 301*4882a593Smuzhiyun 302*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_GSZ 0x100 303*4882a593Smuzhiyun 304*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_DP_DEFAULT_VAL BIT(8) 305*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_QOS_DEFAULT_VAL(x) (((x) << 5) & GENMASK(7, 5)) 306*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_QOS_DEFAULT_VAL_M GENMASK(7, 5) 307*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_QOS_DEFAULT_VAL_X(x) (((x) & GENMASK(7, 5)) >> 5) 308*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_QOS_DSCP_ENA BIT(4) 309*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_QOS_PCP_ENA BIT(3) 310*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_DSCP_TRANSLATE_ENA BIT(2) 311*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_DSCP_REWR_CFG(x) ((x) & GENMASK(1, 0)) 312*4882a593Smuzhiyun #define ANA_PORT_QOS_CFG_DSCP_REWR_CFG_M GENMASK(1, 0) 313*4882a593Smuzhiyun 314*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_GSZ 0x100 315*4882a593Smuzhiyun 316*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_S1_ENA BIT(14) 317*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_S1_DMAC_DIP_ENA(x) (((x) << 11) & GENMASK(13, 11)) 318*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_S1_DMAC_DIP_ENA_M GENMASK(13, 11) 319*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_S1_DMAC_DIP_ENA_X(x) (((x) & GENMASK(13, 11)) >> 11) 320*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_S1_VLAN_INNER_TAG_ENA(x) (((x) << 8) & GENMASK(10, 8)) 321*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_S1_VLAN_INNER_TAG_ENA_M GENMASK(10, 8) 322*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_S1_VLAN_INNER_TAG_ENA_X(x) (((x) & GENMASK(10, 8)) >> 8) 323*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_PAG_VAL(x) ((x) & GENMASK(7, 0)) 324*4882a593Smuzhiyun #define ANA_PORT_VCAP_CFG_PAG_VAL_M GENMASK(7, 0) 325*4882a593Smuzhiyun 326*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_GSZ 0x100 327*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_RSZ 0x4 328*4882a593Smuzhiyun 329*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP6_CFG(x) (((x) << 4) & GENMASK(6, 4)) 330*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP6_CFG_M GENMASK(6, 4) 331*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP6_CFG_X(x) (((x) & GENMASK(6, 4)) >> 4) 332*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP4_CFG(x) (((x) << 2) & GENMASK(3, 2)) 333*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP4_CFG_M GENMASK(3, 2) 334*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP4_CFG_X(x) (((x) & GENMASK(3, 2)) >> 2) 335*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_OTHER_CFG(x) ((x) & GENMASK(1, 0)) 336*4882a593Smuzhiyun #define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_OTHER_CFG_M GENMASK(1, 0) 337*4882a593Smuzhiyun 338*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_GSZ 0x100 339*4882a593Smuzhiyun 340*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_UDP_PAYLOAD_ENA(x) (((x) << 17) & GENMASK(18, 17)) 341*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_UDP_PAYLOAD_ENA_M GENMASK(18, 17) 342*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_UDP_PAYLOAD_ENA_X(x) (((x) & GENMASK(18, 17)) >> 17) 343*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_ETYPE_PAYLOAD_ENA(x) (((x) << 15) & GENMASK(16, 15)) 344*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_ETYPE_PAYLOAD_ENA_M GENMASK(16, 15) 345*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_ETYPE_PAYLOAD_ENA_X(x) (((x) & GENMASK(16, 15)) >> 15) 346*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_ENA BIT(14) 347*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_SNAP_DIS(x) (((x) << 12) & GENMASK(13, 12)) 348*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_SNAP_DIS_M GENMASK(13, 12) 349*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_SNAP_DIS_X(x) (((x) & GENMASK(13, 12)) >> 12) 350*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_ARP_DIS(x) (((x) << 10) & GENMASK(11, 10)) 351*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_ARP_DIS_M GENMASK(11, 10) 352*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_ARP_DIS_X(x) (((x) & GENMASK(11, 10)) >> 10) 353*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP_TCPUDP_DIS(x) (((x) << 8) & GENMASK(9, 8)) 354*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP_TCPUDP_DIS_M GENMASK(9, 8) 355*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP_TCPUDP_DIS_X(x) (((x) & GENMASK(9, 8)) >> 8) 356*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP_OTHER_DIS(x) (((x) << 6) & GENMASK(7, 6)) 357*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP_OTHER_DIS_M GENMASK(7, 6) 358*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP_OTHER_DIS_X(x) (((x) & GENMASK(7, 6)) >> 6) 359*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP6_CFG(x) (((x) << 2) & GENMASK(5, 2)) 360*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP6_CFG_M GENMASK(5, 2) 361*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_IP6_CFG_X(x) (((x) & GENMASK(5, 2)) >> 2) 362*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_OAM_DIS(x) ((x) & GENMASK(1, 0)) 363*4882a593Smuzhiyun #define ANA_PORT_VCAP_S2_CFG_S2_OAM_DIS_M GENMASK(1, 0) 364*4882a593Smuzhiyun 365*4882a593Smuzhiyun #define ANA_PORT_PCP_DEI_MAP_GSZ 0x100 366*4882a593Smuzhiyun #define ANA_PORT_PCP_DEI_MAP_RSZ 0x4 367*4882a593Smuzhiyun 368*4882a593Smuzhiyun #define ANA_PORT_PCP_DEI_MAP_DP_PCP_DEI_VAL BIT(3) 369*4882a593Smuzhiyun #define ANA_PORT_PCP_DEI_MAP_QOS_PCP_DEI_VAL(x) ((x) & GENMASK(2, 0)) 370*4882a593Smuzhiyun #define ANA_PORT_PCP_DEI_MAP_QOS_PCP_DEI_VAL_M GENMASK(2, 0) 371*4882a593Smuzhiyun 372*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_GSZ 0x100 373*4882a593Smuzhiyun 374*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_VRAP_REDIR_ENA BIT(7) 375*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_MLD_REDIR_ENA BIT(6) 376*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_IGMP_REDIR_ENA BIT(5) 377*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_IPMC_CTRL_COPY_ENA BIT(4) 378*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_SRC_COPY_ENA BIT(3) 379*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_ALLBRIDGE_DROP_ENA BIT(2) 380*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_ALLBRIDGE_REDIR_ENA BIT(1) 381*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CFG_CPU_OAM_ENA BIT(0) 382*4882a593Smuzhiyun 383*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_BPDU_CFG_GSZ 0x100 384*4882a593Smuzhiyun 385*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_DROP_ENA(x) (((x) << 16) & GENMASK(31, 16)) 386*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_DROP_ENA_M GENMASK(31, 16) 387*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_DROP_ENA_X(x) (((x) & GENMASK(31, 16)) >> 16) 388*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_REDIR_ENA(x) ((x) & GENMASK(15, 0)) 389*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_REDIR_ENA_M GENMASK(15, 0) 390*4882a593Smuzhiyun 391*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_GARP_CFG_GSZ 0x100 392*4882a593Smuzhiyun 393*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_GARP_CFG_GARP_DROP_ENA(x) (((x) << 16) & GENMASK(31, 16)) 394*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_GARP_CFG_GARP_DROP_ENA_M GENMASK(31, 16) 395*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_GARP_CFG_GARP_DROP_ENA_X(x) (((x) & GENMASK(31, 16)) >> 16) 396*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_GARP_CFG_GARP_REDIR_ENA(x) ((x) & GENMASK(15, 0)) 397*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_GARP_CFG_GARP_REDIR_ENA_M GENMASK(15, 0) 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CCM_CFG_GSZ 0x100 400*4882a593Smuzhiyun 401*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CCM_CFG_CCM_DROP_ENA(x) (((x) << 16) & GENMASK(31, 16)) 402*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CCM_CFG_CCM_DROP_ENA_M GENMASK(31, 16) 403*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CCM_CFG_CCM_DROP_ENA_X(x) (((x) & GENMASK(31, 16)) >> 16) 404*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CCM_CFG_CCM_REDIR_ENA(x) ((x) & GENMASK(15, 0)) 405*4882a593Smuzhiyun #define ANA_PORT_CPU_FWD_CCM_CFG_CCM_REDIR_ENA_M GENMASK(15, 0) 406*4882a593Smuzhiyun 407*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_GSZ 0x100 408*4882a593Smuzhiyun 409*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_SRC_MIRROR_ENA BIT(15) 410*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LIMIT_DROP BIT(14) 411*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LIMIT_CPU BIT(13) 412*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LOCKED_PORTMOVE_DROP BIT(12) 413*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LOCKED_PORTMOVE_CPU BIT(11) 414*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LEARNDROP BIT(10) 415*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LEARNCPU BIT(9) 416*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LEARNAUTO BIT(8) 417*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LEARN_ENA BIT(7) 418*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_RECV_ENA BIT(6) 419*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_PORTID_VAL(x) (((x) << 2) & GENMASK(5, 2)) 420*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_PORTID_VAL_M GENMASK(5, 2) 421*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_PORTID_VAL_X(x) (((x) & GENMASK(5, 2)) >> 2) 422*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_USE_B_DOM_TBL BIT(1) 423*4882a593Smuzhiyun #define ANA_PORT_PORT_CFG_LSR_MODE BIT(0) 424*4882a593Smuzhiyun 425*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_GSZ 0x100 426*4882a593Smuzhiyun 427*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_POL_CPU_REDIR_8021 BIT(19) 428*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_POL_CPU_REDIR_IP BIT(18) 429*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_PORT_POL_ENA BIT(17) 430*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_QUEUE_POL_ENA(x) (((x) << 9) & GENMASK(16, 9)) 431*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_QUEUE_POL_ENA_M GENMASK(16, 9) 432*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_QUEUE_POL_ENA_X(x) (((x) & GENMASK(16, 9)) >> 9) 433*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_POL_ORDER(x) ((x) & GENMASK(8, 0)) 434*4882a593Smuzhiyun #define ANA_PORT_POL_CFG_POL_ORDER_M GENMASK(8, 0) 435*4882a593Smuzhiyun 436*4882a593Smuzhiyun #define ANA_PORT_PTP_CFG_GSZ 0x100 437*4882a593Smuzhiyun 438*4882a593Smuzhiyun #define ANA_PORT_PTP_CFG_PTP_BACKPLANE_MODE BIT(0) 439*4882a593Smuzhiyun 440*4882a593Smuzhiyun #define ANA_PORT_PTP_DLY1_CFG_GSZ 0x100 441*4882a593Smuzhiyun 442*4882a593Smuzhiyun #define ANA_PORT_PTP_DLY2_CFG_GSZ 0x100 443*4882a593Smuzhiyun 444*4882a593Smuzhiyun #define ANA_PORT_SFID_CFG_GSZ 0x100 445*4882a593Smuzhiyun #define ANA_PORT_SFID_CFG_RSZ 0x4 446*4882a593Smuzhiyun 447*4882a593Smuzhiyun #define ANA_PORT_SFID_CFG_SFID_VALID BIT(8) 448*4882a593Smuzhiyun #define ANA_PORT_SFID_CFG_SFID(x) ((x) & GENMASK(7, 0)) 449*4882a593Smuzhiyun #define ANA_PORT_SFID_CFG_SFID_M GENMASK(7, 0) 450*4882a593Smuzhiyun 451*4882a593Smuzhiyun #define ANA_PFC_PFC_CFG_GSZ 0x40 452*4882a593Smuzhiyun 453*4882a593Smuzhiyun #define ANA_PFC_PFC_CFG_RX_PFC_ENA(x) (((x) << 2) & GENMASK(9, 2)) 454*4882a593Smuzhiyun #define ANA_PFC_PFC_CFG_RX_PFC_ENA_M GENMASK(9, 2) 455*4882a593Smuzhiyun #define ANA_PFC_PFC_CFG_RX_PFC_ENA_X(x) (((x) & GENMASK(9, 2)) >> 2) 456*4882a593Smuzhiyun #define ANA_PFC_PFC_CFG_FC_LINK_SPEED(x) ((x) & GENMASK(1, 0)) 457*4882a593Smuzhiyun #define ANA_PFC_PFC_CFG_FC_LINK_SPEED_M GENMASK(1, 0) 458*4882a593Smuzhiyun 459*4882a593Smuzhiyun #define ANA_PFC_PFC_TIMER_GSZ 0x40 460*4882a593Smuzhiyun #define ANA_PFC_PFC_TIMER_RSZ 0x4 461*4882a593Smuzhiyun 462*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_GSZ 0x8 463*4882a593Smuzhiyun 464*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_MEP_IDX_P(x) (((x) << 6) & GENMASK(10, 6)) 465*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_MEP_IDX_P_M GENMASK(10, 6) 466*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_MEP_IDX_P_X(x) (((x) & GENMASK(10, 6)) >> 6) 467*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_MEP_IDX(x) (((x) << 1) & GENMASK(5, 1)) 468*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_MEP_IDX_M GENMASK(5, 1) 469*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_MEP_IDX_X(x) (((x) & GENMASK(5, 1)) >> 1) 470*4882a593Smuzhiyun #define ANA_IPT_OAM_MEP_CFG_MEP_IDX_ENA BIT(0) 471*4882a593Smuzhiyun 472*4882a593Smuzhiyun #define ANA_IPT_IPT_GSZ 0x8 473*4882a593Smuzhiyun 474*4882a593Smuzhiyun #define ANA_IPT_IPT_IPT_CFG(x) (((x) << 15) & GENMASK(16, 15)) 475*4882a593Smuzhiyun #define ANA_IPT_IPT_IPT_CFG_M GENMASK(16, 15) 476*4882a593Smuzhiyun #define ANA_IPT_IPT_IPT_CFG_X(x) (((x) & GENMASK(16, 15)) >> 15) 477*4882a593Smuzhiyun #define ANA_IPT_IPT_ISDX_P(x) (((x) << 7) & GENMASK(14, 7)) 478*4882a593Smuzhiyun #define ANA_IPT_IPT_ISDX_P_M GENMASK(14, 7) 479*4882a593Smuzhiyun #define ANA_IPT_IPT_ISDX_P_X(x) (((x) & GENMASK(14, 7)) >> 7) 480*4882a593Smuzhiyun #define ANA_IPT_IPT_PPT_IDX(x) ((x) & GENMASK(6, 0)) 481*4882a593Smuzhiyun #define ANA_IPT_IPT_PPT_IDX_M GENMASK(6, 0) 482*4882a593Smuzhiyun 483*4882a593Smuzhiyun #define ANA_PPT_PPT_RSZ 0x4 484*4882a593Smuzhiyun 485*4882a593Smuzhiyun #define ANA_FID_MAP_FID_MAP_RSZ 0x4 486*4882a593Smuzhiyun 487*4882a593Smuzhiyun #define ANA_FID_MAP_FID_MAP_FID_C_VAL(x) (((x) << 6) & GENMASK(11, 6)) 488*4882a593Smuzhiyun #define ANA_FID_MAP_FID_MAP_FID_C_VAL_M GENMASK(11, 6) 489*4882a593Smuzhiyun #define ANA_FID_MAP_FID_MAP_FID_C_VAL_X(x) (((x) & GENMASK(11, 6)) >> 6) 490*4882a593Smuzhiyun #define ANA_FID_MAP_FID_MAP_FID_B_VAL(x) ((x) & GENMASK(5, 0)) 491*4882a593Smuzhiyun #define ANA_FID_MAP_FID_MAP_FID_B_VAL_M GENMASK(5, 0) 492*4882a593Smuzhiyun 493*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_RND_ENA BIT(7) 494*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_DMAC_ENA BIT(6) 495*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_SMAC_ENA BIT(5) 496*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_IP6_FLOW_LBL_ENA BIT(4) 497*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_IP6_TCPUDP_ENA BIT(3) 498*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_IP4_SIPDIP_ENA BIT(2) 499*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_IP4_TCPUDP_ENA BIT(1) 500*4882a593Smuzhiyun #define ANA_AGGR_CFG_AC_ISDX_ENA BIT(0) 501*4882a593Smuzhiyun 502*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MLD(x) (((x) << 27) & GENMASK(29, 27)) 503*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MLD_M GENMASK(29, 27) 504*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MLD_X(x) (((x) & GENMASK(29, 27)) >> 27) 505*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_IGMP(x) (((x) << 24) & GENMASK(26, 24)) 506*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_IGMP_M GENMASK(26, 24) 507*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_IGMP_X(x) (((x) & GENMASK(26, 24)) >> 24) 508*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_IPMC_CTRL(x) (((x) << 21) & GENMASK(23, 21)) 509*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_IPMC_CTRL_M GENMASK(23, 21) 510*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_IPMC_CTRL_X(x) (((x) & GENMASK(23, 21)) >> 21) 511*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_ALLBRIDGE(x) (((x) << 18) & GENMASK(20, 18)) 512*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_ALLBRIDGE_M GENMASK(20, 18) 513*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_ALLBRIDGE_X(x) (((x) & GENMASK(20, 18)) >> 18) 514*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_LOCKED_PORTMOVE(x) (((x) << 15) & GENMASK(17, 15)) 515*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_LOCKED_PORTMOVE_M GENMASK(17, 15) 516*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_LOCKED_PORTMOVE_X(x) (((x) & GENMASK(17, 15)) >> 15) 517*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_SRC_COPY(x) (((x) << 12) & GENMASK(14, 12)) 518*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_SRC_COPY_M GENMASK(14, 12) 519*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_SRC_COPY_X(x) (((x) & GENMASK(14, 12)) >> 12) 520*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MAC_COPY(x) (((x) << 9) & GENMASK(11, 9)) 521*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MAC_COPY_M GENMASK(11, 9) 522*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MAC_COPY_X(x) (((x) & GENMASK(11, 9)) >> 9) 523*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_LRN(x) (((x) << 6) & GENMASK(8, 6)) 524*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_LRN_M GENMASK(8, 6) 525*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_LRN_X(x) (((x) & GENMASK(8, 6)) >> 6) 526*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MIRROR(x) (((x) << 3) & GENMASK(5, 3)) 527*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MIRROR_M GENMASK(5, 3) 528*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_MIRROR_X(x) (((x) & GENMASK(5, 3)) >> 3) 529*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_SFLOW(x) ((x) & GENMASK(2, 0)) 530*4882a593Smuzhiyun #define ANA_CPUQ_CFG_CPUQ_SFLOW_M GENMASK(2, 0) 531*4882a593Smuzhiyun 532*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_RSZ 0x4 533*4882a593Smuzhiyun 534*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_BPDU_VAL(x) (((x) << 6) & GENMASK(8, 6)) 535*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_BPDU_VAL_M GENMASK(8, 6) 536*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_BPDU_VAL_X(x) (((x) & GENMASK(8, 6)) >> 6) 537*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_GARP_VAL(x) (((x) << 3) & GENMASK(5, 3)) 538*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_GARP_VAL_M GENMASK(5, 3) 539*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_GARP_VAL_X(x) (((x) & GENMASK(5, 3)) >> 3) 540*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_CCM_VAL(x) ((x) & GENMASK(2, 0)) 541*4882a593Smuzhiyun #define ANA_CPUQ_8021_CFG_CPUQ_CCM_VAL_M GENMASK(2, 0) 542*4882a593Smuzhiyun 543*4882a593Smuzhiyun #define ANA_DSCP_CFG_RSZ 0x4 544*4882a593Smuzhiyun 545*4882a593Smuzhiyun #define ANA_DSCP_CFG_DP_DSCP_VAL BIT(11) 546*4882a593Smuzhiyun #define ANA_DSCP_CFG_QOS_DSCP_VAL(x) (((x) << 8) & GENMASK(10, 8)) 547*4882a593Smuzhiyun #define ANA_DSCP_CFG_QOS_DSCP_VAL_M GENMASK(10, 8) 548*4882a593Smuzhiyun #define ANA_DSCP_CFG_QOS_DSCP_VAL_X(x) (((x) & GENMASK(10, 8)) >> 8) 549*4882a593Smuzhiyun #define ANA_DSCP_CFG_DSCP_TRANSLATE_VAL(x) (((x) << 2) & GENMASK(7, 2)) 550*4882a593Smuzhiyun #define ANA_DSCP_CFG_DSCP_TRANSLATE_VAL_M GENMASK(7, 2) 551*4882a593Smuzhiyun #define ANA_DSCP_CFG_DSCP_TRANSLATE_VAL_X(x) (((x) & GENMASK(7, 2)) >> 2) 552*4882a593Smuzhiyun #define ANA_DSCP_CFG_DSCP_TRUST_ENA BIT(1) 553*4882a593Smuzhiyun #define ANA_DSCP_CFG_DSCP_REWR_ENA BIT(0) 554*4882a593Smuzhiyun 555*4882a593Smuzhiyun #define ANA_DSCP_REWR_CFG_RSZ 0x4 556*4882a593Smuzhiyun 557*4882a593Smuzhiyun #define ANA_VCAP_RNG_TYPE_CFG_RSZ 0x4 558*4882a593Smuzhiyun 559*4882a593Smuzhiyun #define ANA_VCAP_RNG_VAL_CFG_RSZ 0x4 560*4882a593Smuzhiyun 561*4882a593Smuzhiyun #define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MIN_VAL(x) (((x) << 16) & GENMASK(31, 16)) 562*4882a593Smuzhiyun #define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MIN_VAL_M GENMASK(31, 16) 563*4882a593Smuzhiyun #define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MIN_VAL_X(x) (((x) & GENMASK(31, 16)) >> 16) 564*4882a593Smuzhiyun #define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MAX_VAL(x) ((x) & GENMASK(15, 0)) 565*4882a593Smuzhiyun #define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MAX_VAL_M GENMASK(15, 0) 566*4882a593Smuzhiyun 567*4882a593Smuzhiyun #define ANA_VRAP_CFG_VRAP_VLAN_AWARE_ENA BIT(12) 568*4882a593Smuzhiyun #define ANA_VRAP_CFG_VRAP_VID(x) ((x) & GENMASK(11, 0)) 569*4882a593Smuzhiyun #define ANA_VRAP_CFG_VRAP_VID_M GENMASK(11, 0) 570*4882a593Smuzhiyun 571*4882a593Smuzhiyun #define ANA_DISCARD_CFG_DROP_TAGGING_ISDX0 BIT(3) 572*4882a593Smuzhiyun #define ANA_DISCARD_CFG_DROP_CTRLPROT_ISDX0 BIT(2) 573*4882a593Smuzhiyun #define ANA_DISCARD_CFG_DROP_TAGGING_S2_ENA BIT(1) 574*4882a593Smuzhiyun #define ANA_DISCARD_CFG_DROP_CTRLPROT_S2_ENA BIT(0) 575*4882a593Smuzhiyun 576*4882a593Smuzhiyun #define ANA_FID_CFG_VID_MC_ENA BIT(0) 577*4882a593Smuzhiyun 578*4882a593Smuzhiyun #define ANA_POL_PIR_CFG_GSZ 0x20 579*4882a593Smuzhiyun 580*4882a593Smuzhiyun #define ANA_POL_PIR_CFG_PIR_RATE(x) (((x) << 6) & GENMASK(20, 6)) 581*4882a593Smuzhiyun #define ANA_POL_PIR_CFG_PIR_RATE_M GENMASK(20, 6) 582*4882a593Smuzhiyun #define ANA_POL_PIR_CFG_PIR_RATE_X(x) (((x) & GENMASK(20, 6)) >> 6) 583*4882a593Smuzhiyun #define ANA_POL_PIR_CFG_PIR_BURST(x) ((x) & GENMASK(5, 0)) 584*4882a593Smuzhiyun #define ANA_POL_PIR_CFG_PIR_BURST_M GENMASK(5, 0) 585*4882a593Smuzhiyun 586*4882a593Smuzhiyun #define ANA_POL_CIR_CFG_GSZ 0x20 587*4882a593Smuzhiyun 588*4882a593Smuzhiyun #define ANA_POL_CIR_CFG_CIR_RATE(x) (((x) << 6) & GENMASK(20, 6)) 589*4882a593Smuzhiyun #define ANA_POL_CIR_CFG_CIR_RATE_M GENMASK(20, 6) 590*4882a593Smuzhiyun #define ANA_POL_CIR_CFG_CIR_RATE_X(x) (((x) & GENMASK(20, 6)) >> 6) 591*4882a593Smuzhiyun #define ANA_POL_CIR_CFG_CIR_BURST(x) ((x) & GENMASK(5, 0)) 592*4882a593Smuzhiyun #define ANA_POL_CIR_CFG_CIR_BURST_M GENMASK(5, 0) 593*4882a593Smuzhiyun 594*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_GSZ 0x20 595*4882a593Smuzhiyun 596*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_IPG_SIZE(x) (((x) << 5) & GENMASK(9, 5)) 597*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_IPG_SIZE_M GENMASK(9, 5) 598*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_IPG_SIZE_X(x) (((x) & GENMASK(9, 5)) >> 5) 599*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_FRM_MODE(x) (((x) << 3) & GENMASK(4, 3)) 600*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_FRM_MODE_M GENMASK(4, 3) 601*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_FRM_MODE_X(x) (((x) & GENMASK(4, 3)) >> 3) 602*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_DLB_COUPLED BIT(2) 603*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_CIR_ENA BIT(1) 604*4882a593Smuzhiyun #define ANA_POL_MODE_CFG_OVERSHOOT_ENA BIT(0) 605*4882a593Smuzhiyun 606*4882a593Smuzhiyun #define ANA_POL_PIR_STATE_GSZ 0x20 607*4882a593Smuzhiyun 608*4882a593Smuzhiyun #define ANA_POL_CIR_STATE_GSZ 0x20 609*4882a593Smuzhiyun 610*4882a593Smuzhiyun #define ANA_POL_STATE_GSZ 0x20 611*4882a593Smuzhiyun 612*4882a593Smuzhiyun #define ANA_POL_FLOWC_RSZ 0x4 613*4882a593Smuzhiyun 614*4882a593Smuzhiyun #define ANA_POL_FLOWC_POL_FLOWC BIT(0) 615*4882a593Smuzhiyun 616*4882a593Smuzhiyun #define ANA_POL_HYST_POL_FC_HYST(x) (((x) << 4) & GENMASK(9, 4)) 617*4882a593Smuzhiyun #define ANA_POL_HYST_POL_FC_HYST_M GENMASK(9, 4) 618*4882a593Smuzhiyun #define ANA_POL_HYST_POL_FC_HYST_X(x) (((x) & GENMASK(9, 4)) >> 4) 619*4882a593Smuzhiyun #define ANA_POL_HYST_POL_STOP_HYST(x) ((x) & GENMASK(3, 0)) 620*4882a593Smuzhiyun #define ANA_POL_HYST_POL_STOP_HYST_M GENMASK(3, 0) 621*4882a593Smuzhiyun 622*4882a593Smuzhiyun #define ANA_POL_MISC_CFG_POL_CLOSE_ALL BIT(1) 623*4882a593Smuzhiyun #define ANA_POL_MISC_CFG_POL_LEAK_DIS BIT(0) 624*4882a593Smuzhiyun 625*4882a593Smuzhiyun #endif 626