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

📄 ixgb_hw.h

📁 linux-2.6.15.6
💻 H
📖 第 1 页 / 共 3 页
字号:
/*******************************************************************************    Copyright(c) 1999 - 2005 Intel Corporation. All rights reserved.    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.    This program is distributed in the hope that 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., 59   Temple Place - Suite 330, Boston, MA  02111-1307, USA.    The full GNU General Public License is included in this distribution in the  file called LICENSE.    Contact Information:  Linux NICS <linux.nics@intel.com>  Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497*******************************************************************************/#ifndef _IXGB_HW_H_#define _IXGB_HW_H_#include "ixgb_osdep.h"/* Enums */typedef enum {	ixgb_mac_unknown = 0,	ixgb_82597,	ixgb_num_macs} ixgb_mac_type;/* Types of physical layer modules */typedef enum {	ixgb_phy_type_unknown = 0,	ixgb_phy_type_g6005,	/* 850nm, MM fiber, XPAK transceiver */	ixgb_phy_type_g6104,	/* 1310nm, SM fiber, XPAK transceiver */	ixgb_phy_type_txn17201,	/* 850nm, MM fiber, XPAK transceiver */	ixgb_phy_type_txn17401	/* 1310nm, SM fiber, XENPAK transceiver */} ixgb_phy_type;/* XPAK transceiver vendors, for the SR adapters */typedef enum {	ixgb_xpak_vendor_intel,	ixgb_xpak_vendor_infineon} ixgb_xpak_vendor;/* Media Types */typedef enum {	ixgb_media_type_unknown = 0,	ixgb_media_type_fiber = 1,	ixgb_num_media_types} ixgb_media_type;/* Flow Control Settings */typedef enum {	ixgb_fc_none = 0,	ixgb_fc_rx_pause = 1,	ixgb_fc_tx_pause = 2,	ixgb_fc_full = 3,	ixgb_fc_default = 0xFF} ixgb_fc_type;/* PCI bus types */typedef enum {	ixgb_bus_type_unknown = 0,	ixgb_bus_type_pci,	ixgb_bus_type_pcix} ixgb_bus_type;/* PCI bus speeds */typedef enum {	ixgb_bus_speed_unknown = 0,	ixgb_bus_speed_33,	ixgb_bus_speed_66,	ixgb_bus_speed_100,	ixgb_bus_speed_133,	ixgb_bus_speed_reserved} ixgb_bus_speed;/* PCI bus widths */typedef enum {	ixgb_bus_width_unknown = 0,	ixgb_bus_width_32,	ixgb_bus_width_64} ixgb_bus_width;#define IXGB_ETH_LENGTH_OF_ADDRESS   6#define IXGB_EEPROM_SIZE    64	/* Size in words */#define SPEED_10000  10000#define FULL_DUPLEX  2#define MIN_NUMBER_OF_DESCRIPTORS       8#define MAX_NUMBER_OF_DESCRIPTORS  0xFFF8	/* 13 bits in RDLEN/TDLEN, 128B aligned     */#define IXGB_DELAY_BEFORE_RESET        10	/* allow 10ms after idling rx/tx units      */#define IXGB_DELAY_AFTER_RESET          1	/* allow 1ms after the reset                */#define IXGB_DELAY_AFTER_EE_RESET      10	/* allow 10ms after the EEPROM reset        */#define IXGB_DELAY_USECS_AFTER_LINK_RESET    13	/* allow 13 microseconds after the reset    */					   /* NOTE: this is MICROSECONDS               */#define MAX_RESET_ITERATIONS            8	/* number of iterations to get things right *//* General Registers */#define IXGB_CTRL0   0x00000	/* Device Control Register 0 - RW */#define IXGB_CTRL1   0x00008	/* Device Control Register 1 - RW */#define IXGB_STATUS  0x00010	/* Device Status Register - RO */#define IXGB_EECD    0x00018	/* EEPROM/Flash Control/Data Register - RW */#define IXGB_MFS     0x00020	/* Maximum Frame Size - RW *//* Interrupt */#define IXGB_ICR     0x00080	/* Interrupt Cause Read - R/clr */#define IXGB_ICS     0x00088	/* Interrupt Cause Set - RW */#define IXGB_IMS     0x00090	/* Interrupt Mask Set/Read - RW */#define IXGB_IMC     0x00098	/* Interrupt Mask Clear - WO *//* Receive */#define IXGB_RCTL    0x00100	/* RX Control - RW */#define IXGB_FCRTL   0x00108	/* Flow Control Receive Threshold Low - RW */#define IXGB_FCRTH   0x00110	/* Flow Control Receive Threshold High - RW */#define IXGB_RDBAL   0x00118	/* RX Descriptor Base Low - RW */#define IXGB_RDBAH   0x0011C	/* RX Descriptor Base High - RW */#define IXGB_RDLEN   0x00120	/* RX Descriptor Length - RW */#define IXGB_RDH     0x00128	/* RX Descriptor Head - RW */#define IXGB_RDT     0x00130	/* RX Descriptor Tail - RW */#define IXGB_RDTR    0x00138	/* RX Delay Timer Ring - RW */#define IXGB_RXDCTL  0x00140	/* Receive Descriptor Control - RW */#define IXGB_RAIDC   0x00148	/* Receive Adaptive Interrupt Delay Control - RW */#define IXGB_RXCSUM  0x00158	/* Receive Checksum Control - RW */#define IXGB_RA      0x00180	/* Receive Address Array Base - RW */#define IXGB_RAL     0x00180	/* Receive Address Low [0:15] - RW */#define IXGB_RAH     0x00184	/* Receive Address High [0:15] - RW */#define IXGB_MTA     0x00200	/* Multicast Table Array [0:127] - RW */#define IXGB_VFTA    0x00400	/* VLAN Filter Table Array [0:127] - RW */#define IXGB_REQ_RX_DESCRIPTOR_MULTIPLE 8/* Transmit */#define IXGB_TCTL    0x00600	/* TX Control - RW */#define IXGB_TDBAL   0x00608	/* TX Descriptor Base Low - RW */#define IXGB_TDBAH   0x0060C	/* TX Descriptor Base High - RW */#define IXGB_TDLEN   0x00610	/* TX Descriptor Length - RW */#define IXGB_TDH     0x00618	/* TX Descriptor Head - RW */#define IXGB_TDT     0x00620	/* TX Descriptor Tail - RW */#define IXGB_TIDV    0x00628	/* TX Interrupt Delay Value - RW */#define IXGB_TXDCTL  0x00630	/* Transmit Descriptor Control - RW */#define IXGB_TSPMT   0x00638	/* TCP Segmentation PAD & Min Threshold - RW */#define IXGB_PAP     0x00640	/* Pause and Pace - RW */#define IXGB_REQ_TX_DESCRIPTOR_MULTIPLE 8/* Physical */#define IXGB_PCSC1   0x00700	/* PCS Control 1 - RW */#define IXGB_PCSC2   0x00708	/* PCS Control 2 - RW */#define IXGB_PCSS1   0x00710	/* PCS Status 1 - RO */#define IXGB_PCSS2   0x00718	/* PCS Status 2 - RO */#define IXGB_XPCSS   0x00720	/* 10GBASE-X PCS Status (or XGXS Lane Status) - RO */#define IXGB_UCCR    0x00728	/* Unilink Circuit Control Register */#define IXGB_XPCSTC  0x00730	/* 10GBASE-X PCS Test Control */#define IXGB_MACA    0x00738	/* MDI Autoscan Command and Address - RW */#define IXGB_APAE    0x00740	/* Autoscan PHY Address Enable - RW */#define IXGB_ARD     0x00748	/* Autoscan Read Data - RO */#define IXGB_AIS     0x00750	/* Autoscan Interrupt Status - RO */#define IXGB_MSCA    0x00758	/* MDI Single Command and Address - RW */#define IXGB_MSRWD   0x00760	/* MDI Single Read and Write Data - RW, RO *//* Wake-up */#define IXGB_WUFC    0x00808	/* Wake Up Filter Control - RW */#define IXGB_WUS     0x00810	/* Wake Up Status - RO */#define IXGB_FFLT    0x01000	/* Flexible Filter Length Table - RW */#define IXGB_FFMT    0x01020	/* Flexible Filter Mask Table - RW */#define IXGB_FTVT    0x01420	/* Flexible Filter Value Table - RW *//* Statistics */#define IXGB_TPRL    0x02000	/* Total Packets Received (Low) */#define IXGB_TPRH    0x02004	/* Total Packets Received (High) */#define IXGB_GPRCL   0x02008	/* Good Packets Received Count (Low) */#define IXGB_GPRCH   0x0200C	/* Good Packets Received Count (High) */#define IXGB_BPRCL   0x02010	/* Broadcast Packets Received Count (Low) */#define IXGB_BPRCH   0x02014	/* Broadcast Packets Received Count (High) */#define IXGB_MPRCL   0x02018	/* Multicast Packets Received Count (Low) */#define IXGB_MPRCH   0x0201C	/* Multicast Packets Received Count (High) */#define IXGB_UPRCL   0x02020	/* Unicast Packets Received Count (Low) */#define IXGB_UPRCH   0x02024	/* Unicast Packets Received Count (High) */#define IXGB_VPRCL   0x02028	/* VLAN Packets Received Count (Low) */#define IXGB_VPRCH   0x0202C	/* VLAN Packets Received Count (High) */#define IXGB_JPRCL   0x02030	/* Jumbo Packets Received Count (Low) */#define IXGB_JPRCH   0x02034	/* Jumbo Packets Received Count (High) */#define IXGB_GORCL   0x02038	/* Good Octets Received Count (Low) */#define IXGB_GORCH   0x0203C	/* Good Octets Received Count (High) */#define IXGB_TORL    0x02040	/* Total Octets Received (Low) */#define IXGB_TORH    0x02044	/* Total Octets Received (High) */#define IXGB_RNBC    0x02048	/* Receive No Buffers Count */#define IXGB_RUC     0x02050	/* Receive Undersize Count */#define IXGB_ROC     0x02058	/* Receive Oversize Count */#define IXGB_RLEC    0x02060	/* Receive Length Error Count */#define IXGB_CRCERRS 0x02068	/* CRC Error Count */#define IXGB_ICBC    0x02070	/* Illegal control byte in mid-packet Count */#define IXGB_ECBC    0x02078	/* Error Control byte in mid-packet Count */#define IXGB_MPC     0x02080	/* Missed Packets Count */#define IXGB_TPTL    0x02100	/* Total Packets Transmitted (Low) */#define IXGB_TPTH    0x02104	/* Total Packets Transmitted (High) */#define IXGB_GPTCL   0x02108	/* Good Packets Transmitted Count (Low) */#define IXGB_GPTCH   0x0210C	/* Good Packets Transmitted Count (High) */#define IXGB_BPTCL   0x02110	/* Broadcast Packets Transmitted Count (Low) */#define IXGB_BPTCH   0x02114	/* Broadcast Packets Transmitted Count (High) */#define IXGB_MPTCL   0x02118	/* Multicast Packets Transmitted Count (Low) */#define IXGB_MPTCH   0x0211C	/* Multicast Packets Transmitted Count (High) */#define IXGB_UPTCL   0x02120	/* Unicast Packets Transmitted Count (Low) */#define IXGB_UPTCH   0x02124	/* Unicast Packets Transmitted Count (High) */#define IXGB_VPTCL   0x02128	/* VLAN Packets Transmitted Count (Low) */#define IXGB_VPTCH   0x0212C	/* VLAN Packets Transmitted Count (High) */#define IXGB_JPTCL   0x02130	/* Jumbo Packets Transmitted Count (Low) */#define IXGB_JPTCH   0x02134	/* Jumbo Packets Transmitted Count (High) */#define IXGB_GOTCL   0x02138	/* Good Octets Transmitted Count (Low) */#define IXGB_GOTCH   0x0213C	/* Good Octets Transmitted Count (High) */#define IXGB_TOTL    0x02140	/* Total Octets Transmitted Count (Low) */#define IXGB_TOTH    0x02144	/* Total Octets Transmitted Count (High) */#define IXGB_DC      0x02148	/* Defer Count */#define IXGB_PLT64C  0x02150	/* Packet Transmitted was less than 64 bytes Count */#define IXGB_TSCTC   0x02170	/* TCP Segmentation Context Transmitted Count */#define IXGB_TSCTFC  0x02178	/* TCP Segmentation Context Tx Fail Count */#define IXGB_IBIC    0x02180	/* Illegal byte during Idle stream count */#define IXGB_RFC     0x02188	/* Remote Fault Count */#define IXGB_LFC     0x02190	/* Local Fault Count */#define IXGB_PFRC    0x02198	/* Pause Frame Receive Count */#define IXGB_PFTC    0x021A0	/* Pause Frame Transmit Count */#define IXGB_MCFRC   0x021A8	/* MAC Control Frames (non-Pause) Received Count */#define IXGB_MCFTC   0x021B0	/* MAC Control Frames (non-Pause) Transmitted Count */#define IXGB_XONRXC  0x021B8	/* XON Received Count */#define IXGB_XONTXC  0x021C0	/* XON Transmitted Count */#define IXGB_XOFFRXC 0x021C8	/* XOFF Received Count */#define IXGB_XOFFTXC 0x021D0	/* XOFF Transmitted Count */#define IXGB_RJC     0x021D8	/* Receive Jabber Count *//* CTRL0 Bit Masks */#define IXGB_CTRL0_LRST     0x00000008#define IXGB_CTRL0_JFE      0x00000010#define IXGB_CTRL0_XLE      0x00000020#define IXGB_CTRL0_MDCS     0x00000040#define IXGB_CTRL0_CMDC     0x00000080#define IXGB_CTRL0_SDP0     0x00040000#define IXGB_CTRL0_SDP1     0x00080000#define IXGB_CTRL0_SDP2     0x00100000#define IXGB_CTRL0_SDP3     0x00200000#define IXGB_CTRL0_SDP0_DIR 0x00400000#define IXGB_CTRL0_SDP1_DIR 0x00800000#define IXGB_CTRL0_SDP2_DIR 0x01000000#define IXGB_CTRL0_SDP3_DIR 0x02000000#define IXGB_CTRL0_RST      0x04000000#define IXGB_CTRL0_RPE      0x08000000#define IXGB_CTRL0_TPE      0x10000000#define IXGB_CTRL0_VME      0x40000000/* CTRL1 Bit Masks */#define IXGB_CTRL1_GPI0_EN     0x00000001#define IXGB_CTRL1_GPI1_EN     0x00000002#define IXGB_CTRL1_GPI2_EN     0x00000004#define IXGB_CTRL1_GPI3_EN     0x00000008#define IXGB_CTRL1_SDP4        0x00000010#define IXGB_CTRL1_SDP5        0x00000020#define IXGB_CTRL1_SDP6        0x00000040#define IXGB_CTRL1_SDP7        0x00000080#define IXGB_CTRL1_SDP4_DIR    0x00000100#define IXGB_CTRL1_SDP5_DIR    0x00000200#define IXGB_CTRL1_SDP6_DIR    0x00000400

⌨️ 快捷键说明

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