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

📄 e1000_defines.h

📁 linux下的网卡驱动
💻 H
📖 第 1 页 / 共 5 页
字号:
#define E1000_RXCSUM_TUOFL     0x00000200   /* TCP / UDP checksum offload */#define E1000_RXCSUM_IPV6OFL   0x00000400   /* IPv6 checksum offload */#define E1000_RXCSUM_IPPCSE    0x00001000   /* IP payload checksum enable */#define E1000_RXCSUM_PCSD      0x00002000   /* packet checksum disabled *//* Header split receive */#define E1000_RFCTL_ISCSI_DIS           0x00000001#define E1000_RFCTL_ISCSI_DWC_MASK      0x0000003E#define E1000_RFCTL_ISCSI_DWC_SHIFT     1#define E1000_RFCTL_NFSW_DIS            0x00000040#define E1000_RFCTL_NFSR_DIS            0x00000080#define E1000_RFCTL_NFS_VER_MASK        0x00000300#define E1000_RFCTL_NFS_VER_SHIFT       8#define E1000_RFCTL_IPV6_DIS            0x00000400#define E1000_RFCTL_IPV6_XSUM_DIS       0x00000800#define E1000_RFCTL_ACK_DIS             0x00001000#define E1000_RFCTL_ACKD_DIS            0x00002000#define E1000_RFCTL_IPFRSP_DIS          0x00004000#define E1000_RFCTL_EXTEN               0x00008000#define E1000_RFCTL_IPV6_EX_DIS         0x00010000#define E1000_RFCTL_NEW_IPV6_EXT_DIS    0x00020000/* Collision related configuration parameters */#define E1000_COLLISION_THRESHOLD       15#define E1000_CT_SHIFT                  4#define E1000_COLLISION_DISTANCE        63#define E1000_COLD_SHIFT                12/* Default values for the transmit IPG register */#define DEFAULT_82542_TIPG_IPGT        10#define DEFAULT_82543_TIPG_IPGT_FIBER  9#define DEFAULT_82543_TIPG_IPGT_COPPER 8#define E1000_TIPG_IPGT_MASK  0x000003FF#define E1000_TIPG_IPGR1_MASK 0x000FFC00#define E1000_TIPG_IPGR2_MASK 0x3FF00000#define DEFAULT_82542_TIPG_IPGR1 2#define DEFAULT_82543_TIPG_IPGR1 8#define E1000_TIPG_IPGR1_SHIFT  10#define DEFAULT_82542_TIPG_IPGR2 10#define DEFAULT_82543_TIPG_IPGR2 6#define DEFAULT_80003ES2LAN_TIPG_IPGR2 7#define E1000_TIPG_IPGR2_SHIFT  20/* Ethertype field values */#define ETHERNET_IEEE_VLAN_TYPE 0x8100  /* 802.3ac packet */#define ETHERNET_FCS_SIZE       4#define MAX_JUMBO_FRAME_SIZE    0x3F00/* Extended Configuration Control and Size */#define E1000_EXTCNF_CTRL_MDIO_SW_OWNERSHIP      0x00000020#define E1000_EXTCNF_CTRL_LCD_WRITE_ENABLE       0x00000001#define E1000_EXTCNF_CTRL_SWFLAG                 0x00000020#define E1000_EXTCNF_SIZE_EXT_PCIE_LENGTH_MASK   0x00FF0000#define E1000_EXTCNF_SIZE_EXT_PCIE_LENGTH_SHIFT          16#define E1000_EXTCNF_CTRL_EXT_CNF_POINTER_MASK   0x0FFF0000#define E1000_EXTCNF_CTRL_EXT_CNF_POINTER_SHIFT          16#define E1000_PHY_CTRL_SPD_EN             0x00000001#define E1000_PHY_CTRL_D0A_LPLU           0x00000002#define E1000_PHY_CTRL_NOND0A_LPLU        0x00000004#define E1000_PHY_CTRL_NOND0A_GBE_DISABLE 0x00000008#define E1000_PHY_CTRL_GBE_DISABLE        0x00000040#define E1000_KABGTXD_BGSQLBIAS           0x00050000/* PBA constants */#define E1000_PBA_8K  0x0008    /* 8KB, default Rx allocation */#define E1000_PBA_12K 0x000C    /* 12KB, default Rx allocation */#define E1000_PBA_16K 0x0010    /* 16KB, default TX allocation */#define E1000_PBA_20K 0x0014#define E1000_PBA_22K 0x0016#define E1000_PBA_24K 0x0018#define E1000_PBA_30K 0x001E#define E1000_PBA_32K 0x0020#define E1000_PBA_34K 0x0022#define E1000_PBA_38K 0x0026#define E1000_PBA_40K 0x0028#define E1000_PBA_48K 0x0030    /* 48KB, default RX allocation */#define E1000_PBS_16K E1000_PBA_16K#define E1000_PBS_24K E1000_PBA_24K#define IFS_MAX       80#define IFS_MIN       40#define IFS_RATIO     4#define IFS_STEP      10#define MIN_NUM_XMITS 1000/* SW Semaphore Register */#define E1000_SWSM_SMBI         0x00000001 /* Driver Semaphore bit */#define E1000_SWSM_SWESMBI      0x00000002 /* FW Semaphore bit */#define E1000_SWSM_WMNG         0x00000004 /* Wake MNG Clock */#define E1000_SWSM_DRV_LOAD     0x00000008 /* Driver Loaded Bit *//* Interrupt Cause Read */#define E1000_ICR_TXDW          0x00000001 /* Transmit desc written back */#define E1000_ICR_TXQE          0x00000002 /* Transmit Queue empty */#define E1000_ICR_LSC           0x00000004 /* Link Status Change */#define E1000_ICR_RXSEQ         0x00000008 /* rx sequence error */#define E1000_ICR_RXDMT0        0x00000010 /* rx desc min. threshold (0) */#define E1000_ICR_RXO           0x00000040 /* rx overrun */#define E1000_ICR_RXT0          0x00000080 /* rx timer intr (ring 0) */#define E1000_ICR_MDAC          0x00000200 /* MDIO access complete */#define E1000_ICR_RXCFG         0x00000400 /* RX /c/ ordered set */#define E1000_ICR_GPI_EN0       0x00000800 /* GP Int 0 */#define E1000_ICR_GPI_EN1       0x00001000 /* GP Int 1 */#define E1000_ICR_GPI_EN2       0x00002000 /* GP Int 2 */#define E1000_ICR_GPI_EN3       0x00004000 /* GP Int 3 */#define E1000_ICR_TXD_LOW       0x00008000#define E1000_ICR_SRPD          0x00010000#define E1000_ICR_ACK           0x00020000 /* Receive Ack frame */#define E1000_ICR_MNG           0x00040000 /* Manageability event */#define E1000_ICR_DOCK          0x00080000 /* Dock/Undock */#define E1000_ICR_INT_ASSERTED  0x80000000 /* If this bit asserted, the driver should claim the interrupt */#define E1000_ICR_RXD_FIFO_PAR0 0x00100000 /* queue 0 Rx descriptor FIFO parity error */#define E1000_ICR_TXD_FIFO_PAR0 0x00200000 /* queue 0 Tx descriptor FIFO parity error */#define E1000_ICR_HOST_ARB_PAR  0x00400000 /* host arb read buffer parity error */#define E1000_ICR_PB_PAR        0x00800000 /* packet buffer parity error */#define E1000_ICR_RXD_FIFO_PAR1 0x01000000 /* queue 1 Rx descriptor FIFO parity error */#define E1000_ICR_TXD_FIFO_PAR1 0x02000000 /* queue 1 Tx descriptor FIFO parity error */#define E1000_ICR_ALL_PARITY    0x03F00000 /* all parity error bits */#define E1000_ICR_DSW           0x00000020 /* FW changed the status of DISSW bit in the FWSM */#define E1000_ICR_PHYINT        0x00001000 /* LAN connected device generates an interrupt */#define E1000_ICR_EPRST         0x00100000 /* ME handware reset occurs *//* This defines the bits that are set in the Interrupt Mask * Set/Read Register.  Each bit is documented below: *   o RXDMT0 = Receive Descriptor Minimum Threshold hit (ring 0) *   o RXSEQ  = Receive Sequence Error */#define POLL_IMS_ENABLE_MASK ( \    E1000_IMS_RXDMT0 |    \    E1000_IMS_RXSEQ)/* This defines the bits that are set in the Interrupt Mask * Set/Read Register.  Each bit is documented below: *   o RXT0   = Receiver Timer Interrupt (ring 0) *   o TXDW   = Transmit Descriptor Written Back *   o RXDMT0 = Receive Descriptor Minimum Threshold hit (ring 0) *   o RXSEQ  = Receive Sequence Error *   o LSC    = Link Status Change */#define IMS_ENABLE_MASK ( \    E1000_IMS_RXT0   |    \    E1000_IMS_TXDW   |    \    E1000_IMS_RXDMT0 |    \    E1000_IMS_RXSEQ  |    \    E1000_IMS_LSC)/* Interrupt Mask Set */#define E1000_IMS_TXDW      E1000_ICR_TXDW      /* Transmit desc written back */#define E1000_IMS_TXQE      E1000_ICR_TXQE      /* Transmit Queue empty */#define E1000_IMS_LSC       E1000_ICR_LSC       /* Link Status Change */#define E1000_IMS_RXSEQ     E1000_ICR_RXSEQ     /* rx sequence error */#define E1000_IMS_RXDMT0    E1000_ICR_RXDMT0    /* rx desc min. threshold */#define E1000_IMS_RXO       E1000_ICR_RXO       /* rx overrun */#define E1000_IMS_RXT0      E1000_ICR_RXT0      /* rx timer intr */#define E1000_IMS_MDAC      E1000_ICR_MDAC      /* MDIO access complete */#define E1000_IMS_RXCFG     E1000_ICR_RXCFG     /* RX /c/ ordered set */#define E1000_IMS_GPI_EN0   E1000_ICR_GPI_EN0   /* GP Int 0 */#define E1000_IMS_GPI_EN1   E1000_ICR_GPI_EN1   /* GP Int 1 */#define E1000_IMS_GPI_EN2   E1000_ICR_GPI_EN2   /* GP Int 2 */#define E1000_IMS_GPI_EN3   E1000_ICR_GPI_EN3   /* GP Int 3 */#define E1000_IMS_TXD_LOW   E1000_ICR_TXD_LOW#define E1000_IMS_SRPD      E1000_ICR_SRPD#define E1000_IMS_ACK       E1000_ICR_ACK       /* Receive Ack frame */#define E1000_IMS_MNG       E1000_ICR_MNG       /* Manageability event */#define E1000_IMS_DOCK      E1000_ICR_DOCK      /* Dock/Undock */#define E1000_IMS_RXD_FIFO_PAR0 E1000_ICR_RXD_FIFO_PAR0 /* queue 0 Rx descriptor FIFO parity error */#define E1000_IMS_TXD_FIFO_PAR0 E1000_ICR_TXD_FIFO_PAR0 /* queue 0 Tx descriptor FIFO parity error */#define E1000_IMS_HOST_ARB_PAR  E1000_ICR_HOST_ARB_PAR  /* host arb read buffer parity error */#define E1000_IMS_PB_PAR        E1000_ICR_PB_PAR        /* packet buffer parity error */#define E1000_IMS_RXD_FIFO_PAR1 E1000_ICR_RXD_FIFO_PAR1 /* queue 1 Rx descriptor FIFO parity error */#define E1000_IMS_TXD_FIFO_PAR1 E1000_ICR_TXD_FIFO_PAR1 /* queue 1 Tx descriptor FIFO parity error */#define E1000_IMS_DSW       E1000_ICR_DSW#define E1000_IMS_PHYINT    E1000_ICR_PHYINT#define E1000_IMS_EPRST     E1000_ICR_EPRST/* Interrupt Cause Set */#define E1000_ICS_TXDW      E1000_ICR_TXDW      /* Transmit desc written back */#define E1000_ICS_TXQE      E1000_ICR_TXQE      /* Transmit Queue empty */#define E1000_ICS_LSC       E1000_ICR_LSC       /* Link Status Change */#define E1000_ICS_RXSEQ     E1000_ICR_RXSEQ     /* rx sequence error */#define E1000_ICS_RXDMT0    E1000_ICR_RXDMT0    /* rx desc min. threshold */#define E1000_ICS_RXO       E1000_ICR_RXO       /* rx overrun */#define E1000_ICS_RXT0      E1000_ICR_RXT0      /* rx timer intr */#define E1000_ICS_MDAC      E1000_ICR_MDAC      /* MDIO access complete */#define E1000_ICS_RXCFG     E1000_ICR_RXCFG     /* RX /c/ ordered set */#define E1000_ICS_GPI_EN0   E1000_ICR_GPI_EN0   /* GP Int 0 */#define E1000_ICS_GPI_EN1   E1000_ICR_GPI_EN1   /* GP Int 1 */#define E1000_ICS_GPI_EN2   E1000_ICR_GPI_EN2   /* GP Int 2 */#define E1000_ICS_GPI_EN3   E1000_ICR_GPI_EN3   /* GP Int 3 */#define E1000_ICS_TXD_LOW   E1000_ICR_TXD_LOW#define E1000_ICS_SRPD      E1000_ICR_SRPD#define E1000_ICS_ACK       E1000_ICR_ACK       /* Receive Ack frame */#define E1000_ICS_MNG       E1000_ICR_MNG       /* Manageability event */#define E1000_ICS_DOCK      E1000_ICR_DOCK      /* Dock/Undock */#define E1000_ICS_RXD_FIFO_PAR0 E1000_ICR_RXD_FIFO_PAR0 /* queue 0 Rx descriptor FIFO parity error */#define E1000_ICS_TXD_FIFO_PAR0 E1000_ICR_TXD_FIFO_PAR0 /* queue 0 Tx descriptor FIFO parity error */#define E1000_ICS_HOST_ARB_PAR  E1000_ICR_HOST_ARB_PAR  /* host arb read buffer parity error */#define E1000_ICS_PB_PAR        E1000_ICR_PB_PAR        /* packet buffer parity error */#define E1000_ICS_RXD_FIFO_PAR1 E1000_ICR_RXD_FIFO_PAR1 /* queue 1 Rx descriptor FIFO parity error */#define E1000_ICS_TXD_FIFO_PAR1 E1000_ICR_TXD_FIFO_PAR1 /* queue 1 Tx descriptor FIFO parity error */#define E1000_ICS_DSW       E1000_ICR_DSW#define E1000_ICS_PHYINT    E1000_ICR_PHYINT#define E1000_ICS_EPRST     E1000_ICR_EPRST/* Transmit Descriptor Control */#define E1000_TXDCTL_PTHRESH 0x0000003F /* TXDCTL Prefetch Threshold */#define E1000_TXDCTL_HTHRESH 0x00003F00 /* TXDCTL Host Threshold */#define E1000_TXDCTL_WTHRESH 0x003F0000 /* TXDCTL Writeback Threshold */#define E1000_TXDCTL_GRAN    0x01000000 /* TXDCTL Granularity */#define E1000_TXDCTL_LWTHRESH 0xFE000000 /* TXDCTL Low Threshold */#define E1000_TXDCTL_FULL_TX_DESC_WB 0x01010000 /* GRAN=1, WTHRESH=1 */#define E1000_TXDCTL_MAX_TX_DESC_PREFETCH 0x0100001F /* GRAN=1, PTHRESH=31 */#define E1000_TXDCTL_COUNT_DESC 0x00400000 /* Enable the counting of desc.                                              still to be processed. *//* Flow Control Constants */#define FLOW_CONTROL_ADDRESS_LOW  0x00C28001#define FLOW_CONTROL_ADDRESS_HIGH 0x00000100#define FLOW_CONTROL_TYPE         0x8808/* 802.1q VLAN Packet Size */#define VLAN_TAG_SIZE              4    /* 802.3ac tag (not DMA'd) */#define E1000_VLAN_FILTER_TBL_SIZE 128  /* VLAN Filter Table (4096 bits) *//* Receive Address *//* Number of high/low register pairs in the RAR. The RAR (Receive Address * Registers) holds the directed and multicast addresses that we monitor. * Technically, we have 16 spots.  However, we reserve one of these spots * (RAR[15]) for our directed address used by controllers with * manageability enabled, allowing us room for 15 multicast addresses. */#define E1000_RAR_ENTRIES     15#define E1000_RAH_AV  0x80000000        /* Receive descriptor valid *//* Error Codes */#define E1000_SUCCESS      0#define E1000_ERR_NVM      1#define E1000_ERR_PHY      2#define E1000_ERR_CONFIG   3#define E1000_ERR_PARAM    4#define E1000_ERR_MAC_INIT 5#define E1000_ERR_PHY_TYPE 6#define E1000_ERR_RESET   9#define E1000_ERR_MASTER_REQUESTS_PENDING 10

⌨️ 快捷键说明

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