162306a36Sopenharmony_ci/* SPDX-License-Identifier: (GPL-2.0 OR MIT) */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Microsemi Ocelot Switch driver 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci * Copyright (c) 2017 Microsemi Corporation 662306a36Sopenharmony_ci */ 762306a36Sopenharmony_ci 862306a36Sopenharmony_ci#ifndef _MSCC_OCELOT_ANA_H_ 962306a36Sopenharmony_ci#define _MSCC_OCELOT_ANA_H_ 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#define ANA_ANAGEFIL_B_DOM_EN BIT(22) 1262306a36Sopenharmony_ci#define ANA_ANAGEFIL_B_DOM_VAL BIT(21) 1362306a36Sopenharmony_ci#define ANA_ANAGEFIL_AGE_LOCKED BIT(20) 1462306a36Sopenharmony_ci#define ANA_ANAGEFIL_PID_EN BIT(19) 1562306a36Sopenharmony_ci#define ANA_ANAGEFIL_PID_VAL(x) (((x) << 14) & GENMASK(18, 14)) 1662306a36Sopenharmony_ci#define ANA_ANAGEFIL_PID_VAL_M GENMASK(18, 14) 1762306a36Sopenharmony_ci#define ANA_ANAGEFIL_PID_VAL_X(x) (((x) & GENMASK(18, 14)) >> 14) 1862306a36Sopenharmony_ci#define ANA_ANAGEFIL_VID_EN BIT(13) 1962306a36Sopenharmony_ci#define ANA_ANAGEFIL_VID_VAL(x) ((x) & GENMASK(12, 0)) 2062306a36Sopenharmony_ci#define ANA_ANAGEFIL_VID_VAL_M GENMASK(12, 0) 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci#define ANA_STORMLIMIT_CFG_RSZ 0x4 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ci#define ANA_STORMLIMIT_CFG_STORM_RATE(x) (((x) << 3) & GENMASK(6, 3)) 2562306a36Sopenharmony_ci#define ANA_STORMLIMIT_CFG_STORM_RATE_M GENMASK(6, 3) 2662306a36Sopenharmony_ci#define ANA_STORMLIMIT_CFG_STORM_RATE_X(x) (((x) & GENMASK(6, 3)) >> 3) 2762306a36Sopenharmony_ci#define ANA_STORMLIMIT_CFG_STORM_UNIT BIT(2) 2862306a36Sopenharmony_ci#define ANA_STORMLIMIT_CFG_STORM_MODE(x) ((x) & GENMASK(1, 0)) 2962306a36Sopenharmony_ci#define ANA_STORMLIMIT_CFG_STORM_MODE_M GENMASK(1, 0) 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci#define ANA_AUTOAGE_AGE_FAST BIT(21) 3262306a36Sopenharmony_ci#define ANA_AUTOAGE_AGE_PERIOD(x) (((x) << 1) & GENMASK(20, 1)) 3362306a36Sopenharmony_ci#define ANA_AUTOAGE_AGE_PERIOD_M GENMASK(20, 1) 3462306a36Sopenharmony_ci#define ANA_AUTOAGE_AGE_PERIOD_X(x) (((x) & GENMASK(20, 1)) >> 1) 3562306a36Sopenharmony_ci#define ANA_AUTOAGE_AUTOAGE_LOCKED BIT(0) 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ci#define ANA_MACTOPTIONS_REDUCED_TABLE BIT(1) 3862306a36Sopenharmony_ci#define ANA_MACTOPTIONS_SHADOW BIT(0) 3962306a36Sopenharmony_ci 4062306a36Sopenharmony_ci#define ANA_AGENCTRL_FID_MASK(x) (((x) << 12) & GENMASK(23, 12)) 4162306a36Sopenharmony_ci#define ANA_AGENCTRL_FID_MASK_M GENMASK(23, 12) 4262306a36Sopenharmony_ci#define ANA_AGENCTRL_FID_MASK_X(x) (((x) & GENMASK(23, 12)) >> 12) 4362306a36Sopenharmony_ci#define ANA_AGENCTRL_IGNORE_DMAC_FLAGS BIT(11) 4462306a36Sopenharmony_ci#define ANA_AGENCTRL_IGNORE_SMAC_FLAGS BIT(10) 4562306a36Sopenharmony_ci#define ANA_AGENCTRL_FLOOD_SPECIAL BIT(9) 4662306a36Sopenharmony_ci#define ANA_AGENCTRL_FLOOD_IGNORE_VLAN BIT(8) 4762306a36Sopenharmony_ci#define ANA_AGENCTRL_MIRROR_CPU BIT(7) 4862306a36Sopenharmony_ci#define ANA_AGENCTRL_LEARN_CPU_COPY BIT(6) 4962306a36Sopenharmony_ci#define ANA_AGENCTRL_LEARN_FWD_KILL BIT(5) 5062306a36Sopenharmony_ci#define ANA_AGENCTRL_LEARN_IGNORE_VLAN BIT(4) 5162306a36Sopenharmony_ci#define ANA_AGENCTRL_CPU_CPU_KILL_ENA BIT(3) 5262306a36Sopenharmony_ci#define ANA_AGENCTRL_GREEN_COUNT_MODE BIT(2) 5362306a36Sopenharmony_ci#define ANA_AGENCTRL_YELLOW_COUNT_MODE BIT(1) 5462306a36Sopenharmony_ci#define ANA_AGENCTRL_RED_COUNT_MODE BIT(0) 5562306a36Sopenharmony_ci 5662306a36Sopenharmony_ci#define ANA_FLOODING_RSZ 0x4 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci#define ANA_FLOODING_FLD_UNICAST(x) (((x) << 12) & GENMASK(17, 12)) 5962306a36Sopenharmony_ci#define ANA_FLOODING_FLD_UNICAST_M GENMASK(17, 12) 6062306a36Sopenharmony_ci#define ANA_FLOODING_FLD_UNICAST_X(x) (((x) & GENMASK(17, 12)) >> 12) 6162306a36Sopenharmony_ci#define ANA_FLOODING_FLD_BROADCAST(x) (((x) << 6) & GENMASK(11, 6)) 6262306a36Sopenharmony_ci#define ANA_FLOODING_FLD_BROADCAST_M GENMASK(11, 6) 6362306a36Sopenharmony_ci#define ANA_FLOODING_FLD_BROADCAST_X(x) (((x) & GENMASK(11, 6)) >> 6) 6462306a36Sopenharmony_ci#define ANA_FLOODING_FLD_MULTICAST(x) ((x) & GENMASK(5, 0)) 6562306a36Sopenharmony_ci#define ANA_FLOODING_FLD_MULTICAST_M GENMASK(5, 0) 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC4_CTRL(x) (((x) << 18) & GENMASK(23, 18)) 6862306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC4_CTRL_M GENMASK(23, 18) 6962306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC4_CTRL_X(x) (((x) & GENMASK(23, 18)) >> 18) 7062306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC4_DATA(x) (((x) << 12) & GENMASK(17, 12)) 7162306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC4_DATA_M GENMASK(17, 12) 7262306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC4_DATA_X(x) (((x) & GENMASK(17, 12)) >> 12) 7362306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC6_CTRL(x) (((x) << 6) & GENMASK(11, 6)) 7462306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC6_CTRL_M GENMASK(11, 6) 7562306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC6_CTRL_X(x) (((x) & GENMASK(11, 6)) >> 6) 7662306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC6_DATA(x) ((x) & GENMASK(5, 0)) 7762306a36Sopenharmony_ci#define ANA_FLOODING_IPMC_FLD_MC6_DATA_M GENMASK(5, 0) 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci#define ANA_SFLOW_CFG_RSZ 0x4 8062306a36Sopenharmony_ci 8162306a36Sopenharmony_ci#define ANA_SFLOW_CFG_SF_RATE(x) (((x) << 2) & GENMASK(13, 2)) 8262306a36Sopenharmony_ci#define ANA_SFLOW_CFG_SF_RATE_M GENMASK(13, 2) 8362306a36Sopenharmony_ci#define ANA_SFLOW_CFG_SF_RATE_X(x) (((x) & GENMASK(13, 2)) >> 2) 8462306a36Sopenharmony_ci#define ANA_SFLOW_CFG_SF_SAMPLE_RX BIT(1) 8562306a36Sopenharmony_ci#define ANA_SFLOW_CFG_SF_SAMPLE_TX BIT(0) 8662306a36Sopenharmony_ci 8762306a36Sopenharmony_ci#define ANA_PORT_MODE_RSZ 0x4 8862306a36Sopenharmony_ci 8962306a36Sopenharmony_ci#define ANA_PORT_MODE_REDTAG_PARSE_CFG BIT(3) 9062306a36Sopenharmony_ci#define ANA_PORT_MODE_VLAN_PARSE_CFG(x) (((x) << 1) & GENMASK(2, 1)) 9162306a36Sopenharmony_ci#define ANA_PORT_MODE_VLAN_PARSE_CFG_M GENMASK(2, 1) 9262306a36Sopenharmony_ci#define ANA_PORT_MODE_VLAN_PARSE_CFG_X(x) (((x) & GENMASK(2, 1)) >> 1) 9362306a36Sopenharmony_ci#define ANA_PORT_MODE_L3_PARSE_CFG BIT(0) 9462306a36Sopenharmony_ci 9562306a36Sopenharmony_ci#define ANA_CUT_THRU_CFG_RSZ 0x4 9662306a36Sopenharmony_ci 9762306a36Sopenharmony_ci#define ANA_PGID_PGID_RSZ 0x4 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_ci#define ANA_PGID_PGID_PGID(x) ((x) & GENMASK(11, 0)) 10062306a36Sopenharmony_ci#define ANA_PGID_PGID_PGID_M GENMASK(11, 0) 10162306a36Sopenharmony_ci#define ANA_PGID_PGID_CPUQ_DST_PGID(x) (((x) << 27) & GENMASK(29, 27)) 10262306a36Sopenharmony_ci#define ANA_PGID_PGID_CPUQ_DST_PGID_M GENMASK(29, 27) 10362306a36Sopenharmony_ci#define ANA_PGID_PGID_CPUQ_DST_PGID_X(x) (((x) & GENMASK(29, 27)) >> 27) 10462306a36Sopenharmony_ci 10562306a36Sopenharmony_ci#define ANA_TABLES_MACHDATA_VID(x) (((x) << 16) & GENMASK(28, 16)) 10662306a36Sopenharmony_ci#define ANA_TABLES_MACHDATA_VID_M GENMASK(28, 16) 10762306a36Sopenharmony_ci#define ANA_TABLES_MACHDATA_VID_X(x) (((x) & GENMASK(28, 16)) >> 16) 10862306a36Sopenharmony_ci#define ANA_TABLES_MACHDATA_MACHDATA(x) ((x) & GENMASK(15, 0)) 10962306a36Sopenharmony_ci#define ANA_TABLES_MACHDATA_MACHDATA_M GENMASK(15, 0) 11062306a36Sopenharmony_ci 11162306a36Sopenharmony_ci#define ANA_TABLES_STREAMDATA_SSID_VALID BIT(16) 11262306a36Sopenharmony_ci#define ANA_TABLES_STREAMDATA_SSID(x) (((x) << 9) & GENMASK(15, 9)) 11362306a36Sopenharmony_ci#define ANA_TABLES_STREAMDATA_SSID_M GENMASK(15, 9) 11462306a36Sopenharmony_ci#define ANA_TABLES_STREAMDATA_SSID_X(x) (((x) & GENMASK(15, 9)) >> 9) 11562306a36Sopenharmony_ci#define ANA_TABLES_STREAMDATA_SFID_VALID BIT(8) 11662306a36Sopenharmony_ci#define ANA_TABLES_STREAMDATA_SFID(x) ((x) & GENMASK(7, 0)) 11762306a36Sopenharmony_ci#define ANA_TABLES_STREAMDATA_SFID_M GENMASK(7, 0) 11862306a36Sopenharmony_ci 11962306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_MAC_CPU_COPY BIT(15) 12062306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_SRC_KILL BIT(14) 12162306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_IGNORE_VLAN BIT(13) 12262306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_AGED_FLAG BIT(12) 12362306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_VALID BIT(11) 12462306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_ENTRYTYPE(x) (((x) << 9) & GENMASK(10, 9)) 12562306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_ENTRYTYPE_M GENMASK(10, 9) 12662306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_ENTRYTYPE_X(x) (((x) & GENMASK(10, 9)) >> 9) 12762306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_DEST_IDX(x) (((x) << 3) & GENMASK(8, 3)) 12862306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_DEST_IDX_M GENMASK(8, 3) 12962306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_DEST_IDX_X(x) (((x) & GENMASK(8, 3)) >> 3) 13062306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_MAC_TABLE_CMD(x) ((x) & GENMASK(2, 0)) 13162306a36Sopenharmony_ci#define ANA_TABLES_MACACCESS_MAC_TABLE_CMD_M GENMASK(2, 0) 13262306a36Sopenharmony_ci#define MACACCESS_CMD_IDLE 0 13362306a36Sopenharmony_ci#define MACACCESS_CMD_LEARN 1 13462306a36Sopenharmony_ci#define MACACCESS_CMD_FORGET 2 13562306a36Sopenharmony_ci#define MACACCESS_CMD_AGE 3 13662306a36Sopenharmony_ci#define MACACCESS_CMD_GET_NEXT 4 13762306a36Sopenharmony_ci#define MACACCESS_CMD_INIT 5 13862306a36Sopenharmony_ci#define MACACCESS_CMD_READ 6 13962306a36Sopenharmony_ci#define MACACCESS_CMD_WRITE 7 14062306a36Sopenharmony_ci 14162306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_VLAN_PORT_MASK(x) (((x) << 2) & GENMASK(13, 2)) 14262306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_VLAN_PORT_MASK_M GENMASK(13, 2) 14362306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_VLAN_PORT_MASK_X(x) (((x) & GENMASK(13, 2)) >> 2) 14462306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_VLAN_TBL_CMD(x) ((x) & GENMASK(1, 0)) 14562306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_VLAN_TBL_CMD_M GENMASK(1, 0) 14662306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_CMD_IDLE 0x0 14762306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_CMD_WRITE 0x2 14862306a36Sopenharmony_ci#define ANA_TABLES_VLANACCESS_CMD_INIT 0x3 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_VLAN_SEC_FWD_ENA BIT(17) 15162306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_VLAN_FLOOD_DIS BIT(16) 15262306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_VLAN_PRIV_VLAN BIT(15) 15362306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_VLAN_LEARN_DISABLED BIT(14) 15462306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_VLAN_MIRROR BIT(13) 15562306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_VLAN_SRC_CHK BIT(12) 15662306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_V_INDEX(x) ((x) & GENMASK(11, 0)) 15762306a36Sopenharmony_ci#define ANA_TABLES_VLANTIDX_V_INDEX_M GENMASK(11, 0) 15862306a36Sopenharmony_ci 15962306a36Sopenharmony_ci#define ANA_TABLES_ISDXACCESS_ISDX_PORT_MASK(x) (((x) << 2) & GENMASK(8, 2)) 16062306a36Sopenharmony_ci#define ANA_TABLES_ISDXACCESS_ISDX_PORT_MASK_M GENMASK(8, 2) 16162306a36Sopenharmony_ci#define ANA_TABLES_ISDXACCESS_ISDX_PORT_MASK_X(x) (((x) & GENMASK(8, 2)) >> 2) 16262306a36Sopenharmony_ci#define ANA_TABLES_ISDXACCESS_ISDX_TBL_CMD(x) ((x) & GENMASK(1, 0)) 16362306a36Sopenharmony_ci#define ANA_TABLES_ISDXACCESS_ISDX_TBL_CMD_M GENMASK(1, 0) 16462306a36Sopenharmony_ci 16562306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_SDLBI(x) (((x) << 21) & GENMASK(28, 21)) 16662306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_SDLBI_M GENMASK(28, 21) 16762306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_SDLBI_X(x) (((x) & GENMASK(28, 21)) >> 21) 16862306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_MSTI(x) (((x) << 15) & GENMASK(20, 15)) 16962306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_MSTI_M GENMASK(20, 15) 17062306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_MSTI_X(x) (((x) & GENMASK(20, 15)) >> 15) 17162306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_ES0_KEY_ENA BIT(14) 17262306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_FORCE_ENA BIT(10) 17362306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_INDEX(x) ((x) & GENMASK(7, 0)) 17462306a36Sopenharmony_ci#define ANA_TABLES_ISDXTIDX_ISDX_INDEX_M GENMASK(7, 0) 17562306a36Sopenharmony_ci 17662306a36Sopenharmony_ci#define ANA_TABLES_ENTRYLIM_RSZ 0x4 17762306a36Sopenharmony_ci 17862306a36Sopenharmony_ci#define ANA_TABLES_ENTRYLIM_ENTRYLIM(x) (((x) << 14) & GENMASK(17, 14)) 17962306a36Sopenharmony_ci#define ANA_TABLES_ENTRYLIM_ENTRYLIM_M GENMASK(17, 14) 18062306a36Sopenharmony_ci#define ANA_TABLES_ENTRYLIM_ENTRYLIM_X(x) (((x) & GENMASK(17, 14)) >> 14) 18162306a36Sopenharmony_ci#define ANA_TABLES_ENTRYLIM_ENTRYSTAT(x) ((x) & GENMASK(13, 0)) 18262306a36Sopenharmony_ci#define ANA_TABLES_ENTRYLIM_ENTRYSTAT_M GENMASK(13, 0) 18362306a36Sopenharmony_ci 18462306a36Sopenharmony_ci#define ANA_TABLES_STREAMACCESS_GEN_REC_SEQ_NUM(x) (((x) << 4) & GENMASK(31, 4)) 18562306a36Sopenharmony_ci#define ANA_TABLES_STREAMACCESS_GEN_REC_SEQ_NUM_M GENMASK(31, 4) 18662306a36Sopenharmony_ci#define ANA_TABLES_STREAMACCESS_GEN_REC_SEQ_NUM_X(x) (((x) & GENMASK(31, 4)) >> 4) 18762306a36Sopenharmony_ci#define ANA_TABLES_STREAMACCESS_SEQ_GEN_REC_ENA BIT(3) 18862306a36Sopenharmony_ci#define ANA_TABLES_STREAMACCESS_GEN_REC_TYPE BIT(2) 18962306a36Sopenharmony_ci#define ANA_TABLES_STREAMACCESS_STREAM_TBL_CMD(x) ((x) & GENMASK(1, 0)) 19062306a36Sopenharmony_ci#define ANA_TABLES_STREAMACCESS_STREAM_TBL_CMD_M GENMASK(1, 0) 19162306a36Sopenharmony_ci 19262306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_GEN_ERR_STATUS(x) (((x) << 30) & GENMASK(31, 30)) 19362306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_GEN_ERR_STATUS_M GENMASK(31, 30) 19462306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_GEN_ERR_STATUS_X(x) (((x) & GENMASK(31, 30)) >> 30) 19562306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_S_INDEX(x) (((x) << 16) & GENMASK(22, 16)) 19662306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_S_INDEX_M GENMASK(22, 16) 19762306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_S_INDEX_X(x) (((x) & GENMASK(22, 16)) >> 16) 19862306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_FORCE_SF_BEHAVIOUR BIT(14) 19962306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_HISTORY_LEN(x) (((x) << 8) & GENMASK(13, 8)) 20062306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_HISTORY_LEN_M GENMASK(13, 8) 20162306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_HISTORY_LEN_X(x) (((x) & GENMASK(13, 8)) >> 8) 20262306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_RESET_ON_ROGUE BIT(7) 20362306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_REDTAG_POP BIT(6) 20462306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_STREAM_SPLIT BIT(5) 20562306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_SPACE_LOG2(x) ((x) & GENMASK(4, 0)) 20662306a36Sopenharmony_ci#define ANA_TABLES_STREAMTIDX_SEQ_SPACE_LOG2_M GENMASK(4, 0) 20762306a36Sopenharmony_ci 20862306a36Sopenharmony_ci#define ANA_TABLES_SEQ_MASK_SPLIT_MASK(x) (((x) << 16) & GENMASK(22, 16)) 20962306a36Sopenharmony_ci#define ANA_TABLES_SEQ_MASK_SPLIT_MASK_M GENMASK(22, 16) 21062306a36Sopenharmony_ci#define ANA_TABLES_SEQ_MASK_SPLIT_MASK_X(x) (((x) & GENMASK(22, 16)) >> 16) 21162306a36Sopenharmony_ci#define ANA_TABLES_SEQ_MASK_INPUT_PORT_MASK(x) ((x) & GENMASK(6, 0)) 21262306a36Sopenharmony_ci#define ANA_TABLES_SEQ_MASK_INPUT_PORT_MASK_M GENMASK(6, 0) 21362306a36Sopenharmony_ci 21462306a36Sopenharmony_ci#define ANA_TABLES_SFID_MASK_IGR_PORT_MASK(x) (((x) << 1) & GENMASK(7, 1)) 21562306a36Sopenharmony_ci#define ANA_TABLES_SFID_MASK_IGR_PORT_MASK_M GENMASK(7, 1) 21662306a36Sopenharmony_ci#define ANA_TABLES_SFID_MASK_IGR_PORT_MASK_X(x) (((x) & GENMASK(7, 1)) >> 1) 21762306a36Sopenharmony_ci#define ANA_TABLES_SFID_MASK_IGR_SRCPORT_MATCH_ENA BIT(0) 21862306a36Sopenharmony_ci 21962306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_IGR_PRIO_MATCH_ENA BIT(22) 22062306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_IGR_PRIO(x) (((x) << 19) & GENMASK(21, 19)) 22162306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_IGR_PRIO_M GENMASK(21, 19) 22262306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_IGR_PRIO_X(x) (((x) & GENMASK(21, 19)) >> 19) 22362306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_FORCE_BLOCK BIT(18) 22462306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_MAX_SDU_LEN(x) (((x) << 2) & GENMASK(17, 2)) 22562306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_MAX_SDU_LEN_M GENMASK(17, 2) 22662306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_MAX_SDU_LEN_X(x) (((x) & GENMASK(17, 2)) >> 2) 22762306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_SFID_TBL_CMD(x) ((x) & GENMASK(1, 0)) 22862306a36Sopenharmony_ci#define ANA_TABLES_SFIDACCESS_SFID_TBL_CMD_M GENMASK(1, 0) 22962306a36Sopenharmony_ci 23062306a36Sopenharmony_ci#define SFIDACCESS_CMD_IDLE 0 23162306a36Sopenharmony_ci#define SFIDACCESS_CMD_READ 1 23262306a36Sopenharmony_ci#define SFIDACCESS_CMD_WRITE 2 23362306a36Sopenharmony_ci#define SFIDACCESS_CMD_INIT 3 23462306a36Sopenharmony_ci 23562306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_SGID_VALID BIT(26) 23662306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_SGID(x) (((x) << 18) & GENMASK(25, 18)) 23762306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_SGID_M GENMASK(25, 18) 23862306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_SGID_X(x) (((x) & GENMASK(25, 18)) >> 18) 23962306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_POL_ENA BIT(17) 24062306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_POL_IDX(x) (((x) << 8) & GENMASK(16, 8)) 24162306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_POL_IDX_M GENMASK(16, 8) 24262306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_POL_IDX_X(x) (((x) & GENMASK(16, 8)) >> 8) 24362306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_SFID_INDEX(x) ((x) & GENMASK(7, 0)) 24462306a36Sopenharmony_ci#define ANA_TABLES_SFIDTIDX_SFID_INDEX_M GENMASK(7, 0) 24562306a36Sopenharmony_ci 24662306a36Sopenharmony_ci#define ANA_MSTI_STATE_RSZ 0x4 24762306a36Sopenharmony_ci 24862306a36Sopenharmony_ci#define ANA_OAM_UPM_LM_CNT_RSZ 0x4 24962306a36Sopenharmony_ci 25062306a36Sopenharmony_ci#define ANA_SG_ACCESS_CTRL_SGID(x) ((x) & GENMASK(7, 0)) 25162306a36Sopenharmony_ci#define ANA_SG_ACCESS_CTRL_SGID_M GENMASK(7, 0) 25262306a36Sopenharmony_ci#define ANA_SG_ACCESS_CTRL_CONFIG_CHANGE BIT(28) 25362306a36Sopenharmony_ci 25462306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_BASE_TIME_SEC_MSB(x) ((x) & GENMASK(15, 0)) 25562306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_BASE_TIME_SEC_MSB_M GENMASK(15, 0) 25662306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_LIST_LENGTH(x) (((x) << 16) & GENMASK(18, 16)) 25762306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_LIST_LENGTH_M GENMASK(18, 16) 25862306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_LIST_LENGTH_X(x) (((x) & GENMASK(18, 16)) >> 16) 25962306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_GATE_ENABLE BIT(20) 26062306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_INIT_IPS(x) (((x) << 21) & GENMASK(24, 21)) 26162306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_INIT_IPS_M GENMASK(24, 21) 26262306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_INIT_IPS_X(x) (((x) & GENMASK(24, 21)) >> 21) 26362306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_IPV_VALID BIT(24) 26462306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_IPV_INVALID(x) (((x) << 24) & GENMASK(24, 24)) 26562306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_INIT_IPV(x) (((x) << 21) & GENMASK(23, 21)) 26662306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_INIT_IPV_M GENMASK(23, 21) 26762306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_INIT_IPV_X(x) (((x) & GENMASK(23, 21)) >> 21) 26862306a36Sopenharmony_ci#define ANA_SG_CONFIG_REG_3_INIT_GATE_STATE BIT(25) 26962306a36Sopenharmony_ci 27062306a36Sopenharmony_ci#define ANA_SG_GCL_GS_CONFIG_RSZ 0x4 27162306a36Sopenharmony_ci 27262306a36Sopenharmony_ci#define ANA_SG_GCL_GS_CONFIG_IPS(x) ((x) & GENMASK(3, 0)) 27362306a36Sopenharmony_ci#define ANA_SG_GCL_GS_CONFIG_IPS_M GENMASK(3, 0) 27462306a36Sopenharmony_ci#define ANA_SG_GCL_GS_CONFIG_GATE_STATE BIT(4) 27562306a36Sopenharmony_ci 27662306a36Sopenharmony_ci#define ANA_SG_GCL_TI_CONFIG_RSZ 0x4 27762306a36Sopenharmony_ci 27862306a36Sopenharmony_ci#define ANA_SG_STATUS_REG_3_CFG_CHG_TIME_SEC_MSB(x) ((x) & GENMASK(15, 0)) 27962306a36Sopenharmony_ci#define ANA_SG_STATUS_REG_3_CFG_CHG_TIME_SEC_MSB_M GENMASK(15, 0) 28062306a36Sopenharmony_ci#define ANA_SG_STATUS_REG_3_GATE_STATE BIT(16) 28162306a36Sopenharmony_ci#define ANA_SG_STATUS_REG_3_IPS(x) (((x) << 20) & GENMASK(23, 20)) 28262306a36Sopenharmony_ci#define ANA_SG_STATUS_REG_3_IPS_M GENMASK(23, 20) 28362306a36Sopenharmony_ci#define ANA_SG_STATUS_REG_3_IPS_X(x) (((x) & GENMASK(23, 20)) >> 20) 28462306a36Sopenharmony_ci#define ANA_SG_STATUS_REG_3_CONFIG_PENDING BIT(24) 28562306a36Sopenharmony_ci 28662306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_GSZ 0x100 28762306a36Sopenharmony_ci 28862306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_VID_AS_ISDX BIT(21) 28962306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_AWARE_ENA BIT(20) 29062306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_POP_CNT(x) (((x) << 18) & GENMASK(19, 18)) 29162306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_POP_CNT_M GENMASK(19, 18) 29262306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_POP_CNT_X(x) (((x) & GENMASK(19, 18)) >> 18) 29362306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_INNER_TAG_ENA BIT(17) 29462306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_TAG_TYPE BIT(16) 29562306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_DEI BIT(15) 29662306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_PCP(x) (((x) << 12) & GENMASK(14, 12)) 29762306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_PCP_M GENMASK(14, 12) 29862306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_PCP_X(x) (((x) & GENMASK(14, 12)) >> 12) 29962306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_VID(x) ((x) & GENMASK(11, 0)) 30062306a36Sopenharmony_ci#define ANA_PORT_VLAN_CFG_VLAN_VID_M GENMASK(11, 0) 30162306a36Sopenharmony_ci 30262306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_GSZ 0x100 30362306a36Sopenharmony_ci 30462306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_DROP_UNTAGGED_ENA BIT(6) 30562306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_DROP_S_TAGGED_ENA BIT(5) 30662306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_DROP_C_TAGGED_ENA BIT(4) 30762306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_DROP_PRIO_S_TAGGED_ENA BIT(3) 30862306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_DROP_PRIO_C_TAGGED_ENA BIT(2) 30962306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_DROP_NULL_MAC_ENA BIT(1) 31062306a36Sopenharmony_ci#define ANA_PORT_DROP_CFG_DROP_MC_SMAC_ENA BIT(0) 31162306a36Sopenharmony_ci 31262306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_GSZ 0x100 31362306a36Sopenharmony_ci 31462306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_DP_DEFAULT_VAL BIT(8) 31562306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_QOS_DEFAULT_VAL(x) (((x) << 5) & GENMASK(7, 5)) 31662306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_QOS_DEFAULT_VAL_M GENMASK(7, 5) 31762306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_QOS_DEFAULT_VAL_X(x) (((x) & GENMASK(7, 5)) >> 5) 31862306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_QOS_DSCP_ENA BIT(4) 31962306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_QOS_PCP_ENA BIT(3) 32062306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_DSCP_TRANSLATE_ENA BIT(2) 32162306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_DSCP_REWR_CFG(x) ((x) & GENMASK(1, 0)) 32262306a36Sopenharmony_ci#define ANA_PORT_QOS_CFG_DSCP_REWR_CFG_M GENMASK(1, 0) 32362306a36Sopenharmony_ci 32462306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_GSZ 0x100 32562306a36Sopenharmony_ci 32662306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_S1_ENA BIT(14) 32762306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_S1_DMAC_DIP_ENA(x) (((x) << 11) & GENMASK(13, 11)) 32862306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_S1_DMAC_DIP_ENA_M GENMASK(13, 11) 32962306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_S1_DMAC_DIP_ENA_X(x) (((x) & GENMASK(13, 11)) >> 11) 33062306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_S1_VLAN_INNER_TAG_ENA(x) (((x) << 8) & GENMASK(10, 8)) 33162306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_S1_VLAN_INNER_TAG_ENA_M GENMASK(10, 8) 33262306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_S1_VLAN_INNER_TAG_ENA_X(x) (((x) & GENMASK(10, 8)) >> 8) 33362306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_PAG_VAL(x) ((x) & GENMASK(7, 0)) 33462306a36Sopenharmony_ci#define ANA_PORT_VCAP_CFG_PAG_VAL_M GENMASK(7, 0) 33562306a36Sopenharmony_ci 33662306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_GSZ 0x100 33762306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_RSZ 0x4 33862306a36Sopenharmony_ci 33962306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP6_CFG(x) (((x) << 4) & GENMASK(6, 4)) 34062306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP6_CFG_M GENMASK(6, 4) 34162306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP6_CFG_X(x) (((x) & GENMASK(6, 4)) >> 4) 34262306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP4_CFG(x) (((x) << 2) & GENMASK(3, 2)) 34362306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP4_CFG_M GENMASK(3, 2) 34462306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_IP4_CFG_X(x) (((x) & GENMASK(3, 2)) >> 2) 34562306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_OTHER_CFG(x) ((x) & GENMASK(1, 0)) 34662306a36Sopenharmony_ci#define ANA_PORT_VCAP_S1_KEY_CFG_S1_KEY_OTHER_CFG_M GENMASK(1, 0) 34762306a36Sopenharmony_ci 34862306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_GSZ 0x100 34962306a36Sopenharmony_ci 35062306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_UDP_PAYLOAD_ENA(x) (((x) << 17) & GENMASK(18, 17)) 35162306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_UDP_PAYLOAD_ENA_M GENMASK(18, 17) 35262306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_UDP_PAYLOAD_ENA_X(x) (((x) & GENMASK(18, 17)) >> 17) 35362306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_ETYPE_PAYLOAD_ENA(x) (((x) << 15) & GENMASK(16, 15)) 35462306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_ETYPE_PAYLOAD_ENA_M GENMASK(16, 15) 35562306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_ETYPE_PAYLOAD_ENA_X(x) (((x) & GENMASK(16, 15)) >> 15) 35662306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_ENA BIT(14) 35762306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_SNAP_DIS(x) (((x) << 12) & GENMASK(13, 12)) 35862306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_SNAP_DIS_M GENMASK(13, 12) 35962306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_SNAP_DIS_X(x) (((x) & GENMASK(13, 12)) >> 12) 36062306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_ARP_DIS(x) (((x) << 10) & GENMASK(11, 10)) 36162306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_ARP_DIS_M GENMASK(11, 10) 36262306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_ARP_DIS_X(x) (((x) & GENMASK(11, 10)) >> 10) 36362306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP_TCPUDP_DIS(x) (((x) << 8) & GENMASK(9, 8)) 36462306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP_TCPUDP_DIS_M GENMASK(9, 8) 36562306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP_TCPUDP_DIS_X(x) (((x) & GENMASK(9, 8)) >> 8) 36662306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP_OTHER_DIS(x) (((x) << 6) & GENMASK(7, 6)) 36762306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP_OTHER_DIS_M GENMASK(7, 6) 36862306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP_OTHER_DIS_X(x) (((x) & GENMASK(7, 6)) >> 6) 36962306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP6_CFG(x) (((x) << 2) & GENMASK(5, 2)) 37062306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP6_CFG_M GENMASK(5, 2) 37162306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_IP6_CFG_X(x) (((x) & GENMASK(5, 2)) >> 2) 37262306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_OAM_DIS(x) ((x) & GENMASK(1, 0)) 37362306a36Sopenharmony_ci#define ANA_PORT_VCAP_S2_CFG_S2_OAM_DIS_M GENMASK(1, 0) 37462306a36Sopenharmony_ci 37562306a36Sopenharmony_ci#define ANA_PORT_PCP_DEI_MAP_GSZ 0x100 37662306a36Sopenharmony_ci#define ANA_PORT_PCP_DEI_MAP_RSZ 0x4 37762306a36Sopenharmony_ci 37862306a36Sopenharmony_ci#define ANA_PORT_PCP_DEI_MAP_DP_PCP_DEI_VAL BIT(3) 37962306a36Sopenharmony_ci#define ANA_PORT_PCP_DEI_MAP_QOS_PCP_DEI_VAL(x) ((x) & GENMASK(2, 0)) 38062306a36Sopenharmony_ci#define ANA_PORT_PCP_DEI_MAP_QOS_PCP_DEI_VAL_M GENMASK(2, 0) 38162306a36Sopenharmony_ci 38262306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_GSZ 0x100 38362306a36Sopenharmony_ci 38462306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_VRAP_REDIR_ENA BIT(7) 38562306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_MLD_REDIR_ENA BIT(6) 38662306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_IGMP_REDIR_ENA BIT(5) 38762306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_IPMC_CTRL_COPY_ENA BIT(4) 38862306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_SRC_COPY_ENA BIT(3) 38962306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_ALLBRIDGE_DROP_ENA BIT(2) 39062306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_ALLBRIDGE_REDIR_ENA BIT(1) 39162306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CFG_CPU_OAM_ENA BIT(0) 39262306a36Sopenharmony_ci 39362306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_BPDU_CFG_GSZ 0x100 39462306a36Sopenharmony_ci 39562306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_DROP_ENA(x) (((x) << 16) & GENMASK(31, 16)) 39662306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_DROP_ENA_M GENMASK(31, 16) 39762306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_DROP_ENA_X(x) (((x) & GENMASK(31, 16)) >> 16) 39862306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_REDIR_ENA(x) ((x) & GENMASK(15, 0)) 39962306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_BPDU_CFG_BPDU_REDIR_ENA_M GENMASK(15, 0) 40062306a36Sopenharmony_ci 40162306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_GARP_CFG_GSZ 0x100 40262306a36Sopenharmony_ci 40362306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_GARP_CFG_GARP_DROP_ENA(x) (((x) << 16) & GENMASK(31, 16)) 40462306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_GARP_CFG_GARP_DROP_ENA_M GENMASK(31, 16) 40562306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_GARP_CFG_GARP_DROP_ENA_X(x) (((x) & GENMASK(31, 16)) >> 16) 40662306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_GARP_CFG_GARP_REDIR_ENA(x) ((x) & GENMASK(15, 0)) 40762306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_GARP_CFG_GARP_REDIR_ENA_M GENMASK(15, 0) 40862306a36Sopenharmony_ci 40962306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CCM_CFG_GSZ 0x100 41062306a36Sopenharmony_ci 41162306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CCM_CFG_CCM_DROP_ENA(x) (((x) << 16) & GENMASK(31, 16)) 41262306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CCM_CFG_CCM_DROP_ENA_M GENMASK(31, 16) 41362306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CCM_CFG_CCM_DROP_ENA_X(x) (((x) & GENMASK(31, 16)) >> 16) 41462306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CCM_CFG_CCM_REDIR_ENA(x) ((x) & GENMASK(15, 0)) 41562306a36Sopenharmony_ci#define ANA_PORT_CPU_FWD_CCM_CFG_CCM_REDIR_ENA_M GENMASK(15, 0) 41662306a36Sopenharmony_ci 41762306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_GSZ 0x100 41862306a36Sopenharmony_ci 41962306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_SRC_MIRROR_ENA BIT(15) 42062306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LIMIT_DROP BIT(14) 42162306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LIMIT_CPU BIT(13) 42262306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LOCKED_PORTMOVE_DROP BIT(12) 42362306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LOCKED_PORTMOVE_CPU BIT(11) 42462306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LEARNDROP BIT(10) 42562306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LEARNCPU BIT(9) 42662306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LEARNAUTO BIT(8) 42762306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LEARN_ENA BIT(7) 42862306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_RECV_ENA BIT(6) 42962306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_PORTID_VAL(x) (((x) << 2) & GENMASK(5, 2)) 43062306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_PORTID_VAL_M GENMASK(5, 2) 43162306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_PORTID_VAL_X(x) (((x) & GENMASK(5, 2)) >> 2) 43262306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_USE_B_DOM_TBL BIT(1) 43362306a36Sopenharmony_ci#define ANA_PORT_PORT_CFG_LSR_MODE BIT(0) 43462306a36Sopenharmony_ci 43562306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_GSZ 0x100 43662306a36Sopenharmony_ci 43762306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_POL_CPU_REDIR_8021 BIT(19) 43862306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_POL_CPU_REDIR_IP BIT(18) 43962306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_PORT_POL_ENA BIT(17) 44062306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_QUEUE_POL_ENA(x) (((x) << 9) & GENMASK(16, 9)) 44162306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_QUEUE_POL_ENA_M GENMASK(16, 9) 44262306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_QUEUE_POL_ENA_X(x) (((x) & GENMASK(16, 9)) >> 9) 44362306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_POL_ORDER(x) ((x) & GENMASK(8, 0)) 44462306a36Sopenharmony_ci#define ANA_PORT_POL_CFG_POL_ORDER_M GENMASK(8, 0) 44562306a36Sopenharmony_ci 44662306a36Sopenharmony_ci#define ANA_PORT_PTP_CFG_GSZ 0x100 44762306a36Sopenharmony_ci 44862306a36Sopenharmony_ci#define ANA_PORT_PTP_CFG_PTP_BACKPLANE_MODE BIT(0) 44962306a36Sopenharmony_ci 45062306a36Sopenharmony_ci#define ANA_PORT_PTP_DLY1_CFG_GSZ 0x100 45162306a36Sopenharmony_ci 45262306a36Sopenharmony_ci#define ANA_PORT_PTP_DLY2_CFG_GSZ 0x100 45362306a36Sopenharmony_ci 45462306a36Sopenharmony_ci#define ANA_PORT_SFID_CFG_GSZ 0x100 45562306a36Sopenharmony_ci#define ANA_PORT_SFID_CFG_RSZ 0x4 45662306a36Sopenharmony_ci 45762306a36Sopenharmony_ci#define ANA_PORT_SFID_CFG_SFID_VALID BIT(8) 45862306a36Sopenharmony_ci#define ANA_PORT_SFID_CFG_SFID(x) ((x) & GENMASK(7, 0)) 45962306a36Sopenharmony_ci#define ANA_PORT_SFID_CFG_SFID_M GENMASK(7, 0) 46062306a36Sopenharmony_ci 46162306a36Sopenharmony_ci#define ANA_PFC_PFC_CFG_GSZ 0x40 46262306a36Sopenharmony_ci 46362306a36Sopenharmony_ci#define ANA_PFC_PFC_CFG_RX_PFC_ENA(x) (((x) << 2) & GENMASK(9, 2)) 46462306a36Sopenharmony_ci#define ANA_PFC_PFC_CFG_RX_PFC_ENA_M GENMASK(9, 2) 46562306a36Sopenharmony_ci#define ANA_PFC_PFC_CFG_RX_PFC_ENA_X(x) (((x) & GENMASK(9, 2)) >> 2) 46662306a36Sopenharmony_ci#define ANA_PFC_PFC_CFG_FC_LINK_SPEED(x) ((x) & GENMASK(1, 0)) 46762306a36Sopenharmony_ci#define ANA_PFC_PFC_CFG_FC_LINK_SPEED_M GENMASK(1, 0) 46862306a36Sopenharmony_ci 46962306a36Sopenharmony_ci#define ANA_PFC_PFC_TIMER_GSZ 0x40 47062306a36Sopenharmony_ci#define ANA_PFC_PFC_TIMER_RSZ 0x4 47162306a36Sopenharmony_ci 47262306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_GSZ 0x8 47362306a36Sopenharmony_ci 47462306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_MEP_IDX_P(x) (((x) << 6) & GENMASK(10, 6)) 47562306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_MEP_IDX_P_M GENMASK(10, 6) 47662306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_MEP_IDX_P_X(x) (((x) & GENMASK(10, 6)) >> 6) 47762306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_MEP_IDX(x) (((x) << 1) & GENMASK(5, 1)) 47862306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_MEP_IDX_M GENMASK(5, 1) 47962306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_MEP_IDX_X(x) (((x) & GENMASK(5, 1)) >> 1) 48062306a36Sopenharmony_ci#define ANA_IPT_OAM_MEP_CFG_MEP_IDX_ENA BIT(0) 48162306a36Sopenharmony_ci 48262306a36Sopenharmony_ci#define ANA_IPT_IPT_GSZ 0x8 48362306a36Sopenharmony_ci 48462306a36Sopenharmony_ci#define ANA_IPT_IPT_IPT_CFG(x) (((x) << 15) & GENMASK(16, 15)) 48562306a36Sopenharmony_ci#define ANA_IPT_IPT_IPT_CFG_M GENMASK(16, 15) 48662306a36Sopenharmony_ci#define ANA_IPT_IPT_IPT_CFG_X(x) (((x) & GENMASK(16, 15)) >> 15) 48762306a36Sopenharmony_ci#define ANA_IPT_IPT_ISDX_P(x) (((x) << 7) & GENMASK(14, 7)) 48862306a36Sopenharmony_ci#define ANA_IPT_IPT_ISDX_P_M GENMASK(14, 7) 48962306a36Sopenharmony_ci#define ANA_IPT_IPT_ISDX_P_X(x) (((x) & GENMASK(14, 7)) >> 7) 49062306a36Sopenharmony_ci#define ANA_IPT_IPT_PPT_IDX(x) ((x) & GENMASK(6, 0)) 49162306a36Sopenharmony_ci#define ANA_IPT_IPT_PPT_IDX_M GENMASK(6, 0) 49262306a36Sopenharmony_ci 49362306a36Sopenharmony_ci#define ANA_PPT_PPT_RSZ 0x4 49462306a36Sopenharmony_ci 49562306a36Sopenharmony_ci#define ANA_FID_MAP_FID_MAP_RSZ 0x4 49662306a36Sopenharmony_ci 49762306a36Sopenharmony_ci#define ANA_FID_MAP_FID_MAP_FID_C_VAL(x) (((x) << 6) & GENMASK(11, 6)) 49862306a36Sopenharmony_ci#define ANA_FID_MAP_FID_MAP_FID_C_VAL_M GENMASK(11, 6) 49962306a36Sopenharmony_ci#define ANA_FID_MAP_FID_MAP_FID_C_VAL_X(x) (((x) & GENMASK(11, 6)) >> 6) 50062306a36Sopenharmony_ci#define ANA_FID_MAP_FID_MAP_FID_B_VAL(x) ((x) & GENMASK(5, 0)) 50162306a36Sopenharmony_ci#define ANA_FID_MAP_FID_MAP_FID_B_VAL_M GENMASK(5, 0) 50262306a36Sopenharmony_ci 50362306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_RND_ENA BIT(7) 50462306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_DMAC_ENA BIT(6) 50562306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_SMAC_ENA BIT(5) 50662306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_IP6_FLOW_LBL_ENA BIT(4) 50762306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_IP6_TCPUDP_ENA BIT(3) 50862306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_IP4_SIPDIP_ENA BIT(2) 50962306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_IP4_TCPUDP_ENA BIT(1) 51062306a36Sopenharmony_ci#define ANA_AGGR_CFG_AC_ISDX_ENA BIT(0) 51162306a36Sopenharmony_ci 51262306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MLD(x) (((x) << 27) & GENMASK(29, 27)) 51362306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MLD_M GENMASK(29, 27) 51462306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MLD_X(x) (((x) & GENMASK(29, 27)) >> 27) 51562306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_IGMP(x) (((x) << 24) & GENMASK(26, 24)) 51662306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_IGMP_M GENMASK(26, 24) 51762306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_IGMP_X(x) (((x) & GENMASK(26, 24)) >> 24) 51862306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_IPMC_CTRL(x) (((x) << 21) & GENMASK(23, 21)) 51962306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_IPMC_CTRL_M GENMASK(23, 21) 52062306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_IPMC_CTRL_X(x) (((x) & GENMASK(23, 21)) >> 21) 52162306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_ALLBRIDGE(x) (((x) << 18) & GENMASK(20, 18)) 52262306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_ALLBRIDGE_M GENMASK(20, 18) 52362306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_ALLBRIDGE_X(x) (((x) & GENMASK(20, 18)) >> 18) 52462306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_LOCKED_PORTMOVE(x) (((x) << 15) & GENMASK(17, 15)) 52562306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_LOCKED_PORTMOVE_M GENMASK(17, 15) 52662306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_LOCKED_PORTMOVE_X(x) (((x) & GENMASK(17, 15)) >> 15) 52762306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_SRC_COPY(x) (((x) << 12) & GENMASK(14, 12)) 52862306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_SRC_COPY_M GENMASK(14, 12) 52962306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_SRC_COPY_X(x) (((x) & GENMASK(14, 12)) >> 12) 53062306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MAC_COPY(x) (((x) << 9) & GENMASK(11, 9)) 53162306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MAC_COPY_M GENMASK(11, 9) 53262306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MAC_COPY_X(x) (((x) & GENMASK(11, 9)) >> 9) 53362306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_LRN(x) (((x) << 6) & GENMASK(8, 6)) 53462306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_LRN_M GENMASK(8, 6) 53562306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_LRN_X(x) (((x) & GENMASK(8, 6)) >> 6) 53662306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MIRROR(x) (((x) << 3) & GENMASK(5, 3)) 53762306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MIRROR_M GENMASK(5, 3) 53862306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_MIRROR_X(x) (((x) & GENMASK(5, 3)) >> 3) 53962306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_SFLOW(x) ((x) & GENMASK(2, 0)) 54062306a36Sopenharmony_ci#define ANA_CPUQ_CFG_CPUQ_SFLOW_M GENMASK(2, 0) 54162306a36Sopenharmony_ci 54262306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_RSZ 0x4 54362306a36Sopenharmony_ci 54462306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_BPDU_VAL(x) (((x) << 6) & GENMASK(8, 6)) 54562306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_BPDU_VAL_M GENMASK(8, 6) 54662306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_BPDU_VAL_X(x) (((x) & GENMASK(8, 6)) >> 6) 54762306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_GARP_VAL(x) (((x) << 3) & GENMASK(5, 3)) 54862306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_GARP_VAL_M GENMASK(5, 3) 54962306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_GARP_VAL_X(x) (((x) & GENMASK(5, 3)) >> 3) 55062306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_CCM_VAL(x) ((x) & GENMASK(2, 0)) 55162306a36Sopenharmony_ci#define ANA_CPUQ_8021_CFG_CPUQ_CCM_VAL_M GENMASK(2, 0) 55262306a36Sopenharmony_ci 55362306a36Sopenharmony_ci#define ANA_DSCP_CFG_RSZ 0x4 55462306a36Sopenharmony_ci 55562306a36Sopenharmony_ci#define ANA_DSCP_CFG_DP_DSCP_VAL BIT(11) 55662306a36Sopenharmony_ci#define ANA_DSCP_CFG_QOS_DSCP_VAL(x) (((x) << 8) & GENMASK(10, 8)) 55762306a36Sopenharmony_ci#define ANA_DSCP_CFG_QOS_DSCP_VAL_M GENMASK(10, 8) 55862306a36Sopenharmony_ci#define ANA_DSCP_CFG_QOS_DSCP_VAL_X(x) (((x) & GENMASK(10, 8)) >> 8) 55962306a36Sopenharmony_ci#define ANA_DSCP_CFG_DSCP_TRANSLATE_VAL(x) (((x) << 2) & GENMASK(7, 2)) 56062306a36Sopenharmony_ci#define ANA_DSCP_CFG_DSCP_TRANSLATE_VAL_M GENMASK(7, 2) 56162306a36Sopenharmony_ci#define ANA_DSCP_CFG_DSCP_TRANSLATE_VAL_X(x) (((x) & GENMASK(7, 2)) >> 2) 56262306a36Sopenharmony_ci#define ANA_DSCP_CFG_DSCP_TRUST_ENA BIT(1) 56362306a36Sopenharmony_ci#define ANA_DSCP_CFG_DSCP_REWR_ENA BIT(0) 56462306a36Sopenharmony_ci 56562306a36Sopenharmony_ci#define ANA_DSCP_REWR_CFG_RSZ 0x4 56662306a36Sopenharmony_ci 56762306a36Sopenharmony_ci#define ANA_VCAP_RNG_TYPE_CFG_RSZ 0x4 56862306a36Sopenharmony_ci 56962306a36Sopenharmony_ci#define ANA_VCAP_RNG_VAL_CFG_RSZ 0x4 57062306a36Sopenharmony_ci 57162306a36Sopenharmony_ci#define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MIN_VAL(x) (((x) << 16) & GENMASK(31, 16)) 57262306a36Sopenharmony_ci#define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MIN_VAL_M GENMASK(31, 16) 57362306a36Sopenharmony_ci#define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MIN_VAL_X(x) (((x) & GENMASK(31, 16)) >> 16) 57462306a36Sopenharmony_ci#define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MAX_VAL(x) ((x) & GENMASK(15, 0)) 57562306a36Sopenharmony_ci#define ANA_VCAP_RNG_VAL_CFG_VCAP_RNG_MAX_VAL_M GENMASK(15, 0) 57662306a36Sopenharmony_ci 57762306a36Sopenharmony_ci#define ANA_VRAP_CFG_VRAP_VLAN_AWARE_ENA BIT(12) 57862306a36Sopenharmony_ci#define ANA_VRAP_CFG_VRAP_VID(x) ((x) & GENMASK(11, 0)) 57962306a36Sopenharmony_ci#define ANA_VRAP_CFG_VRAP_VID_M GENMASK(11, 0) 58062306a36Sopenharmony_ci 58162306a36Sopenharmony_ci#define ANA_DISCARD_CFG_DROP_TAGGING_ISDX0 BIT(3) 58262306a36Sopenharmony_ci#define ANA_DISCARD_CFG_DROP_CTRLPROT_ISDX0 BIT(2) 58362306a36Sopenharmony_ci#define ANA_DISCARD_CFG_DROP_TAGGING_S2_ENA BIT(1) 58462306a36Sopenharmony_ci#define ANA_DISCARD_CFG_DROP_CTRLPROT_S2_ENA BIT(0) 58562306a36Sopenharmony_ci 58662306a36Sopenharmony_ci#define ANA_FID_CFG_VID_MC_ENA BIT(0) 58762306a36Sopenharmony_ci 58862306a36Sopenharmony_ci#define ANA_POL_PIR_CFG_GSZ 0x20 58962306a36Sopenharmony_ci 59062306a36Sopenharmony_ci#define ANA_POL_PIR_CFG_PIR_RATE(x) (((x) << 6) & GENMASK(20, 6)) 59162306a36Sopenharmony_ci#define ANA_POL_PIR_CFG_PIR_RATE_M GENMASK(20, 6) 59262306a36Sopenharmony_ci#define ANA_POL_PIR_CFG_PIR_RATE_X(x) (((x) & GENMASK(20, 6)) >> 6) 59362306a36Sopenharmony_ci#define ANA_POL_PIR_CFG_PIR_BURST(x) ((x) & GENMASK(5, 0)) 59462306a36Sopenharmony_ci#define ANA_POL_PIR_CFG_PIR_BURST_M GENMASK(5, 0) 59562306a36Sopenharmony_ci 59662306a36Sopenharmony_ci#define ANA_POL_CIR_CFG_GSZ 0x20 59762306a36Sopenharmony_ci 59862306a36Sopenharmony_ci#define ANA_POL_CIR_CFG_CIR_RATE(x) (((x) << 6) & GENMASK(20, 6)) 59962306a36Sopenharmony_ci#define ANA_POL_CIR_CFG_CIR_RATE_M GENMASK(20, 6) 60062306a36Sopenharmony_ci#define ANA_POL_CIR_CFG_CIR_RATE_X(x) (((x) & GENMASK(20, 6)) >> 6) 60162306a36Sopenharmony_ci#define ANA_POL_CIR_CFG_CIR_BURST(x) ((x) & GENMASK(5, 0)) 60262306a36Sopenharmony_ci#define ANA_POL_CIR_CFG_CIR_BURST_M GENMASK(5, 0) 60362306a36Sopenharmony_ci 60462306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_GSZ 0x20 60562306a36Sopenharmony_ci 60662306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_IPG_SIZE(x) (((x) << 5) & GENMASK(9, 5)) 60762306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_IPG_SIZE_M GENMASK(9, 5) 60862306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_IPG_SIZE_X(x) (((x) & GENMASK(9, 5)) >> 5) 60962306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_FRM_MODE(x) (((x) << 3) & GENMASK(4, 3)) 61062306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_FRM_MODE_M GENMASK(4, 3) 61162306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_FRM_MODE_X(x) (((x) & GENMASK(4, 3)) >> 3) 61262306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_DLB_COUPLED BIT(2) 61362306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_CIR_ENA BIT(1) 61462306a36Sopenharmony_ci#define ANA_POL_MODE_CFG_OVERSHOOT_ENA BIT(0) 61562306a36Sopenharmony_ci 61662306a36Sopenharmony_ci#define ANA_POL_PIR_STATE_GSZ 0x20 61762306a36Sopenharmony_ci 61862306a36Sopenharmony_ci#define ANA_POL_CIR_STATE_GSZ 0x20 61962306a36Sopenharmony_ci 62062306a36Sopenharmony_ci#define ANA_POL_STATE_GSZ 0x20 62162306a36Sopenharmony_ci 62262306a36Sopenharmony_ci#define ANA_POL_FLOWC_RSZ 0x4 62362306a36Sopenharmony_ci 62462306a36Sopenharmony_ci#define ANA_POL_FLOWC_POL_FLOWC BIT(0) 62562306a36Sopenharmony_ci 62662306a36Sopenharmony_ci#define ANA_POL_HYST_POL_FC_HYST(x) (((x) << 4) & GENMASK(9, 4)) 62762306a36Sopenharmony_ci#define ANA_POL_HYST_POL_FC_HYST_M GENMASK(9, 4) 62862306a36Sopenharmony_ci#define ANA_POL_HYST_POL_FC_HYST_X(x) (((x) & GENMASK(9, 4)) >> 4) 62962306a36Sopenharmony_ci#define ANA_POL_HYST_POL_STOP_HYST(x) ((x) & GENMASK(3, 0)) 63062306a36Sopenharmony_ci#define ANA_POL_HYST_POL_STOP_HYST_M GENMASK(3, 0) 63162306a36Sopenharmony_ci 63262306a36Sopenharmony_ci#define ANA_POL_MISC_CFG_POL_CLOSE_ALL BIT(1) 63362306a36Sopenharmony_ci#define ANA_POL_MISC_CFG_POL_LEAK_DIS BIT(0) 63462306a36Sopenharmony_ci 63562306a36Sopenharmony_ci#endif 636