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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? csend.h

?? cs8900在vxworks系統下的驅動
?? H
字號:
/* csEnd.h - Crystal Semiconductor CS8900 network interface header          */
/*                                                                          */
/* Copyright 2000 Crystal Semiconductor Corp.                               */
/*                                                                          */
/*               Last release: v3.05a                                       */
/* Mod level for last release: 05a                                          */


/*
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. */
#ifdef CPU_FAMILY
#undef CPU_FAMILY
#endif

#ifdef _BYTE_ORDER
#undef _BYTE_ORDER
#endif

#define CPU_FAMILY    ARM 
#define _BYTE_ORDER    _LITTLE_ENDIAN 



/*
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 /*MEM_MODE*/
#define CFGFLG_USE_SA       0x0002 /*for mem mode*/
#define CFGFLG_IOCHRDY      0x0004 /*don't set. if set,cs8900 will not use the IOCHRDY pin*/
#define CFGFLG_DCDC_POL     0x0008 /*control DC/DC converter,is of no ues in our system*/
#define CFGFLG_FDX          0x0010  /*full duplex mode,for loopback test*/
#define CFGFLG_NOT_EEPROM   0x8000  /*actually,this flag is of no use, whather there is an eeprom is to be found by cs8900 itself */
#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(0x3300)

/* 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 */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕在线视频一区| 亚洲中国最大av网站| 欧洲国内综合视频| 国产精品69久久久久水密桃| 亚洲一区在线观看免费 | 一二三四社区欧美黄| 精品福利一区二区三区免费视频| 一本色道久久加勒比精品 | 亚洲欧洲精品一区二区三区不卡| 日韩免费成人网| 欧美视频精品在线观看| 91视频观看视频| 国产成人av网站| 精品无人区卡一卡二卡三乱码免费卡| 亚洲第一二三四区| 一区二区三区四区蜜桃 | 韩日精品视频一区| 石原莉奈一区二区三区在线观看| 亚洲视频免费看| 欧美国产一区视频在线观看| 欧美成人激情免费网| 欧美男生操女生| 欧美三级电影在线看| 色婷婷激情综合| 91小宝寻花一区二区三区| 国产成人午夜视频| 国产成人精品免费| 国产成人福利片| 国产69精品久久99不卡| 国产盗摄精品一区二区三区在线| 久久不见久久见免费视频7| 免费人成网站在线观看欧美高清| 偷拍日韩校园综合在线| 性做久久久久久久久| 亚洲午夜在线视频| 亚洲国产精品久久久男人的天堂| 亚洲男人天堂一区| 一区二区三区免费网站| 亚洲伦在线观看| 亚洲日本在线a| 中文字幕一区二区三| 亚洲日本免费电影| 一区二区三区色| 午夜在线电影亚洲一区| 日韩国产一二三区| 美女久久久精品| 久久国产精品第一页| 国产一区激情在线| 国产精品亚洲第一区在线暖暖韩国| 国产精品中文字幕一区二区三区| 国产毛片一区二区| www.日韩精品| 一道本成人在线| 欧美日韩精品一区二区天天拍小说| 欧美丰满一区二区免费视频| 日韩免费一区二区| 欧美韩国日本不卡| 亚洲自拍偷拍麻豆| 麻豆成人91精品二区三区| 国产不卡免费视频| 一本大道久久a久久精品综合| 在线观看av不卡| 日韩欧美国产综合| 国产精品美日韩| 亚洲精品中文字幕乱码三区| 日韩电影免费一区| 国产精品一区专区| 在线看国产日韩| 精品欧美一区二区久久| 国产精品乱码久久久久久| 一区二区三区精密机械公司| 日本亚洲最大的色成网站www| 国产一区二区三区久久久| 91视频在线看| 日韩欧美在线一区二区三区| 中文字幕精品一区| 婷婷丁香激情综合| 成人动漫视频在线| 91精品国产综合久久国产大片| 国产亚洲人成网站| 亚洲二区在线观看| 成人久久18免费网站麻豆| 欧美日韩一区成人| 国产精品免费视频观看| 日韩av电影免费观看高清完整版在线观看 | 97精品超碰一区二区三区| 欧美裸体一区二区三区| 国产精品成人网| 久久精品99国产精品日本| 91亚洲精品久久久蜜桃网站| 欧美成人bangbros| 亚洲国产视频网站| 不卡视频在线观看| 精品盗摄一区二区三区| 一区二区三区日本| 成人av在线电影| 91精品国产综合久久久久| 一区二区中文视频| 韩国三级中文字幕hd久久精品| 欧美在线观看视频一区二区| 国产亚洲女人久久久久毛片| 奇米一区二区三区| 欧美视频在线一区| 一区视频在线播放| 国产aⅴ综合色| 欧美刺激脚交jootjob| 亚洲国产一区在线观看| 91在线视频免费91| 亚洲国产精品精华液2区45| 毛片av一区二区| 欧美日韩国产一区| 亚洲一区二区三区在线| 99在线热播精品免费| 国产欧美精品一区二区色综合 | 亚洲欧美日韩系列| 粉嫩aⅴ一区二区三区四区五区| 欧美成人伊人久久综合网| 五月天丁香久久| 欧美日韩国产小视频| 一区二区三区成人在线视频| 99国产精品久久久| 国产精品久久久久精k8| 丰满白嫩尤物一区二区| 国产人伦精品一区二区| 国产一区二区三区免费观看| 精品裸体舞一区二区三区| 久久99在线观看| 精品成人在线观看| 国产麻豆一精品一av一免费| 精品剧情v国产在线观看在线| 青青草国产成人av片免费| 91精品在线免费观看| 日产国产高清一区二区三区| 欧美疯狂做受xxxx富婆| 日本不卡在线视频| 欧美xxxx在线观看| 国产一区二区按摩在线观看| 2020国产成人综合网| 韩国一区二区三区| 国产欧美一区二区精品秋霞影院| 国产露脸91国语对白| 亚洲国产精品精华液2区45| 成人av午夜影院| 亚洲天堂av老司机| 在线精品亚洲一区二区不卡| 亚洲高清免费一级二级三级| 777亚洲妇女| 韩日欧美一区二区三区| 国产目拍亚洲精品99久久精品| 盗摄精品av一区二区三区| 亚洲视频一区在线| 欧美美女视频在线观看| 精东粉嫩av免费一区二区三区| 久久蜜臀中文字幕| av一区二区三区| 亚洲一区在线视频观看| 欧美一二三四在线| 国产91精品精华液一区二区三区| 中文字幕永久在线不卡| 欧美无乱码久久久免费午夜一区 | 成人免费视频免费观看| 亚洲人午夜精品天堂一二香蕉| 欧美日韩一区二区三区四区| 麻豆免费看一区二区三区| 国产亚洲美州欧州综合国| 色综合天天综合给合国产| 欧美aaaaa成人免费观看视频| 26uuu亚洲综合色| 99在线精品免费| 青娱乐精品在线视频| 国产精品网站导航| 欧美手机在线视频| 国产精品系列在线播放| 一区二区欧美国产| 精品国产a毛片| 色婷婷综合中文久久一本| 久久狠狠亚洲综合| 亚洲欧美日韩一区二区三区在线观看| 91精品国产综合久久香蕉的特点| 国产精品一二三四| 亚洲电影在线播放| 国产精品久久久久久久久免费丝袜 | 日韩视频国产视频| a在线欧美一区| 麻豆成人综合网| 亚洲一区二区三区激情| 国产欧美一区二区精品秋霞影院| 欧美日韩高清一区| 91小视频在线观看| 国产丶欧美丶日本不卡视频| 亚洲成在人线免费| 国产精品国产a级| 欧美成人午夜电影| 欧美日韩视频在线观看一区二区三区| 国产精品99久久不卡二区| 日本强好片久久久久久aaa| 亚洲欧美色一区| 亚洲国产日产av| 国产精品传媒在线| 久久久久一区二区三区四区|