Lines Matching refs:phy
76 struct e1000_phy_info *phy = &hw->phy; in igb_get_phy_id() local
80 ret_val = phy->ops.read_reg(hw, PHY_ID1, &phy_id); in igb_get_phy_id()
84 phy->id = (u32)(phy_id << 16); in igb_get_phy_id()
86 ret_val = phy->ops.read_reg(hw, PHY_ID2, &phy_id); in igb_get_phy_id()
90 phy->id |= (u32)(phy_id & PHY_REVISION_MASK); in igb_get_phy_id()
91 phy->revision = (u32)(phy_id & ~PHY_REVISION_MASK); in igb_get_phy_id()
107 if (!(hw->phy.ops.write_reg)) in igb_phy_reset_dsp()
110 ret_val = hw->phy.ops.write_reg(hw, M88E1000_PHY_GEN_CONTROL, 0xC1); in igb_phy_reset_dsp()
114 ret_val = hw->phy.ops.write_reg(hw, M88E1000_PHY_GEN_CONTROL, 0); in igb_phy_reset_dsp()
131 struct e1000_phy_info *phy = &hw->phy; in igb_read_phy_reg_mdic() local
146 (phy->addr << E1000_MDIC_PHY_SHIFT) | in igb_read_phy_reg_mdic()
187 struct e1000_phy_info *phy = &hw->phy; in igb_write_phy_reg_mdic() local
203 (phy->addr << E1000_MDIC_PHY_SHIFT) | in igb_write_phy_reg_mdic()
244 struct e1000_phy_info *phy = &hw->phy; in igb_read_phy_reg_i2c() local
252 (phy->addr << E1000_I2CCMD_PHY_ADDR_SHIFT) | in igb_read_phy_reg_i2c()
289 struct e1000_phy_info *phy = &hw->phy; in igb_write_phy_reg_i2c() local
294 if ((hw->phy.addr == 0) || (hw->phy.addr > 7)) { in igb_write_phy_reg_i2c()
296 hw->phy.addr); in igb_write_phy_reg_i2c()
308 (phy->addr << E1000_I2CCMD_PHY_ADDR_SHIFT) | in igb_write_phy_reg_i2c()
400 if (!(hw->phy.ops.acquire)) in igb_read_phy_reg_igp()
403 ret_val = hw->phy.ops.acquire(hw); in igb_read_phy_reg_igp()
412 hw->phy.ops.release(hw); in igb_read_phy_reg_igp()
420 hw->phy.ops.release(hw); in igb_read_phy_reg_igp()
439 if (!(hw->phy.ops.acquire)) in igb_write_phy_reg_igp()
442 ret_val = hw->phy.ops.acquire(hw); in igb_write_phy_reg_igp()
451 hw->phy.ops.release(hw); in igb_write_phy_reg_igp()
459 hw->phy.ops.release(hw); in igb_write_phy_reg_igp()
473 struct e1000_phy_info *phy = &hw->phy; in igb_copper_link_setup_82580() local
477 if (phy->reset_disable) { in igb_copper_link_setup_82580()
482 if (phy->type == e1000_phy_82580) { in igb_copper_link_setup_82580()
483 ret_val = hw->phy.ops.reset(hw); in igb_copper_link_setup_82580()
491 ret_val = phy->ops.read_reg(hw, I82580_CFG_REG, &phy_data); in igb_copper_link_setup_82580()
500 ret_val = phy->ops.write_reg(hw, I82580_CFG_REG, phy_data); in igb_copper_link_setup_82580()
505 ret_val = phy->ops.read_reg(hw, I82580_PHY_CTRL_2, &phy_data); in igb_copper_link_setup_82580()
514 switch (hw->phy.mdix) { in igb_copper_link_setup_82580()
525 ret_val = hw->phy.ops.write_reg(hw, I82580_PHY_CTRL_2, phy_data); in igb_copper_link_setup_82580()
540 struct e1000_phy_info *phy = &hw->phy; in igb_copper_link_setup_m88() local
544 if (phy->reset_disable) { in igb_copper_link_setup_m88()
550 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_CTRL, &phy_data); in igb_copper_link_setup_m88()
565 switch (phy->mdix) { in igb_copper_link_setup_m88()
588 if (phy->disable_polarity_correction == 1) in igb_copper_link_setup_m88()
591 ret_val = phy->ops.write_reg(hw, M88E1000_PHY_SPEC_CTRL, phy_data); in igb_copper_link_setup_m88()
595 if (phy->revision < E1000_REVISION_4) { in igb_copper_link_setup_m88()
599 ret_val = phy->ops.read_reg(hw, M88E1000_EXT_PHY_SPEC_CTRL, in igb_copper_link_setup_m88()
606 if ((phy->revision == E1000_REVISION_2) && in igb_copper_link_setup_m88()
607 (phy->id == M88E1111_I_PHY_ID)) { in igb_copper_link_setup_m88()
618 ret_val = phy->ops.write_reg(hw, M88E1000_EXT_PHY_SPEC_CTRL, in igb_copper_link_setup_m88()
644 struct e1000_phy_info *phy = &hw->phy; in igb_copper_link_setup_m88_gen2() local
648 if (phy->reset_disable) in igb_copper_link_setup_m88_gen2()
652 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_CTRL, &phy_data); in igb_copper_link_setup_m88_gen2()
665 switch (phy->mdix) { in igb_copper_link_setup_m88_gen2()
674 if (phy->id != M88E1112_E_PHY_ID) { in igb_copper_link_setup_m88_gen2()
691 if (phy->disable_polarity_correction == 1) in igb_copper_link_setup_m88_gen2()
695 if (phy->id == M88E1543_E_PHY_ID) { in igb_copper_link_setup_m88_gen2()
698 phy->ops.write_reg(hw, M88E1000_PHY_SPEC_CTRL, phy_data); in igb_copper_link_setup_m88_gen2()
713 ret_val = phy->ops.write_reg(hw, M88E1000_PHY_SPEC_CTRL, phy_data); in igb_copper_link_setup_m88_gen2()
739 struct e1000_phy_info *phy = &hw->phy; in igb_copper_link_setup_igp() local
743 if (phy->reset_disable) { in igb_copper_link_setup_igp()
748 ret_val = phy->ops.reset(hw); in igb_copper_link_setup_igp()
762 if (phy->type == e1000_phy_igp) { in igb_copper_link_setup_igp()
764 if (phy->ops.set_d3_lplu_state) in igb_copper_link_setup_igp()
765 ret_val = phy->ops.set_d3_lplu_state(hw, false); in igb_copper_link_setup_igp()
773 ret_val = phy->ops.set_d0_lplu_state(hw, false); in igb_copper_link_setup_igp()
779 ret_val = phy->ops.read_reg(hw, IGP01E1000_PHY_PORT_CTRL, &data); in igb_copper_link_setup_igp()
785 switch (phy->mdix) { in igb_copper_link_setup_igp()
797 ret_val = phy->ops.write_reg(hw, IGP01E1000_PHY_PORT_CTRL, data); in igb_copper_link_setup_igp()
807 if (phy->autoneg_advertised == ADVERTISE_1000_FULL) { in igb_copper_link_setup_igp()
809 ret_val = phy->ops.read_reg(hw, in igb_copper_link_setup_igp()
816 ret_val = phy->ops.write_reg(hw, in igb_copper_link_setup_igp()
823 ret_val = phy->ops.read_reg(hw, PHY_1000T_CTRL, &data); in igb_copper_link_setup_igp()
828 ret_val = phy->ops.write_reg(hw, PHY_1000T_CTRL, data); in igb_copper_link_setup_igp()
833 ret_val = phy->ops.read_reg(hw, PHY_1000T_CTRL, &data); in igb_copper_link_setup_igp()
838 phy->original_ms_type = (data & CR_1000T_MS_ENABLE) ? in igb_copper_link_setup_igp()
844 switch (phy->ms_type) { in igb_copper_link_setup_igp()
857 ret_val = phy->ops.write_reg(hw, PHY_1000T_CTRL, data); in igb_copper_link_setup_igp()
877 struct e1000_phy_info *phy = &hw->phy; in igb_copper_link_autoneg() local
884 phy->autoneg_advertised &= phy->autoneg_mask; in igb_copper_link_autoneg()
889 if (phy->autoneg_advertised == 0) in igb_copper_link_autoneg()
890 phy->autoneg_advertised = phy->autoneg_mask; in igb_copper_link_autoneg()
903 ret_val = phy->ops.read_reg(hw, PHY_CONTROL, &phy_ctrl); in igb_copper_link_autoneg()
908 ret_val = phy->ops.write_reg(hw, PHY_CONTROL, phy_ctrl); in igb_copper_link_autoneg()
915 if (phy->autoneg_wait_to_complete) { in igb_copper_link_autoneg()
940 struct e1000_phy_info *phy = &hw->phy; in igb_phy_setup_autoneg() local
945 phy->autoneg_advertised &= phy->autoneg_mask; in igb_phy_setup_autoneg()
948 ret_val = phy->ops.read_reg(hw, PHY_AUTONEG_ADV, &mii_autoneg_adv_reg); in igb_phy_setup_autoneg()
952 if (phy->autoneg_mask & ADVERTISE_1000_FULL) { in igb_phy_setup_autoneg()
954 ret_val = phy->ops.read_reg(hw, PHY_1000T_CTRL, in igb_phy_setup_autoneg()
977 hw_dbg("autoneg_advertised %x\n", phy->autoneg_advertised); in igb_phy_setup_autoneg()
980 if (phy->autoneg_advertised & ADVERTISE_10_HALF) { in igb_phy_setup_autoneg()
986 if (phy->autoneg_advertised & ADVERTISE_10_FULL) { in igb_phy_setup_autoneg()
992 if (phy->autoneg_advertised & ADVERTISE_100_HALF) { in igb_phy_setup_autoneg()
998 if (phy->autoneg_advertised & ADVERTISE_100_FULL) { in igb_phy_setup_autoneg()
1004 if (phy->autoneg_advertised & ADVERTISE_1000_HALF) in igb_phy_setup_autoneg()
1008 if (phy->autoneg_advertised & ADVERTISE_1000_FULL) { in igb_phy_setup_autoneg()
1068 ret_val = phy->ops.write_reg(hw, PHY_AUTONEG_ADV, mii_autoneg_adv_reg); in igb_phy_setup_autoneg()
1074 if (phy->autoneg_mask & ADVERTISE_1000_FULL) { in igb_phy_setup_autoneg()
1075 ret_val = phy->ops.write_reg(hw, in igb_phy_setup_autoneg()
1112 ret_val = hw->phy.ops.force_speed_duplex(hw); in igb_setup_copper_link()
1148 struct e1000_phy_info *phy = &hw->phy; in igb_phy_force_speed_duplex_igp() local
1153 ret_val = phy->ops.read_reg(hw, PHY_CONTROL, &phy_data); in igb_phy_force_speed_duplex_igp()
1159 ret_val = phy->ops.write_reg(hw, PHY_CONTROL, phy_data); in igb_phy_force_speed_duplex_igp()
1166 ret_val = phy->ops.read_reg(hw, IGP01E1000_PHY_PORT_CTRL, &phy_data); in igb_phy_force_speed_duplex_igp()
1173 ret_val = phy->ops.write_reg(hw, IGP01E1000_PHY_PORT_CTRL, phy_data); in igb_phy_force_speed_duplex_igp()
1181 if (phy->autoneg_wait_to_complete) { in igb_phy_force_speed_duplex_igp()
1213 struct e1000_phy_info *phy = &hw->phy; in igb_phy_force_speed_duplex_m88() local
1219 if (phy->type != e1000_phy_i210) { in igb_phy_force_speed_duplex_m88()
1223 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_CTRL, in igb_phy_force_speed_duplex_m88()
1229 ret_val = phy->ops.write_reg(hw, M88E1000_PHY_SPEC_CTRL, in igb_phy_force_speed_duplex_m88()
1237 ret_val = phy->ops.read_reg(hw, PHY_CONTROL, &phy_data); in igb_phy_force_speed_duplex_m88()
1243 ret_val = phy->ops.write_reg(hw, PHY_CONTROL, phy_data); in igb_phy_force_speed_duplex_m88()
1252 if (phy->autoneg_wait_to_complete) { in igb_phy_force_speed_duplex_m88()
1262 switch (hw->phy.id) { in igb_phy_force_speed_duplex_m88()
1271 if (hw->phy.type != e1000_phy_m88) in igb_phy_force_speed_duplex_m88()
1281 ret_val = phy->ops.write_reg(hw, in igb_phy_force_speed_duplex_m88()
1299 if (hw->phy.type != e1000_phy_m88 || in igb_phy_force_speed_duplex_m88()
1300 hw->phy.id == I347AT4_E_PHY_ID || in igb_phy_force_speed_duplex_m88()
1301 hw->phy.id == M88E1112_E_PHY_ID || in igb_phy_force_speed_duplex_m88()
1302 hw->phy.id == M88E1543_E_PHY_ID || in igb_phy_force_speed_duplex_m88()
1303 hw->phy.id == M88E1512_E_PHY_ID || in igb_phy_force_speed_duplex_m88()
1304 hw->phy.id == I210_I_PHY_ID) in igb_phy_force_speed_duplex_m88()
1307 ret_val = phy->ops.read_reg(hw, M88E1000_EXT_PHY_SPEC_CTRL, &phy_data); in igb_phy_force_speed_duplex_m88()
1316 ret_val = phy->ops.write_reg(hw, M88E1000_EXT_PHY_SPEC_CTRL, phy_data); in igb_phy_force_speed_duplex_m88()
1323 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_CTRL, &phy_data); in igb_phy_force_speed_duplex_m88()
1328 ret_val = phy->ops.write_reg(hw, M88E1000_PHY_SPEC_CTRL, phy_data); in igb_phy_force_speed_duplex_m88()
1411 struct e1000_phy_info *phy = &hw->phy; in igb_set_d3_lplu_state() local
1415 if (!(hw->phy.ops.read_reg)) in igb_set_d3_lplu_state()
1418 ret_val = phy->ops.read_reg(hw, IGP02E1000_PHY_POWER_MGMT, &data); in igb_set_d3_lplu_state()
1424 ret_val = phy->ops.write_reg(hw, IGP02E1000_PHY_POWER_MGMT, in igb_set_d3_lplu_state()
1433 if (phy->smart_speed == e1000_smart_speed_on) { in igb_set_d3_lplu_state()
1434 ret_val = phy->ops.read_reg(hw, in igb_set_d3_lplu_state()
1441 ret_val = phy->ops.write_reg(hw, in igb_set_d3_lplu_state()
1446 } else if (phy->smart_speed == e1000_smart_speed_off) { in igb_set_d3_lplu_state()
1447 ret_val = phy->ops.read_reg(hw, in igb_set_d3_lplu_state()
1454 ret_val = phy->ops.write_reg(hw, in igb_set_d3_lplu_state()
1460 } else if ((phy->autoneg_advertised == E1000_ALL_SPEED_DUPLEX) || in igb_set_d3_lplu_state()
1461 (phy->autoneg_advertised == E1000_ALL_NOT_GIG) || in igb_set_d3_lplu_state()
1462 (phy->autoneg_advertised == E1000_ALL_10_SPEED)) { in igb_set_d3_lplu_state()
1464 ret_val = phy->ops.write_reg(hw, IGP02E1000_PHY_POWER_MGMT, in igb_set_d3_lplu_state()
1470 ret_val = phy->ops.read_reg(hw, IGP01E1000_PHY_PORT_CONFIG, in igb_set_d3_lplu_state()
1476 ret_val = phy->ops.write_reg(hw, IGP01E1000_PHY_PORT_CONFIG, in igb_set_d3_lplu_state()
1494 struct e1000_phy_info *phy = &hw->phy; in igb_check_downshift() local
1498 switch (phy->type) { in igb_check_downshift()
1513 phy->speed_downgraded = false; in igb_check_downshift()
1518 ret_val = phy->ops.read_reg(hw, offset, &phy_data); in igb_check_downshift()
1521 phy->speed_downgraded = (phy_data & mask) ? true : false; in igb_check_downshift()
1537 struct e1000_phy_info *phy = &hw->phy; in igb_check_polarity_m88() local
1541 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_STATUS, &data); in igb_check_polarity_m88()
1544 phy->cable_polarity = (data & M88E1000_PSSR_REV_POLARITY) in igb_check_polarity_m88()
1562 struct e1000_phy_info *phy = &hw->phy; in igb_check_polarity_igp() local
1569 ret_val = phy->ops.read_reg(hw, IGP01E1000_PHY_PORT_STATUS, &data); in igb_check_polarity_igp()
1585 ret_val = phy->ops.read_reg(hw, offset, &data); in igb_check_polarity_igp()
1588 phy->cable_polarity = (data & mask) in igb_check_polarity_igp()
1610 ret_val = hw->phy.ops.read_reg(hw, PHY_STATUS, &phy_status); in igb_wait_autoneg()
1613 ret_val = hw->phy.ops.read_reg(hw, PHY_STATUS, &phy_status); in igb_wait_autoneg()
1647 ret_val = hw->phy.ops.read_reg(hw, PHY_STATUS, &phy_status); in igb_phy_has_link()
1658 ret_val = hw->phy.ops.read_reg(hw, PHY_STATUS, &phy_status); in igb_phy_has_link()
1691 struct e1000_phy_info *phy = &hw->phy; in igb_get_cable_length_m88() local
1695 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_STATUS, &phy_data); in igb_get_cable_length_m88()
1706 phy->min_cable_length = e1000_m88_cable_length_table[index]; in igb_get_cable_length_m88()
1707 phy->max_cable_length = e1000_m88_cable_length_table[index + 1]; in igb_get_cable_length_m88()
1709 phy->cable_length = (phy->min_cable_length + phy->max_cable_length) / 2; in igb_get_cable_length_m88()
1717 struct e1000_phy_info *phy = &hw->phy; in igb_get_cable_length_m88_gen2() local
1721 switch (hw->phy.id) { in igb_get_cable_length_m88_gen2()
1724 ret_val = phy->ops.read_reg(hw, (0x7 << GS40G_PAGE_SHIFT) + in igb_get_cable_length_m88_gen2()
1725 (I347AT4_PCDL + phy->addr), in igb_get_cable_length_m88_gen2()
1731 ret_val = phy->ops.read_reg(hw, (0x7 << GS40G_PAGE_SHIFT) + in igb_get_cable_length_m88_gen2()
1739 phy->min_cable_length = phy_data / (is_cm ? 100 : 1); in igb_get_cable_length_m88_gen2()
1740 phy->max_cable_length = phy_data / (is_cm ? 100 : 1); in igb_get_cable_length_m88_gen2()
1741 phy->cable_length = phy_data / (is_cm ? 100 : 1); in igb_get_cable_length_m88_gen2()
1747 ret_val = phy->ops.read_reg(hw, I347AT4_PAGE_SELECT, in igb_get_cable_length_m88_gen2()
1752 ret_val = phy->ops.write_reg(hw, I347AT4_PAGE_SELECT, 0x07); in igb_get_cable_length_m88_gen2()
1757 ret_val = phy->ops.read_reg(hw, (I347AT4_PCDL + phy->addr), in igb_get_cable_length_m88_gen2()
1763 ret_val = phy->ops.read_reg(hw, I347AT4_PCDC, &phy_data2); in igb_get_cable_length_m88_gen2()
1770 phy->min_cable_length = phy_data / (is_cm ? 100 : 1); in igb_get_cable_length_m88_gen2()
1771 phy->max_cable_length = phy_data / (is_cm ? 100 : 1); in igb_get_cable_length_m88_gen2()
1772 phy->cable_length = phy_data / (is_cm ? 100 : 1); in igb_get_cable_length_m88_gen2()
1775 ret_val = phy->ops.write_reg(hw, I347AT4_PAGE_SELECT, in igb_get_cable_length_m88_gen2()
1782 ret_val = phy->ops.read_reg(hw, I347AT4_PAGE_SELECT, in igb_get_cable_length_m88_gen2()
1787 ret_val = phy->ops.write_reg(hw, I347AT4_PAGE_SELECT, 0x05); in igb_get_cable_length_m88_gen2()
1791 ret_val = phy->ops.read_reg(hw, M88E1112_VCT_DSP_DISTANCE, in igb_get_cable_length_m88_gen2()
1803 phy->min_cable_length = e1000_m88_cable_length_table[index]; in igb_get_cable_length_m88_gen2()
1804 phy->max_cable_length = e1000_m88_cable_length_table[index + 1]; in igb_get_cable_length_m88_gen2()
1806 phy->cable_length = (phy->min_cable_length + in igb_get_cable_length_m88_gen2()
1807 phy->max_cable_length) / 2; in igb_get_cable_length_m88_gen2()
1810 ret_val = phy->ops.write_reg(hw, I347AT4_PAGE_SELECT, in igb_get_cable_length_m88_gen2()
1838 struct e1000_phy_info *phy = &hw->phy; in igb_get_cable_length_igp_2() local
1852 ret_val = phy->ops.read_reg(hw, agc_reg_array[i], &phy_data); in igb_get_cable_length_igp_2()
1887 phy->min_cable_length = ((agc_value - IGP02E1000_AGC_RANGE) > 0) ? in igb_get_cable_length_igp_2()
1889 phy->max_cable_length = agc_value + IGP02E1000_AGC_RANGE; in igb_get_cable_length_igp_2()
1891 phy->cable_length = (phy->min_cable_length + phy->max_cable_length) / 2; in igb_get_cable_length_igp_2()
1909 struct e1000_phy_info *phy = &hw->phy; in igb_get_phy_info_m88() local
1914 if (phy->media_type != e1000_media_type_copper) { in igb_get_phy_info_m88()
1930 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_CTRL, &phy_data); in igb_get_phy_info_m88()
1934 phy->polarity_correction = (phy_data & M88E1000_PSCR_POLARITY_REVERSAL) in igb_get_phy_info_m88()
1941 ret_val = phy->ops.read_reg(hw, M88E1000_PHY_SPEC_STATUS, &phy_data); in igb_get_phy_info_m88()
1945 phy->is_mdix = (phy_data & M88E1000_PSSR_MDIX) ? true : false; in igb_get_phy_info_m88()
1948 ret_val = phy->ops.get_cable_length(hw); in igb_get_phy_info_m88()
1952 ret_val = phy->ops.read_reg(hw, PHY_1000T_STATUS, &phy_data); in igb_get_phy_info_m88()
1956 phy->local_rx = (phy_data & SR_1000T_LOCAL_RX_STATUS) in igb_get_phy_info_m88()
1960 phy->remote_rx = (phy_data & SR_1000T_REMOTE_RX_STATUS) in igb_get_phy_info_m88()
1965 phy->cable_length = E1000_CABLE_LENGTH_UNDEFINED; in igb_get_phy_info_m88()
1966 phy->local_rx = e1000_1000t_rx_status_undefined; in igb_get_phy_info_m88()
1967 phy->remote_rx = e1000_1000t_rx_status_undefined; in igb_get_phy_info_m88()
1985 struct e1000_phy_info *phy = &hw->phy; in igb_get_phy_info_igp() local
2000 phy->polarity_correction = true; in igb_get_phy_info_igp()
2006 ret_val = phy->ops.read_reg(hw, IGP01E1000_PHY_PORT_STATUS, &data); in igb_get_phy_info_igp()
2010 phy->is_mdix = (data & IGP01E1000_PSSR_MDIX) ? true : false; in igb_get_phy_info_igp()
2014 ret_val = phy->ops.get_cable_length(hw); in igb_get_phy_info_igp()
2018 ret_val = phy->ops.read_reg(hw, PHY_1000T_STATUS, &data); in igb_get_phy_info_igp()
2022 phy->local_rx = (data & SR_1000T_LOCAL_RX_STATUS) in igb_get_phy_info_igp()
2026 phy->remote_rx = (data & SR_1000T_REMOTE_RX_STATUS) in igb_get_phy_info_igp()
2030 phy->cable_length = E1000_CABLE_LENGTH_UNDEFINED; in igb_get_phy_info_igp()
2031 phy->local_rx = e1000_1000t_rx_status_undefined; in igb_get_phy_info_igp()
2032 phy->remote_rx = e1000_1000t_rx_status_undefined; in igb_get_phy_info_igp()
2051 if (!(hw->phy.ops.read_reg)) in igb_phy_sw_reset()
2054 ret_val = hw->phy.ops.read_reg(hw, PHY_CONTROL, &phy_ctrl); in igb_phy_sw_reset()
2059 ret_val = hw->phy.ops.write_reg(hw, PHY_CONTROL, phy_ctrl); in igb_phy_sw_reset()
2080 struct e1000_phy_info *phy = &hw->phy; in igb_phy_hw_reset() local
2090 ret_val = phy->ops.acquire(hw); in igb_phy_hw_reset()
2098 udelay(phy->reset_delay_us); in igb_phy_hw_reset()
2105 phy->ops.release(hw); in igb_phy_hw_reset()
2107 ret_val = phy->ops.get_cfg_done(hw); in igb_phy_hw_reset()
2125 hw->phy.ops.write_reg(hw, 0x2F5B, 0x9018); in igb_phy_init_script_igp3()
2127 hw->phy.ops.write_reg(hw, 0x2F52, 0x0000); in igb_phy_init_script_igp3()
2129 hw->phy.ops.write_reg(hw, 0x2FB1, 0x8B24); in igb_phy_init_script_igp3()
2131 hw->phy.ops.write_reg(hw, 0x2FB2, 0xF8F0); in igb_phy_init_script_igp3()
2133 hw->phy.ops.write_reg(hw, 0x2010, 0x10B0); in igb_phy_init_script_igp3()
2135 hw->phy.ops.write_reg(hw, 0x2011, 0x0000); in igb_phy_init_script_igp3()
2137 hw->phy.ops.write_reg(hw, 0x20DD, 0x249A); in igb_phy_init_script_igp3()
2139 hw->phy.ops.write_reg(hw, 0x20DE, 0x00D3); in igb_phy_init_script_igp3()
2141 hw->phy.ops.write_reg(hw, 0x28B4, 0x04CE); in igb_phy_init_script_igp3()
2143 hw->phy.ops.write_reg(hw, 0x2F70, 0x29E4); in igb_phy_init_script_igp3()
2145 hw->phy.ops.write_reg(hw, 0x0000, 0x0140); in igb_phy_init_script_igp3()
2147 hw->phy.ops.write_reg(hw, 0x1F30, 0x1606); in igb_phy_init_script_igp3()
2149 hw->phy.ops.write_reg(hw, 0x1F31, 0xB814); in igb_phy_init_script_igp3()
2151 hw->phy.ops.write_reg(hw, 0x1F35, 0x002A); in igb_phy_init_script_igp3()
2153 hw->phy.ops.write_reg(hw, 0x1F3E, 0x0067); in igb_phy_init_script_igp3()
2155 hw->phy.ops.write_reg(hw, 0x1F54, 0x0065); in igb_phy_init_script_igp3()
2157 hw->phy.ops.write_reg(hw, 0x1F55, 0x002A); in igb_phy_init_script_igp3()
2159 hw->phy.ops.write_reg(hw, 0x1F56, 0x002A); in igb_phy_init_script_igp3()
2161 hw->phy.ops.write_reg(hw, 0x1F72, 0x3FB0); in igb_phy_init_script_igp3()
2163 hw->phy.ops.write_reg(hw, 0x1F76, 0xC0FF); in igb_phy_init_script_igp3()
2165 hw->phy.ops.write_reg(hw, 0x1F77, 0x1DEC); in igb_phy_init_script_igp3()
2167 hw->phy.ops.write_reg(hw, 0x1F78, 0xF9EF); in igb_phy_init_script_igp3()
2169 hw->phy.ops.write_reg(hw, 0x1F79, 0x0210); in igb_phy_init_script_igp3()
2171 hw->phy.ops.write_reg(hw, 0x1895, 0x0003); in igb_phy_init_script_igp3()
2173 hw->phy.ops.write_reg(hw, 0x1796, 0x0008); in igb_phy_init_script_igp3()
2175 hw->phy.ops.write_reg(hw, 0x1798, 0xD008); in igb_phy_init_script_igp3()
2179 hw->phy.ops.write_reg(hw, 0x1898, 0xD918); in igb_phy_init_script_igp3()
2181 hw->phy.ops.write_reg(hw, 0x187A, 0x0800); in igb_phy_init_script_igp3()
2185 hw->phy.ops.write_reg(hw, 0x0019, 0x008D); in igb_phy_init_script_igp3()
2187 hw->phy.ops.write_reg(hw, 0x001B, 0x2080); in igb_phy_init_script_igp3()
2189 hw->phy.ops.write_reg(hw, 0x0014, 0x0045); in igb_phy_init_script_igp3()
2191 hw->phy.ops.write_reg(hw, 0x0000, 0x1340); in igb_phy_init_script_igp3()
2204 struct e1000_phy_info *phy = &hw->phy; in igb_initialize_M88E1512_phy() local
2208 ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 0x00FF); in igb_initialize_M88E1512_phy()
2212 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_2, 0x214B); in igb_initialize_M88E1512_phy()
2216 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_1, 0x2144); in igb_initialize_M88E1512_phy()
2220 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_2, 0x0C28); in igb_initialize_M88E1512_phy()
2224 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_1, 0x2146); in igb_initialize_M88E1512_phy()
2228 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_2, 0xB233); in igb_initialize_M88E1512_phy()
2232 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_1, 0x214D); in igb_initialize_M88E1512_phy()
2236 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_2, 0xCC0C); in igb_initialize_M88E1512_phy()
2240 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_1, 0x2159); in igb_initialize_M88E1512_phy()
2245 ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 0x00FB); in igb_initialize_M88E1512_phy()
2249 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_CFG_REG_3, 0x000D); in igb_initialize_M88E1512_phy()
2254 ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 0x12); in igb_initialize_M88E1512_phy()
2259 ret_val = phy->ops.write_reg(hw, E1000_M88E1512_MODE, 0x8001); in igb_initialize_M88E1512_phy()
2264 ret_val = phy->ops.write_reg(hw, E1000_M88E1543_PAGE_ADDR, 0); in igb_initialize_M88E1512_phy()
2292 hw->phy.ops.read_reg(hw, PHY_CONTROL, &mii_reg); in igb_power_up_phy_copper()
2294 hw->phy.ops.write_reg(hw, PHY_CONTROL, mii_reg); in igb_power_up_phy_copper()
2309 hw->phy.ops.read_reg(hw, PHY_CONTROL, &mii_reg); in igb_power_down_phy_copper()
2311 hw->phy.ops.write_reg(hw, PHY_CONTROL, mii_reg); in igb_power_down_phy_copper()
2325 struct e1000_phy_info *phy = &hw->phy; in igb_check_polarity_82580() local
2330 ret_val = phy->ops.read_reg(hw, I82580_PHY_STATUS_2, &data); in igb_check_polarity_82580()
2333 phy->cable_polarity = (data & I82580_PHY_STATUS2_REV_POLARITY) in igb_check_polarity_82580()
2350 struct e1000_phy_info *phy = &hw->phy; in igb_phy_force_speed_duplex_82580() local
2355 ret_val = phy->ops.read_reg(hw, PHY_CONTROL, &phy_data); in igb_phy_force_speed_duplex_82580()
2361 ret_val = phy->ops.write_reg(hw, PHY_CONTROL, phy_data); in igb_phy_force_speed_duplex_82580()
2368 ret_val = phy->ops.read_reg(hw, I82580_PHY_CTRL_2, &phy_data); in igb_phy_force_speed_duplex_82580()
2374 ret_val = phy->ops.write_reg(hw, I82580_PHY_CTRL_2, phy_data); in igb_phy_force_speed_duplex_82580()
2382 if (phy->autoneg_wait_to_complete) { in igb_phy_force_speed_duplex_82580()
2413 struct e1000_phy_info *phy = &hw->phy; in igb_get_phy_info_82580() local
2428 phy->polarity_correction = true; in igb_get_phy_info_82580()
2434 ret_val = phy->ops.read_reg(hw, I82580_PHY_STATUS_2, &data); in igb_get_phy_info_82580()
2438 phy->is_mdix = (data & I82580_PHY_STATUS2_MDIX) ? true : false; in igb_get_phy_info_82580()
2442 ret_val = hw->phy.ops.get_cable_length(hw); in igb_get_phy_info_82580()
2446 ret_val = phy->ops.read_reg(hw, PHY_1000T_STATUS, &data); in igb_get_phy_info_82580()
2450 phy->local_rx = (data & SR_1000T_LOCAL_RX_STATUS) in igb_get_phy_info_82580()
2454 phy->remote_rx = (data & SR_1000T_REMOTE_RX_STATUS) in igb_get_phy_info_82580()
2458 phy->cable_length = E1000_CABLE_LENGTH_UNDEFINED; in igb_get_phy_info_82580()
2459 phy->local_rx = e1000_1000t_rx_status_undefined; in igb_get_phy_info_82580()
2460 phy->remote_rx = e1000_1000t_rx_status_undefined; in igb_get_phy_info_82580()
2476 struct e1000_phy_info *phy = &hw->phy; in igb_get_cable_length_82580() local
2480 ret_val = phy->ops.read_reg(hw, I82580_PHY_DIAG_STATUS, &phy_data); in igb_get_cable_length_82580()
2490 phy->cable_length = length; in igb_get_cable_length_82580()
2512 ret_val = hw->phy.ops.acquire(hw); in igb_write_phy_reg_gs40g()
2522 hw->phy.ops.release(hw); in igb_write_phy_reg_gs40g()
2542 ret_val = hw->phy.ops.acquire(hw); in igb_read_phy_reg_gs40g()
2552 hw->phy.ops.release(hw); in igb_read_phy_reg_gs40g()
2568 ret_val = hw->phy.ops.read_reg(hw, PHY_1000T_CTRL, &phy_data); in igb_set_master_slave_mode()
2573 hw->phy.original_ms_type = (phy_data & CR_1000T_MS_ENABLE) ? in igb_set_master_slave_mode()
2578 switch (hw->phy.ms_type) { in igb_set_master_slave_mode()
2593 return hw->phy.ops.write_reg(hw, PHY_1000T_CTRL, phy_data); in igb_set_master_slave_mode()