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

📄 skgeasf.h

📁 这是Marvell Technology Group Ltd. 4355 (rev 12)网卡在linux下的驱动程序源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
/****************************************************************************** * * Name:    skgeasf.h * Project: asf/ipmi * Version: $Revision: 1.1.2.9 $ * Date:    $Date: 2007/12/19 16:06:35 $ * Purpose: asf/ipmi interface in windows driver * ******************************************************************************//****************************************************************************** * *	(C)Copyright 1998-2002 SysKonnect GmbH. *	(C)Copyright 2002-2007 Marvell. * *	Driver for Marvell Yukon/2 chipset and SysKonnect Gigabit Ethernet  *      Server Adapters. * *	Address all question to: gr-msgg-linux@marvell.com * *      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 * *****************************************************************************/#ifndef _INC_SKGEASF_H_#define _INC_SKGEASF_H_#ifdef __cplusplusextern "C" {#endif  /* __cplusplus *//* DEFINES */#define ASF_FW_ARP_RESOLVE                  //  FW is resolving the destination IP addr#define ASF_FW_WD                           //  Driver is watching the FW#define ASF_CHECK_HIDDEN_ID                 //  ASF init checks hidden id// modes for the asf driver#define SK_GEASF_MODE_UNKNOWN               0       // unknown operation mode (initial)#define SK_GEASF_MODE_ASF                   1       // asfec.bin binary found -> ASF operation#define SK_GEASF_MODE_IPMI                  2       // ipmiy2.bin binary found -> IPMI operation#define SK_GEASF_MODE_DASH                  3       // dashex.bin binary found -> DASH operation// chip modes for asf driver#define SK_GEASF_CHIP_UNKNOWN               0       // bad chip id / hidden id#define SK_GEASF_CHIP_EC                    1       // EC: ASF#define SK_GEASF_CHIP_Y2                    2       // Yukon2#define SK_GEASF_CHIP_EX                    3       // Yukon Extreme// dual link mode#define SK_GEASF_Y2_SINGLEPORT              1       // Yukon2 sigle link adapter#define SK_GEASF_Y2_DUALPORT                2       // Yukon2 dual link adapter#define ASF_GUI_TSF                         10      /* Time Scale Factor: 1s(GUI) <-> 10*100ms(FW) */#define ASF_MAX_STRLEN                      64// lengths used in get oid#define ASF_ACPI_MAXBUFFLENGTH              256     // max bytes for holding ACPI table#define ASF_SMBUS_MAXBUFFLENGTH             128     // max bytes for holding SMBus info#define ASF_FWVER_MAXBUFFLENGTH             40      // max stringlen for firmware version#define SK_ASF_EVT_TIMER_EXPIRED            1       /* Counter overflow */#define SK_ASF_EVT_TIMER_SPI_EXPIRED        2       /* Counter overflow */#define SK_ASF_EVT_TIMER_HCI_EXPIRED        3       /* Counter overflow *//*  Return codes to the PNMI module  */#define SK_ASF_PNMI_ERR_OK              0#define SK_ASF_PNMI_ERR_GENERAL         1#define SK_ASF_PNMI_ERR_TOO_SHORT       2#define SK_ASF_PNMI_ERR_BAD_VALUE       3#define SK_ASF_PNMI_ERR_READ_ONLY       4#define SK_ASF_PNMI_ERR_UNKNOWN_OID     5#define SK_ASF_PNMI_ERR_UNKNOWN_INST    6#define SK_ASF_PNMI_ERR_UNKNOWN_NET     7#define SK_ASF_PNMI_ERR_NOT_SUPPORTED   10#define REG_ASF_MAC_ADDR        0x0f24#define REG_ASF_MY_IP           0x0f50#define REG_ASF_STATUS_CMD      0x0e68#define REG_ASF_SMBUS_CFG       0x0e40#define ASF_CPU_STATE_UNKNOWN       0#define ASF_CPU_STATE_RESET         1#define ASF_CPU_STATE_RUNNING       2/*  ASF MIB default values */#define ASF_DEF_RETRANS_COUNT_MIN   0           // x1#define ASF_DEF_RETRANS_COUNT_MAX   255         // x1#define ASF_DEF_WATCHDOG_ENA        0           //#define ASF_DEF_WATCHDOG_TIME       1200        // *100ms#define ASF_DEF_WATCHDOG_TIME_MAX   36000       // *100ms#define ASF_DEF_WATCHDOG_TIME_MIN   600         // *100ms#define ASF_DEF_RETRANS_INT_MIN     0           // *100ms#define ASF_DEF_RETRANS_INT_MAX     2550        // *100ms#define ASF_DEF_HB_INT_MIN          10          // *100ms#define ASF_DEF_HB_INT_MAX          2550        // *100ms#define ASF_DEF_ASF_ENA             0#define ASF_DEF_RETRANS             2#define ASF_DEF_RETRANS_INT         10          // *100ms#define ASF_DEF_HB_ENA              0#define ASF_DEF_HB_INT              600         // *100ms/* ASF HCI Commands */#define YASF_HOSTCMD_ASF_INFO                   1#define YASF_HOSTCMD_LEG_CONF                   2#define YASF_HOSTCMD_ASF_CONF                   3#define YASF_HOSTCMD_RCTRL_CONF                 4#define YASF_HOSTCMD_KEEP_ALIVE                 5#define YASF_HOSTCMD_NEW_SEPROM_CONFIG          6#define YASF_HOSTCMD_ENTER_RAM_IDLE             7#define YASF_HOSTCMD_LEAVE_RAM_IDLE             8#define YASF_HOSTCMD_RUN_DIAG                   9#define YASF_HOSTCMD_RESET_STATE                10#define YASF_HOSTCMD_RESET                      11#define YASF_HOSTCMD_CHECK_ALIVE                12#define YASF_HOSTCMD_DRV_HELLO                  13#define YASF_HOSTCMD_DRV_GOODBYE                14#define YASF_HOSTCMD_DRV_STANDBY                15#define YASF_HOSTCMD_UPDATE_OWN_MACADDR         16#define YASF_HOSTCMD_ARP_RESOLVE                17#define YASF_HOSTCMD_RESET_COLD                 18#define YASF_HOSTCMD_ACPI_RMCP_DATA             19#define YASF_HOSTCMD_ACPI_ERROR                 20#define YASF_HOSTCMD_CFG_SET_ASF_ENABLE         100#define YASF_HOSTCMD_CFG_SET_RSP_ENABLE         101#define YASF_HOSTCMD_CFG_SET_RETRANS            102#define YASF_HOSTCMD_CFG_SET_RETRANS_INT        103#define YASF_HOSTCMD_CFG_SET_HB_ENABLE          104#define YASF_HOSTCMD_CFG_SET_HB_INT             105#define YASF_HOSTCMD_CFG_SET_IP_DESTINATION     106#define YASF_HOSTCMD_CFG_SET_IP_SOURCE          107#define YASF_HOSTCMD_CFG_SET_MAC_DESTINATION    108#define YASF_HOSTCMD_CFG_SET_COMMUNITY_NAME     109#define YASF_HOSTCMD_CFG_SET_RSP_KEY_1          110#define YASF_HOSTCMD_CFG_SET_RSP_KEY_2          111#define YASF_HOSTCMD_CFG_SET_RSP_KEY_3          112#define YASF_HOSTCMD_CFG_SET_DRWD_ENABLE        113#define YASF_HOSTCMD_CFG_SET_DRWD_INT           114#define YASF_HOSTCMD_CFG_SET_WD_ENABLE          115#define YASF_HOSTCMD_CFG_SET_WD_INT             116#define YASF_HOSTCMD_CFG_SET_ASF_RAMSIZE        117#define YASF_HOSTCMD_CFG_SET_ACTIVE_PORT        118#define YASF_HOSTCMD_CFG_SET_DASH_ENABLE        119#define YASF_HOSTCMD_CFG_SET_DEBUG_INFO         120#define YASF_HOSTCMD_CFG_STORE_CONFIG           130#define YASF_HOSTCMD_CFG_GET_ASF_ENABLE         150#define YASF_HOSTCMD_CFG_GET_RSP_ENABLE         151#define YASF_HOSTCMD_CFG_GET_RETRANS            152#define YASF_HOSTCMD_CFG_GET_RETRANS_INT        153#define YASF_HOSTCMD_CFG_GET_HB_ENABLE          154#define YASF_HOSTCMD_CFG_GET_HB_INT             155#define YASF_HOSTCMD_CFG_GET_IP_DESTINATION     156#define YASF_HOSTCMD_CFG_GET_IP_SOURCE          157#define YASF_HOSTCMD_CFG_GET_MAC_DESTINATION    158#define YASF_HOSTCMD_CFG_GET_COMMUNITY_NAME     159#define YASF_HOSTCMD_CFG_GET_RSP_KEY_1          160#define YASF_HOSTCMD_CFG_GET_RSP_KEY_2          161#define YASF_HOSTCMD_CFG_GET_RSP_KEY_3          162#define YASF_HOSTCMD_CFG_GET_DRWD_ENABLE        163#define YASF_HOSTCMD_CFG_GET_DRWD_INT           164#define YASF_HOSTCMD_CFG_GET_WD_ENABLE          165#define YASF_HOSTCMD_CFG_GET_WD_INT             166#define YASF_HOSTCMD_CFG_GET_ASF_RAMSIZE        167#define YASF_HOSTCMD_CFG_GET_FW_VERSION_STRING  168#define YASF_HOSTCMD_CFG_GET_SMBUS_INFOS        169#define YASF_HOSTCMD_CFG_GET_ACTIVE_PORT        170#define YASF_HOSTCMD_CFG_READ_CONFIG            180#define YASF_HOSTCMD_CFG_SET_SW_PATTERN         190#define YASF_HOSTCMD_TRIGGER_ARP_QUERY         	191#define YASF_HOSTCMD_DISCARD_ARP_QUERY		192/* ASF HCI Master */#define ASF_HCI_READ            0x08000000#define ASF_HCI_WRITE           0x04000000#define ASF_HCI_CMD_RD_READY    0x02000000#define ASF_HCI_CMD_WR_READY    0x01000000#define ASF_HCI_UNSUCCESS       0x00800000#define ASF_HCI_OFFSET          0x000000ff#define ASF_HCI_CMDREG          0x0e70#define ASF_HCI_DATAREG         0x0e78#define ASF_HCI_WAIT            1#define ASF_HCI_NOWAIT          0#define ASF_HCI_TO              100     /* 1s */#define HCI_EN_CMD_IDLE             0#define HCI_EN_CMD_WRITING          1#define HCI_EN_CMD_READING          2#define HCI_EN_CMD_WAIT             3#define HCI_EN_CMD_READY            4#define HCI_EN_CMD_ERROR            5#define ASF_HCI_REC_BUF_SIZE    128#define ASF_HCI_TRA_BUF_SIZE    128/*  SEPROM  (VPD) */#define ASF_VPD_CONFIG_BASE     0x340#define ASF_VPD_CONFIG_SIZE     0x80#define ASF_VPD_DATA_BASE       0x3c0#define ASF_VPD_DATA_SIZE       0x40/*  Flash (SPI)*/#define ASF_FLASH_SIZE          (1024*64)#define ASF_FLASH_OFFS          0x20000#define ASF_FLASH_OFFS_VER      0x1fc00#define ASF_FLASH_OFFS_REV      0x1fc0b#define ASF_FLASH_OFFS_CS       0x1fffc#define ASF_FLASH_OFFS_GUID     0x1f000#define ASF_FLASH_OFFS_ACPI     0x1f010#define ASF_DASH_FLASH_SIZE_1   65536#define ASF_DASH_FLASH_SIZE_2   53248/*  Yukon Extreme  */#define ASF_FLASH_EX_OFFS          0x20000#define ASF_FLASH_EX_OFFS_VER      0x1cc00#define ASF_FLASH_EX_OFFS_REV      0x1cc0b#define ASF_FLASH_EX_OFFS_CS       0x1cffc#define ASF_FLASH_EX_OFFS_GUID     0x1c000#define ASF_FLASH_EX_OFFS_ACPI     0x1c010#define ASF_RESET_HOT           0#define ASF_RESET_COLD          1#define ASF_INIT_UNDEFINED      0#define ASF_INIT_OK             1#define ASF_INIT_ERROR          2#define ASF_INIT_ERROR_CHIP_ID  3#define ASF_INIT_ERROR_OPMODE   4#define RSP_KEYLENGTH           20//  ACPI module defines#define ASF_ACPI_STATE_OK                       1#define ASF_ACPI_STATE_UNDEFINED                0#define ASF_ACPI_STATE_ERROR                    -1#define ASF_ACPI_STATE_ERROR_NO_RSDPTR          -2#define ASF_ACPI_STATE_ERROR_RSDT               -3#define ASF_ACPI_STATE_ERROR_XSDT               -4#define ASF_ACPI_STATE_ERROR_RSDT_NO_TABLE      -5#define ASF_ACPI_STATE_ERROR_RSDT_HEADER        -6#define ASF_ACPI_STATE_ERROR_ASF                -7#define ASF_ACPI_STATE_ERROR_ASF_HEADER         -8#define ASF_ACPI_STATE_ERROR_RSDT_NO_ASF_TABLE  -9#define ASF_ACPI_STATE_ERROR_FILE_OPEN          -10#define ASF_ACPI_STATE_ERROR_FILE_MAP           -11#define ASF_ACPI_STATE_ERROR_FILE_SIZE          -12#define ASF_ACPI_STATE_ERROR_FILE_CS            -13#define ASF_RECORD_INFO                 0x00#define ASF_RECORD_ALRT                 0x01#define ASF_RECORD_RCTL                 0x02#define ASF_RECORD_RMCP                 0x03#define ASF_RECORD_ADDR                 0x04#define TABLE_HEADER_LENGTH             36#define SEC_COMMIT                      0x08000000// endianess depended macros#define REVERSE_16(x)   ((((x)<<8)&0xff00) + (((x)>>8)&0x00ff))#define REVERSE_32(x)   ( ((((SK_U32)(x))<<24UL)&0xff000000UL) + \                          ((((SK_U32)(x))<< 8UL)&0x00ff0000UL) + \                          ((((SK_U32)(x))>> 8UL)&0x0000ff00UL) + \                          ((((SK_U32)(x))>>24UL)&0x000000ffUL) )#ifdef SK_LITTLE_ENDIAN#define NTOHS(x) REVERSE_16(x)#define HTONS(x) REVERSE_16(x)#define NTOHL(x) REVERSE_32(x)#define HTONL(x) REVERSE_32(x)#else#define NTOHS(x) (x)#define HTONS(x) (x)#define NTOHL(x) (x)#define HTONL(x) (x)#endif/* *  ASF MIB structure */struct _STR_PET_DAT{    SK_U8   EventSensorType;    SK_U8   EventType;    SK_U8   EventOffset;    SK_U8   TrapSourceType;    SK_U8   EventSourceType;    SK_U8   EventSeverity;    SK_U8   SensorDevice;    SK_U8   SensorNumber;    SK_U8   Entity;    SK_U8   EntityInstance;    SK_U8   EventData [8];    SK_U8   LanguageCode;    SK_U8   OemCustomField [64];    //  83 Bytes  so far};typedef struct _STR_PET_DAT STR_PET_DAT;// structure for ACPI data for reporting to GUIstruct _STR_ASF_ACPI{    SK_U8  buffer [ASF_ACPI_MAXBUFFLENGTH];    SK_U32 length;};typedef struct _STR_ASF_ACPI STR_ASF_ACPI;// structure for SMBus data for reporting to GUIstruct _STR_ASF_SMBUSINFO{    SK_U8  UpdateReq;    SK_U8  buffer [ASF_SMBUS_MAXBUFFLENGTH];    SK_U32 length;};typedef struct _STR_ASF_SMBUSINFO STR_ASF_SMBUSINFO;struct _STR_ASF_MIB{    SK_U8               WriteToFlash;    SK_U8               ConfigChange;    //  Configuration parameter related to registers    SK_U8               NewParam;    SK_U8               Ena;    SK_U16              Retrans;    SK_U32              RetransInt;    SK_U8               HbEna;    SK_U32              HbInt;    SK_U8               WdEna;    SK_U32              WdTime;    SK_U8               IpSource        [4];    SK_U8               IpV6Source      [16*7];    SK_U8               MacSource       [6];    SK_U8               IpDest          [4];    SK_U8               MacDest         [6];    SK_U8               CommunityName   [64];    SK_U8               Guid            [16];    SK_U8               RspEnable;    SK_U32              RetransCountMin;    SK_U32              RetransCountMax;    SK_U32              RetransIntMin;    SK_U32              RetransIntMax;    SK_U32              HbIntMin;    SK_U32              HbIntMax;    SK_U32              WdTimeMax;    SK_U32              WdTimeMin;    SK_U8               KeyOperator         [RSP_KEYLENGTH];    SK_U8               KeyAdministrator    [RSP_KEYLENGTH];    SK_U8               KeyGenerator        [RSP_KEYLENGTH];    STR_ASF_ACPI        Acpi;    STR_ASF_SMBUSINFO   SMBus;    SK_U8               RlmtMode;    SK_U8               Reserved            [6];    // reserved bytes in vpd    SK_U8               PattUpReq;};typedef struct _STR_ASF_MIB STR_ASF_MIB;typedef struct s_Hci{    SK_U32      To;

⌨️ 快捷键说明

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