Lines Matching refs:mac
34 struct e1000_mac_info *mac = &hw->mac; in e1000e_get_bus_info_pcie() local
51 mac->ops.set_lan_id(hw); in e1000e_get_bus_info_pcie()
138 hw->mac.ops.rar_set(hw, hw->mac.addr, 0); in e1000e_init_rx_addrs()
143 hw->mac.ops.rar_set(hw, mac_addr, i); in e1000e_init_rx_addrs()
170 if (hw->mac.type == e1000_82573) in e1000_check_alt_mac_addr_generic()
209 hw->mac.ops.rar_set(hw, alt_mac_addr, 0); in e1000_check_alt_mac_addr_generic()
216 return hw->mac.rar_entry_count; in e1000e_rar_get_count_generic()
270 hash_mask = (hw->mac.mta_reg_count * 32) - 1; in e1000_hash_mc_addr()
303 switch (hw->mac.mc_filter_type) { in e1000_hash_mc_addr()
340 memset(&hw->mac.mta_shadow, 0, sizeof(hw->mac.mta_shadow)); in e1000e_update_mc_addr_list_generic()
346 hash_reg = (hash_value >> 5) & (hw->mac.mta_reg_count - 1); in e1000e_update_mc_addr_list_generic()
349 hw->mac.mta_shadow[hash_reg] |= BIT(hash_bit); in e1000e_update_mc_addr_list_generic()
354 for (i = hw->mac.mta_reg_count - 1; i >= 0; i--) in e1000e_update_mc_addr_list_generic()
355 E1000_WRITE_REG_ARRAY(hw, E1000_MTA, i, hw->mac.mta_shadow[i]); in e1000e_update_mc_addr_list_generic()
416 struct e1000_mac_info *mac = &hw->mac; in e1000e_check_for_copper_link() local
425 if (!mac->get_link_status) in e1000e_check_for_copper_link()
427 mac->get_link_status = false; in e1000e_check_for_copper_link()
445 if (!mac->autoneg) in e1000e_check_for_copper_link()
452 mac->ops.config_collision_dist(hw); in e1000e_check_for_copper_link()
466 mac->get_link_status = true; in e1000e_check_for_copper_link()
479 struct e1000_mac_info *mac = &hw->mac; in e1000e_check_for_fiber_link() local
499 if (!mac->autoneg_failed) { in e1000e_check_for_fiber_link()
500 mac->autoneg_failed = true; in e1000e_check_for_fiber_link()
506 ew32(TXCW, (mac->txcw & ~E1000_TXCW_ANE)); in e1000e_check_for_fiber_link()
526 ew32(TXCW, mac->txcw); in e1000e_check_for_fiber_link()
529 mac->serdes_has_link = true; in e1000e_check_for_fiber_link()
544 struct e1000_mac_info *mac = &hw->mac; in e1000e_check_for_serdes_link() local
562 if (!mac->autoneg_failed) { in e1000e_check_for_serdes_link()
563 mac->autoneg_failed = true; in e1000e_check_for_serdes_link()
569 ew32(TXCW, (mac->txcw & ~E1000_TXCW_ANE)); in e1000e_check_for_serdes_link()
589 ew32(TXCW, mac->txcw); in e1000e_check_for_serdes_link()
592 mac->serdes_has_link = true; in e1000e_check_for_serdes_link()
603 mac->serdes_has_link = true; in e1000e_check_for_serdes_link()
607 mac->serdes_has_link = false; in e1000e_check_for_serdes_link()
620 mac->serdes_has_link = true; in e1000e_check_for_serdes_link()
623 mac->serdes_has_link = false; in e1000e_check_for_serdes_link()
627 mac->serdes_has_link = false; in e1000e_check_for_serdes_link()
631 mac->serdes_has_link = false; in e1000e_check_for_serdes_link()
713 ret_val = hw->mac.ops.setup_physical_interface(hw); in e1000e_setup_link_generic()
741 struct e1000_mac_info *mac = &hw->mac; in e1000_commit_fc_settings_generic() local
793 mac->txcw = txcw; in e1000_commit_fc_settings_generic()
807 struct e1000_mac_info *mac = &hw->mac; in e1000_poll_fiber_serdes_link_generic() local
825 mac->autoneg_failed = true; in e1000_poll_fiber_serdes_link_generic()
831 ret_val = mac->ops.check_for_link(hw); in e1000_poll_fiber_serdes_link_generic()
836 mac->autoneg_failed = false; in e1000_poll_fiber_serdes_link_generic()
838 mac->autoneg_failed = false; in e1000_poll_fiber_serdes_link_generic()
862 hw->mac.ops.config_collision_dist(hw); in e1000e_setup_fiber_serdes_link()
1021 struct e1000_mac_info *mac = &hw->mac; in e1000e_config_fc_after_link_up() local
1031 if (mac->autoneg_failed) { in e1000e_config_fc_after_link_up()
1050 if ((hw->phy.media_type == e1000_media_type_copper) && mac->autoneg) { in e1000e_config_fc_after_link_up()
1168 ret_val = mac->ops.get_link_up_info(hw, &speed, &duplex); in e1000e_config_fc_after_link_up()
1193 mac->autoneg) { in e1000e_config_fc_after_link_up()
1486 struct e1000_mac_info *mac = &hw->mac; in e1000e_id_led_init_generic() local
1498 mac->ledctl_default = er32(LEDCTL); in e1000e_id_led_init_generic()
1499 mac->ledctl_mode1 = mac->ledctl_default; in e1000e_id_led_init_generic()
1500 mac->ledctl_mode2 = mac->ledctl_default; in e1000e_id_led_init_generic()
1508 mac->ledctl_mode1 &= ~(ledctl_mask << (i << 3)); in e1000e_id_led_init_generic()
1509 mac->ledctl_mode1 |= ledctl_on << (i << 3); in e1000e_id_led_init_generic()
1514 mac->ledctl_mode1 &= ~(ledctl_mask << (i << 3)); in e1000e_id_led_init_generic()
1515 mac->ledctl_mode1 |= ledctl_off << (i << 3); in e1000e_id_led_init_generic()
1525 mac->ledctl_mode2 &= ~(ledctl_mask << (i << 3)); in e1000e_id_led_init_generic()
1526 mac->ledctl_mode2 |= ledctl_on << (i << 3); in e1000e_id_led_init_generic()
1531 mac->ledctl_mode2 &= ~(ledctl_mask << (i << 3)); in e1000e_id_led_init_generic()
1532 mac->ledctl_mode2 |= ledctl_off << (i << 3); in e1000e_id_led_init_generic()
1554 if (hw->mac.ops.setup_led != e1000e_setup_led_generic) in e1000e_setup_led_generic()
1559 hw->mac.ledctl_default = ledctl; in e1000e_setup_led_generic()
1567 ew32(LEDCTL, hw->mac.ledctl_mode1); in e1000e_setup_led_generic()
1582 ew32(LEDCTL, hw->mac.ledctl_default); in e1000e_cleanup_led_generic()
1608 ledctl_blink = hw->mac.ledctl_mode2; in e1000e_blink_led_generic()
1610 u32 mode = (hw->mac.ledctl_mode2 >> i) & in e1000e_blink_led_generic()
1612 u32 led_default = hw->mac.ledctl_default >> i; in e1000e_blink_led_generic()
1649 ew32(LEDCTL, hw->mac.ledctl_mode2); in e1000e_led_on_generic()
1676 ew32(LEDCTL, hw->mac.ledctl_mode1); in e1000e_led_off_generic()
1747 struct e1000_mac_info *mac = &hw->mac; in e1000e_reset_adaptive() local
1749 if (!mac->adaptive_ifs) { in e1000e_reset_adaptive()
1754 mac->current_ifs_val = 0; in e1000e_reset_adaptive()
1755 mac->ifs_min_val = IFS_MIN; in e1000e_reset_adaptive()
1756 mac->ifs_max_val = IFS_MAX; in e1000e_reset_adaptive()
1757 mac->ifs_step_size = IFS_STEP; in e1000e_reset_adaptive()
1758 mac->ifs_ratio = IFS_RATIO; in e1000e_reset_adaptive()
1760 mac->in_ifs_mode = false; in e1000e_reset_adaptive()
1773 struct e1000_mac_info *mac = &hw->mac; in e1000e_update_adaptive() local
1775 if (!mac->adaptive_ifs) { in e1000e_update_adaptive()
1780 if ((mac->collision_delta * mac->ifs_ratio) > mac->tx_packet_delta) { in e1000e_update_adaptive()
1781 if (mac->tx_packet_delta > MIN_NUM_XMITS) { in e1000e_update_adaptive()
1782 mac->in_ifs_mode = true; in e1000e_update_adaptive()
1783 if (mac->current_ifs_val < mac->ifs_max_val) { in e1000e_update_adaptive()
1784 if (!mac->current_ifs_val) in e1000e_update_adaptive()
1785 mac->current_ifs_val = mac->ifs_min_val; in e1000e_update_adaptive()
1787 mac->current_ifs_val += in e1000e_update_adaptive()
1788 mac->ifs_step_size; in e1000e_update_adaptive()
1789 ew32(AIT, mac->current_ifs_val); in e1000e_update_adaptive()
1793 if (mac->in_ifs_mode && in e1000e_update_adaptive()
1794 (mac->tx_packet_delta <= MIN_NUM_XMITS)) { in e1000e_update_adaptive()
1795 mac->current_ifs_val = 0; in e1000e_update_adaptive()
1796 mac->in_ifs_mode = false; in e1000e_update_adaptive()