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

📄 csvchip.h

📁 wince.net板级支持包BSP for EP9315
💻 H
字号:
//**********************************************************************
//                                                                      
// Filename: 
//                                                                      
// Description: 
//
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
// PARTICULAR PURPOSE.
// Copyright(c) Cirrus Logic Corporation 2001, All Rights Reserved                       
//                                                                      
//**********************************************************************


#ifndef _CSvchip_h_
#define _CSvchip_h_




/* Chip Configuration */

typedef struct CFG_t
{
//   PORT  IOBase;
//   WORD  IOSize;        /* In bytes */
//   DWORD MemoryBase;
//   WORD  MemorySize;    /* In bytes */
//   DWORD ROMBase;
//   WORD  ROMSize;       /* In bytes */
//   BYTE  IntLine;/* QQQQQQQQQQQQ */
//   EA    EthernetAddr;
   WORD  RequestedMediaSpeed;   /* 0 = Autodetect */
   WORD  DetectedMediaSpeed;     /* 10 = 10 Mbit */
   BYTE  RequestedMediaType;
   BYTE  DetectedMediaType;
   BYTE  RequestedDuplexMode;
   BYTE  CurrentDuplexMode;
//QQQ   BYTE  Filtering;
//   BYTE  BusType;
 //  WORD  BusSlot;
// @kml 02/28/00   BYTE  MaxTxCount;
//   BYTE  MaxRxCount;
//   WORD  LookAheadSize;
//   DWORD Flags;
} CFG, *PCFG;



/* Media Speed and Media Type */

#define MEDIA_AUTO_DETECT       0x00
#define MEDIA_BASE_T            0x01
#define MEDIA_BASE_AUI          0x02
#define MEDIA_BASE_2            0x03
#define MEDIA_10_MBPS           0x0A
#define MEDIA_100_MBPS          0x64
#define MEDIA_PENDING           0xFE
#define MEDIA_NONE              0xFF


/* Duplex Mode */

#define DUPLEX_AUTO_NEGOTIATE   0x00
#define DUPLEX_HALF             0x01
#define DUPLEX_FULL             0x02
#define DUPLEX_PENDING          0xFE
#define DUPLEX_NONE             0xFF


/* Filtering */

#define FILTER_INDIVIDUAL_ACCEPT   0x01
#define FILTER_BROADCAST_ACCEPT    0x02
#define FILTER_MULTICAST_ACCEPT    0x04
#define FILTER_PROMISCUOUS_ACCEPT  0x08


/* Transmit Errors */

#define TX_ERR_NO_BUFFER        0x0001
#define TX_ERR_TOO_BIG          0x0002
#define TX_ERR_TOO_MANY_FRAGS   0x0004
#define TX_ERR_SQE_ERROR        0x0008
#define TX_ERR_JABBER           0x0010
#define TX_ERR_LOCK_FAIL        0x0020
#define TX_ERR_EXCESS_COLL      0x0100
#define TX_ERR_UNDERRUN         0x0200
#define TX_ERR_OUT_OF_WIN       0x0400
#define TX_ERR_LOSS_CRS         0x1000
#define TX_ERR_FRAME_ABORT      0x2000


/* Receive Errors */

#define RX_ERR_CRC_ERROR        0x0001
#define RX_ERR_EXTRA_DATA       0x0002
#define RX_ERR_RUNT             0x0004
#define RX_ERR_FRAMING          0x0008
#define RX_ERR_OVERRUN          0x0010
#define RX_ERR_RX_ERR           0x0020
#define RX_ERR_RX_MISS          0x0100
#define RX_ERR_DRIBBLE          0x0200
#define RX_ERR_TOO_MANY_FRAGS   0x0400
#define RX_ERR_NO_BUFFER        0x0800


/* Flags */

#define FLAG_BUS_MASTER         0x00000001
#define FLAG_INTERRUPT_SHARED   0x00000002
#define FLAG_LP_CANT_AUTO_NEG   0x00000004


/* Instance Chip Data */

typedef struct CHIP_t
{
   DWORD SerialNumber;  /* Adapter Serial number from EEPROM */
   CFG   Config;        /* Common chip configuration */
   void *pData;         /* Chip private data */
   void *pPSD;          /* Protocol stack private data */
   void *pOSD;          /* Operating System private data */
} CHIP, *PCHIP;



/*
 * Return codes.
 */
#define MAC_SUCCESSFUL                  0
#define MAC_FAILED                      1
#define MAC_ERROR_PHY_NOT_FOUND         2
#define MAC_ERROR_CANNOT_STARTUP_QUEUES 3
#define MAC_ERROR_CANNOT_INITCHIP       4
#define MAC_ERROR_CANNOT_STARTUP_PHY    5
#define MAC_ERROR_NO_RX_FRAME           6
#define MAC_ERROR_RXBUFF_LEN            7
#define MAC_ERROR_RX_LEN                8
#define MAC_ERROR_DIFF_REG_VALUS        9
#define MAC_ERROR_RX_LEN_NOT_MATCH      10
#define MAC_ERROR_RX_DATA_NOT_MATCH     11
#define MAC_ERROR_MEM_CONTENTS          12
#define MAC_ERROR_WRITE_REG_BYTE        13
#define MAC_ERROR_WRITE_REG_WORD        14
#define MAC_ERROR_WRITE_REG_DWORD       15
#define MAC_ERROR_MEMORY_ALLOCATION     16
#define MAC_ERROR_MAC_INTERNAL_RAM      17
#define MAC_ERROR_INVALID_TEST          18
#define MAC_ERROR_INVALID_PARAMETER     19



#endif  /* _CSvchip_h_ */

⌨️ 快捷键说明

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