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

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

?? at91_ether.h

?? 詳細介紹了DM9161相關的驅動函數及實現
?? H
字號:
/* * Ethernet driver for the Atmel AT91RM9200 (Thunder) * * (c) SAN People (Pty) Ltd * * Based on an earlier Atmel EMAC macrocell driver by Atmel and Lineo Inc. * Initial version by Rick Bronson. * * 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. */#ifndef AT91_ETHERNET#define AT91_ETHERNET#include "end.h"#include "etherLib.h"#include "miiLib.h"#ifdef  __cplusplusextern "C" {#endif/* Ethernet Options */#define ETH_FULL_DUPLEX                                     /* Support Full-Duplex */#define ETH_AUTO_NEGOTIATION                                /* Enable Auto-Negotiation */#define ETH_10BT                                            /* Support 10BaseT *//* Ethernet Definitions */#define ETH_DEV_NAME                    "eth"            /* device name */#define ETH_DEV_NAME_LEN                4                   /* device name length (include terminating null) */#define ETH_DEV_DESCRIPTION             "ATMEL AT91RM9200 Ethernet Enhanced Network Driver"#define SIZE_ETH_ADDR                   6                   /* Ethernet Address Length */#define SIZE_ETH_HDR                    14                  /* Ethernet Header Length *//*#define SIZE_ETH_FB_HDR                 8*/                   /* Free Buffer Header */#define SIZE_ETH_WA  					0#if 0#if     ((SIZE_ETH_HDR % 4) == 0)#define SIZE_ETH_FB_HDR                 8                   /* Free Buffer Header */#define SIZE_ETH_WA                     0                   /* Widget Align */#elif   ((SIZE_ETH_HDR % 4) == 1)#define SIZE_ETH_FB_HDR                 8                   /* Free Buffer Header */#define SIZE_ETH_WA                     3                   /* Widget Align */#elif   ((SIZE_ETH_HDR % 4) == 2)#define SIZE_ETH_FB_HDR                 8                   /* Free Buffer Header */#define SIZE_ETH_WA                     2                   /* Widget Align */#else   /* ((SIZE_ETH_HDR % 4) == 3) */#define SIZE_ETH_FB_HDR                 8                   /* Free Buffer Header */#define SIZE_ETH_WA                     1                   /* Widget Align */#endif  /* ((SIZE_ETH_HDR % 4) == 0) */#endif#define SIZE_ETH_CRC                    0                   /* CRC Length */#define SIZE_ETH_MFLR                   (1500 + SIZE_ETH_HDR)   /* Max Ethernet Frame Length of Receive, exclude CRC */#define SIZE_ETH_MINFLR                 (  46 + SIZE_ETH_HDR)   /* Min Ethernet Frame Length of Receive, exclude CRC */#define SIZE_ETH_MDMA                   1524                /* Max DMA Length */#define ETH_ALEN       SIZE_ETH_HDR/* The following are all involved in forcing a particular link * mode for the device for setting things.  When getting the * devices settings, these indicate the current mode and whether * it was foced up into this mode or autonegotiated. *//* The forced speed, 10Mb, 100Mb, gigabit, 10GbE. */#define SPEED_10		10#define SPEED_100		100#define SPEED_1000		1000#define SPEED_10000		10000/* Duplex, half or full. */#define DUPLEX_HALF		0x00#define DUPLEX_FULL		0x01/* Which connector port. */#define PORT_TP			0x00#define PORT_AUI		0x01#define PORT_MII		0x02#define PORT_FIBRE		0x03#define PORT_BNC		0x04/* S3C2510 Ethernet Buffer Descriptor */typedef struct recv_desc_bufs *PETHRBD, *PETHTBD; #define MAX_ADDR_LEN 4struct dev_mc_list{		struct dev_mc_list	*next;	UINT8			dmi_addr[MAX_ADDR_LEN];	unsigned char		dmi_addrlen;	int			dmi_users;	int			dmi_gusers;};/* AT91 Ethernet Driver Control Structure */typedef struct eth_drv_ctrl {    END_OBJ         endObj;                                 /* base class */    int             unit;                                   /* unit number */    PHY_INFO        phyInfo;                                /* info on a MII-compliant PHY */    FUNCPTR         receiveRtn;                             /* routine to call on reception */    int irq;  #if 0    CL_POOL_ID      pClPool;                                /* pointer to the cluster pool */#endif    void           *pMblkArea;                              /* pointer to the mBlk/clBlk pool */    void           *pClArea;                                /* pointer to the cluster pool */ /*   void           *pBdArea;*/                                /* pointer to the buffer descriptor pool */    int             clSize;                                 /* cluster pool size */    BOOL            bPolling;                               /* TRUE if polling */    BOOL            bTxBlocked;                             /* TRUE if tx is blocked */    BOOL            bRxHandler;                             /* TRUE if rx handler is busy */    BOOL            bTxHandler;                             /* TRUE if tx handler is busy */    UINT16          l80225Status;                           /* L80225 Status Output Register */    struct at91_private *priv;    void* base_addr ;    int mc_count;    struct dev_mc_list* mc_list;    int flags;    char name[16];	END_ERR	lastError;} ETH_DRV_CTRL;#define IFADDR                          endObj.mib2Tbl.ifPhysAddress#define MIB2TBL                         endObj.mib2Tbl#define PHYREGS                         phyInfo.miiRegs#define dev_addr			IFADDR.phyAddress#define MII_RTL8201BL_ID   0x00008201/* Davicom 9161 PHY */#define MII_DM9161_ID   0x0181b880/* Davicom specific registers */#define MII_DSCR_REG	16#define MII_DSCSR_REG   17#define MII_DSINTR_REG  21/* Intel LXT971A PHY */#define MII_LXT971A_ID	0x001378E0/* Intel specific registers */#define MII_ISINTE_REG	18#define MII_ISINTS_REG	19/* ........................................................................ */#define MAX_RBUFF_SZ	0x604		/* 1518 rounded up +4  */ #define MAX_RX_DESCR	16		/* max number of receive buffers */#define EMAC_DESC_DONE	0x00000001	/* bit for if DMA is done */#define EMAC_DESC_WRAP	0x00000002	/* bit for wrap */#define EMAC_BROADCAST	0x80000000	/* broadcast address */#define EMAC_MULTICAST	0x40000000	/* multicast address */#define EMAC_UNICAST	0x20000000	/* unicast address */struct net_device_stats{	unsigned long	rx_packets;		/* total packets received	*/	unsigned long	tx_packets;		/* total packets transmitted	*/	unsigned long	rx_bytes;		/* total bytes received 	*/	unsigned long	tx_bytes;		/* total bytes transmitted	*/	unsigned long	rx_errors;		/* bad packets received		*/	unsigned long	tx_errors;		/* packet transmit problems	*/	unsigned long	rx_dropped;		/* no space in linux buffers	*/	unsigned long	tx_dropped;		/* no space available in linux	*/	unsigned long	multicast;		/* multicast packets received	*/	unsigned long	collisions;	/* detailed rx_errors: */	unsigned long	rx_length_errors;	unsigned long	rx_over_errors;		/* receiver ring buff overflow	*/	unsigned long	rx_crc_errors;		/* recved pkt with crc error	*/	unsigned long	rx_frame_errors;	/* recv'd frame alignment error */	unsigned long	rx_fifo_errors;		/* recv'r fifo overrun		*/	unsigned long	rx_missed_errors;	/* receiver missed packet	*/	/* detailed tx_errors */	unsigned long	tx_aborted_errors;	unsigned long	tx_carrier_errors;	unsigned long	tx_fifo_errors;	unsigned long	tx_heartbeat_errors;	unsigned long	tx_window_errors;		/* for cslip etc */	unsigned long	rx_compressed;	unsigned long	tx_compressed;};struct rbf_t{	unsigned int addr;	unsigned long size;};struct recv_desc_bufs{	struct rbf_t descriptors[MAX_RX_DESCR];		/* must be on sizeof (rbf_t) boundary */	char recv_buf[MAX_RX_DESCR][MAX_RBUFF_SZ];	/* must be on long boundary */};typedef unsigned long dma_addr_t;#define net_device eth_drv_ctrlstruct at91_private{	struct net_device_stats stats;/*	struct mii_if_info mii;			 ethtool support */	void * lock;  /* no use now */	/* PHY */	unsigned long phy_type;			/* type of PHY (PHY_ID) */	short phy_media;			/* media interface type */	/* Transmit */	unsigned char *skb;			/* holds skb until xmit interrupt completes */	dma_addr_t skb_physaddr;		/* phys addr from pci_map_single */	int skb_length;				/* saved skb length for pci_unmap_single */	/* Receive */	int rxBuffIndex;			/* index into receive descriptor list */	struct recv_desc_bufs *dlist;		/* descriptor list address */	struct recv_desc_bufs *dlist_phys;	/* descriptor list physical address */	};   /*#define NUM_TBD_ETH	             1 */#include "mii.h"#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美腿丝袜在线亚洲一区| 亚洲风情在线资源站| 成人精品小蝌蚪| 欧美激情一区二区三区蜜桃视频| 国产v综合v亚洲欧| 中文字幕一区二区三区不卡| 91传媒视频在线播放| 午夜av一区二区| 欧美电视剧免费全集观看| 国产乱码一区二区三区| 国产精品色哟哟网站| 色综合久久久久综合体| 亚洲sss视频在线视频| 精品国精品自拍自在线| 成人免费视频视频在线观看免费| 一区二区三区欧美日| 欧美美女一区二区| 国内精品嫩模私拍在线| 中文字幕一区二区三| 欧美日韩极品在线观看一区| 久久国产尿小便嘘嘘| 国产精品久久久久影院亚瑟| 欧美日韩色综合| 国产毛片精品国产一区二区三区| 亚洲手机成人高清视频| 337p亚洲精品色噜噜狠狠| 国产福利一区二区三区| 亚洲一区二区中文在线| 久久综合狠狠综合久久激情| 99vv1com这只有精品| 蜜桃视频一区二区三区在线观看| 国产精品午夜在线| 欧美伦理视频网站| 成人app在线| 91免费国产在线| 裸体在线国模精品偷拍| 亚洲欧洲av一区二区三区久久| 3d动漫精品啪啪一区二区竹菊| thepron国产精品| 日本午夜一区二区| 亚洲色图丝袜美腿| 久久久久综合网| 欧美中文一区二区三区| 成人黄色一级视频| 六月丁香婷婷色狠狠久久| 自拍偷在线精品自拍偷无码专区| 日韩欧美不卡在线观看视频| 色综合久久88色综合天天免费| 精品无人区卡一卡二卡三乱码免费卡| 亚洲人成影院在线观看| 国产欧美中文在线| 精品日韩av一区二区| 欧美日韩中文字幕一区二区| 成人高清免费观看| 国产一区二区三区四| 蜜臀久久99精品久久久画质超高清 | 91在线无精精品入口| 蜜臀va亚洲va欧美va天堂| 亚洲午夜一区二区| 最新中文字幕一区二区三区| 久久久久久99精品| 精品国产乱码久久久久久免费| 欧美日韩中文精品| 色哟哟亚洲精品| 成人91在线观看| 高清国产午夜精品久久久久久| 全国精品久久少妇| 青青草成人在线观看| 日韩中文字幕不卡| 亚洲福利一二三区| 亚洲国产精品视频| 午夜在线成人av| 婷婷夜色潮精品综合在线| 亚洲成av人片| 日韩成人午夜电影| 免费成人在线播放| 精彩视频一区二区三区| 国产在线精品免费av| 精品一区二区在线看| 奇米精品一区二区三区在线观看| 日本欧洲一区二区| 黄色资源网久久资源365| 国产真实乱子伦精品视频| 精品一区二区三区视频| 韩国视频一区二区| 国产sm精品调教视频网站| 成人18视频在线播放| 91在线无精精品入口| 色av一区二区| 欧美日韩成人在线| 精品久久99ma| 国产人妖乱国产精品人妖| 国产精品每日更新| 一区二区三区不卡视频| 日韩精品一二区| 国产乱人伦偷精品视频免下载| 国产精品资源在线观看| www.日韩大片| 欧美日本在线观看| 精品国产3级a| 中文字幕亚洲欧美在线不卡| 一区二区三区日韩在线观看| 日韩激情一二三区| 国产一区二区成人久久免费影院| 成人av网站在线观看免费| 欧美自拍偷拍一区| 日韩片之四级片| 国产精品美女视频| 亚洲一区二区在线免费看| 美国十次综合导航| 99久久er热在这里只有精品15| 欧美日韩视频在线第一区| 久久精品视频一区二区三区| 亚洲视频在线一区观看| 蜜桃视频在线观看一区二区| www.久久精品| 日韩一区二区三区视频在线观看 | 91网站在线播放| 欧美日韩国产精品成人| 欧美精品一区二区高清在线观看| 亚洲免费色视频| 国产一区日韩二区欧美三区| 日本高清视频一区二区| 欧美精品一区二区三区蜜桃 | 欧美猛男超大videosgay| 精品奇米国产一区二区三区| 中文字幕一区二区三区不卡在线| 同产精品九九九| 风间由美性色一区二区三区| 91精品蜜臀在线一区尤物| 国产精品入口麻豆九色| 麻豆高清免费国产一区| av在线综合网| 久久网站热最新地址| 亚洲精品乱码久久久久久| 黄色资源网久久资源365| 色婷婷综合五月| 国产亚洲成aⅴ人片在线观看| 亚洲第一激情av| av中文字幕亚洲| www国产精品av| 亚洲国产日产av| 99国产精品久久久久久久久久| 精品久久久久一区| 亚洲v精品v日韩v欧美v专区| 一本到三区不卡视频| 一区在线播放视频| 成人妖精视频yjsp地址| 一区二区三区四区不卡在线 | 亚洲欧美区自拍先锋| 国产精品羞羞答答xxdd| 在线成人免费观看| 中文字幕在线一区二区三区| 国产精品一区不卡| 日韩欧美高清在线| 亚洲高清一区二区三区| 色吧成人激情小说| 亚洲视频免费在线观看| 高清不卡一二三区| 久久久蜜臀国产一区二区| 久久电影国产免费久久电影| 3d动漫精品啪啪| 日本欧美一区二区| 欧美日韩国产欧美日美国产精品| 国产精品毛片久久久久久| 东方aⅴ免费观看久久av| 久久精品亚洲精品国产欧美| 精品一区中文字幕| 亚洲精品一区二区三区精华液| 蜜臀av一区二区三区| 欧美剧在线免费观看网站| 亚洲一区二区三区免费视频| 色婷婷综合久久久| 一区二区三区欧美激情| 欧美三级电影网| 日韩精品成人一区二区在线| 日韩视频一区在线观看| 国内精品免费**视频| 久久久久久久久岛国免费| 国产99久久久久久免费看农村| 中文字幕不卡的av| 91蜜桃婷婷狠狠久久综合9色| 亚洲精品日韩专区silk| 在线观看免费亚洲| 日本女优在线视频一区二区| 欧美成人免费网站| 国产精品一区二区果冻传媒| 亚洲欧美中日韩| 精品久久国产老人久久综合| 国产精品亚洲专一区二区三区 | av中文字幕在线不卡| 亚洲精品欧美激情| 欧美日韩大陆在线| 韩国精品久久久| 国产精品久久夜| 欧美伦理影视网| 国产一区二区三区免费在线观看| 国产精品成人免费| 欧美剧在线免费观看网站| 久久国产视频网|