nxge_fm.h revision 4496171313bed39e96f21bc2f9faf2868e267ae3
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License (the "License").
* You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2006 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
#ifndef _SYS_NXGE_NXGE_FM_H
#define _SYS_NXGE_NXGE_FM_H
#pragma ident "%Z%%M% %I% %E% SMI"
#ifdef __cplusplus
extern "C" {
#endif
#define ERNAME_ERR_PORTN "port number"
#define ERNAME_ERR_DCHAN "dma channel number"
#define ERNAME_TCAM_ERR_LOG "tcam error log"
#define ERNAME_VLANTAB_ERR_LOG "vlan table error log"
#define ERNAME_HASHTAB_ERR_LOG "hash table error log"
#define ERNAME_HASHT_LOOKUP_ERR_LOG0 "hash table lookup error log0"
#define ERNAME_HASHT_LOOKUP_ERR_LOG1 "hash table lookup error log1"
#define ERNAME_RDMC_PAR_ERR_LOG "rdmc parity error log"
#define ERNAME_DFIFO_RD_PTR "dfifo read pointer"
#define ERNAME_IPP_STATE_MACH "ipp state machine"
#define ERNAME_DFIFO_ENTRY "dfifo entry"
#define ERNAME_DFIFO_SYNDROME "dfifo syndrome"
#define ERNAME_PFIFO_ENTRY "pfifo entry"
#define ERNAME_ZCP_STATE_MACH "zcp state machine"
#define ERNAME_CFIFO_PORT_NUM "cfifo port number"
#define ERNAME_RDC_ERR_TYPE "completion error type"
#define ERNAME_TDMC_ERR_LOG0 "tdmc error log0"
#define ERNAME_TDMC_ERR_LOG1 "tdmc error log1"
#define ERNAME_TXC_ROECC_ADDR "txc reorder FIFO ECC error address"
#define ERNAME_TXC_ROECC_DATA0 "txc reorder FIFO data0"
#define ERNAME_TXC_ROECC_DATA1 "txc reorder FIFO data1"
#define ERNAME_TXC_ROECC_DATA2 "txc reorder FIFO data2"
#define ERNAME_TXC_ROECC_DATA3 "txc reorder FIFO data3"
#define ERNAME_TXC_ROECC_DATA4 "txc reorder FIFO data4"
#define ERNAME_TXC_RO_STATE0 "txc reorder FIFO error state0" \
"(duplicate TID)"
#define ERNAME_TXC_RO_STATE1 "txc reorder FIFO error state1" \
"(uninitialized TID)"
#define ERNAME_TXC_RO_STATE2 "txc reorder FIFO error state2" \
"(timed out TIDs)"
#define ERNAME_TXC_RO_STATE3 "txc reorder FIFO error state3"
#define ERNAME_TXC_RO_STATE_CTL "txc reorder FIFO error control"
#define ERNAME_TXC_RO_TIDS "txc reorder tids"
#define ERNAME_TXC_SFECC_ADDR "txc store forward FIFO ECC error "\
"address"
#define ERNAME_TXC_SFECC_DATA0 "txc store forward FIFO data0"
#define ERNAME_TXC_SFECC_DATA1 "txc store forward FIFO data1"
#define ERNAME_TXC_SFECC_DATA2 "txc store forward FIFO data2"
#define ERNAME_TXC_SFECC_DATA3 "txc store forward FIFO data3"
#define ERNAME_TXC_SFECC_DATA4 "txc store forward FIFO data4"
#define EREPORT_FM_ID_SHIFT 16
#define EREPORT_FM_ID_MASK 0xFF
#define EREPORT_INDEX_MASK 0xFF
#define NXGE_FM_EREPORT_UNKNOWN 0
#define FM_SW_ID 0xFF
#define FM_PCS_ID MAC_BLK_ID
#define FM_TXMAC_ID TXMAC_BLK_ID
#define FM_RXMAC_ID RXMAC_BLK_ID
#define FM_MIF_ID MIF_BLK_ID
#define FM_IPP_ID IPP_BLK_ID
#define FM_TXC_ID TXC_BLK_ID
#define FM_TXDMA_ID TXDMA_BLK_ID
#define FM_RXDMA_ID RXDMA_BLK_ID
#define FM_ZCP_ID ZCP_BLK_ID
#define FM_ESPC_ID ESPC_BLK_ID
#define FM_FFLP_ID FFLP_BLK_ID
#define FM_PCIE_ID PCIE_BLK_ID
#define FM_PCIE_SERDES_ID PCIE_SERDES_BLK_ID
#define FM_VIR_ID VIR_BLK_ID
typedef uint32_t nxge_fm_ereport_id_t;
typedef struct _nxge_fm_ereport_attr {
char *eclass;
/* General MAC ereports */
typedef enum {
/* MIF ereports */
typedef enum {
/* FFLP ereports */
typedef enum {
/* IPP ereports */
typedef enum {
/* RDMC ereports */
typedef enum {
/* ZCP ereports */
typedef enum {
(FM_ZCP_ID << EREPORT_FM_ID_SHIFT),
typedef enum {
typedef enum {
typedef enum {
(FM_TXC_ID << EREPORT_FM_ID_SHIFT),
typedef enum {
typedef enum {
typedef enum {
#define NXGE_FM_EREPORT_UNKNOWN 0
#define NXGE_FM_EREPORT_UNKNOWN_NAME ""
#ifdef __cplusplus
}
#endif
#endif /* _SYS_NXGE_NXGE_FM_H */