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

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

?? e1000.h

?? 82546千兆網卡驅動程序,支持該系列所有芯片
?? H
字號:
/*******************************************************************************  Intel PRO/1000 Linux driver  Copyright(c) 1999 - 2006 Intel Corporation.    This program is free software; you can redistribute it and/or modify it  under the terms and conditions of the GNU General Public License,  version 2, as published by the Free Software Foundation.    This program is distributed in the hope it will be useful, but WITHOUT  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for  more details.    You should have received a copy of the GNU General Public License along with  this program; if not, write to the Free Software Foundation, Inc.,  51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.    The full GNU General Public License is included in this distribution in  the file called "COPYING".    Contact Information:  Linux NICS <linux.nics@intel.com>  e1000-devel Mailing List <e1000-devel@lists.sourceforge.net>  Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497*******************************************************************************//* Linux PRO/1000 Ethernet Driver main header file */#ifndef _E1000_H_#define _E1000_H_#include <linux/stddef.h>#include <linux/config.h>#include <linux/module.h>#include <linux/types.h>#include <asm/byteorder.h>#include <linux/init.h>#include <linux/mm.h>#include <linux/errno.h>#include <linux/ioport.h>#include <linux/pci.h>#include <linux/kernel.h>#include <linux/netdevice.h>#include <linux/etherdevice.h>#include <linux/skbuff.h>#include <linux/delay.h>#include <linux/timer.h>#include <linux/slab.h>#include <linux/vmalloc.h>#include <linux/interrupt.h>#include <linux/string.h>#include <linux/pagemap.h>#include <linux/bitops.h>#include <asm/io.h>#include <asm/irq.h>#include <linux/capability.h>#include <linux/in.h>#include <linux/ip.h>#include <linux/tcp.h>#include <linux/udp.h>#include <net/pkt_sched.h>#include <linux/list.h>#include <linux/reboot.h>#ifdef NETIF_F_TSO#include <net/checksum.h>#endif#ifdef SIOCGMIIPHY#include <linux/mii.h>#endif#ifdef SIOCETHTOOL#include <linux/ethtool.h>#endif#ifdef NETIF_F_HW_VLAN_TX#include <linux/if_vlan.h>#endif#define BAR_0		0#define BAR_1		1#define BAR_5		5#include "kcompat.h"#define INTEL_E1000_ETHERNET_DEVICE(device_id) {\	PCI_DEVICE(PCI_VENDOR_ID_INTEL, device_id)}struct e1000_adapter;#include "e1000_hw.h"#ifdef DBG#define E1000_DBG(args...) printk(KERN_DEBUG "e1000: " args)#else#define E1000_DBG(args...)#endif#define E1000_ERR(args...) printk(KERN_ERR "e1000: " args)#define PFX "e1000: "#define DPRINTK(nlevel, klevel, fmt, args...) \	(void)((NETIF_MSG_##nlevel & adapter->msg_enable) && \	printk(KERN_##klevel PFX "%s: %s: " fmt, adapter->netdev->name, \		__FUNCTION__ , ## args))#define E1000_MAX_INTR 10/* TX/RX descriptor defines */#define E1000_DEFAULT_TXD                  256#define E1000_MAX_TXD                      256#define E1000_MIN_TXD                       80#define E1000_MAX_82544_TXD               4096#define E1000_DEFAULT_RXD                  256#define E1000_MAX_RXD                      256#define E1000_MIN_RXD                       80#define E1000_MAX_82544_RXD               4096/* this is the size past which hardware will drop packets when setting LPE=0 */#define MAXIMUM_ETHERNET_VLAN_SIZE 1522/* Supported Rx Buffer Sizes */#define E1000_RXBUFFER_128   128    /* Used for packet split */#define E1000_RXBUFFER_256   256    /* Used for packet split */#define E1000_RXBUFFER_512   512#define E1000_RXBUFFER_1024  1024#define E1000_RXBUFFER_2048  2048#define E1000_RXBUFFER_4096  4096#define E1000_RXBUFFER_8192  8192#define E1000_RXBUFFER_16384 16384/* SmartSpeed delimiters */#define E1000_SMARTSPEED_DOWNSHIFT 3#define E1000_SMARTSPEED_MAX       15/* Packet Buffer allocations */#define E1000_PBA_BYTES_SHIFT 0xA#define E1000_TX_HEAD_ADDR_SHIFT 7#define E1000_PBA_TX_MASK 0xFFFF0000/* Flow Control Watermarks */#define E1000_FC_HIGH_DIFF 0x1638  /* High: 5688 bytes below Rx FIFO size */#define E1000_FC_LOW_DIFF 0x1640   /* Low:  5696 bytes below Rx FIFO size */#define E1000_FC_PAUSE_TIME 0x0680 /* 858 usec *//* How many Tx Descriptors do we need to call netif_wake_queue ? */#define E1000_TX_QUEUE_WAKE	16/* How many Rx Buffers do we bundle into one write to the hardware ? */#define E1000_RX_BUFFER_WRITE	16	/* Must be power of 2 */#define AUTO_ALL_MODES            0#define E1000_EEPROM_82544_APM    0x0004#define E1000_EEPROM_ICH8_APME    0x0004#define E1000_EEPROM_APME         0x0400#ifndef E1000_MASTER_SLAVE/* Switch to override PHY master/slave setting */#define E1000_MASTER_SLAVE	e1000_ms_hw_default#endif#ifdef NETIF_F_HW_VLAN_TX#define E1000_MNG_VLAN_NONE -1#endif/* Number of packet split data buffers (not including the header buffer) */#define PS_PAGE_BUFFERS MAX_PS_BUFFERS-1/* only works for sizes that are powers of 2 */#define E1000_ROUNDUP(i, size) ((i) = (((i) + (size) - 1) & ~((size) - 1)))/* wrapper around a pointer to a socket buffer, * so a DMA handle can be stored along with the buffer */struct e1000_buffer {	struct sk_buff *skb;	dma_addr_t dma;	unsigned long time_stamp;	uint16_t length;	uint16_t next_to_watch;};struct e1000_ps_page { struct page *ps_page[PS_PAGE_BUFFERS]; };struct e1000_ps_page_dma { uint64_t ps_page_dma[PS_PAGE_BUFFERS]; };struct e1000_tx_ring {	/* pointer to the descriptor ring memory */	void *desc;	/* physical address of the descriptor ring */	dma_addr_t dma;	/* length of descriptor ring in bytes */	unsigned int size;	/* number of descriptors in the ring */	unsigned int count;	/* next descriptor to associate a buffer with */	unsigned int next_to_use;	/* next descriptor to check for DD status bit */	unsigned int next_to_clean;	/* array of buffer information structs */	struct e1000_buffer *buffer_info;	spinlock_t tx_lock;	uint16_t tdh;	uint16_t tdt;	boolean_t last_tx_tso;};struct e1000_rx_ring {	/* pointer to the descriptor ring memory */	void *desc;	/* physical address of the descriptor ring */	dma_addr_t dma;	/* length of descriptor ring in bytes */	unsigned int size;	/* number of descriptors in the ring */	unsigned int count;	/* next descriptor to associate a buffer with */	unsigned int next_to_use;	/* next descriptor to check for DD status bit */	unsigned int next_to_clean;	/* array of buffer information structs */	struct e1000_buffer *buffer_info;	/* arrays of page information for packet split */	struct e1000_ps_page *ps_page;	struct e1000_ps_page_dma *ps_page_dma;	/* cpu for rx queue */	int cpu;	uint16_t rdh;	uint16_t rdt;};#define E1000_DESC_UNUSED(R) \	((((R)->next_to_clean > (R)->next_to_use) ? 0 : (R)->count) + \	(R)->next_to_clean - (R)->next_to_use - 1)#define E1000_RX_DESC_PS(R, i)	    \	(&(((union e1000_rx_desc_packet_split *)((R).desc))[i]))#define E1000_RX_DESC_EXT(R, i)	    \	(&(((union e1000_rx_desc_extended *)((R).desc))[i]))#define E1000_GET_DESC(R, i, type)	(&(((struct type *)((R).desc))[i]))#define E1000_RX_DESC(R, i)		E1000_GET_DESC(R, i, e1000_rx_desc)#define E1000_TX_DESC(R, i)		E1000_GET_DESC(R, i, e1000_tx_desc)#define E1000_CONTEXT_DESC(R, i)	E1000_GET_DESC(R, i, e1000_context_desc)/* board specific private data structure */struct e1000_adapter {	struct timer_list tx_fifo_stall_timer;	struct timer_list watchdog_timer;	struct timer_list phy_info_timer;#ifdef NETIF_F_HW_VLAN_TX	struct vlan_group *vlgrp;	uint16_t mng_vlan_id;#endif	uint32_t bd_number;	uint32_t rx_buffer_len;	uint32_t wol;	uint32_t smartspeed;	uint32_t en_mng_pt;	uint16_t link_speed;	uint16_t link_duplex;	spinlock_t stats_lock;#ifdef CONFIG_E1000_NAPI	spinlock_t tx_queue_lock;#endif	atomic_t irq_sem;	struct work_struct reset_task;	uint8_t fc_autoneg;#ifdef ETHTOOL_PHYS_ID	struct timer_list blink_timer;	unsigned long led_status;#endif	/* TX */	struct e1000_tx_ring *tx_ring;      /* One per active queue */	unsigned long tx_queue_len;	uint32_t txd_cmd;	uint32_t tx_int_delay;	uint32_t tx_abs_int_delay;	uint32_t gotcl;	uint64_t gotcl_old;	uint64_t tpt_old;	uint64_t colc_old;	uint32_t tx_timeout_count;	uint32_t tx_fifo_head;	uint32_t tx_head_addr;	uint32_t tx_fifo_size;	uint8_t  tx_timeout_factor;	atomic_t tx_fifo_stall;	boolean_t pcix_82544;	boolean_t detect_tx_hung;	/* RX */#ifdef CONFIG_E1000_NAPI	boolean_t (*clean_rx) (struct e1000_adapter *adapter,			       struct e1000_rx_ring *rx_ring,			       int *work_done, int work_to_do);#else	boolean_t (*clean_rx) (struct e1000_adapter *adapter,			       struct e1000_rx_ring *rx_ring);#endif	void (*alloc_rx_buf) (struct e1000_adapter *adapter,			      struct e1000_rx_ring *rx_ring,				int cleaned_count);	struct e1000_rx_ring *rx_ring;      /* One per active queue */#ifdef CONFIG_E1000_NAPI	struct net_device *polling_netdev;  /* One per active queue */#endif	int num_tx_queues;	int num_rx_queues;	uint64_t hw_csum_err;	uint64_t hw_csum_good;	uint64_t rx_hdr_split;	uint32_t alloc_rx_buff_failed;	uint32_t rx_int_delay;	uint32_t rx_abs_int_delay;	boolean_t rx_csum;	unsigned int rx_ps_pages;	uint32_t gorcl;	uint64_t gorcl_old;	uint16_t rx_ps_bsize0;	/* Interrupt Throttle Rate */	uint32_t itr;	/* OS defined structs */	struct net_device *netdev;	struct pci_dev *pdev;	struct net_device_stats net_stats;	/* structs defined in e1000_hw.h */	struct e1000_hw hw;	struct e1000_hw_stats stats;	struct e1000_phy_info phy_info;	struct e1000_phy_stats phy_stats;#ifdef ETHTOOL_TEST	uint32_t test_icr;	struct e1000_tx_ring test_tx_ring;	struct e1000_rx_ring test_rx_ring;#endif#ifdef E1000_COUNT_ICR	uint64_t icr_txdw;	uint64_t icr_txqe;	uint64_t icr_lsc;	uint64_t icr_rxseq;	uint64_t icr_rxdmt;	uint64_t icr_rxo;	uint64_t icr_rxt;	uint64_t icr_mdac;	uint64_t icr_rxcfg;	uint64_t icr_gpi;#endif	uint32_t *config_space;	int msg_enable;#ifdef CONFIG_PCI_MSI	boolean_t have_msi;#endif	/* to not mess up cache alignment, always add to the bottom */#ifdef NETIF_F_TSO	boolean_t tso_force;#endif	boolean_t smart_power_down;	/* phy smart power down */	boolean_t quad_port_a;	unsigned long flags;	uint32_t eeprom_wol;};enum e1000_state_t {	__E1000_TESTING,	__E1000_RESETTING,	__E1000_DOWN};#endif /* _E1000_H_ */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91色婷婷久久久久合中文| 国产精品久久久久影视| 三级一区在线视频先锋| 欧美午夜精品免费| 香蕉乱码成人久久天堂爱免费| 欧美性猛交xxxxxxxx| 亚洲香肠在线观看| 7777精品伊人久久久大香线蕉完整版 | 久草精品在线观看| 久久午夜色播影院免费高清 | 国内精品写真在线观看| 久久久精品一品道一区| 成人精品国产免费网站| 亚洲日本va午夜在线影院| 欧美私人免费视频| 伦理电影国产精品| 中文字幕免费观看一区| 91国产福利在线| 日本aⅴ亚洲精品中文乱码| 久久综合九色欧美综合狠狠| 成人黄色在线网站| 亚洲成人免费在线观看| 精品久久久久久亚洲综合网 | 一区视频在线播放| 欧美视频自拍偷拍| 国产一区二区美女| 亚洲久草在线视频| 精品日韩一区二区| 色婷婷久久久亚洲一区二区三区| 亚洲成人av一区| 久久先锋资源网| 欧美午夜电影在线播放| 国产精品一区三区| 亚洲国产aⅴ成人精品无吗| 欧美精品一区二区蜜臀亚洲| 99热精品国产| 久久99久久久久| 亚洲色图制服诱惑| 26uuuu精品一区二区| 色婷婷综合久久久| 国产成人午夜高潮毛片| 午夜国产精品影院在线观看| 国产日本一区二区| 欧美一区二区三区男人的天堂| 成人黄色av电影| 久久99日本精品| 亚洲成人精品影院| 国产精品久久二区二区| 日韩欧美卡一卡二| 欧美日韩亚洲综合在线| www.亚洲精品| 国产精品亚洲专一区二区三区| 亚洲成av人在线观看| 国产精品国产三级国产a | 欧美精品一区二区在线观看| 91精品办公室少妇高潮对白| 国产寡妇亲子伦一区二区| 视频一区中文字幕| 亚洲精品视频一区| 国产精品乱人伦一区二区| www一区二区| 91精品欧美久久久久久动漫 | 麻豆成人久久精品二区三区小说| 精品日产卡一卡二卡麻豆| 免费观看成人鲁鲁鲁鲁鲁视频| 久久久午夜精品理论片中文字幕| 在线观看中文字幕不卡| 91小宝寻花一区二区三区| 宅男噜噜噜66一区二区66| 色就色 综合激情| 成人午夜碰碰视频| 国产成人av电影在线| 理论片日本一区| 美美哒免费高清在线观看视频一区二区| 亚洲精品高清在线观看| 亚洲欧美成人一区二区三区| 中文字幕精品一区二区精品绿巨人 | 91麻豆精品久久久久蜜臀| 欧美视频一区二区| 欧美人妇做爰xxxⅹ性高电影| 在线观看免费亚洲| 欧美亚一区二区| 欧美三区免费完整视频在线观看| 色综合久久天天综合网| 在线免费亚洲电影| 欧美专区在线观看一区| 欧美综合一区二区三区| 欧美色窝79yyyycom| 欧美精品 日韩| 91精品免费在线观看| 精品噜噜噜噜久久久久久久久试看 | 日韩精品电影在线| 久久精品国产免费| 国产精品一卡二卡| av在线不卡电影| 91视频一区二区三区| 欧美午夜理伦三级在线观看| 欧美福利电影网| 日韩一区二区三区免费看| 久久亚洲精品国产精品紫薇| 国产女主播一区| 亚洲免费在线视频一区 二区| 亚洲国产另类精品专区| 日韩电影在线观看一区| 在线不卡一区二区| 欧美成人vps| 日本一区二区动态图| 亚洲黄色小说网站| 亚洲免费在线观看| 丝袜美腿成人在线| 粉嫩av一区二区三区粉嫩| 99久久婷婷国产综合精品| 色婷婷久久综合| 欧美白人最猛性xxxxx69交| 欧美国产成人精品| 亚洲专区一二三| 久久99精品久久久| 99re66热这里只有精品3直播 | av午夜一区麻豆| 欧美日韩国产在线观看| 久久久久久亚洲综合影院红桃| 综合在线观看色| 日本女人一区二区三区| 波多野结衣在线aⅴ中文字幕不卡| 91成人在线观看喷潮| 欧美zozozo| 亚洲免费视频中文字幕| 国产自产2019最新不卡| 色八戒一区二区三区| 久久综合色播五月| 亚洲国产另类精品专区| 国产成人啪免费观看软件 | 一级做a爱片久久| 国产一区二区三区不卡在线观看 | 午夜精品福利在线| 成人黄色电影在线 | 自拍视频在线观看一区二区| 麻豆一区二区在线| 欧洲精品视频在线观看| 久久久国产精品不卡| 日韩二区三区在线观看| 91网站在线播放| 国产天堂亚洲国产碰碰| 婷婷久久综合九色国产成人| 91丨porny丨国产| 欧美激情一区二区三区| 美女视频一区二区三区| 欧美日韩一区二区在线视频| 国产精品第一页第二页第三页 | 国产高清亚洲一区| 日韩欧美一级二级| 天天色综合成人网| 色狠狠av一区二区三区| 中文字幕在线免费不卡| 国产麻豆一精品一av一免费| 欧美一卡2卡3卡4卡| 亚洲国产成人精品视频| 色94色欧美sute亚洲线路一久| 亚洲国产精品传媒在线观看| 久久精品久久99精品久久| 欧美猛男超大videosgay| 亚洲一区二区av电影| 91麻豆视频网站| 亚洲人午夜精品天堂一二香蕉| 高清不卡一区二区在线| 国产调教视频一区| 国产一二三精品| 国产亚洲精品资源在线26u| 国产一区二区三区综合| 欧美精品一区二区三区一线天视频| 免费精品视频最新在线| 91精品在线观看入口| 日本中文字幕一区二区有限公司| 欧美精品在线观看一区二区| 亚洲国产精品视频| 9191国产精品| 免费成人美女在线观看.| 欧美成人vps| 国产二区国产一区在线观看| 国产亲近乱来精品视频| 成人免费av在线| 亚洲你懂的在线视频| 欧美影院精品一区| 日日欢夜夜爽一区| 精品91自产拍在线观看一区| 国产一本一道久久香蕉| 国产精品久久久久久一区二区三区 | 日韩av电影免费观看高清完整版在线观看 | 久久国产精品72免费观看| 日韩欧美国产高清| 国产一区二区精品久久99| 国产精品久久久久永久免费观看| 92精品国产成人观看免费| 亚洲一区二区中文在线| 欧美一区二区视频观看视频| 国产一区二区三区在线观看精品| 国产精品免费丝袜| 欧美色综合天天久久综合精品| 日本中文字幕一区二区有限公司| 久久一区二区三区国产精品|