Changeset View
Changeset View
Standalone View
Standalone View
head/sys/dev/e1000/e1000_ich8lan.h
Show First 20 Lines • Show All 101 Lines • ▼ Show 20 Lines | |||||
#define E1000_FEXTNVM3_PHY_CFG_COUNTER_50MSEC 0x08000000 | #define E1000_FEXTNVM3_PHY_CFG_COUNTER_50MSEC 0x08000000 | ||||
#define E1000_FEXTNVM4_BEACON_DURATION_MASK 0x7 | #define E1000_FEXTNVM4_BEACON_DURATION_MASK 0x7 | ||||
#define E1000_FEXTNVM4_BEACON_DURATION_8USEC 0x7 | #define E1000_FEXTNVM4_BEACON_DURATION_8USEC 0x7 | ||||
#define E1000_FEXTNVM4_BEACON_DURATION_16USEC 0x3 | #define E1000_FEXTNVM4_BEACON_DURATION_16USEC 0x3 | ||||
#define E1000_FEXTNVM6_REQ_PLL_CLK 0x00000100 | #define E1000_FEXTNVM6_REQ_PLL_CLK 0x00000100 | ||||
#define E1000_FEXTNVM6_ENABLE_K1_ENTRY_CONDITION 0x00000200 | #define E1000_FEXTNVM6_ENABLE_K1_ENTRY_CONDITION 0x00000200 | ||||
#define E1000_FEXTNVM6_K1_OFF_ENABLE 0x80000000 | |||||
/* bit for disabling packet buffer read */ | |||||
#define E1000_FEXTNVM7_DISABLE_PB_READ 0x00040000 | |||||
#define E1000_FEXTNVM7_SIDE_CLK_UNGATE 0x00000004 | |||||
#define E1000_FEXTNVM7_DISABLE_SMB_PERST 0x00000020 | #define E1000_FEXTNVM7_DISABLE_SMB_PERST 0x00000020 | ||||
#define E1000_FEXTNVM9_IOSFSB_CLKGATE_DIS 0x00000800 | |||||
#define E1000_FEXTNVM9_IOSFSB_CLKREQ_DIS 0x00001000 | |||||
#define E1000_FEXTNVM11_DISABLE_PB_READ 0x00000200 | |||||
#define E1000_FEXTNVM11_DISABLE_MULR_FIX 0x00002000 | |||||
/* bit24: RXDCTL thresholds granularity: 0 - cache lines, 1 - descriptors */ | |||||
#define E1000_RXDCTL_THRESH_UNIT_DESC 0x01000000 | |||||
#define NVM_SIZE_MULTIPLIER 4096 /*multiplier for NVMS field*/ | |||||
#define E1000_FLASH_BASE_ADDR 0xE000 /*offset of NVM access regs*/ | |||||
#define E1000_CTRL_EXT_NVMVS 0x3 /*NVM valid sector */ | |||||
#define E1000_SPT_B_STEP_REV 0x10 /*SPT B step Rev ID*/ | |||||
#define E1000_TARC0_CB_MULTIQ_2_REQ (1 << 29) | |||||
#define E1000_TARC0_CB_MULTIQ_3_REQ (1 << 28 | 1 << 29) | |||||
#define PCIE_ICH8_SNOOP_ALL PCIE_NO_SNOOP_ALL | #define PCIE_ICH8_SNOOP_ALL PCIE_NO_SNOOP_ALL | ||||
#define E1000_ICH_RAR_ENTRIES 7 | #define E1000_ICH_RAR_ENTRIES 7 | ||||
#define E1000_PCH2_RAR_ENTRIES 5 /* RAR[0], SHRA[0-3] */ | #define E1000_PCH2_RAR_ENTRIES 5 /* RAR[0], SHRA[0-3] */ | ||||
#define E1000_PCH_LPT_RAR_ENTRIES 12 /* RAR[0], SHRA[0-10] */ | #define E1000_PCH_LPT_RAR_ENTRIES 12 /* RAR[0], SHRA[0-10] */ | ||||
#define PHY_PAGE_SHIFT 5 | #define PHY_PAGE_SHIFT 5 | ||||
#define PHY_REG(page, reg) (((page) << PHY_PAGE_SHIFT) | \ | #define PHY_REG(page, reg) (((page) << PHY_PAGE_SHIFT) | \ | ||||
▲ Show 20 Lines • Show All 45 Lines • ▼ Show 20 Lines | |||||
#define HV_DC_LOWER PHY_REG(HV_STATS_PAGE, 28) | #define HV_DC_LOWER PHY_REG(HV_STATS_PAGE, 28) | ||||
#define HV_TNCRS_UPPER PHY_REG(HV_STATS_PAGE, 29) /* Tx with no CRS */ | #define HV_TNCRS_UPPER PHY_REG(HV_STATS_PAGE, 29) /* Tx with no CRS */ | ||||
#define HV_TNCRS_LOWER PHY_REG(HV_STATS_PAGE, 30) | #define HV_TNCRS_LOWER PHY_REG(HV_STATS_PAGE, 30) | ||||
#define E1000_FCRTV_PCH 0x05F40 /* PCH Flow Control Refresh Timer Value */ | #define E1000_FCRTV_PCH 0x05F40 /* PCH Flow Control Refresh Timer Value */ | ||||
#define E1000_NVM_K1_CONFIG 0x1B /* NVM K1 Config Word */ | #define E1000_NVM_K1_CONFIG 0x1B /* NVM K1 Config Word */ | ||||
#define E1000_NVM_K1_ENABLE 0x1 /* NVM Enable K1 bit */ | #define E1000_NVM_K1_ENABLE 0x1 /* NVM Enable K1 bit */ | ||||
#define K1_ENTRY_LATENCY 0 | |||||
#define K1_MIN_TIME 1 | |||||
/* SMBus Control Phy Register */ | /* SMBus Control Phy Register */ | ||||
#define CV_SMB_CTRL PHY_REG(769, 23) | #define CV_SMB_CTRL PHY_REG(769, 23) | ||||
#define CV_SMB_CTRL_FORCE_SMBUS 0x0001 | #define CV_SMB_CTRL_FORCE_SMBUS 0x0001 | ||||
/* I218 Ultra Low Power Configuration 1 Register */ | /* I218 Ultra Low Power Configuration 1 Register */ | ||||
#define I218_ULP_CONFIG1 PHY_REG(779, 16) | #define I218_ULP_CONFIG1 PHY_REG(779, 16) | ||||
#define I218_ULP_CONFIG1_START 0x0001 /* Start auto ULP config */ | #define I218_ULP_CONFIG1_START 0x0001 /* Start auto ULP config */ | ||||
▲ Show 20 Lines • Show All 94 Lines • ▼ Show 20 Lines | |||||
#define I217_CGFREG PHY_REG(772, 29) | #define I217_CGFREG PHY_REG(772, 29) | ||||
#define I217_CGFREG_ENABLE_MTA_RESET 0x0002 | #define I217_CGFREG_ENABLE_MTA_RESET 0x0002 | ||||
#define I217_MEMPWR PHY_REG(772, 26) | #define I217_MEMPWR PHY_REG(772, 26) | ||||
#define I217_MEMPWR_DISABLE_SMB_RELEASE 0x0010 | #define I217_MEMPWR_DISABLE_SMB_RELEASE 0x0010 | ||||
/* Receive Address Initial CRC Calculation */ | /* Receive Address Initial CRC Calculation */ | ||||
#define E1000_PCH_RAICC(_n) (0x05F50 + ((_n) * 4)) | #define E1000_PCH_RAICC(_n) (0x05F50 + ((_n) * 4)) | ||||
/* Latency Tolerance Reporting */ | |||||
#define E1000_LTRV 0x000F8 | |||||
#define E1000_LTRV_VALUE_MASK 0x000003FF | |||||
#define E1000_LTRV_SCALE_MAX 5 | |||||
#define E1000_LTRV_SCALE_FACTOR 5 | |||||
#define E1000_LTRV_SCALE_SHIFT 10 | |||||
#define E1000_LTRV_SCALE_MASK 0x00001C00 | |||||
#define E1000_LTRV_REQ_SHIFT 15 | |||||
#define E1000_LTRV_NOSNOOP_SHIFT 16 | |||||
#define E1000_LTRV_SEND (1 << 30) | |||||
/* Proprietary Latency Tolerance Reporting PCI Capability */ | |||||
#define E1000_PCI_LTR_CAP_LPT 0xA8 | |||||
/* OBFF Control & Threshold Defines */ | |||||
#define E1000_SVCR_OFF_EN 0x00000001 | |||||
#define E1000_SVCR_OFF_MASKINT 0x00001000 | |||||
#define E1000_SVCR_OFF_TIMER_MASK 0xFFFF0000 | |||||
#define E1000_SVCR_OFF_TIMER_SHIFT 16 | |||||
#define E1000_SVT_OFF_HWM_MASK 0x0000001F | |||||
#if defined(QV_RELEASE) || !defined(NO_PCH_LPT_B0_SUPPORT) | |||||
#define E1000_PCI_REVISION_ID_REG 0x08 | #define E1000_PCI_REVISION_ID_REG 0x08 | ||||
#endif /* defined(QV_RELEASE) || !defined(NO_PCH_LPT_B0_SUPPORT) */ | |||||
void e1000_set_kmrn_lock_loss_workaround_ich8lan(struct e1000_hw *hw, | void e1000_set_kmrn_lock_loss_workaround_ich8lan(struct e1000_hw *hw, | ||||
bool state); | bool state); | ||||
void e1000_igp3_phy_powerdown_workaround_ich8lan(struct e1000_hw *hw); | void e1000_igp3_phy_powerdown_workaround_ich8lan(struct e1000_hw *hw); | ||||
void e1000_gig_downshift_workaround_ich8lan(struct e1000_hw *hw); | void e1000_gig_downshift_workaround_ich8lan(struct e1000_hw *hw); | ||||
void e1000_suspend_workarounds_ich8lan(struct e1000_hw *hw); | void e1000_suspend_workarounds_ich8lan(struct e1000_hw *hw); | ||||
void e1000_resume_workarounds_pchlan(struct e1000_hw *hw); | u32 e1000_resume_workarounds_pchlan(struct e1000_hw *hw); | ||||
s32 e1000_configure_k1_ich8lan(struct e1000_hw *hw, bool k1_enable); | s32 e1000_configure_k1_ich8lan(struct e1000_hw *hw, bool k1_enable); | ||||
void e1000_copy_rx_addrs_to_phy_ich8lan(struct e1000_hw *hw); | void e1000_copy_rx_addrs_to_phy_ich8lan(struct e1000_hw *hw); | ||||
s32 e1000_lv_jumbo_workaround_ich8lan(struct e1000_hw *hw, bool enable); | s32 e1000_lv_jumbo_workaround_ich8lan(struct e1000_hw *hw, bool enable); | ||||
s32 e1000_read_emi_reg_locked(struct e1000_hw *hw, u16 addr, u16 *data); | s32 e1000_read_emi_reg_locked(struct e1000_hw *hw, u16 addr, u16 *data); | ||||
s32 e1000_write_emi_reg_locked(struct e1000_hw *hw, u16 addr, u16 data); | s32 e1000_write_emi_reg_locked(struct e1000_hw *hw, u16 addr, u16 data); | ||||
s32 e1000_set_eee_pchlan(struct e1000_hw *hw); | s32 e1000_set_eee_pchlan(struct e1000_hw *hw); | ||||
s32 e1000_enable_ulp_lpt_lp(struct e1000_hw *hw, bool to_sx); | s32 e1000_enable_ulp_lpt_lp(struct e1000_hw *hw, bool to_sx); | ||||
s32 e1000_disable_ulp_lpt_lp(struct e1000_hw *hw, bool force); | s32 e1000_disable_ulp_lpt_lp(struct e1000_hw *hw, bool force); | ||||
#endif /* _E1000_ICH8LAN_H_ */ | #endif /* _E1000_ICH8LAN_H_ */ |