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

📄 e1000_defines.h

📁 DELL755 Intel 网卡驱动
💻 H
📖 第 1 页 / 共 5 页
字号:
#define NWAY_LPAR_PAUSE          0x0400 /* LP Pause operation desired */#define NWAY_LPAR_ASM_DIR        0x0800 /* LP Asymmetric Pause Direction bit */#define NWAY_LPAR_REMOTE_FAULT   0x2000 /* LP has detected Remote Fault */#define NWAY_LPAR_ACKNOWLEDGE    0x4000 /* LP has rx'd link code word */#define NWAY_LPAR_NEXT_PAGE      0x8000 /* Next Page ability supported *//* Autoneg Expansion Register */#define NWAY_ER_LP_NWAY_CAPS      0x0001 /* LP has Auto Neg Capability */#define NWAY_ER_PAGE_RXD          0x0002 /* LP is 10T   Half Duplex Capable */#define NWAY_ER_NEXT_PAGE_CAPS    0x0004 /* LP is 10T   Full Duplex Capable */#define NWAY_ER_LP_NEXT_PAGE_CAPS 0x0008 /* LP is 100TX Half Duplex Capable */#define NWAY_ER_PAR_DETECT_FAULT  0x0010 /* LP is 100TX Full Duplex Capable *//* 1000BASE-T Control Register */#define CR_1000T_ASYM_PAUSE      0x0080 /* Advertise asymmetric pause bit */#define CR_1000T_HD_CAPS         0x0100 /* Advertise 1000T HD capability */#define CR_1000T_FD_CAPS         0x0200 /* Advertise 1000T FD capability  */#define CR_1000T_REPEATER_DTE    0x0400 /* 1=Repeater/switch device port */                                        /* 0=DTE device */#define CR_1000T_MS_VALUE        0x0800 /* 1=Configure PHY as Master */                                        /* 0=Configure PHY as Slave */#define CR_1000T_MS_ENABLE       0x1000 /* 1=Master/Slave manual config value */                                        /* 0=Automatic Master/Slave config */#define CR_1000T_TEST_MODE_NORMAL 0x0000 /* Normal Operation */#define CR_1000T_TEST_MODE_1     0x2000 /* Transmit Waveform test */#define CR_1000T_TEST_MODE_2     0x4000 /* Master Transmit Jitter test */#define CR_1000T_TEST_MODE_3     0x6000 /* Slave Transmit Jitter test */#define CR_1000T_TEST_MODE_4     0x8000 /* Transmitter Distortion test *//* 1000BASE-T Status Register */#define SR_1000T_IDLE_ERROR_CNT   0x00FF /* Num idle errors since last read */#define SR_1000T_ASYM_PAUSE_DIR   0x0100 /* LP asymmetric pause direction bit */#define SR_1000T_LP_HD_CAPS       0x0400 /* LP is 1000T HD capable */#define SR_1000T_LP_FD_CAPS       0x0800 /* LP is 1000T FD capable */#define SR_1000T_REMOTE_RX_STATUS 0x1000 /* Remote receiver OK */#define SR_1000T_LOCAL_RX_STATUS  0x2000 /* Local receiver OK */#define SR_1000T_MS_CONFIG_RES    0x4000 /* 1=Local Tx is Master, 0=Slave */#define SR_1000T_MS_CONFIG_FAULT  0x8000 /* Master/Slave config fault */#define SR_1000T_PHY_EXCESSIVE_IDLE_ERR_COUNT 5/* PHY 1000 MII Register/Bit Definitions *//* PHY Registers defined by IEEE */#define PHY_CONTROL      0x00 /* Control Register */#define PHY_STATUS       0x01 /* Status Register */#define PHY_ID1          0x02 /* Phy Id Reg (word 1) */#define PHY_ID2          0x03 /* Phy Id Reg (word 2) */#define PHY_AUTONEG_ADV  0x04 /* Autoneg Advertisement */#define PHY_LP_ABILITY   0x05 /* Link Partner Ability (Base Page) */#define PHY_AUTONEG_EXP  0x06 /* Autoneg Expansion Reg */#define PHY_NEXT_PAGE_TX 0x07 /* Next Page Tx */#define PHY_LP_NEXT_PAGE 0x08 /* Link Partner Next Page */#define PHY_1000T_CTRL   0x09 /* 1000Base-T Control Reg */#define PHY_1000T_STATUS 0x0A /* 1000Base-T Status Reg */#define PHY_EXT_STATUS   0x0F /* Extended Status Reg *//* NVM Control */#define E1000_EECD_SK        0x00000001 /* NVM Clock */#define E1000_EECD_CS        0x00000002 /* NVM Chip Select */#define E1000_EECD_DI        0x00000004 /* NVM Data In */#define E1000_EECD_DO        0x00000008 /* NVM Data Out */#define E1000_EECD_FWE_MASK  0x00000030#define E1000_EECD_FWE_DIS   0x00000010 /* Disable FLASH writes */#define E1000_EECD_FWE_EN    0x00000020 /* Enable FLASH writes */#define E1000_EECD_FWE_SHIFT 4#define E1000_EECD_REQ       0x00000040 /* NVM Access Request */#define E1000_EECD_GNT       0x00000080 /* NVM Access Grant */#define E1000_EECD_PRES      0x00000100 /* NVM Present */#define E1000_EECD_SIZE      0x00000200 /* NVM Size (0=64 word 1=256 word) *//* NVM Addressing bits based on type 0=small, 1=large */#define E1000_EECD_ADDR_BITS 0x00000400#define E1000_EECD_TYPE      0x00002000 /* NVM Type (1-SPI, 0-Microwire) */#define E1000_NVM_GRANT_ATTEMPTS   1000 /* NVM # attempts to gain grant */#define E1000_EECD_AUTO_RD          0x00000200  /* NVM Auto Read done */#define E1000_EECD_SIZE_EX_MASK     0x00007800  /* NVM Size */#define E1000_EECD_SIZE_EX_SHIFT     11#define E1000_EECD_NVADDS    0x00018000 /* NVM Address Size */#define E1000_EECD_SELSHAD   0x00020000 /* Select Shadow RAM */#define E1000_EECD_INITSRAM  0x00040000 /* Initialize Shadow RAM */#define E1000_EECD_FLUPD     0x00080000 /* Update FLASH */#define E1000_EECD_AUPDEN    0x00100000 /* Enable Autonomous FLASH update */#define E1000_EECD_SHADV     0x00200000 /* Shadow RAM Data Valid */#define E1000_EECD_SEC1VAL   0x00400000 /* Sector One Valid */#define E1000_EECD_SECVAL_SHIFT      22#define E1000_NVM_SWDPIN0   0x0001   /* SWDPIN 0 NVM Value */#define E1000_NVM_LED_LOGIC 0x0020   /* Led Logic Word */#define E1000_NVM_RW_REG_DATA   16   /* Offset to data in NVM read/write registers */#define E1000_NVM_RW_REG_DONE   2    /* Offset to READ/WRITE done bit */#define E1000_NVM_RW_REG_START  1    /* Start operation */#define E1000_NVM_RW_ADDR_SHIFT 2    /* Shift to the address bits */#define E1000_NVM_POLL_WRITE    1    /* Flag for polling for write complete */#define E1000_NVM_POLL_READ     0    /* Flag for polling for read complete */#define E1000_FLASH_UPDATES  2000/* NVM Word Offsets */#define NVM_COMPAT                 0x0003#define NVM_ID_LED_SETTINGS        0x0004#define NVM_VERSION                0x0005#define NVM_SERDES_AMPLITUDE       0x0006 /* For SERDES output amplitude adjustment. */#define NVM_PHY_CLASS_WORD         0x0007#define NVM_INIT_CONTROL1_REG      0x000A#define NVM_INIT_CONTROL2_REG      0x000F#define NVM_SWDEF_PINS_CTRL_PORT_1 0x0010#define NVM_INIT_CONTROL3_PORT_B   0x0014#define NVM_INIT_3GIO_3            0x001A#define NVM_SWDEF_PINS_CTRL_PORT_0 0x0020#define NVM_INIT_CONTROL3_PORT_A   0x0024#define NVM_CFG                    0x0012#define NVM_FLASH_VERSION          0x0032#define NVM_ALT_MAC_ADDR_PTR       0x0037#define NVM_CHECKSUM_REG           0x003F#define E1000_NVM_CFG_DONE_PORT_0  0x40000 /* MNG config cycle done */#define E1000_NVM_CFG_DONE_PORT_1  0x80000 /* ...for second port *//* Mask bits for fields in Word 0x0f of the NVM */#define NVM_WORD0F_PAUSE_MASK       0x3000#define NVM_WORD0F_PAUSE            0x1000#define NVM_WORD0F_ASM_DIR          0x2000#define NVM_WORD0F_ANE              0x0800#define NVM_WORD0F_SWPDIO_EXT_MASK  0x00F0#define NVM_WORD0F_LPLU             0x0001/* Mask bits for fields in Word 0x1a of the NVM */#define NVM_WORD1A_ASPM_MASK  0x000C/* For checksumming, the sum of all words in the NVM should equal 0xBABA. */#define NVM_SUM                    0xBABA#define NVM_MAC_ADDR_OFFSET        0#define NVM_PBA_OFFSET_0           8#define NVM_PBA_OFFSET_1           9#define NVM_RESERVED_WORD          0xFFFF#define NVM_PHY_CLASS_A            0x8000#define NVM_SERDES_AMPLITUDE_MASK  0x000F#define NVM_SIZE_MASK              0x1C00#define NVM_SIZE_SHIFT             10#define NVM_WORD_SIZE_BASE_SHIFT   6#define NVM_SWDPIO_EXT_SHIFT       4/* NVM Commands - Microwire */#define NVM_READ_OPCODE_MICROWIRE  0x6  /* NVM read opcode */#define NVM_WRITE_OPCODE_MICROWIRE 0x5  /* NVM write opcode */#define NVM_ERASE_OPCODE_MICROWIRE 0x7  /* NVM erase opcode */#define NVM_EWEN_OPCODE_MICROWIRE  0x13 /* NVM erase/write enable */#define NVM_EWDS_OPCODE_MICROWIRE  0x10 /* NVM erase/write disable *//* NVM Commands - SPI */#define NVM_MAX_RETRY_SPI          5000 /* Max wait of 5ms, for RDY signal */#define NVM_READ_OPCODE_SPI        0x03 /* NVM read opcode */#define NVM_WRITE_OPCODE_SPI       0x02 /* NVM write opcode */#define NVM_A8_OPCODE_SPI          0x08 /* opcode bit-3 = address bit-8 */#define NVM_WREN_OPCODE_SPI        0x06 /* NVM set Write Enable latch */#define NVM_WRDI_OPCODE_SPI        0x04 /* NVM reset Write Enable latch */#define NVM_RDSR_OPCODE_SPI        0x05 /* NVM read Status register */#define NVM_WRSR_OPCODE_SPI        0x01 /* NVM write Status register *//* SPI NVM Status Register */#define NVM_STATUS_RDY_SPI         0x01#define NVM_STATUS_WEN_SPI         0x02#define NVM_STATUS_BP0_SPI         0x04#define NVM_STATUS_BP1_SPI         0x08#define NVM_STATUS_WPEN_SPI        0x80/* Word definitions for ID LED Settings */#define ID_LED_RESERVED_0000 0x0000#define ID_LED_RESERVED_FFFF 0xFFFF#define ID_LED_DEFAULT       ((ID_LED_OFF1_ON2  << 12) | \                              (ID_LED_OFF1_OFF2 <<  8) | \                              (ID_LED_DEF1_DEF2 <<  4) | \                              (ID_LED_DEF1_DEF2))#define ID_LED_DEF1_DEF2     0x1#define ID_LED_DEF1_ON2      0x2#define ID_LED_DEF1_OFF2     0x3#define ID_LED_ON1_DEF2      0x4#define ID_LED_ON1_ON2       0x5#define ID_LED_ON1_OFF2      0x6#define ID_LED_OFF1_DEF2     0x7#define ID_LED_OFF1_ON2      0x8#define ID_LED_OFF1_OFF2     0x9#define IGP_ACTIVITY_LED_MASK   0xFFFFF0FF#define IGP_ACTIVITY_LED_ENABLE 0x0300#define IGP_LED3_MODE           0x07000000/* PCI/PCI-X/PCI-EX Config space */#define PCIX_COMMAND_REGISTER        0xE6#define PCIX_STATUS_REGISTER_LO      0xE8#define PCIX_STATUS_REGISTER_HI      0xEA#define PCI_HEADER_TYPE_REGISTER     0x0E#define PCIE_LINK_STATUS             0x12#define PCIX_COMMAND_MMRBC_MASK      0x000C#define PCIX_COMMAND_MMRBC_SHIFT     0x2#define PCIX_STATUS_HI_MMRBC_MASK    0x0060#define PCIX_STATUS_HI_MMRBC_SHIFT   0x5#define PCIX_STATUS_HI_MMRBC_4K      0x3#define PCIX_STATUS_HI_MMRBC_2K      0x2#define PCIX_STATUS_LO_FUNC_MASK     0x7#define PCI_HEADER_TYPE_MULTIFUNC    0x80#define PCIE_LINK_WIDTH_MASK         0x3F0#define PCIE_LINK_WIDTH_SHIFT        4#ifndef ETH_ADDR_LEN#define ETH_ADDR_LEN                 6#endif#define PHY_REVISION_MASK      0xFFFFFFF0#define MAX_PHY_REG_ADDRESS    0x1F  /* 5 bit address bus (0-0x1F) */#define MAX_PHY_MULTI_PAGE_REG 0xF/* Bit definitions for valid PHY IDs. *//* * I = Integrated * E = External */#define M88E1000_E_PHY_ID    0x01410C50#define M88E1000_I_PHY_ID    0x01410C30#define M88E1011_I_PHY_ID    0x01410C20#define IGP01E1000_I_PHY_ID  0x02A80380#define M88E1011_I_REV_4     0x04#define M88E1111_I_PHY_ID    0x01410CC0#define GG82563_E_PHY_ID     0x01410CA0#define IGP03E1000_E_PHY_ID  0x02A80390#define IFE_E_PHY_ID         0x02A80330#define IFE_PLUS_E_PHY_ID    0x02A80320#define IFE_C_E_PHY_ID       0x02A80310#define BME1000_E_PHY_ID     0x01410CB0#define BME1000_E_PHY_ID_R2  0x01410CB1#define M88_VENDOR           0x0141/* M88E1000 Specific Registers */#define M88E1000_PHY_SPEC_CTRL     0x10  /* PHY Specific Control Register */#define M88E1000_PHY_SPEC_STATUS   0x11  /* PHY Specific Status Register */#define M88E1000_INT_ENABLE        0x12  /* Interrupt Enable Register */#define M88E1000_INT_STATUS        0x13  /* Interrupt Status Register */#define M88E1000_EXT_PHY_SPEC_CTRL 0x14  /* Extended PHY Specific Control */#define M88E1000_RX_ERR_CNTR       0x15  /* Receive Error Counter */#define M88E1000_PHY_EXT_CTRL      0x1A  /* PHY extend control register */#define M88E1000_PHY_PAGE_SELECT   0x1D  /* Reg 29 for page number setting */#define M88E1000_PHY_GEN_CONTROL   0x1E  /* Its meaning depends on reg 29 */#define M88E1000_PHY_VCO_REG_BIT8  0x100 /* Bits 8 & 11 are adjusted for */#define M88E1000_PHY_VCO_REG_BIT11 0x800    /* improved BER performance *//* M88E1000 PHY Specific Control Register */#define M88E1000_PSCR_J

⌨️ 快捷键说明

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