亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? csend.h

?? VxWorks系統(tǒng)CS網(wǎng)卡END驅(qū)動(源碼)
?? H
字號:
/* csEnd.h - Crystal Semiconductor CS8900 network interface header          */
/*                                                                          */
/* Copyright 2000 Crystal Semiconductor Corp.                               */
/*                                                                          */
/*               Last release: v3.04a                                       */
/* Mod level for last release: 04a                                          */


/*
modification history
--------------------
v3.03a, 02Oct00, kml   Modified for ARM

v3.01a,07May99, kml    ported to the Enhanced Network Driver (END) model 
                       to support the MUX interface:  
					   - Added definition to support POLL mode, Promiscuous
					     mode, and Multicast.

01g.25nov97,jla  Added defs to help a page fault with hard resets.
                 HARD_RESET does hard chip resets
                 SOFT_RESET does a softer, kinder sort of reset

01f,11apr97,rks  Added BUF_CFG_ALL_IE define (early tx support)

01e,27mar97,rks	 Moved typedefs back to sysEnet.c so if_cs.h could be included
                 from config.h

01d,24feb97,rks  Moved typedefs back to this file (needed in sysEnet.c)
                 Removed byte-swaped constant defs and now use BYTE_SWAP macro

01c,16dec96,rks  Moved the CS_SOFTC structure definition to sysEnet.c
                 since some of its data types are platform dependent.
                 Added register masks and defintions for _BIG_ENDIAN systems.

01b,16nov96,rks  modified TX_CFG_ALL_IE to NOT set AnyColliE

01a,12jul96,q_s  written.
*/

#ifndef __CsEnd_h
#define __CsEnd_h

#ifdef __cplusplus
extern "C" {
#endif


/************************* For ARM Processor *************************
   CPU is defined in the Makefle file in the build directory.
   CPU_FAMILY is defined in the host\include\cputypes.h file.
   If CPU_FAMILY is not defined as ARM in cputypes.h, 
   uncomment the following line. */
/* #define CPU_FAMILY    ARM */


/*
Macro for byte-swapping required for "big-endian" CPUs.  This macro is defined
based on the _BYTE_ORDER definition in arch.h.  It is the opposite of the
definition for the standard "hton host-to-network conversion" macros
defined in h/netinet/in.h because the CS8900 is "little-endian" by design.
*/

#if _BYTE_ORDER == _LITTLE_ENDIAN
#define BYTE_SWAP(x)    (x)
#else
#define BYTE_SWAP(x)    ((((x) & 0x00ff) << 8) | (((x) & 0xff00) >> 8))
#endif

/* Receive buffer status */

#define RXBUF_FREE          0x0000
#define RXBUF_ALLOCATED     0x0001
#define RXBUF_LOANED        0x0002


/* Defines for hard or soft chip resets */
/*#define SOFT_RESET*/
#define HARD_RESET

/* Config Flags in cs_softc */

#define CFGFLG_MEM_MODE     0x0001
#define CFGFLG_USE_SA       0x0002
#define CFGFLG_IOCHRDY      0x0004
#define CFGFLG_DCDC_POL     0x0008
#define CFGFLG_FDX          0x0010
#define CFGFLG_NOT_EEPROM   0x8000
#define CFGFLG_POLL_MODE    0x0100 /*@kml if set, POLL mode;Otherwise INTERRUPT*/
	                               /* mode. Do NOT set the bit ON in the */
	                               /* InitString. Set it by calling csIoctl() */
#define CFGFLG_PROMISC_MODE 0x0200 /* @kml if set, PROMISC mode */

/* Media Types */

#define MEDIA_AUI           0x0001           /* AUI  */
#define MEDIA_10BASE2       0x0002           /* BNC  */
#define MEDIA_10BASET       0x0003           /* RJ45 */


/* IO Port Offsets */

#define PORT_RXTX_DATA     0x0000
#define PORT_RXTX_DATA_1   0x0002
#define PORT_TX_CMD        0x0004
#define PORT_TX_LENGTH     0x0006
#define PORT_ISQ           0x0008
#define PORT_PKTPG_PTR     0x000A
#define PORT_PKTPG_DATA    0x000C
#define PORT_PKTPG_DATA_1  0x000E


/* PacketPage Offsets */

#define PKTPG_EISA_NUM     0x0000
#define PKTPG_PRODUCT_ID   0x0002
#define PKTPG_IO_BASE      0x0020
#define PKTPG_INT_NUM      0x0022
#define PKTPG_MEM_BASE     0x002C
#define PKTPG_EEPROM_CMD   0x0040
#define PKTPG_EEPROM_DATA  0x0042
#define PKTPG_RX_CFG       0x0102
#define PKTPG_RX_CTL       0x0104
#define PKTPG_TX_CFG       0x0106
#define PKTPG_BUF_CFG      0x010A
#define PKTPG_LINE_CTL     0x0112
#define PKTPG_SELF_CTL     0x0114
#define PKTPG_BUS_CTL      0x0116
#define PKTPG_TEST_CTL     0x0118
#define PKTPG_ISQ          0x0120
#define PKTPG_RX_EVENT     0x0124
#define PKTPG_TX_EVENT     0x0128
#define PKTPG_BUF_EVENT    0x012C
#define PKTPG_RX_MISS      0x0130
#define PKTPG_TX_COL       0x0132
#define PKTPG_LINE_ST      0x0134
#define PKTPG_SELF_ST      0x0136
#define PKTPG_BUS_ST       0x0138
#define PKTPG_TX_CMD       0x0144
#define PKTPG_TX_LENGTH    0x0146
#define PKTPG_LOGIC_ADDRESS_FILTER    0x0150  /*@kml*/
#define PKTPG_IND_ADDR     0x0158
#define PKTPG_RX_STATUS    0x0400
#define PKTPG_RX_LENGTH    0x0402
#define PKTPG_RX_FRAME     0x0404
#define PKTPG_TX_FRAME     0x0A00


/* EEPROM Offsets */

#define EEPROM_IND_ADDR_H  0x001C
#define EEPROM_IND_ADDR_M  0x001D
#define EEPROM_IND_ADDR_L  0x001E
#define EEPROM_ISA_CFG     0x001F
#define EEPROM_MEM_BASE    0x0020
#define EEPROM_XMIT_CTL    0x0023
#define EEPROM_ADPTR_CFG   0x0024



/* Chip Identification */

#define EISA_NUM_CRYSTAL    BYTE_SWAP(0x630E)
#define PROD_ID_MASK        BYTE_SWAP(0xE000)
#define PROD_ID_CS8900      BYTE_SWAP(0x0000)
#define PROD_ID_CS8920      BYTE_SWAP(0x4000)
#define PROD_ID_CS892X      BYTE_SWAP(0x6000)
#define PROD_REV_MASK       BYTE_SWAP(0x1F00)


/* Register Numbers */  

#define REG_NUM_MASK       BYTE_SWAP(0x003F)
#define REG_NUM_RX_EVENT   BYTE_SWAP(0x0004)
#define REG_NUM_TX_EVENT   BYTE_SWAP(0x0008)
#define REG_NUM_BUF_EVENT  BYTE_SWAP(0x000C)
#define REG_NUM_RX_MISS    BYTE_SWAP(0x0010)
#define REG_NUM_TX_COL     BYTE_SWAP(0x0012)


/* Self Control Register */ 

#define SELF_CTL_RESET     BYTE_SWAP(0x0040)
#define SELF_CTL_HC1E      BYTE_SWAP(0x2000)
#define SELF_CTL_HCB1      BYTE_SWAP(0x8000)


/* Self Status Register */  

#define SELF_ST_INIT_DONE  BYTE_SWAP(0x0080)
#define SELF_ST_SI_BUSY    BYTE_SWAP(0x0100)
#define SELF_ST_EEP_PRES   BYTE_SWAP(0x0200)
#define SELF_ST_EEP_OK     BYTE_SWAP(0x0400)
#define SELF_ST_EL_PRES    BYTE_SWAP(0x0800)


/* EEPROM Command Register */  

#define EEPROM_CMD_READ    BYTE_SWAP(0x0200)
#define EEPROM_CMD_ELSEL   BYTE_SWAP(0x0400)


/* Bus Control Register */

#define BUS_CTL_USE_SA     BYTE_SWAP(0x0200)
#define BUS_CTL_MEM_MODE   BYTE_SWAP(0x0400)
#define BUS_CTL_IOCHRDY    BYTE_SWAP(0x1000)
#define BUS_CTL_INT_ENBL   BYTE_SWAP(0x8000)
#define BUS_CTL_INT_DIS_MASK BYTE_SWAP(0x7FFF)


/* Bus Status Register */  

#define BUS_ST_TX_BID_ERR  BYTE_SWAP(0x0080)
#define BUS_ST_RDY4TXNOW   BYTE_SWAP(0x0100)


/* Line Control Register */ 

#define LINE_CTL_RX_ON     BYTE_SWAP(0x0040)
#define LINE_CTL_TX_ON     BYTE_SWAP(0x0080)
#define LINE_CTL_AUI_ONLY  BYTE_SWAP(0x0100)
#define LINE_CTL_10BASET   BYTE_SWAP(0x0000)


/* Test Control Register */  

#define TEST_CTL_DIS_LT    BYTE_SWAP(0x0080)
#define TEST_CTL_ENDEC_LP  BYTE_SWAP(0x0200)
#define TEST_CTL_AUI_LOOP  BYTE_SWAP(0x0400)
#define TEST_CTL_DIS_BKOFF BYTE_SWAP(0x0800)
#define TEST_CTL_FDX       BYTE_SWAP(0x4000)


/* Receiver Configuration Register */  

#define RX_CFG_SKIP        BYTE_SWAP(0x0040)
#define RX_CFG_RX_OK_IE    BYTE_SWAP(0x0100)
#define RX_CFG_CRC_ERR_IE  BYTE_SWAP(0x1000)
#define RX_CFG_RUNT_IE     BYTE_SWAP(0x2000)
#define RX_CFG_X_DATA_IE   BYTE_SWAP(0x4000)
#define RX_CFG_ALL_IE      BYTE_SWAP(0x7100)


/* Receiver Event Register */  

#define RX_EVENT_DRIBBLE   BYTE_SWAP(0x0080)
#define RX_EVENT_RX_OK     BYTE_SWAP(0x0100)
#define RX_EVENT_IND_ADDR  BYTE_SWAP(0x0400)
#define RX_EVENT_BCAST     BYTE_SWAP(0x0800)
#define RX_EVENT_CRC_ERR   BYTE_SWAP(0x1000)
#define RX_EVENT_RUNT      BYTE_SWAP(0x2000)
#define RX_EVENT_X_DATA    BYTE_SWAP(0x4000)


/* Receiver Control Register */ 

#define RX_CTL_PROM_A      BYTE_SWAP(0x0080)  /* @kml*/
#define RX_CTL_RX_OK_A     BYTE_SWAP(0x0100)
#define RX_CTL_MCAST_A     BYTE_SWAP(0x0200)
#define RX_CTL_IND_A       BYTE_SWAP(0x0400)
#define RX_CTL_BCAST_A     BYTE_SWAP(0x0800)
#define RX_CTL_CRC_ERR_A   BYTE_SWAP(0x1000)
#define RX_CTL_RUNT_A      BYTE_SWAP(0x2000)
#define RX_CTL_X_DATA_A    BYTE_SWAP(0x4000)


/* Transmit Configuration Register */  

#define TX_CFG_LOSS_CRS_IE BYTE_SWAP(0x0040)
#define TX_CFG_SQE_ERR_IE  BYTE_SWAP(0x0080)
#define TX_CFG_TX_OK_IE    BYTE_SWAP(0x0100)
#define TX_CFG_OUT_WIN_IE  BYTE_SWAP(0x0200)
#define TX_CFG_JABBER_IE   BYTE_SWAP(0x0400)
#define TX_CFG_16_COLL_IE  BYTE_SWAP(0x8000)
#define TX_CFG_ALL_IE      BYTE_SWAP(0x87C0)


/* Transmit Event Register */  

#define TX_EVENT_LOSS_CRS  BYTE_SWAP(0x0040)
#define TX_EVENT_SQE_ERR   BYTE_SWAP(0x0080)
#define TX_EVENT_TX_OK     BYTE_SWAP(0x0100)
#define TX_EVENT_OUT_WIN   BYTE_SWAP(0x0200)
#define TX_EVENT_JABBER    BYTE_SWAP(0x0400)
#define TX_EVENT_COLL_MASK BYTE_SWAP(0x7800)
#define TX_EVENT_16_COLL   BYTE_SWAP(0x8000)


/* Transmit Command Register */  

#define TX_CMD_START_5     BYTE_SWAP(0x0000)
#define TX_CMD_START_381   BYTE_SWAP(0x0080)
#define TX_CMD_START_1021  BYTE_SWAP(0x0040)
#define TX_CMD_START_ALL   BYTE_SWAP(0x00C0)
#define TX_CMD_FORCE       BYTE_SWAP(0x0100)
#define TX_CMD_ONE_COLL    BYTE_SWAP(0x0200)
#define TX_CMD_NO_CRC      BYTE_SWAP(0x1000)
#define TX_CMD_NO_PAD      BYTE_SWAP(0x2000)


/* Buffer Configuration Register */  

#define BUF_CFG_SW_INT     BYTE_SWAP(0x0040)
#define BUF_CFG_RDY4TX_IE  BYTE_SWAP(0x0100)
#define BUF_CFG_TX_UNDR_IE BYTE_SWAP(0x0200)
#define BUF_CFG_MISOFLO_IE BYTE_SWAP(0x2000)
#define BUF_CFG_COLOFLO_IE BYTE_SWAP(0x1000)
#define BUF_CFG_ALL_IE     BYTE_SWAP(0x3340)

/* Buffer Event Register */  

#define BUF_EVENT_SW_INT   BYTE_SWAP(0x0040)
#define BUF_EVENT_RDY4TX   BYTE_SWAP(0x0100)
#define BUF_EVENT_TX_UNDR  BYTE_SWAP(0x0200)
#define BUF_EVENT_RX_MISS  BYTE_SWAP(0x0400)


/* ISA Configuration from EEPROM */  

#define ISA_CFG_IRQ_MASK   BYTE_SWAP(0x000F)
#define ISA_CFG_USE_SA     BYTE_SWAP(0x0080)
#define ISA_CFG_IOCHRDY    BYTE_SWAP(0x0100)
#define ISA_CFG_MEM_MODE   BYTE_SWAP(0x8000)


/* Memory Base from EEPROM */  

#define MEM_BASE_MASK      BYTE_SWAP(0xFFF0)


/* Adpater Configuration from EEPROM */  

#define ADPTR_CFG_MEDIA    BYTE_SWAP(0x0060)
#define ADPTR_CFG_10BASET  BYTE_SWAP(0x0020)
#define ADPTR_CFG_AUI      BYTE_SWAP(0x0040)
#define ADPTR_CFG_10BASE2  BYTE_SWAP(0x0060)
#define ADPTR_CFG_DCDC_POL BYTE_SWAP(0x0080)


/* Transmission Control from EEPROM */  

#define XMIT_CTL_FDX       BYTE_SWAP(0x8000)


#ifdef __cplusplus
}
#endif


#endif  /* __CsEnd_h */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产风韵犹存在线视精品| 亚洲国产精品高清| 91亚洲国产成人精品一区二区三| 日本欧洲一区二区| 日精品一区二区三区| 午夜久久电影网| 五月激情综合婷婷| 久久精品国产在热久久| 久久精品国产77777蜜臀| 捆绑调教美女网站视频一区| 久久爱www久久做| 国产精品18久久久久| 成人免费黄色在线| 91啪亚洲精品| 91精品中文字幕一区二区三区| 91精品国产麻豆| 日韩午夜电影在线观看| 久久综合成人精品亚洲另类欧美| 久久久久国色av免费看影院| 国产精品三级av| 亚洲专区一二三| 裸体一区二区三区| 成人免费毛片a| 欧美视频日韩视频| 日韩精品一区二区三区中文精品| 国产三级精品三级| 一区二区不卡在线播放| 另类小说一区二区三区| 成人av小说网| 91精品国产入口| 国产精品美女久久久久久久久久久| 一区二区日韩av| 国产伦精品一区二区三区免费 | 91麻豆精品在线观看| 欧美性xxxxx极品少妇| 欧美不卡在线视频| 一区二区三区免费在线观看| 另类人妖一区二区av| 91在线视频免费91| 精品国产区一区| 亚洲高清免费在线| 国产1区2区3区精品美女| 欧美日本国产一区| 亚洲精品美国一| 国产精品中文有码| 91麻豆精品国产91久久久久久| 国产精品久久久99| 国产一区中文字幕| 欧美精品一二三四| 一区二区在线免费| 成人激情校园春色| 337p日本欧洲亚洲大胆精品| 五月天亚洲精品| 欧美三级电影网| 亚洲视频资源在线| 懂色av中文字幕一区二区三区| 日韩一区二区三区四区五区六区| 亚洲男人都懂的| 99久久精品免费观看| 国产欧美综合在线观看第十页| 日本亚洲三级在线| 91国偷自产一区二区三区成为亚洲经典| 欧美精品一区二区精品网| 日韩av一区二区三区四区| 91成人在线精品| 一区二区三区美女视频| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 国产精品毛片大码女人| 国产一区二区美女诱惑| 精品国产免费久久| 久久国产精品色婷婷| 在线成人av网站| 日韩电影免费在线| 777午夜精品视频在线播放| 亚洲成人手机在线| 在线91免费看| 久草热8精品视频在线观看| 欧美一区二区三区的| 蜜桃视频在线一区| 日韩免费一区二区| 国产乱一区二区| 久久久久久久久久久久久久久99 | 欧美裸体一区二区三区| 丝袜亚洲另类欧美| 欧美一卡2卡三卡4卡5免费| 午夜视频在线观看一区二区| 337p亚洲精品色噜噜噜| 国内偷窥港台综合视频在线播放| 日韩午夜激情免费电影| 国产成人自拍在线| 亚洲伦理在线精品| 欧美人牲a欧美精品| 老司机精品视频线观看86| 国产日韩v精品一区二区| 99免费精品视频| 亚洲成人激情av| 久久久久久麻豆| 99re视频精品| 日本午夜一区二区| 中文字幕免费不卡| 91国偷自产一区二区三区观看| 图片区日韩欧美亚洲| 精品处破学生在线二十三| 国产成人啪免费观看软件| 亚洲三级小视频| 欧美一区二区三区性视频| 国产风韵犹存在线视精品| 亚洲欧美国产77777| 91精品国产一区二区三区| 国产凹凸在线观看一区二区| 亚洲成av人片| 国产精品沙发午睡系列990531| 91国偷自产一区二区开放时间| 蜜桃av一区二区三区| 国产精品的网站| 精品久久久久久久久久久久包黑料 | 国产又黄又大久久| 一区二区三区欧美久久| 国产三级欧美三级日产三级99| 欧美在线免费观看视频| 国产呦萝稀缺另类资源| 亚洲第一福利视频在线| 国产欧美综合在线| 日韩一级片在线播放| 一本大道久久a久久综合婷婷| 精品一区二区在线观看| 亚洲成人自拍偷拍| 亚洲欧美一区二区不卡| 国产午夜精品久久久久久免费视 | 91精品国产一区二区三区| 91丨porny丨在线| 国产成人av一区二区三区在线| 午夜久久电影网| 亚洲一区二三区| 亚洲欧美日韩成人高清在线一区| 久久在线免费观看| 欧美大片在线观看一区| 欧美日本一区二区在线观看| 色综合色综合色综合| 成人午夜在线播放| 国产精品一区二区91| 韩国三级在线一区| 久久精品噜噜噜成人av农村| 午夜视频一区二区| 亚洲成人一二三| 天堂va蜜桃一区二区三区| 亚洲成人免费看| 天堂av在线一区| 久久国产精品露脸对白| 韩国av一区二区三区在线观看| 蜜桃视频一区二区三区 | 亚洲精品乱码久久久久久黑人| 国产精品日韩精品欧美在线 | 在线视频国产一区| 色94色欧美sute亚洲线路一ni| 99久久99久久精品免费看蜜桃| 粉嫩久久99精品久久久久久夜| 福利一区福利二区| av日韩在线网站| 日本精品视频一区二区三区| 欧美伊人久久久久久久久影院| 欧洲一区二区三区免费视频| 欧美日韩一区高清| 6080午夜不卡| 久久久久久影视| 国产精品乱码人人做人人爱| 亚洲欧美综合色| 亚洲一区国产视频| 六月丁香婷婷色狠狠久久| 国产成人精品aa毛片| 91视频观看视频| 欧美理论在线播放| 久久精品视频网| 亚洲精品视频在线观看网站| 水蜜桃久久夜色精品一区的特点| 日韩高清不卡一区二区三区| 黄页视频在线91| 91精品福利在线| 亚洲精品一区二区三区99| 国产精品三级视频| 日韩国产欧美视频| 成人性生交大片免费看视频在线| 91一区二区在线| 日韩欧美亚洲另类制服综合在线 | 亚洲国产一区二区三区| 日本欧美韩国一区三区| 国产成人免费高清| 在线亚洲人成电影网站色www| 欧美一区二区国产| √…a在线天堂一区| 蜜臀91精品一区二区三区| 成人av网址在线| 日韩三级伦理片妻子的秘密按摩| 国产欧美日韩激情| 男男gaygay亚洲| 色婷婷av一区二区三区之一色屋| 日韩一区二区免费视频| 亚洲激情六月丁香| 国产91精品露脸国语对白| 欧美一区二区三区免费观看视频|