blob: 1a79643bb70db0f6dbe36a33f35a14a455b5d702 [file] [log] [blame]
/*
* Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
* above copyright notice and this permission notice appear in all copies.
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/**
* @defgroup
* @{
*/
#ifndef HPPE_PORTVLAN_REG_H
#define HPPE_PORTVLAN_REG_H
/*[register] PORT_PARSING_REG*/
#define PORT_PARSING_REG
#define PORT_PARSING_REG_ADDRESS 0x0
#define PORT_PARSING_REG_NUM 8
#define PORT_PARSING_REG_INC 0x4
#define PORT_PARSING_REG_TYPE REG_TYPE_RW
#define PORT_PARSING_REG_DEFAULT 0x0
/*[field] PORT_ROLE*/
#define PORT_PARSING_REG_PORT_ROLE
#define PORT_PARSING_REG_PORT_ROLE_OFFSET 0
#define PORT_PARSING_REG_PORT_ROLE_LEN 1
#define PORT_PARSING_REG_PORT_ROLE_DEFAULT 0x0
struct port_parsing_reg {
a_uint32_t port_role:1;
a_uint32_t _reserved0:31;
};
union port_parsing_reg_u {
a_uint32_t val;
struct port_parsing_reg bf;
};
/*[register] EDMA_VLAN_TPID_REG*/
#define EDMA_VLAN_TPID_REG
#define EDMA_VLAN_TPID_REG_ADDRESS 0x8
#define EDMA_VLAN_TPID_REG_NUM 1
#define EDMA_VLAN_TPID_REG_INC 0x4
#define EDMA_VLAN_TPID_REG_TYPE REG_TYPE_RW
#define EDMA_VLAN_TPID_REG_DEFAULT 0x810088a8
/*[field] STAG_TPID*/
#define EDMA_VLAN_TPID_REG_STAG_TPID
#define EDMA_VLAN_TPID_REG_STAG_TPID_OFFSET 0
#define EDMA_VLAN_TPID_REG_STAG_TPID_LEN 16
#define EDMA_VLAN_TPID_REG_STAG_TPID_DEFAULT 0x88a8
/*[field] CTAG_TPID*/
#define EDMA_VLAN_TPID_REG_CTAG_TPID
#define EDMA_VLAN_TPID_REG_CTAG_TPID_OFFSET 16
#define EDMA_VLAN_TPID_REG_CTAG_TPID_LEN 16
#define EDMA_VLAN_TPID_REG_CTAG_TPID_DEFAULT 0x8100
struct edma_vlan_tpid_reg {
a_uint32_t stag_tpid:16;
a_uint32_t ctag_tpid:16;
};
union edma_vlan_tpid_reg_u {
a_uint32_t val;
struct edma_vlan_tpid_reg bf;
};
/*[register] VLAN_TPID_REG*/
#define VLAN_TPID_REG
#define VLAN_TPID_REG_ADDRESS 0x20
#define VLAN_TPID_REG_NUM 1
#define VLAN_TPID_REG_INC 0x4
#define VLAN_TPID_REG_TYPE REG_TYPE_RW
#define VLAN_TPID_REG_DEFAULT 0x88a88100
/*[field] CTAG_TPID*/
#define VLAN_TPID_REG_CTAG_TPID
#define VLAN_TPID_REG_CTAG_TPID_OFFSET 0
#define VLAN_TPID_REG_CTAG_TPID_LEN 16
#define VLAN_TPID_REG_CTAG_TPID_DEFAULT 0x8100
/*[field] STAG_TPID*/
#define VLAN_TPID_REG_STAG_TPID
#define VLAN_TPID_REG_STAG_TPID_OFFSET 16
#define VLAN_TPID_REG_STAG_TPID_LEN 16
#define VLAN_TPID_REG_STAG_TPID_DEFAULT 0x88a8
struct vlan_tpid_reg {
a_uint32_t ctag_tpid:16;
a_uint32_t stag_tpid:16;
};
union vlan_tpid_reg_u {
a_uint32_t val;
struct vlan_tpid_reg bf;
};
/*[register] BRIDGE_CONFIG*/
#define BRIDGE_CONFIG
#define BRIDGE_CONFIG_ADDRESS 0x0
#define BRIDGE_CONFIG_NUM 1
#define BRIDGE_CONFIG_INC 0x4
#define BRIDGE_CONFIG_TYPE REG_TYPE_RW
#define BRIDGE_CONFIG_DEFAULT 0x0
/*[field] BRIDGE_TYPE*/
#define BRIDGE_CONFIG_BRIDGE_TYPE
#define BRIDGE_CONFIG_BRIDGE_TYPE_OFFSET 0
#define BRIDGE_CONFIG_BRIDGE_TYPE_LEN 1
#define BRIDGE_CONFIG_BRIDGE_TYPE_DEFAULT 0x0
struct bridge_config {
a_uint32_t bridge_type:1;
a_uint32_t _reserved0:31;
};
union bridge_config_u {
a_uint32_t val;
struct bridge_config bf;
};
/*[register] PORT_DEF_VID*/
#define PORT_DEF_VID
#define PORT_DEF_VID_ADDRESS 0x10
#define PORT_DEF_VID_NUM 1
#define PORT_DEF_VID_INC 0x4
#define PORT_DEF_VID_TYPE REG_TYPE_RW
#define PORT_DEF_VID_DEFAULT 0x0
/*[field] PORT_DEF_SVID*/
#define PORT_DEF_VID_PORT_DEF_SVID
#define PORT_DEF_VID_PORT_DEF_SVID_OFFSET 0
#define PORT_DEF_VID_PORT_DEF_SVID_LEN 12
#define PORT_DEF_VID_PORT_DEF_SVID_DEFAULT 0x0
/*[field] PORT_DEF_SVID_EN*/
#define PORT_DEF_VID_PORT_DEF_SVID_EN
#define PORT_DEF_VID_PORT_DEF_SVID_EN_OFFSET 12
#define PORT_DEF_VID_PORT_DEF_SVID_EN_LEN 1
#define PORT_DEF_VID_PORT_DEF_SVID_EN_DEFAULT 0x0
/*[field] PORT_DEF_CVID*/
#define PORT_DEF_VID_PORT_DEF_CVID
#define PORT_DEF_VID_PORT_DEF_CVID_OFFSET 16
#define PORT_DEF_VID_PORT_DEF_CVID_LEN 12
#define PORT_DEF_VID_PORT_DEF_CVID_DEFAULT 0x0
/*[field] PORT_DEF_CVID_EN*/
#define PORT_DEF_VID_PORT_DEF_CVID_EN
#define PORT_DEF_VID_PORT_DEF_CVID_EN_OFFSET 28
#define PORT_DEF_VID_PORT_DEF_CVID_EN_LEN 1
#define PORT_DEF_VID_PORT_DEF_CVID_EN_DEFAULT 0x0
struct port_def_vid {
a_uint32_t port_def_svid:12;
a_uint32_t port_def_svid_en:1;
a_uint32_t _reserved0:3;
a_uint32_t port_def_cvid:12;
a_uint32_t port_def_cvid_en:1;
a_uint32_t _reserved1:3;
};
union port_def_vid_u {
a_uint32_t val;
struct port_def_vid bf;
};
/*[register] PORT_DEF_PCP*/
#define PORT_DEF_PCP
#define PORT_DEF_PCP_ADDRESS 0x30
#define PORT_DEF_PCP_NUM 1
#define PORT_DEF_PCP_INC 0x4
#define PORT_DEF_PCP_TYPE REG_TYPE_RW
#define PORT_DEF_PCP_DEFAULT 0x0
/*[field] PORT_DEF_SPCP*/
#define PORT_DEF_PCP_PORT_DEF_SPCP
#define PORT_DEF_PCP_PORT_DEF_SPCP_OFFSET 0
#define PORT_DEF_PCP_PORT_DEF_SPCP_LEN 3
#define PORT_DEF_PCP_PORT_DEF_SPCP_DEFAULT 0x0
/*[field] PORT_DEF_SDEI*/
#define PORT_DEF_PCP_PORT_DEF_SDEI
#define PORT_DEF_PCP_PORT_DEF_SDEI_OFFSET 3
#define PORT_DEF_PCP_PORT_DEF_SDEI_LEN 1
#define PORT_DEF_PCP_PORT_DEF_SDEI_DEFAULT 0x0
/*[field] PORT_DEF_CPCP*/
#define PORT_DEF_PCP_PORT_DEF_CPCP
#define PORT_DEF_PCP_PORT_DEF_CPCP_OFFSET 4
#define PORT_DEF_PCP_PORT_DEF_CPCP_LEN 3
#define PORT_DEF_PCP_PORT_DEF_CPCP_DEFAULT 0x0
/*[field] PORT_DEF_CDEI*/
#define PORT_DEF_PCP_PORT_DEF_CDEI
#define PORT_DEF_PCP_PORT_DEF_CDEI_OFFSET 7
#define PORT_DEF_PCP_PORT_DEF_CDEI_LEN 1
#define PORT_DEF_PCP_PORT_DEF_CDEI_DEFAULT 0x0
struct port_def_pcp {
a_uint32_t port_def_spcp:3;
a_uint32_t port_def_sdei:1;
a_uint32_t port_def_cpcp:3;
a_uint32_t port_def_cdei:1;
a_uint32_t _reserved0:24;
};
union port_def_pcp_u {
a_uint32_t val;
struct port_def_pcp bf;
};
/*[register] PORT_VLAN_CONFIG*/
#define PORT_VLAN_CONFIG
#define PORT_VLAN_CONFIG_ADDRESS 0x50
#define PORT_VLAN_CONFIG_NUM 1
#define PORT_VLAN_CONFIG_INC 0x4
#define PORT_VLAN_CONFIG_TYPE REG_TYPE_RW
#define PORT_VLAN_CONFIG_DEFAULT 0x0
/*[field] PORT_IN_PCP_PROP_CMD*/
#define PORT_VLAN_CONFIG_PORT_IN_PCP_PROP_CMD
#define PORT_VLAN_CONFIG_PORT_IN_PCP_PROP_CMD_OFFSET 0
#define PORT_VLAN_CONFIG_PORT_IN_PCP_PROP_CMD_LEN 1
#define PORT_VLAN_CONFIG_PORT_IN_PCP_PROP_CMD_DEFAULT 0x0
/*[field] PORT_IN_DEI_PROP_CMD*/
#define PORT_VLAN_CONFIG_PORT_IN_DEI_PROP_CMD
#define PORT_VLAN_CONFIG_PORT_IN_DEI_PROP_CMD_OFFSET 1
#define PORT_VLAN_CONFIG_PORT_IN_DEI_PROP_CMD_LEN 1
#define PORT_VLAN_CONFIG_PORT_IN_DEI_PROP_CMD_DEFAULT 0x0
/*[field] PORT_UNTAG_FLTR_CMD*/
#define PORT_VLAN_CONFIG_PORT_UNTAG_FLTR_CMD
#define PORT_VLAN_CONFIG_PORT_UNTAG_FLTR_CMD_OFFSET 2
#define PORT_VLAN_CONFIG_PORT_UNTAG_FLTR_CMD_LEN 1
#define PORT_VLAN_CONFIG_PORT_UNTAG_FLTR_CMD_DEFAULT 0x0
/*[field] PORT_PRI_TAG_FLTR_CMD*/
#define PORT_VLAN_CONFIG_PORT_PRI_TAG_FLTR_CMD
#define PORT_VLAN_CONFIG_PORT_PRI_TAG_FLTR_CMD_OFFSET 3
#define PORT_VLAN_CONFIG_PORT_PRI_TAG_FLTR_CMD_LEN 1
#define PORT_VLAN_CONFIG_PORT_PRI_TAG_FLTR_CMD_DEFAULT 0x0
/*[field] PORT_TAG_FLTR_CMD*/
#define PORT_VLAN_CONFIG_PORT_TAG_FLTR_CMD
#define PORT_VLAN_CONFIG_PORT_TAG_FLTR_CMD_OFFSET 4
#define PORT_VLAN_CONFIG_PORT_TAG_FLTR_CMD_LEN 1
#define PORT_VLAN_CONFIG_PORT_TAG_FLTR_CMD_DEFAULT 0x0
/*[field] PORT_VLAN_XLT_MISS_FWD_CMD*/
#define PORT_VLAN_CONFIG_PORT_VLAN_XLT_MISS_FWD_CMD
#define PORT_VLAN_CONFIG_PORT_VLAN_XLT_MISS_FWD_CMD_OFFSET 5
#define PORT_VLAN_CONFIG_PORT_VLAN_XLT_MISS_FWD_CMD_LEN 2
#define PORT_VLAN_CONFIG_PORT_VLAN_XLT_MISS_FWD_CMD_DEFAULT 0x0
/*[field] PORT_IN_VLAN_FLTR_CMD*/
#define PORT_VLAN_CONFIG_PORT_IN_VLAN_FLTR_CMD
#define PORT_VLAN_CONFIG_PORT_IN_VLAN_FLTR_CMD_OFFSET 7
#define PORT_VLAN_CONFIG_PORT_IN_VLAN_FLTR_CMD_LEN 1
#define PORT_VLAN_CONFIG_PORT_IN_VLAN_FLTR_CMD_DEFAULT 0x0
struct port_vlan_config {
a_uint32_t port_in_pcp_prop_cmd:1;
a_uint32_t port_in_dei_prop_cmd:1;
a_uint32_t port_untag_fltr_cmd:1;
a_uint32_t port_pri_tag_fltr_cmd:1;
a_uint32_t port_tag_fltr_cmd:1;
a_uint32_t port_vlan_xlt_miss_fwd_cmd:2;
a_uint32_t port_in_vlan_fltr_cmd:1;
a_uint32_t _reserved0:24;
};
union port_vlan_config_u {
a_uint32_t val;
struct port_vlan_config bf;
};
/*[register] IV_DBG_ADDR*/
#define IV_DBG_ADDR
#define IV_DBG_ADDR_ADDRESS 0x70
#define IV_DBG_ADDR_NUM 1
#define IV_DBG_ADDR_INC 0x4
#define IV_DBG_ADDR_TYPE REG_TYPE_RW
#define IV_DBG_ADDR_DEFAULT 0x0
/*[field] DBG_ADDR*/
#define IV_DBG_ADDR_DBG_ADDR
#define IV_DBG_ADDR_DBG_ADDR_OFFSET 0
#define IV_DBG_ADDR_DBG_ADDR_LEN 8
#define IV_DBG_ADDR_DBG_ADDR_DEFAULT 0x0
struct iv_dbg_addr {
a_uint32_t dbg_addr:8;
a_uint32_t _reserved0:24;
};
union iv_dbg_addr_u {
a_uint32_t val;
struct iv_dbg_addr bf;
};
/*[register] IV_DBG_DATA*/
#define IV_DBG_DATA
#define IV_DBG_DATA_ADDRESS 0x74
#define IV_DBG_DATA_NUM 1
#define IV_DBG_DATA_INC 0x4
#define IV_DBG_DATA_TYPE REG_TYPE_RO
#define IV_DBG_DATA_DEFAULT 0x0
/*[field] DBG_DATA*/
#define IV_DBG_DATA_DBG_DATA
#define IV_DBG_DATA_DBG_DATA_OFFSET 0
#define IV_DBG_DATA_DBG_DATA_LEN 32
#define IV_DBG_DATA_DBG_DATA_DEFAULT 0x0
struct iv_dbg_data {
a_uint32_t dbg_data:32;
};
union iv_dbg_data_u {
a_uint32_t val;
struct iv_dbg_data bf;
};
/*[register] ECO_RESERVE*/
#define ECO_RESERVE
#define ECO_RESERVE_ADDRESS 0x78
#define ECO_RESERVE_NUM 1
#define ECO_RESERVE_INC 0x4
#define ECO_RESERVE_TYPE REG_TYPE_RW
#define ECO_RESERVE_DEFAULT 0x0
/*[field] ECO_RES*/
#define ECO_RESERVE_ECO_RES
#define ECO_RESERVE_ECO_RES_OFFSET 0
#define ECO_RESERVE_ECO_RES_LEN 32
#define ECO_RESERVE_ECO_RES_DEFAULT 0x0
struct eco_reserve {
a_uint32_t eco_res:32;
};
union eco_reserve_u {
a_uint32_t val;
struct eco_reserve bf;
};
/*[table] XLT_RULE_TBL*/
#define XLT_RULE_TBL
#define XLT_RULE_TBL_ADDRESS 0x2000
#define XLT_RULE_TBL_NUM 64
#define XLT_RULE_TBL_INC 0x10
#define XLT_RULE_TBL_TYPE REG_TYPE_RW
#define XLT_RULE_TBL_DEFAULT 0x0
/*[field] VALID*/
#define XLT_RULE_TBL_VALID
#define XLT_RULE_TBL_VALID_OFFSET 0
#define XLT_RULE_TBL_VALID_LEN 1
#define XLT_RULE_TBL_VALID_DEFAULT 0x0
/*[field] PORT_BITMAP*/
#define XLT_RULE_TBL_PORT_BITMAP
#define XLT_RULE_TBL_PORT_BITMAP_OFFSET 1
#define XLT_RULE_TBL_PORT_BITMAP_LEN 8
#define XLT_RULE_TBL_PORT_BITMAP_DEFAULT 0x0
/*[field] SKEY_FMT*/
#define XLT_RULE_TBL_SKEY_FMT
#define XLT_RULE_TBL_SKEY_FMT_OFFSET 9
#define XLT_RULE_TBL_SKEY_FMT_LEN 3
#define XLT_RULE_TBL_SKEY_FMT_DEFAULT 0x0
/*[field] SKEY_VID_INCL*/
#define XLT_RULE_TBL_SKEY_VID_INCL
#define XLT_RULE_TBL_SKEY_VID_INCL_OFFSET 12
#define XLT_RULE_TBL_SKEY_VID_INCL_LEN 1
#define XLT_RULE_TBL_SKEY_VID_INCL_DEFAULT 0x0
/*[field] SKEY_VID*/
#define XLT_RULE_TBL_SKEY_VID
#define XLT_RULE_TBL_SKEY_VID_OFFSET 13
#define XLT_RULE_TBL_SKEY_VID_LEN 12
#define XLT_RULE_TBL_SKEY_VID_DEFAULT 0x0
/*[field] SKEY_PCP_INCL*/
#define XLT_RULE_TBL_SKEY_PCP_INCL
#define XLT_RULE_TBL_SKEY_PCP_INCL_OFFSET 25
#define XLT_RULE_TBL_SKEY_PCP_INCL_LEN 1
#define XLT_RULE_TBL_SKEY_PCP_INCL_DEFAULT 0x0
/*[field] SKEY_PCP*/
#define XLT_RULE_TBL_SKEY_PCP
#define XLT_RULE_TBL_SKEY_PCP_OFFSET 26
#define XLT_RULE_TBL_SKEY_PCP_LEN 3
#define XLT_RULE_TBL_SKEY_PCP_DEFAULT 0x0
/*[field] SKEY_DEI_INCL*/
#define XLT_RULE_TBL_SKEY_DEI_INCL
#define XLT_RULE_TBL_SKEY_DEI_INCL_OFFSET 29
#define XLT_RULE_TBL_SKEY_DEI_INCL_LEN 1
#define XLT_RULE_TBL_SKEY_DEI_INCL_DEFAULT 0x0
/*[field] SKEY_DEI*/
#define XLT_RULE_TBL_SKEY_DEI
#define XLT_RULE_TBL_SKEY_DEI_OFFSET 30
#define XLT_RULE_TBL_SKEY_DEI_LEN 1
#define XLT_RULE_TBL_SKEY_DEI_DEFAULT 0x0
/*[field] CKEY_FMT*/
#define XLT_RULE_TBL_CKEY_FMT
#define XLT_RULE_TBL_CKEY_FMT_OFFSET 31
#define XLT_RULE_TBL_CKEY_FMT_LEN 3
#define XLT_RULE_TBL_CKEY_FMT_DEFAULT 0x0
/*[field] CKEY_VID_INCL*/
#define XLT_RULE_TBL_CKEY_VID_INCL
#define XLT_RULE_TBL_CKEY_VID_INCL_OFFSET 34
#define XLT_RULE_TBL_CKEY_VID_INCL_LEN 1
#define XLT_RULE_TBL_CKEY_VID_INCL_DEFAULT 0x0
/*[field] CKEY_VID*/
#define XLT_RULE_TBL_CKEY_VID
#define XLT_RULE_TBL_CKEY_VID_OFFSET 35
#define XLT_RULE_TBL_CKEY_VID_LEN 12
#define XLT_RULE_TBL_CKEY_VID_DEFAULT 0x0
/*[field] CKEY_PCP_INCL*/
#define XLT_RULE_TBL_CKEY_PCP_INCL
#define XLT_RULE_TBL_CKEY_PCP_INCL_OFFSET 47
#define XLT_RULE_TBL_CKEY_PCP_INCL_LEN 1
#define XLT_RULE_TBL_CKEY_PCP_INCL_DEFAULT 0x0
/*[field] CKEY_PCP*/
#define XLT_RULE_TBL_CKEY_PCP
#define XLT_RULE_TBL_CKEY_PCP_OFFSET 48
#define XLT_RULE_TBL_CKEY_PCP_LEN 3
#define XLT_RULE_TBL_CKEY_PCP_DEFAULT 0x0
/*[field] CKEY_DEI_INCL*/
#define XLT_RULE_TBL_CKEY_DEI_INCL
#define XLT_RULE_TBL_CKEY_DEI_INCL_OFFSET 51
#define XLT_RULE_TBL_CKEY_DEI_INCL_LEN 1
#define XLT_RULE_TBL_CKEY_DEI_INCL_DEFAULT 0x0
/*[field] CKEY_DEI*/
#define XLT_RULE_TBL_CKEY_DEI
#define XLT_RULE_TBL_CKEY_DEI_OFFSET 52
#define XLT_RULE_TBL_CKEY_DEI_LEN 1
#define XLT_RULE_TBL_CKEY_DEI_DEFAULT 0x0
/*[field] FRM_TYPE_INCL*/
#define XLT_RULE_TBL_FRM_TYPE_INCL
#define XLT_RULE_TBL_FRM_TYPE_INCL_OFFSET 53
#define XLT_RULE_TBL_FRM_TYPE_INCL_LEN 1
#define XLT_RULE_TBL_FRM_TYPE_INCL_DEFAULT 0x0
/*[field] FRM_TYPE*/
#define XLT_RULE_TBL_FRM_TYPE
#define XLT_RULE_TBL_FRM_TYPE_OFFSET 54
#define XLT_RULE_TBL_FRM_TYPE_LEN 2
#define XLT_RULE_TBL_FRM_TYPE_DEFAULT 0x0
/*[field] PROT_INCL*/
#define XLT_RULE_TBL_PROT_INCL
#define XLT_RULE_TBL_PROT_INCL_OFFSET 56
#define XLT_RULE_TBL_PROT_INCL_LEN 1
#define XLT_RULE_TBL_PROT_INCL_DEFAULT 0x0
/*[field] PROT_VALUE*/
#define XLT_RULE_TBL_PROT_VALUE
#define XLT_RULE_TBL_PROT_VALUE_OFFSET 57
#define XLT_RULE_TBL_PROT_VALUE_LEN 16
#define XLT_RULE_TBL_PROT_VALUE_DEFAULT 0x0
struct xlt_rule_tbl {
a_uint32_t valid:1;
a_uint32_t port_bitmap:8;
a_uint32_t skey_fmt:3;
a_uint32_t skey_vid_incl:1;
a_uint32_t skey_vid:12;
a_uint32_t skey_pcp_incl:1;
a_uint32_t skey_pcp:3;
a_uint32_t skey_dei_incl:1;
a_uint32_t skey_dei:1;
a_uint32_t ckey_fmt_0:1;
a_uint32_t ckey_fmt_1:2;
a_uint32_t ckey_vid_incl:1;
a_uint32_t ckey_vid:12;
a_uint32_t ckey_pcp_incl:1;
a_uint32_t ckey_pcp:3;
a_uint32_t ckey_dei_incl:1;
a_uint32_t ckey_dei:1;
a_uint32_t frm_type_incl:1;
a_uint32_t frm_type:2;
a_uint32_t prot_incl:1;
a_uint32_t prot_value_0:7;
a_uint32_t prot_value_1:9;
a_uint32_t _reserved0:23;
};
union xlt_rule_tbl_u {
a_uint32_t val[3];
struct xlt_rule_tbl bf;
};
/*[table] XLT_ACTION_TBL*/
#define XLT_ACTION_TBL
#define XLT_ACTION_TBL_ADDRESS 0x4000
#define XLT_ACTION_TBL_NUM 64
#define XLT_ACTION_TBL_INC 0x10
#define XLT_ACTION_TBL_TYPE REG_TYPE_RW
#define XLT_ACTION_TBL_DEFAULT 0x0
/*[field] VID_SWAP_CMD*/
#define XLT_ACTION_TBL_VID_SWAP_CMD
#define XLT_ACTION_TBL_VID_SWAP_CMD_OFFSET 0
#define XLT_ACTION_TBL_VID_SWAP_CMD_LEN 1
#define XLT_ACTION_TBL_VID_SWAP_CMD_DEFAULT 0x0
/*[field] XLT_SVID_CMD*/
#define XLT_ACTION_TBL_XLT_SVID_CMD
#define XLT_ACTION_TBL_XLT_SVID_CMD_OFFSET 1
#define XLT_ACTION_TBL_XLT_SVID_CMD_LEN 2
#define XLT_ACTION_TBL_XLT_SVID_CMD_DEFAULT 0x0
/*[field] XLT_SVID*/
#define XLT_ACTION_TBL_XLT_SVID
#define XLT_ACTION_TBL_XLT_SVID_OFFSET 3
#define XLT_ACTION_TBL_XLT_SVID_LEN 12
#define XLT_ACTION_TBL_XLT_SVID_DEFAULT 0x0
/*[field] XLT_CVID_CMD*/
#define XLT_ACTION_TBL_XLT_CVID_CMD
#define XLT_ACTION_TBL_XLT_CVID_CMD_OFFSET 15
#define XLT_ACTION_TBL_XLT_CVID_CMD_LEN 2
#define XLT_ACTION_TBL_XLT_CVID_CMD_DEFAULT 0x0
/*[field] XLT_CVID*/
#define XLT_ACTION_TBL_XLT_CVID
#define XLT_ACTION_TBL_XLT_CVID_OFFSET 17
#define XLT_ACTION_TBL_XLT_CVID_LEN 12
#define XLT_ACTION_TBL_XLT_CVID_DEFAULT 0x0
/*[field] PCP_SWAP_CMD*/
#define XLT_ACTION_TBL_PCP_SWAP_CMD
#define XLT_ACTION_TBL_PCP_SWAP_CMD_OFFSET 29
#define XLT_ACTION_TBL_PCP_SWAP_CMD_LEN 1
#define XLT_ACTION_TBL_PCP_SWAP_CMD_DEFAULT 0x0
/*[field] XLT_SPCP_CMD*/
#define XLT_ACTION_TBL_XLT_SPCP_CMD
#define XLT_ACTION_TBL_XLT_SPCP_CMD_OFFSET 30
#define XLT_ACTION_TBL_XLT_SPCP_CMD_LEN 1
#define XLT_ACTION_TBL_XLT_SPCP_CMD_DEFAULT 0x0
/*[field] XLT_SPCP*/
#define XLT_ACTION_TBL_XLT_SPCP
#define XLT_ACTION_TBL_XLT_SPCP_OFFSET 31
#define XLT_ACTION_TBL_XLT_SPCP_LEN 3
#define XLT_ACTION_TBL_XLT_SPCP_DEFAULT 0x0
/*[field] XLT_CPCP_CMD*/
#define XLT_ACTION_TBL_XLT_CPCP_CMD
#define XLT_ACTION_TBL_XLT_CPCP_CMD_OFFSET 34
#define XLT_ACTION_TBL_XLT_CPCP_CMD_LEN 1
#define XLT_ACTION_TBL_XLT_CPCP_CMD_DEFAULT 0x0
/*[field] XLT_CPCP*/
#define XLT_ACTION_TBL_XLT_CPCP
#define XLT_ACTION_TBL_XLT_CPCP_OFFSET 35
#define XLT_ACTION_TBL_XLT_CPCP_LEN 3
#define XLT_ACTION_TBL_XLT_CPCP_DEFAULT 0x0
/*[field] DEI_SWAP_CMD*/
#define XLT_ACTION_TBL_DEI_SWAP_CMD
#define XLT_ACTION_TBL_DEI_SWAP_CMD_OFFSET 38
#define XLT_ACTION_TBL_DEI_SWAP_CMD_LEN 1
#define XLT_ACTION_TBL_DEI_SWAP_CMD_DEFAULT 0x0
/*[field] XLT_SDEI_CMD*/
#define XLT_ACTION_TBL_XLT_SDEI_CMD
#define XLT_ACTION_TBL_XLT_SDEI_CMD_OFFSET 39
#define XLT_ACTION_TBL_XLT_SDEI_CMD_LEN 1
#define XLT_ACTION_TBL_XLT_SDEI_CMD_DEFAULT 0x0
/*[field] XLT_SDEI*/
#define XLT_ACTION_TBL_XLT_SDEI
#define XLT_ACTION_TBL_XLT_SDEI_OFFSET 40
#define XLT_ACTION_TBL_XLT_SDEI_LEN 1
#define XLT_ACTION_TBL_XLT_SDEI_DEFAULT 0x0
/*[field] XLT_CDEI_CMD*/
#define XLT_ACTION_TBL_XLT_CDEI_CMD
#define XLT_ACTION_TBL_XLT_CDEI_CMD_OFFSET 41
#define XLT_ACTION_TBL_XLT_CDEI_CMD_LEN 1
#define XLT_ACTION_TBL_XLT_CDEI_CMD_DEFAULT 0x0
/*[field] XLT_CDEI*/
#define XLT_ACTION_TBL_XLT_CDEI
#define XLT_ACTION_TBL_XLT_CDEI_OFFSET 42
#define XLT_ACTION_TBL_XLT_CDEI_LEN 1
#define XLT_ACTION_TBL_XLT_CDEI_DEFAULT 0x0
/*[field] VSI_CMD*/
#define XLT_ACTION_TBL_VSI_CMD
#define XLT_ACTION_TBL_VSI_CMD_OFFSET 43
#define XLT_ACTION_TBL_VSI_CMD_LEN 1
#define XLT_ACTION_TBL_VSI_CMD_DEFAULT 0x0
/*[field] VSI*/
#define XLT_ACTION_TBL_VSI
#define XLT_ACTION_TBL_VSI_OFFSET 44
#define XLT_ACTION_TBL_VSI_LEN 5
#define XLT_ACTION_TBL_VSI_DEFAULT 0x0
/*[field] COUNTER_EN*/
#define XLT_ACTION_TBL_COUNTER_EN
#define XLT_ACTION_TBL_COUNTER_EN_OFFSET 49
#define XLT_ACTION_TBL_COUNTER_EN_LEN 1
#define XLT_ACTION_TBL_COUNTER_EN_DEFAULT 0x0
/*[field] COUNTER_ID*/
#define XLT_ACTION_TBL_COUNTER_ID
#define XLT_ACTION_TBL_COUNTER_ID_OFFSET 50
#define XLT_ACTION_TBL_COUNTER_ID_LEN 6
#define XLT_ACTION_TBL_COUNTER_ID_DEFAULT 0x0
struct xlt_action_tbl {
a_uint32_t vid_swap_cmd:1;
a_uint32_t xlt_svid_cmd:2;
a_uint32_t xlt_svid:12;
a_uint32_t xlt_cvid_cmd:2;
a_uint32_t xlt_cvid:12;
a_uint32_t pcp_swap_cmd:1;
a_uint32_t xlt_spcp_cmd:1;
a_uint32_t xlt_spcp_0:1;
a_uint32_t xlt_spcp_1:2;
a_uint32_t xlt_cpcp_cmd:1;
a_uint32_t xlt_cpcp:3;
a_uint32_t dei_swap_cmd:1;
a_uint32_t xlt_sdei_cmd:1;
a_uint32_t xlt_sdei:1;
a_uint32_t xlt_cdei_cmd:1;
a_uint32_t xlt_cdei:1;
a_uint32_t vsi_cmd:1;
a_uint32_t vsi:5;
a_uint32_t counter_en:1;
a_uint32_t counter_id:6;
a_uint32_t _reserved0:8;
};
union xlt_action_tbl_u {
a_uint32_t val[2];
struct xlt_action_tbl bf;
};
/*[table] EG_VLAN_XLT_RULE*/
#define EG_VLAN_XLT_RULE
#define EG_VLAN_XLT_RULE_ADDRESS 0x200
#define EG_VLAN_XLT_RULE_NUM 64
#define EG_VLAN_XLT_RULE_INC 0x8
#define EG_VLAN_XLT_RULE_TYPE REG_TYPE_RW
#define EG_VLAN_XLT_RULE_DEFAULT 0x0
/*[field] VALID*/
#define EG_VLAN_XLT_RULE_VALID
#define EG_VLAN_XLT_RULE_VALID_OFFSET 0
#define EG_VLAN_XLT_RULE_VALID_LEN 1
#define EG_VLAN_XLT_RULE_VALID_DEFAULT 0x0
/*[field] PORT_BITMAP*/
#define EG_VLAN_XLT_RULE_PORT_BITMAP
#define EG_VLAN_XLT_RULE_PORT_BITMAP_OFFSET 1
#define EG_VLAN_XLT_RULE_PORT_BITMAP_LEN 8
#define EG_VLAN_XLT_RULE_PORT_BITMAP_DEFAULT 0x0
/*[field] VSI_INCL*/
#define EG_VLAN_XLT_RULE_VSI_INCL
#define EG_VLAN_XLT_RULE_VSI_INCL_OFFSET 9
#define EG_VLAN_XLT_RULE_VSI_INCL_LEN 1
#define EG_VLAN_XLT_RULE_VSI_INCL_DEFAULT 0x0
/*[field] VSI*/
#define EG_VLAN_XLT_RULE_VSI
#define EG_VLAN_XLT_RULE_VSI_OFFSET 10
#define EG_VLAN_XLT_RULE_VSI_LEN 5
#define EG_VLAN_XLT_RULE_VSI_DEFAULT 0x0
/*[field] VSI_VALID*/
#define EG_VLAN_XLT_RULE_VSI_VALID
#define EG_VLAN_XLT_RULE_VSI_VALID_OFFSET 15
#define EG_VLAN_XLT_RULE_VSI_VALID_LEN 1
#define EG_VLAN_XLT_RULE_VSI_VALID_DEFAULT 0x0
/*[field] SKEY_FMT*/
#define EG_VLAN_XLT_RULE_SKEY_FMT
#define EG_VLAN_XLT_RULE_SKEY_FMT_OFFSET 16
#define EG_VLAN_XLT_RULE_SKEY_FMT_LEN 3
#define EG_VLAN_XLT_RULE_SKEY_FMT_DEFAULT 0x0
/*[field] SKEY_VID_INCL*/
#define EG_VLAN_XLT_RULE_SKEY_VID_INCL
#define EG_VLAN_XLT_RULE_SKEY_VID_INCL_OFFSET 19
#define EG_VLAN_XLT_RULE_SKEY_VID_INCL_LEN 1
#define EG_VLAN_XLT_RULE_SKEY_VID_INCL_DEFAULT 0x0
/*[field] SKEY_VID*/
#define EG_VLAN_XLT_RULE_SKEY_VID
#define EG_VLAN_XLT_RULE_SKEY_VID_OFFSET 20
#define EG_VLAN_XLT_RULE_SKEY_VID_LEN 12
#define EG_VLAN_XLT_RULE_SKEY_VID_DEFAULT 0x0
/*[field] SKEY_PCP_INCL*/
#define EG_VLAN_XLT_RULE_SKEY_PCP_INCL
#define EG_VLAN_XLT_RULE_SKEY_PCP_INCL_OFFSET 32
#define EG_VLAN_XLT_RULE_SKEY_PCP_INCL_LEN 1
#define EG_VLAN_XLT_RULE_SKEY_PCP_INCL_DEFAULT 0x0
/*[field] SKEY_PCP*/
#define EG_VLAN_XLT_RULE_SKEY_PCP
#define EG_VLAN_XLT_RULE_SKEY_PCP_OFFSET 33
#define EG_VLAN_XLT_RULE_SKEY_PCP_LEN 3
#define EG_VLAN_XLT_RULE_SKEY_PCP_DEFAULT 0x0
/*[field] SKEY_DEI_INCL*/
#define EG_VLAN_XLT_RULE_SKEY_DEI_INCL
#define EG_VLAN_XLT_RULE_SKEY_DEI_INCL_OFFSET 36
#define EG_VLAN_XLT_RULE_SKEY_DEI_INCL_LEN 1
#define EG_VLAN_XLT_RULE_SKEY_DEI_INCL_DEFAULT 0x0
/*[field] SKEY_DEI*/
#define EG_VLAN_XLT_RULE_SKEY_DEI
#define EG_VLAN_XLT_RULE_SKEY_DEI_OFFSET 37
#define EG_VLAN_XLT_RULE_SKEY_DEI_LEN 1
#define EG_VLAN_XLT_RULE_SKEY_DEI_DEFAULT 0x0
/*[field] CKEY_FMT*/
#define EG_VLAN_XLT_RULE_CKEY_FMT
#define EG_VLAN_XLT_RULE_CKEY_FMT_OFFSET 38
#define EG_VLAN_XLT_RULE_CKEY_FMT_LEN 3
#define EG_VLAN_XLT_RULE_CKEY_FMT_DEFAULT 0x0
/*[field] CKEY_VID_INCL*/
#define EG_VLAN_XLT_RULE_CKEY_VID_INCL
#define EG_VLAN_XLT_RULE_CKEY_VID_INCL_OFFSET 41
#define EG_VLAN_XLT_RULE_CKEY_VID_INCL_LEN 1
#define EG_VLAN_XLT_RULE_CKEY_VID_INCL_DEFAULT 0x0
/*[field] CKEY_VID*/
#define EG_VLAN_XLT_RULE_CKEY_VID
#define EG_VLAN_XLT_RULE_CKEY_VID_OFFSET 42
#define EG_VLAN_XLT_RULE_CKEY_VID_LEN 12
#define EG_VLAN_XLT_RULE_CKEY_VID_DEFAULT 0x0
/*[field] CKEY_PCP_INCL*/
#define EG_VLAN_XLT_RULE_CKEY_PCP_INCL
#define EG_VLAN_XLT_RULE_CKEY_PCP_INCL_OFFSET 54
#define EG_VLAN_XLT_RULE_CKEY_PCP_INCL_LEN 1
#define EG_VLAN_XLT_RULE_CKEY_PCP_INCL_DEFAULT 0x0
/*[field] CKEY_PCP*/
#define EG_VLAN_XLT_RULE_CKEY_PCP
#define EG_VLAN_XLT_RULE_CKEY_PCP_OFFSET 55
#define EG_VLAN_XLT_RULE_CKEY_PCP_LEN 3
#define EG_VLAN_XLT_RULE_CKEY_PCP_DEFAULT 0x0
/*[field] CKEY_DEI_INCL*/
#define EG_VLAN_XLT_RULE_CKEY_DEI_INCL
#define EG_VLAN_XLT_RULE_CKEY_DEI_INCL_OFFSET 58
#define EG_VLAN_XLT_RULE_CKEY_DEI_INCL_LEN 1
#define EG_VLAN_XLT_RULE_CKEY_DEI_INCL_DEFAULT 0x0
/*[field] CKEY_DEI*/
#define EG_VLAN_XLT_RULE_CKEY_DEI
#define EG_VLAN_XLT_RULE_CKEY_DEI_OFFSET 59
#define EG_VLAN_XLT_RULE_CKEY_DEI_LEN 1
#define EG_VLAN_XLT_RULE_CKEY_DEI_DEFAULT 0x0
struct eg_vlan_xlt_rule {
a_uint32_t valid:1;
a_uint32_t port_bitmap:8;
a_uint32_t vsi_incl:1;
a_uint32_t vsi:5;
a_uint32_t vsi_valid:1;
a_uint32_t skey_fmt:3;
a_uint32_t skey_vid_incl:1;
a_uint32_t skey_vid:12;
a_uint32_t skey_pcp_incl:1;
a_uint32_t skey_pcp:3;
a_uint32_t skey_dei_incl:1;
a_uint32_t skey_dei:1;
a_uint32_t ckey_fmt:3;
a_uint32_t ckey_vid_incl:1;
a_uint32_t ckey_vid:12;
a_uint32_t ckey_pcp_incl:1;
a_uint32_t ckey_pcp:3;
a_uint32_t ckey_dei_incl:1;
a_uint32_t ckey_dei:1;
a_uint32_t _reserved0:4;
};
union eg_vlan_xlt_rule_u {
a_uint32_t val[2];
struct eg_vlan_xlt_rule bf;
};
/*[register] EG_VSI_TAG*/
#define EG_VSI_TAG
#define EG_VSI_TAG_ADDRESS 0x0
#define EG_VSI_TAG_NUM 32
#define EG_VSI_TAG_INC 0x4
#define EG_VSI_TAG_TYPE REG_TYPE_RW
#define EG_VSI_TAG_DEFAULT 0xaaaa
/*[field] TAGGED_MODE_PORT_BITMAP*/
#define EG_VSI_TAG_TAGGED_MODE_PORT_BITMAP
#define EG_VSI_TAG_TAGGED_MODE_PORT_BITMAP_OFFSET 0
#define EG_VSI_TAG_TAGGED_MODE_PORT_BITMAP_LEN 16
#define EG_VSI_TAG_TAGGED_MODE_PORT_BITMAP_DEFAULT 0xaaaa
struct eg_vsi_tag {
a_uint32_t tagged_mode_port_bitmap:16;
a_uint32_t _reserved0:16;
};
union eg_vsi_tag_u {
a_uint32_t val;
struct eg_vsi_tag bf;
};
/*[register] PORT_EG_DEF_VID*/
#define PORT_EG_DEF_VID
#define PORT_EG_DEF_VID_ADDRESS 0x400
#define PORT_EG_DEF_VID_NUM 8
#define PORT_EG_DEF_VID_INC 0x4
#define PORT_EG_DEF_VID_TYPE REG_TYPE_RW
#define PORT_EG_DEF_VID_DEFAULT 0x0
/*[field] PORT_DEF_SVID*/
#define PORT_EG_DEF_VID_PORT_DEF_SVID
#define PORT_EG_DEF_VID_PORT_DEF_SVID_OFFSET 0
#define PORT_EG_DEF_VID_PORT_DEF_SVID_LEN 12
#define PORT_EG_DEF_VID_PORT_DEF_SVID_DEFAULT 0x0
/*[field] PORT_DEF_SVID_EN*/
#define PORT_EG_DEF_VID_PORT_DEF_SVID_EN
#define PORT_EG_DEF_VID_PORT_DEF_SVID_EN_OFFSET 12
#define PORT_EG_DEF_VID_PORT_DEF_SVID_EN_LEN 1
#define PORT_EG_DEF_VID_PORT_DEF_SVID_EN_DEFAULT 0x0
/*[field] PORT_DEF_CVID*/
#define PORT_EG_DEF_VID_PORT_DEF_CVID
#define PORT_EG_DEF_VID_PORT_DEF_CVID_OFFSET 16
#define PORT_EG_DEF_VID_PORT_DEF_CVID_LEN 12
#define PORT_EG_DEF_VID_PORT_DEF_CVID_DEFAULT 0x0
/*[field] PORT_DEF_CVID_EN*/
#define PORT_EG_DEF_VID_PORT_DEF_CVID_EN
#define PORT_EG_DEF_VID_PORT_DEF_CVID_EN_OFFSET 28
#define PORT_EG_DEF_VID_PORT_DEF_CVID_EN_LEN 1
#define PORT_EG_DEF_VID_PORT_DEF_CVID_EN_DEFAULT 0x0
struct port_eg_def_vid {
a_uint32_t port_def_svid:12;
a_uint32_t port_def_svid_en:1;
a_uint32_t _reserved0:3;
a_uint32_t port_def_cvid:12;
a_uint32_t port_def_cvid_en:1;
a_uint32_t _reserved1:3;
};
union port_eg_def_vid_u {
a_uint32_t val;
struct port_eg_def_vid bf;
};
/*[register] PORT_EG_VLAN*/
#define PORT_EG_VLAN
#define PORT_EG_VLAN_ADDRESS 0x420
#define PORT_EG_VLAN_NUM 8
#define PORT_EG_VLAN_INC 0x4
#define PORT_EG_VLAN_TYPE REG_TYPE_RW
#define PORT_EG_VLAN_DEFAULT 0x14
/*[field] PORT_VLAN_TYPE*/
#define PORT_EG_VLAN_PORT_VLAN_TYPE
#define PORT_EG_VLAN_PORT_VLAN_TYPE_OFFSET 0
#define PORT_EG_VLAN_PORT_VLAN_TYPE_LEN 1
#define PORT_EG_VLAN_PORT_VLAN_TYPE_DEFAULT 0x0
/*[field] PORT_EG_VLAN_CTAG_MODE*/
#define PORT_EG_VLAN_PORT_EG_VLAN_CTAG_MODE
#define PORT_EG_VLAN_PORT_EG_VLAN_CTAG_MODE_OFFSET 1
#define PORT_EG_VLAN_PORT_EG_VLAN_CTAG_MODE_LEN 2
#define PORT_EG_VLAN_PORT_EG_VLAN_CTAG_MODE_DEFAULT 0x2
/*[field] PORT_EG_VLAN_STAG_MODE*/
#define PORT_EG_VLAN_PORT_EG_VLAN_STAG_MODE
#define PORT_EG_VLAN_PORT_EG_VLAN_STAG_MODE_OFFSET 3
#define PORT_EG_VLAN_PORT_EG_VLAN_STAG_MODE_LEN 2
#define PORT_EG_VLAN_PORT_EG_VLAN_STAG_MODE_DEFAULT 0x2
/*[field] VSI_TAG_MODE_EN*/
#define PORT_EG_VLAN_VSI_TAG_MODE_EN
#define PORT_EG_VLAN_VSI_TAG_MODE_EN_OFFSET 5
#define PORT_EG_VLAN_VSI_TAG_MODE_EN_LEN 1
#define PORT_EG_VLAN_VSI_TAG_MODE_EN_DEFAULT 0x0
/*[field] PORT_EG_PCP_PROP_CMD*/
#define PORT_EG_VLAN_PORT_EG_PCP_PROP_CMD
#define PORT_EG_VLAN_PORT_EG_PCP_PROP_CMD_OFFSET 6
#define PORT_EG_VLAN_PORT_EG_PCP_PROP_CMD_LEN 1
#define PORT_EG_VLAN_PORT_EG_PCP_PROP_CMD_DEFAULT 0x0
/*[field] PORT_EG_DEI_PROP_CMD*/
#define PORT_EG_VLAN_PORT_EG_DEI_PROP_CMD
#define PORT_EG_VLAN_PORT_EG_DEI_PROP_CMD_OFFSET 7
#define PORT_EG_VLAN_PORT_EG_DEI_PROP_CMD_LEN 1
#define PORT_EG_VLAN_PORT_EG_DEI_PROP_CMD_DEFAULT 0x0
/*[field] TX_COUNTING_EN*/
#define PORT_EG_VLAN_TX_COUNTING_EN
#define PORT_EG_VLAN_TX_COUNTING_EN_OFFSET 8
#define PORT_EG_VLAN_TX_COUNTING_EN_LEN 1
#define PORT_EG_VLAN_TX_COUNTING_EN_DEFAULT 0x0
struct port_eg_vlan {
a_uint32_t port_vlan_type:1;
a_uint32_t port_eg_vlan_ctag_mode:2;
a_uint32_t port_eg_vlan_stag_mode:2;
a_uint32_t vsi_tag_mode_en:1;
a_uint32_t port_eg_pcp_prop_cmd:1;
a_uint32_t port_eg_dei_prop_cmd:1;
a_uint32_t tx_counting_en:1;
a_uint32_t _reserved0:23;
};
union port_eg_vlan_u {
a_uint32_t val;
struct port_eg_vlan bf;
};
/*[register] EG_VLAN_TPID*/
#define EG_VLAN_TPID
#define EG_VLAN_TPID_ADDRESS 0x440
#define EG_VLAN_TPID_NUM 1
#define EG_VLAN_TPID_INC 0x4
#define EG_VLAN_TPID_TYPE REG_TYPE_RW
#define EG_VLAN_TPID_DEFAULT 0x810088a8
/*[field] STPID*/
#define EG_VLAN_TPID_STPID
#define EG_VLAN_TPID_STPID_OFFSET 0
#define EG_VLAN_TPID_STPID_LEN 16
#define EG_VLAN_TPID_STPID_DEFAULT 0x88a8
/*[field] CTPID*/
#define EG_VLAN_TPID_CTPID
#define EG_VLAN_TPID_CTPID_OFFSET 16
#define EG_VLAN_TPID_CTPID_LEN 16
#define EG_VLAN_TPID_CTPID_DEFAULT 0x8100
struct eg_vlan_tpid {
a_uint32_t stpid:16;
a_uint32_t ctpid:16;
};
union eg_vlan_tpid_u {
a_uint32_t val;
struct eg_vlan_tpid bf;
};
/*[register] EG_BRIDGE_CONFIG*/
#define EG_BRIDGE_CONFIG
#define EG_BRIDGE_CONFIG_ADDRESS 0x6000
#define EG_BRIDGE_CONFIG_NUM 1
#define EG_BRIDGE_CONFIG_INC 0x4
#define EG_BRIDGE_CONFIG_TYPE REG_TYPE_RW
#define EG_BRIDGE_CONFIG_DEFAULT 0x0
/*[field] BRIDGE_TYPE*/
#define EG_BRIDGE_CONFIG_BRIDGE_TYPE
#define EG_BRIDGE_CONFIG_BRIDGE_TYPE_OFFSET 0
#define EG_BRIDGE_CONFIG_BRIDGE_TYPE_LEN 1
#define EG_BRIDGE_CONFIG_BRIDGE_TYPE_DEFAULT 0x0
/*[field] PKT_L2_EDIT_EN*/
#define EG_BRIDGE_CONFIG_PKT_L2_EDIT_EN
#define EG_BRIDGE_CONFIG_PKT_L2_EDIT_EN_OFFSET 1
#define EG_BRIDGE_CONFIG_PKT_L2_EDIT_EN_LEN 1
#define EG_BRIDGE_CONFIG_PKT_L2_EDIT_EN_DEFAULT 0x0
/*[field] QUEUE_CNT_EN*/
#define EG_BRIDGE_CONFIG_QUEUE_CNT_EN
#define EG_BRIDGE_CONFIG_QUEUE_CNT_EN_OFFSET 2
#define EG_BRIDGE_CONFIG_QUEUE_CNT_EN_LEN 1
#define EG_BRIDGE_CONFIG_QUEUE_CNT_EN_DEFAULT 0x0
struct eg_bridge_config {
a_uint32_t bridge_type:1;
a_uint32_t pkt_l2_edit_en:1;
a_uint32_t queue_cnt_en:1;
a_uint32_t _reserved0:29;
};
union eg_bridge_config_u {
a_uint32_t val;
struct eg_bridge_config bf;
};
/*[table] EG_VLAN_XLT_ACTION*/
#define EG_VLAN_XLT_ACTION
#define EG_VLAN_XLT_ACTION_ADDRESS 0xd000
#define EG_VLAN_XLT_ACTION_NUM 64
#define EG_VLAN_XLT_ACTION_INC 0x8
#define EG_VLAN_XLT_ACTION_TYPE REG_TYPE_RW
#define EG_VLAN_XLT_ACTION_DEFAULT 0x0
/*[field] VID_SWAP_CMD*/
#define EG_VLAN_XLT_ACTION_VID_SWAP_CMD
#define EG_VLAN_XLT_ACTION_VID_SWAP_CMD_OFFSET 0
#define EG_VLAN_XLT_ACTION_VID_SWAP_CMD_LEN 1
#define EG_VLAN_XLT_ACTION_VID_SWAP_CMD_DEFAULT 0x0
/*[field] XLT_SVID_CMD*/
#define EG_VLAN_XLT_ACTION_XLT_SVID_CMD
#define EG_VLAN_XLT_ACTION_XLT_SVID_CMD_OFFSET 1
#define EG_VLAN_XLT_ACTION_XLT_SVID_CMD_LEN 2
#define EG_VLAN_XLT_ACTION_XLT_SVID_CMD_DEFAULT 0x0
/*[field] XLT_SVID*/
#define EG_VLAN_XLT_ACTION_XLT_SVID
#define EG_VLAN_XLT_ACTION_XLT_SVID_OFFSET 3
#define EG_VLAN_XLT_ACTION_XLT_SVID_LEN 12
#define EG_VLAN_XLT_ACTION_XLT_SVID_DEFAULT 0x0
/*[field] XLT_CVID_CMD*/
#define EG_VLAN_XLT_ACTION_XLT_CVID_CMD
#define EG_VLAN_XLT_ACTION_XLT_CVID_CMD_OFFSET 15
#define EG_VLAN_XLT_ACTION_XLT_CVID_CMD_LEN 2
#define EG_VLAN_XLT_ACTION_XLT_CVID_CMD_DEFAULT 0x0
/*[field] XLT_CVID*/
#define EG_VLAN_XLT_ACTION_XLT_CVID
#define EG_VLAN_XLT_ACTION_XLT_CVID_OFFSET 17
#define EG_VLAN_XLT_ACTION_XLT_CVID_LEN 12
#define EG_VLAN_XLT_ACTION_XLT_CVID_DEFAULT 0x0
/*[field] PCP_SWAP_CMD*/
#define EG_VLAN_XLT_ACTION_PCP_SWAP_CMD
#define EG_VLAN_XLT_ACTION_PCP_SWAP_CMD_OFFSET 29
#define EG_VLAN_XLT_ACTION_PCP_SWAP_CMD_LEN 1
#define EG_VLAN_XLT_ACTION_PCP_SWAP_CMD_DEFAULT 0x0
/*[field] XLT_SPCP_CMD*/
#define EG_VLAN_XLT_ACTION_XLT_SPCP_CMD
#define EG_VLAN_XLT_ACTION_XLT_SPCP_CMD_OFFSET 30
#define EG_VLAN_XLT_ACTION_XLT_SPCP_CMD_LEN 1
#define EG_VLAN_XLT_ACTION_XLT_SPCP_CMD_DEFAULT 0x0
/*[field] XLT_SPCP*/
#define EG_VLAN_XLT_ACTION_XLT_SPCP
#define EG_VLAN_XLT_ACTION_XLT_SPCP_OFFSET 31
#define EG_VLAN_XLT_ACTION_XLT_SPCP_LEN 3
#define EG_VLAN_XLT_ACTION_XLT_SPCP_DEFAULT 0x0
/*[field] XLT_CPCP_CMD*/
#define EG_VLAN_XLT_ACTION_XLT_CPCP_CMD
#define EG_VLAN_XLT_ACTION_XLT_CPCP_CMD_OFFSET 34
#define EG_VLAN_XLT_ACTION_XLT_CPCP_CMD_LEN 1
#define EG_VLAN_XLT_ACTION_XLT_CPCP_CMD_DEFAULT 0x0
/*[field] XLT_CPCP*/
#define EG_VLAN_XLT_ACTION_XLT_CPCP
#define EG_VLAN_XLT_ACTION_XLT_CPCP_OFFSET 35
#define EG_VLAN_XLT_ACTION_XLT_CPCP_LEN 3
#define EG_VLAN_XLT_ACTION_XLT_CPCP_DEFAULT 0x0
/*[field] DEI_SWAP_CMD*/
#define EG_VLAN_XLT_ACTION_DEI_SWAP_CMD
#define EG_VLAN_XLT_ACTION_DEI_SWAP_CMD_OFFSET 38
#define EG_VLAN_XLT_ACTION_DEI_SWAP_CMD_LEN 1
#define EG_VLAN_XLT_ACTION_DEI_SWAP_CMD_DEFAULT 0x0
/*[field] XLT_SDEI_CMD*/
#define EG_VLAN_XLT_ACTION_XLT_SDEI_CMD
#define EG_VLAN_XLT_ACTION_XLT_SDEI_CMD_OFFSET 39
#define EG_VLAN_XLT_ACTION_XLT_SDEI_CMD_LEN 1
#define EG_VLAN_XLT_ACTION_XLT_SDEI_CMD_DEFAULT 0x0
/*[field] XLT_SDEI*/
#define EG_VLAN_XLT_ACTION_XLT_SDEI
#define EG_VLAN_XLT_ACTION_XLT_SDEI_OFFSET 40
#define EG_VLAN_XLT_ACTION_XLT_SDEI_LEN 1
#define EG_VLAN_XLT_ACTION_XLT_SDEI_DEFAULT 0x0
/*[field] XLT_CDEI_CMD*/
#define EG_VLAN_XLT_ACTION_XLT_CDEI_CMD
#define EG_VLAN_XLT_ACTION_XLT_CDEI_CMD_OFFSET 41
#define EG_VLAN_XLT_ACTION_XLT_CDEI_CMD_LEN 1
#define EG_VLAN_XLT_ACTION_XLT_CDEI_CMD_DEFAULT 0x0
/*[field] XLT_CDEI*/
#define EG_VLAN_XLT_ACTION_XLT_CDEI
#define EG_VLAN_XLT_ACTION_XLT_CDEI_OFFSET 42
#define EG_VLAN_XLT_ACTION_XLT_CDEI_LEN 1
#define EG_VLAN_XLT_ACTION_XLT_CDEI_DEFAULT 0x0
/*[field] COUNTER_EN*/
#define EG_VLAN_XLT_ACTION_COUNTER_EN
#define EG_VLAN_XLT_ACTION_COUNTER_EN_OFFSET 43
#define EG_VLAN_XLT_ACTION_COUNTER_EN_LEN 1
#define EG_VLAN_XLT_ACTION_COUNTER_EN_DEFAULT 0x0
/*[field] COUNTER_ID*/
#define EG_VLAN_XLT_ACTION_COUNTER_ID
#define EG_VLAN_XLT_ACTION_COUNTER_ID_OFFSET 44
#define EG_VLAN_XLT_ACTION_COUNTER_ID_LEN 6
#define EG_VLAN_XLT_ACTION_COUNTER_ID_DEFAULT 0x0
struct eg_vlan_xlt_action {
a_uint32_t vid_swap_cmd:1;
a_uint32_t xlt_svid_cmd:2;
a_uint32_t xlt_svid:12;
a_uint32_t xlt_cvid_cmd:2;
a_uint32_t xlt_cvid:12;
a_uint32_t pcp_swap_cmd:1;
a_uint32_t xlt_spcp_cmd:1;
a_uint32_t xlt_spcp_0:1;
a_uint32_t xlt_spcp_1:2;
a_uint32_t xlt_cpcp_cmd:1;
a_uint32_t xlt_cpcp:3;
a_uint32_t dei_swap_cmd:1;
a_uint32_t xlt_sdei_cmd:1;
a_uint32_t xlt_sdei:1;
a_uint32_t xlt_cdei_cmd:1;
a_uint32_t xlt_cdei:1;
a_uint32_t counter_en:1;
a_uint32_t counter_id:6;
a_uint32_t _reserved0:14;
};
union eg_vlan_xlt_action_u {
a_uint32_t val[2];
struct eg_vlan_xlt_action bf;
};
/*[table] VLAN_DEV_TX_COUNTER_TBL*/
#define VLAN_DEV_TX_COUNTER_TBL
#define VLAN_DEV_TX_COUNTER_TBL_ADDRESS 0x2000
#define VLAN_DEV_TX_COUNTER_TBL_NUM 64
#define VLAN_DEV_TX_COUNTER_TBL_INC 0x10
#define VLAN_DEV_TX_COUNTER_TBL_TYPE REG_TYPE_RW
#define VLAN_DEV_TX_COUNTER_TBL_DEFAULT 0x0
/*[field] TX_PKT_CNT*/
#define VLAN_DEV_TX_COUNTER_TBL_TX_PKT_CNT
#define VLAN_DEV_TX_COUNTER_TBL_TX_PKT_CNT_OFFSET 0
#define VLAN_DEV_TX_COUNTER_TBL_TX_PKT_CNT_LEN 32
#define VLAN_DEV_TX_COUNTER_TBL_TX_PKT_CNT_DEFAULT 0x0
/*[field] TX_BYTE_CNT*/
#define VLAN_DEV_TX_COUNTER_TBL_TX_BYTE_CNT
#define VLAN_DEV_TX_COUNTER_TBL_TX_BYTE_CNT_OFFSET 32
#define VLAN_DEV_TX_COUNTER_TBL_TX_BYTE_CNT_LEN 40
#define VLAN_DEV_TX_COUNTER_TBL_TX_BYTE_CNT_DEFAULT 0x0
struct vlan_dev_tx_counter_tbl {
a_uint32_t tx_pkt_cnt:32;
a_uint32_t tx_byte_cnt_0:32;
a_uint32_t tx_byte_cnt_1:8;
a_uint32_t _reserved0:24;
};
union vlan_dev_tx_counter_tbl_u {
a_uint32_t val[3];
struct vlan_dev_tx_counter_tbl bf;
};
#endif