⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 skgemib.c

📁 这是Marvell Technology Group Ltd. 4355 (rev 12)网卡在linux下的驱动程序源代码
💻 C
📖 第 1 页 / 共 3 页
字号:
/***************************************************************************** * * Name:	skgemib.c * Project:	Gigabit Ethernet Adapters, PNMI-Module * Version:	$Revision: 2.14 $ * Date:	$Date: 2008/03/06 14:15:53 $ * Purpose:	Private Network Management Interface Management Database * ****************************************************************************//****************************************************************************** * *	LICENSE: *	(C)Copyright Marvell. *	 *	This program is free software; you can redistribute it and/or modify *	it under the terms of the GNU General Public License as published by *	the Free Software Foundation; either version 2 of the License, or *	(at your option) any later version. *	 *	The information in this file is provided "AS IS" without warranty. *	/LICENSE * ******************************************************************************//* * PRIVATE OID handler function prototypes */PNMI_STATIC int Addr(SK_AC *pAC, SK_IOC IoC, int action,	SK_U32 Id, char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int CsumStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int General(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int Mac8023Stat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int MacPrivateConf(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int MacPrivateStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int Monitor(SK_AC *pAC, SK_IOC IoC, int action,	SK_U32 Id, char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int OidStruct(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int Perform(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int* pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int Rlmt(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int RlmtStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int SensorStat(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int Vpd(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);PNMI_STATIC int Vct(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);#ifdef SK_POWER_MGMTPNMI_STATIC int PowerManagement(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);#endif /* SK_POWER_MGMT */#ifdef SK_DIAG_SUPPORTPNMI_STATIC int DiagActions(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);#endif /* SK_DIAG_SUPPORT */#ifdef SK_ASFPNMI_STATIC int Asf(SK_AC *pAC, SK_IOC IoC, int action, SK_U32 Id,	char *pBuf, unsigned int *pLen, SK_U32 Instance,	unsigned int TableIndex, SK_U32 NetIndex);#endif /* SK_ASF *//* defines *******************************************************************/#define ID_TABLE_SIZE (sizeof(IdTable)/sizeof(IdTable[0]))/* global variables **********************************************************//* * Table to correlate OID with handler function and index to * hardware register stored in StatAddress if applicable. */PNMI_STATIC const SK_PNMI_TAB_ENTRY IdTable[] = {	{OID_GEN_XMIT_OK,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX},	{OID_GEN_RCV_OK,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX},	{OID_GEN_XMIT_ERROR,		0,		0,		0,		SK_PNMI_RO, General, 0},	{OID_GEN_RCV_ERROR,		0,		0,		0,		SK_PNMI_RO, General, 0},	{OID_GEN_RCV_NO_BUFFER,		0,		0,		0,		SK_PNMI_RO, General, 0},	{OID_GEN_DIRECTED_FRAMES_XMIT,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_UNICAST},	{OID_GEN_MULTICAST_FRAMES_XMIT,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_MULTICAST},	{OID_GEN_BROADCAST_FRAMES_XMIT,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_BROADCAST},	{OID_GEN_DIRECTED_FRAMES_RCV,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_UNICAST},	{OID_GEN_MULTICAST_FRAMES_RCV,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_MULTICAST},	{OID_GEN_BROADCAST_FRAMES_RCV,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_BROADCAST},	{OID_GEN_RCV_CRC_ERROR,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_FCS},	{OID_GEN_TRANSMIT_QUEUE_LENGTH,		0,		0,		0,		SK_PNMI_RO, General, 0},	{OID_802_3_PERMANENT_ADDRESS,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, 0},	{OID_802_3_CURRENT_ADDRESS,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, 0},	{OID_802_3_RCV_ERROR_ALIGNMENT,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_FRAMING},	{OID_802_3_XMIT_ONE_COLLISION,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_SINGLE_COL},	{OID_802_3_XMIT_MORE_COLLISIONS,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_MULTI_COL},	{OID_802_3_XMIT_DEFERRED,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_DEFFERAL},	{OID_802_3_XMIT_MAX_COLLISIONS,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_EXCESS_COL},	{OID_802_3_RCV_OVERRUN,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HRX_OVERFLOW},	{OID_802_3_XMIT_UNDERRUN,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_UNDERRUN},	{OID_802_3_XMIT_TIMES_CRS_LOST,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_CARRIER},	{OID_802_3_XMIT_LATE_COLLISIONS,		0,		0,		0,		SK_PNMI_RO, Mac8023Stat, SK_PNMI_HTX_LATE_COL},#ifdef SK_POWER_MGMT	{OID_PNP_CAPABILITIES,		0,		0,		0,		SK_PNMI_RO, PowerManagement, 0},	{OID_PNP_SET_POWER,		0,		0,		0,		SK_PNMI_WO, PowerManagement, 0},	{OID_PNP_QUERY_POWER,		0,		0,		0,		SK_PNMI_RO, PowerManagement, 0},	{OID_PNP_ADD_WAKE_UP_PATTERN,		0,		0,		0,		SK_PNMI_WO, PowerManagement, 0},	{OID_PNP_REMOVE_WAKE_UP_PATTERN,		0,		0,		0,		SK_PNMI_WO, PowerManagement, 0},	{OID_PNP_ENABLE_WAKE_UP,		0,		0,		0,		SK_PNMI_RW, PowerManagement, 0},#endif /* SK_POWER_MGMT */#ifdef SK_DIAG_SUPPORT	{OID_SKGE_DIAG_MODE,		0,		0,		0,		SK_PNMI_RW, DiagActions, 0},#endif /* SK_DIAG_SUPPORT */#ifdef SK_ASF	{OID_SKGE_ASF,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_STORE_CONFIG,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_ENA,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_DASH_ENA,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_RETRANS,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_RETRANS_INT,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_HB_ENA,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_HB_INT,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_WD_ENA,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_WD_TIME,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_IP_SOURCE,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_MAC_SOURCE,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_IP_DEST,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_MAC_DEST,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_COMMUNITY_NAME,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_RSP_ENA,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_RETRANS_COUNT_MIN,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_RETRANS_COUNT_MAX,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_RETRANS_INT_MIN,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_RETRANS_INT_MAX,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_HB_INT_MIN,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_HB_INT_MAX,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_WD_TIME_MIN,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_WD_TIME_MAX,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_HB_CAP,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_WD_TIMER_RES,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_GUID,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_KEY_OP,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_KEY_ADM,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_KEY_GEN,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_CAP,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_DASH_CAP,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_PAR_1,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_OVERALL_OID,		0,		0,		0,		SK_PNMI_RW, Asf, 0},	{OID_SKGE_ASF_FWVER_OID,		0,		0,		0,		SK_PNMI_RO, Asf, 0},

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -