• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/net/e1000e/

Lines Matching refs:hw

120 	struct e1000_hw *hw = &adapter->hw;
122 if (hw->phy.media_type == e1000_media_type_copper) {
131 if (hw->phy.type == e1000_phy_ife)
135 if (hw->mac.autoneg == 1) {
138 ecmd->advertising |= hw->phy.autoneg_advertised;
142 ecmd->phy_address = hw->phy.addr;
183 ecmd->autoneg = ((hw->phy.media_type == e1000_media_type_fiber) ||
184 hw->mac.autoneg) ? AUTONEG_ENABLE : AUTONEG_DISABLE;
187 if ((hw->phy.media_type == e1000_media_type_copper) &&
189 ecmd->eth_tp_mdix = hw->phy.is_mdix ? ETH_TP_MDI_X :
200 struct e1000_hw *hw = &adapter->hw;
213 struct e1000_mac_info *mac = &adapter->hw.mac;
218 if ((adapter->hw.phy.media_type == e1000_media_type_fiber) &&
239 adapter->hw.phy.autoneg_advertised = ADVERTISE_1000_FULL;
253 struct e1000_hw *hw = &adapter->hw;
259 if (e1000_check_reset_block(hw)) {
269 hw->mac.autoneg = 1;
270 if (hw->phy.media_type == e1000_media_type_fiber)
271 hw->phy.autoneg_advertised = ADVERTISED_1000baseT_Full |
275 hw->phy.autoneg_advertised = ecmd->advertising |
278 ecmd->advertising = hw->phy.autoneg_advertised;
280 hw->fc.requested_mode = e1000_fc_default;
305 struct e1000_hw *hw = &adapter->hw;
310 if (hw->fc.current_mode == e1000_fc_rx_pause) {
312 } else if (hw->fc.current_mode == e1000_fc_tx_pause) {
314 } else if (hw->fc.current_mode == e1000_fc_full) {
324 struct e1000_hw *hw = &adapter->hw;
333 hw->fc.requested_mode = e1000_fc_default;
342 hw->fc.requested_mode = e1000_fc_full;
344 hw->fc.requested_mode = e1000_fc_rx_pause;
346 hw->fc.requested_mode = e1000_fc_tx_pause;
348 hw->fc.requested_mode = e1000_fc_none;
350 hw->fc.current_mode = hw->fc.requested_mode;
352 if (hw->phy.media_type == e1000_media_type_fiber) {
353 retval = hw->mac.ops.setup_link(hw);
356 retval = e1000e_force_mac_fc(hw);
359 e1000e_set_fc_watermarks(hw);
443 struct e1000_hw *hw = &adapter->hw;
469 regs_buff[12] = adapter->hw.phy.type; /* PHY type (IGP=1, M88=0) */
474 if (hw->phy.type == e1000_phy_m88) {
475 e1e_rphy(hw, M88E1000_PHY_SPEC_STATUS, &phy_data);
480 e1e_rphy(hw, M88E1000_PHY_SPEC_CTRL, &phy_data);
490 e1e_rphy(hw, PHY_1000T_STATUS, &phy_data);
498 return adapter->hw.nvm.word_size * 2;
505 struct e1000_hw *hw = &adapter->hw;
525 if (hw->nvm.type == e1000_nvm_eeprom_spi) {
526 ret_val = e1000_read_nvm(hw, first_word,
531 ret_val = e1000_read_nvm(hw, first_word + i, 1,
558 struct e1000_hw *hw = &adapter->hw;
576 max_len = hw->nvm.word_size * 2;
589 ret_val = e1000_read_nvm(hw, first_word, 1, &eeprom_buff[0]);
595 ret_val = e1000_read_nvm(hw, last_word, 1,
610 ret_val = e1000_write_nvm(hw, first_word,
621 (hw->mac.type == e1000_82583) ||
622 (hw->mac.type == e1000_82574) ||
623 (hw->mac.type == e1000_82573))
624 ret_val = e1000e_update_nvm_checksum(hw);
769 E1000_WRITE_REG_ARRAY(&adapter->hw, reg, offset,
771 val = E1000_READ_REG_ARRAY(&adapter->hw, reg, offset);
787 __ew32(&adapter->hw, reg, write & mask);
788 val = __er32(&adapter->hw, reg);
813 struct e1000_hw *hw = &adapter->hw;
814 struct e1000_mac_info *mac = &adapter->hw.mac;
911 if ((e1000_read_nvm(&adapter->hw, i, 1, &temp)) < 0) {
929 struct e1000_hw *hw = &adapter->hw;
939 struct e1000_hw *hw = &adapter->hw;
982 if (adapter->hw.mac.type == e1000_ich8lan ||
983 adapter->hw.mac.type == e1000_ich9lan)
1116 struct e1000_hw *hw = &adapter->hw;
1217 (adapter->hw.mac.mc_filter_type << E1000_RCTL_MO_SHIFT);
1254 e1e_wphy(&adapter->hw, 29, 0x001F);
1255 e1e_wphy(&adapter->hw, 30, 0x8FFC);
1256 e1e_wphy(&adapter->hw, 29, 0x001A);
1257 e1e_wphy(&adapter->hw, 30, 0x8FF0);
1262 struct e1000_hw *hw = &adapter->hw;
1267 hw->mac.autoneg = 0;
1269 if (hw->phy.type == e1000_phy_ife) {
1271 e1e_wphy(hw, PHY_CONTROL, 0x6100);
1288 switch (hw->phy.type) {
1291 e1e_wphy(hw, M88E1000_PHY_SPEC_CTRL, 0x0808);
1293 e1e_wphy(hw, PHY_CONTROL, 0x9140);
1295 e1e_wphy(hw, PHY_CONTROL, 0x8140);
1298 e1e_wphy(hw, GG82563_PHY_KMRN_MODE_CTRL, 0x1CC);
1302 e1e_rphy(hw, PHY_REG(2, 21), &phy_reg);
1305 e1e_wphy(hw, PHY_REG(2, 21), phy_reg);
1307 e1000e_commit_phy(hw);
1310 e1e_rphy(hw, PHY_REG(769, 16), &phy_reg);
1311 e1e_wphy(hw, PHY_REG(769, 16), phy_reg | 0x000C);
1313 e1e_rphy(hw, PHY_REG(776, 16), &phy_reg);
1314 e1e_wphy(hw, PHY_REG(776, 16), phy_reg | 0x0040);
1316 e1e_rphy(hw, PHY_REG(769, 16), &phy_reg);
1317 e1e_wphy(hw, PHY_REG(769, 16), phy_reg | 0x0040);
1319 e1e_rphy(hw, PHY_REG(769, 20), &phy_reg);
1320 e1e_wphy(hw, PHY_REG(769, 20), phy_reg | 0x0400);
1324 e1000_configure_k1_ich8lan(hw, false);
1328 e1e_rphy(hw, PHY_REG(0, 21), &phy_reg);
1329 e1e_wphy(hw, PHY_REG(0, 21), phy_reg & ~(1 << 3));
1331 e1e_rphy(hw, PHY_REG(776, 18), &phy_reg);
1332 e1e_wphy(hw, PHY_REG(776, 18), phy_reg | 1);
1335 e1e_wphy(hw, I82577_PHY_LBK_CTRL, 0x8001);
1342 e1e_wphy(hw, PHY_CONTROL, 0x4140);
1356 if (hw->phy.media_type == e1000_media_type_copper &&
1357 hw->phy.type == e1000_phy_m88) {
1375 if (hw->phy.type == e1000_phy_m88)
1385 struct e1000_hw *hw = &adapter->hw;
1426 struct e1000_hw *hw = &adapter->hw;
1462 struct e1000_hw *hw = &adapter->hw;
1465 if (hw->phy.media_type == e1000_media_type_fiber ||
1466 hw->phy.media_type == e1000_media_type_internal_serdes) {
1467 switch (hw->mac.type) {
1481 } else if (hw->phy.media_type == e1000_media_type_copper) {
1490 struct e1000_hw *hw = &adapter->hw;
1498 switch (hw->mac.type) {
1500 if (hw->phy.media_type == e1000_media_type_fiber ||
1501 hw->phy.media_type == e1000_media_type_internal_serdes) {
1509 if (hw->phy.media_type == e1000_media_type_fiber ||
1510 hw->phy.media_type == e1000_media_type_internal_serdes) {
1518 hw->mac.autoneg = 1;
1519 if (hw->phy.type == e1000_phy_gg82563)
1520 e1e_wphy(hw, GG82563_PHY_KMRN_MODE_CTRL, 0x180);
1521 e1e_rphy(hw, PHY_CONTROL, &phy_reg);
1524 e1e_wphy(hw, PHY_CONTROL, phy_reg);
1525 e1000e_commit_phy(hw);
1557 struct e1000_hw *hw = &adapter->hw;
1631 if (e1000_check_reset_block(&adapter->hw)) {
1656 struct e1000_hw *hw = &adapter->hw;
1659 if (hw->phy.media_type == e1000_media_type_internal_serdes) {
1661 hw->mac.serdes_has_link = false;
1668 hw->mac.ops.check_for_link(hw);
1669 if (hw->mac.serdes_has_link)
1676 hw->mac.ops.check_for_link(hw);
1677 if (hw->mac.autoneg)
1713 autoneg_advertised = adapter->hw.phy.autoneg_advertised;
1714 forced_speed_duplex = adapter->hw.mac.forced_speed_duplex;
1715 autoneg = adapter->hw.mac.autoneg;
1750 adapter->hw.phy.autoneg_advertised = autoneg_advertised;
1751 adapter->hw.mac.forced_speed_duplex = forced_speed_duplex;
1752 adapter->hw.mac.autoneg = autoneg;
1755 adapter->hw.phy.autoneg_wait_to_complete = 1;
1757 adapter->hw.phy.autoneg_wait_to_complete = 0;
1871 adapter->hw.mac.ops.led_off(&adapter->hw);
1873 adapter->hw.mac.ops.led_on(&adapter->hw);
1887 struct e1000_hw *hw = &adapter->hw;
1892 if ((hw->phy.type == e1000_phy_ife) ||
1893 (hw->mac.type == e1000_pchlan) ||
1894 (hw->mac.type == e1000_pch2lan) ||
1895 (hw->mac.type == e1000_82583) ||
1896 (hw->mac.type == e1000_82574)) {
1907 if (hw->phy.type == e1000_phy_ife)
1908 e1e_wphy(hw, IFE_PHY_SPECIAL_CONTROL_LED, 0);
1910 e1000e_blink_led(hw);
1914 hw->mac.ops.led_off(hw);
1916 hw->mac.ops.cleanup_led(hw);
1938 struct e1000_hw *hw = &adapter->hw;