Lines Matching refs:mac

513 	struct mtk_mac *mac = container_of(config, struct mtk_mac,  in mtk_mac_select_pcs()  local
515 struct mtk_eth *eth = mac->hw; in mtk_mac_select_pcs()
521 0 : mac->id; in mtk_mac_select_pcs()
532 struct mtk_mac *mac = container_of(config, struct mtk_mac, in mtk_mac_config() local
534 struct mtk_eth *eth = mac->hw; in mtk_mac_config()
540 mac->interface != state->interface) { in mtk_mac_config()
550 err = mtk_gmac_rgmii_path_setup(eth, mac->id); in mtk_mac_config()
558 err = mtk_gmac_sgmii_path_setup(eth, mac->id); in mtk_mac_config()
564 err = mtk_gmac_gephy_path_setup(eth, mac->id); in mtk_mac_config()
576 if (!mac->id && state->interface != PHY_INTERFACE_MODE_SGMII && in mtk_mac_config()
578 MTK_HAS_CAPS(mac->hw->soc->caps, MTK_GMAC1_TRGMII)) { in mtk_mac_config()
579 if (MTK_HAS_CAPS(mac->hw->soc->caps, in mtk_mac_config()
581 if (mt7621_gmac0_rgmii_adjust(mac->hw, in mtk_mac_config()
585 mtk_gmac0_rgmii_adjust(mac->hw, in mtk_mac_config()
590 mtk_w32(mac->hw, in mtk_mac_config()
595 mtk_m32(mac->hw, 0, RXC_RST | RXC_DQSISEL, in mtk_mac_config()
597 mtk_m32(mac->hw, RXC_RST, 0, TRGMII_RCK_CTRL); in mtk_mac_config()
613 val &= ~SYSCFG0_GE_MODE(SYSCFG0_GE_MASK, mac->id); in mtk_mac_config()
614 val |= SYSCFG0_GE_MODE(ge_mode, mac->id); in mtk_mac_config()
617 mac->interface = state->interface; in mtk_mac_config()
633 mac->syscfg0 = val; in mtk_mac_config()
642 mac->interface == PHY_INTERFACE_MODE_INTERNAL) { in mtk_mac_config()
643 mtk_w32(mac->hw, MTK_GDMA_XGDM_SEL, MTK_GDMA_EG_CTRL(mac->id)); in mtk_mac_config()
644 mtk_w32(mac->hw, MAC_MCR_FORCE_LINK_DOWN, MTK_MAC_MCR(mac->id)); in mtk_mac_config()
653 mac->id, phy_modes(state->interface)); in mtk_mac_config()
658 mac->id, phy_modes(state->interface), err); in mtk_mac_config()
664 struct mtk_mac *mac = container_of(config, struct mtk_mac, in mtk_mac_finish() local
666 struct mtk_eth *eth = mac->hw; in mtk_mac_finish()
673 SYSCFG0_SGMII_MASK, mac->syscfg0); in mtk_mac_finish()
676 mcr_cur = mtk_r32(mac->hw, MTK_MAC_MCR(mac->id)); in mtk_mac_finish()
683 mtk_w32(mac->hw, mcr_new, MTK_MAC_MCR(mac->id)); in mtk_mac_finish()
691 struct mtk_mac *mac = container_of(config, struct mtk_mac, in mtk_mac_link_down() local
693 u32 mcr = mtk_r32(mac->hw, MTK_MAC_MCR(mac->id)); in mtk_mac_link_down()
696 mtk_w32(mac->hw, mcr, MTK_MAC_MCR(mac->id)); in mtk_mac_link_down()
773 struct mtk_mac *mac = container_of(config, struct mtk_mac, in mtk_mac_link_up() local
777 mcr = mtk_r32(mac->hw, MTK_MAC_MCR(mac->id)); in mtk_mac_link_up()
783 mac->speed = speed; in mtk_mac_link_up()
805 mtk_w32(mac->hw, mcr, MTK_MAC_MCR(mac->id)); in mtk_mac_link_up()
934 struct mtk_mac *mac = netdev_priv(dev); in mtk_set_mac_address() local
935 struct mtk_eth *eth = mac->hw; in mtk_set_mac_address()
941 if (unlikely(test_bit(MTK_RESETTING, &mac->hw->state))) in mtk_set_mac_address()
944 spin_lock_bh(&mac->hw->page_lock); in mtk_set_mac_address()
946 mtk_w32(mac->hw, (macaddr[0] << 8) | macaddr[1], in mtk_set_mac_address()
948 mtk_w32(mac->hw, (macaddr[2] << 24) | (macaddr[3] << 16) | in mtk_set_mac_address()
952 mtk_w32(mac->hw, (macaddr[0] << 8) | macaddr[1], in mtk_set_mac_address()
953 MTK_GDMA_MAC_ADRH(mac->id)); in mtk_set_mac_address()
954 mtk_w32(mac->hw, (macaddr[2] << 24) | (macaddr[3] << 16) | in mtk_set_mac_address()
956 MTK_GDMA_MAC_ADRL(mac->id)); in mtk_set_mac_address()
958 spin_unlock_bh(&mac->hw->page_lock); in mtk_set_mac_address()
963 void mtk_stats_update_mac(struct mtk_mac *mac) in mtk_stats_update_mac() argument
965 struct mtk_hw_stats *hw_stats = mac->hw_stats; in mtk_stats_update_mac()
966 struct mtk_eth *eth = mac->hw; in mtk_stats_update_mac()
971 hw_stats->tx_packets += mtk_r32(mac->hw, MT7628_SDM_TPCNT); in mtk_stats_update_mac()
972 hw_stats->tx_bytes += mtk_r32(mac->hw, MT7628_SDM_TBCNT); in mtk_stats_update_mac()
973 hw_stats->rx_packets += mtk_r32(mac->hw, MT7628_SDM_RPCNT); in mtk_stats_update_mac()
974 hw_stats->rx_bytes += mtk_r32(mac->hw, MT7628_SDM_RBCNT); in mtk_stats_update_mac()
976 mtk_r32(mac->hw, MT7628_SDM_CS_ERR); in mtk_stats_update_mac()
982 hw_stats->rx_bytes += mtk_r32(mac->hw, reg_map->gdm1_cnt + offs); in mtk_stats_update_mac()
983 stats = mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x4 + offs); in mtk_stats_update_mac()
987 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x8 + offs); in mtk_stats_update_mac()
989 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x10 + offs); in mtk_stats_update_mac()
991 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x14 + offs); in mtk_stats_update_mac()
993 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x18 + offs); in mtk_stats_update_mac()
995 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x1c + offs); in mtk_stats_update_mac()
997 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x20 + offs); in mtk_stats_update_mac()
999 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x24 + offs); in mtk_stats_update_mac()
1003 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x50 + offs); in mtk_stats_update_mac()
1005 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x54 + offs); in mtk_stats_update_mac()
1007 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x40 + offs); in mtk_stats_update_mac()
1008 stats = mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x44 + offs); in mtk_stats_update_mac()
1012 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x48 + offs); in mtk_stats_update_mac()
1015 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x28 + offs); in mtk_stats_update_mac()
1017 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x2c + offs); in mtk_stats_update_mac()
1019 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x30 + offs); in mtk_stats_update_mac()
1020 stats = mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x34 + offs); in mtk_stats_update_mac()
1024 mtk_r32(mac->hw, reg_map->gdm1_cnt + 0x38 + offs); in mtk_stats_update_mac()
1036 if (!eth->mac[i] || !eth->mac[i]->hw_stats) in mtk_stats_update()
1038 if (spin_trylock(&eth->mac[i]->hw_stats->stats_lock)) { in mtk_stats_update()
1039 mtk_stats_update_mac(eth->mac[i]); in mtk_stats_update()
1040 spin_unlock(&eth->mac[i]->hw_stats->stats_lock); in mtk_stats_update()
1048 struct mtk_mac *mac = netdev_priv(dev); in mtk_get_stats64() local
1049 struct mtk_hw_stats *hw_stats = mac->hw_stats; in mtk_get_stats64()
1054 mtk_stats_update_mac(mac); in mtk_get_stats64()
1290 struct mtk_mac *mac = netdev_priv(dev); in mtk_tx_set_dma_desc_v1() local
1291 struct mtk_eth *eth = mac->hw; in mtk_tx_set_dma_desc_v1()
1303 data = (mac->id + 1) << TX_DMA_FPORT_SHIFT; /* forward port */ in mtk_tx_set_dma_desc_v1()
1320 struct mtk_mac *mac = netdev_priv(dev); in mtk_tx_set_dma_desc_v2() local
1322 struct mtk_eth *eth = mac->hw; in mtk_tx_set_dma_desc_v2()
1337 switch (mac->id) { in mtk_tx_set_dma_desc_v2()
1376 struct mtk_mac *mac = netdev_priv(dev); in mtk_tx_set_dma_desc() local
1377 struct mtk_eth *eth = mac->hw; in mtk_tx_set_dma_desc()
1399 struct mtk_mac *mac = netdev_priv(dev); in mtk_tx_map() local
1400 struct mtk_eth *eth = mac->hw; in mtk_tx_map()
1426 itx_buf->mac_id = mac->id; in mtk_tx_map()
1474 tx_buf->mac_id = mac->id; in mtk_tx_map()
1582 struct mtk_mac *mac = netdev_priv(dev); in mtk_start_xmit() local
1583 struct mtk_eth *eth = mac->hw; in mtk_start_xmit()
1756 struct mtk_mac *mac = netdev_priv(dev); in mtk_xdp_frame_map() local
1776 tx_buf->mac_id = mac->id; in mtk_xdp_frame_map()
1793 struct mtk_mac *mac = netdev_priv(dev); in mtk_xdp_submit_frame() local
1798 .qid = mac->id, in mtk_xdp_submit_frame()
1848 txd_info.qid = mac->id; in mtk_xdp_submit_frame()
1910 struct mtk_mac *mac = netdev_priv(dev); in mtk_xdp_xmit() local
1911 struct mtk_hw_stats *hw_stats = mac->hw_stats; in mtk_xdp_xmit()
1912 struct mtk_eth *eth = mac->hw; in mtk_xdp_xmit()
1935 struct mtk_mac *mac = netdev_priv(dev); in mtk_xdp_run() local
1936 struct mtk_hw_stats *hw_stats = mac->hw_stats; in mtk_xdp_run()
2013 int mac = 0; in mtk_poll_rx() local
2033 mac = val - 1; in mtk_poll_rx()
2036 mac = MTK_GMAC3_ID; in mtk_poll_rx()
2043 mac = RX_DMA_GET_SPORT(trxd.rxd4) - 1; in mtk_poll_rx()
2046 if (unlikely(mac < 0 || mac >= MTK_MAX_DEVS || in mtk_poll_rx()
2047 !eth->netdev[mac])) in mtk_poll_rx()
2050 netdev = eth->netdev[mac]; in mtk_poll_rx()
2225 mtk_poll_tx_done(struct mtk_eth *eth, struct mtk_poll_state *state, u8 mac, in mtk_poll_tx_done() argument
2236 dev = eth->netdev[mac]; in mtk_poll_tx_done()
2886 static int mtk_hwlro_get_ip_cnt(struct mtk_mac *mac) in mtk_hwlro_get_ip_cnt() argument
2892 if (mac->hwlro_ip[i]) in mtk_hwlro_get_ip_cnt()
2904 struct mtk_mac *mac = netdev_priv(dev); in mtk_hwlro_add_ipaddr() local
2905 struct mtk_eth *eth = mac->hw; in mtk_hwlro_add_ipaddr()
2913 mac->hwlro_ip[fsp->location] = htonl(fsp->h_u.tcp_ip4_spec.ip4dst); in mtk_hwlro_add_ipaddr()
2914 hwlro_idx = (mac->id * MTK_MAX_LRO_IP_CNT) + fsp->location; in mtk_hwlro_add_ipaddr()
2916 mac->hwlro_ip_cnt = mtk_hwlro_get_ip_cnt(mac); in mtk_hwlro_add_ipaddr()
2918 mtk_hwlro_val_ipaddr(eth, hwlro_idx, mac->hwlro_ip[fsp->location]); in mtk_hwlro_add_ipaddr()
2928 struct mtk_mac *mac = netdev_priv(dev); in mtk_hwlro_del_ipaddr() local
2929 struct mtk_eth *eth = mac->hw; in mtk_hwlro_del_ipaddr()
2935 mac->hwlro_ip[fsp->location] = 0; in mtk_hwlro_del_ipaddr()
2936 hwlro_idx = (mac->id * MTK_MAX_LRO_IP_CNT) + fsp->location; in mtk_hwlro_del_ipaddr()
2938 mac->hwlro_ip_cnt = mtk_hwlro_get_ip_cnt(mac); in mtk_hwlro_del_ipaddr()
2947 struct mtk_mac *mac = netdev_priv(dev); in mtk_hwlro_netdev_disable() local
2948 struct mtk_eth *eth = mac->hw; in mtk_hwlro_netdev_disable()
2952 mac->hwlro_ip[i] = 0; in mtk_hwlro_netdev_disable()
2953 hwlro_idx = (mac->id * MTK_MAX_LRO_IP_CNT) + i; in mtk_hwlro_netdev_disable()
2958 mac->hwlro_ip_cnt = 0; in mtk_hwlro_netdev_disable()
2964 struct mtk_mac *mac = netdev_priv(dev); in mtk_hwlro_get_fdir_entry() local
2968 if (fsp->location >= ARRAY_SIZE(mac->hwlro_ip)) in mtk_hwlro_get_fdir_entry()
2973 fsp->h_u.tcp_ip4_spec.ip4dst = ntohl(mac->hwlro_ip[fsp->location]); in mtk_hwlro_get_fdir_entry()
2992 struct mtk_mac *mac = netdev_priv(dev); in mtk_hwlro_get_fdir_all() local
3000 if (mac->hwlro_ip[i]) { in mtk_hwlro_get_fdir_all()
3015 struct mtk_mac *mac = netdev_priv(dev); in mtk_fix_features() local
3016 int ip_cnt = mtk_hwlro_get_ip_cnt(mac); in mtk_fix_features()
3152 struct mtk_mac *mac = netdev_priv(dev); in mtk_tx_timeout() local
3153 struct mtk_eth *eth = mac->hw; in mtk_tx_timeout()
3161 eth->netdev[mac->id]->stats.tx_errors++; in mtk_tx_timeout()
3215 struct mtk_mac *mac = netdev_priv(dev); in mtk_poll_controller() local
3216 struct mtk_eth *eth = mac->hw; in mtk_poll_controller()
3311 struct mtk_mac *mac = container_of(n, struct mtk_mac, device_notifier); in mtk_device_event() local
3312 struct mtk_eth *eth = mac->hw; in mtk_device_event()
3323 if (netdev_priv(ldev) == mac) in mtk_device_event()
3343 if (mac->speed > 0 && mac->speed <= s.base.speed) in mtk_device_event()
3353 struct mtk_mac *mac = netdev_priv(dev); in mtk_open() local
3354 struct mtk_eth *eth = mac->hw; in mtk_open()
3357 err = phylink_of_phy_connect(mac->phylink, mac->of_node, 0); in mtk_open()
3372 phylink_disconnect_phy(mac->phylink); in mtk_open()
3392 phylink_start(mac->phylink); in mtk_open()
3453 struct mtk_mac *mac = netdev_priv(dev); in mtk_stop() local
3454 struct mtk_eth *eth = mac->hw; in mtk_stop()
3457 phylink_stop(mac->phylink); in mtk_stop()
3461 phylink_disconnect_phy(mac->phylink); in mtk_stop()
3492 struct mtk_mac *mac = netdev_priv(dev); in mtk_xdp_setup() local
3493 struct mtk_eth *eth = mac->hw; in mtk_xdp_setup()
3633 static void mtk_set_mcr_max_rx(struct mtk_mac *mac, u32 val) in mtk_set_mcr_max_rx() argument
3635 struct mtk_eth *eth = mac->hw; in mtk_set_mcr_max_rx()
3641 mcr_cur = mtk_r32(mac->hw, MTK_MAC_MCR(mac->id)); in mtk_set_mcr_max_rx()
3654 mtk_w32(mac->hw, mcr_new, MTK_MAC_MCR(mac->id)); in mtk_set_mcr_max_rx()
4033 struct mtk_mac *mac = netdev_priv(dev); in mtk_uninit() local
4034 struct mtk_eth *eth = mac->hw; in mtk_uninit()
4036 phylink_disconnect_phy(mac->phylink); in mtk_uninit()
4044 struct mtk_mac *mac = netdev_priv(dev); in mtk_change_mtu() local
4045 struct mtk_eth *eth = mac->hw; in mtk_change_mtu()
4053 mtk_set_mcr_max_rx(mac, length); in mtk_change_mtu()
4061 struct mtk_mac *mac = netdev_priv(dev); in mtk_do_ioctl() local
4067 return phylink_mii_ioctl(mac->phylink, ifr, cmd); in mtk_do_ioctl()
4195 struct mtk_mac *mac; in mtk_unreg_dev() local
4198 mac = netdev_priv(eth->netdev[i]); in mtk_unreg_dev()
4200 unregister_netdevice_notifier(&mac->device_notifier); in mtk_unreg_dev()
4229 struct mtk_mac *mac = netdev_priv(ndev); in mtk_get_link_ksettings() local
4231 if (unlikely(test_bit(MTK_RESETTING, &mac->hw->state))) in mtk_get_link_ksettings()
4234 return phylink_ethtool_ksettings_get(mac->phylink, cmd); in mtk_get_link_ksettings()
4240 struct mtk_mac *mac = netdev_priv(ndev); in mtk_set_link_ksettings() local
4242 if (unlikely(test_bit(MTK_RESETTING, &mac->hw->state))) in mtk_set_link_ksettings()
4245 return phylink_ethtool_ksettings_set(mac->phylink, cmd); in mtk_set_link_ksettings()
4251 struct mtk_mac *mac = netdev_priv(dev); in mtk_get_drvinfo() local
4253 strscpy(info->driver, mac->hw->dev->driver->name, sizeof(info->driver)); in mtk_get_drvinfo()
4254 strscpy(info->bus_info, dev_name(mac->hw->dev), sizeof(info->bus_info)); in mtk_get_drvinfo()
4260 struct mtk_mac *mac = netdev_priv(dev); in mtk_get_msglevel() local
4262 return mac->hw->msg_enable; in mtk_get_msglevel()
4267 struct mtk_mac *mac = netdev_priv(dev); in mtk_set_msglevel() local
4269 mac->hw->msg_enable = value; in mtk_set_msglevel()
4274 struct mtk_mac *mac = netdev_priv(dev); in mtk_nway_reset() local
4276 if (unlikely(test_bit(MTK_RESETTING, &mac->hw->state))) in mtk_nway_reset()
4279 if (!mac->phylink) in mtk_nway_reset()
4282 return phylink_ethtool_nway_reset(mac->phylink); in mtk_nway_reset()
4291 struct mtk_mac *mac = netdev_priv(dev); in mtk_get_strings() local
4297 if (mtk_page_pool_enabled(mac->hw)) in mtk_get_strings()
4311 struct mtk_mac *mac = netdev_priv(dev); in mtk_get_sset_count() local
4313 if (mtk_page_pool_enabled(mac->hw)) in mtk_get_sset_count()
4341 struct mtk_mac *mac = netdev_priv(dev); in mtk_get_ethtool_stats() local
4342 struct mtk_hw_stats *hwstats = mac->hw_stats; in mtk_get_ethtool_stats()
4347 if (unlikely(test_bit(MTK_RESETTING, &mac->hw->state))) in mtk_get_ethtool_stats()
4352 mtk_stats_update_mac(mac); in mtk_get_ethtool_stats()
4365 if (mtk_page_pool_enabled(mac->hw)) in mtk_get_ethtool_stats()
4366 mtk_ethtool_pp_stats(mac->hw, data_dst); in mtk_get_ethtool_stats()
4384 struct mtk_mac *mac = netdev_priv(dev); in mtk_get_rxnfc() local
4386 cmd->rule_cnt = mac->hwlro_ip_cnt; in mtk_get_rxnfc()
4429 struct mtk_mac *mac = netdev_priv(dev); in mtk_select_queue() local
4435 queue = mac->id; in mtk_select_queue()
4485 struct mtk_mac *mac; in mtk_add_mac() local
4509 eth->netdev[id] = alloc_etherdev_mqs(sizeof(*mac), txqs, 1); in mtk_add_mac()
4514 mac = netdev_priv(eth->netdev[id]); in mtk_add_mac()
4515 eth->mac[id] = mac; in mtk_add_mac()
4516 mac->id = id; in mtk_add_mac()
4517 mac->hw = eth; in mtk_add_mac()
4518 mac->of_node = np; in mtk_add_mac()
4520 err = of_get_ethdev_address(mac->of_node, eth->netdev[id]); in mtk_add_mac()
4531 memset(mac->hwlro_ip, 0, sizeof(mac->hwlro_ip)); in mtk_add_mac()
4532 mac->hwlro_ip_cnt = 0; in mtk_add_mac()
4534 mac->hw_stats = devm_kzalloc(eth->dev, in mtk_add_mac()
4535 sizeof(*mac->hw_stats), in mtk_add_mac()
4537 if (!mac->hw_stats) { in mtk_add_mac()
4542 spin_lock_init(&mac->hw_stats->stats_lock); in mtk_add_mac()
4543 u64_stats_init(&mac->hw_stats->syncp); in mtk_add_mac()
4546 mac->hw_stats->reg_offset = id * 0x80; in mtk_add_mac()
4548 mac->hw_stats->reg_offset = id * 0x40; in mtk_add_mac()
4558 mac->interface = PHY_INTERFACE_MODE_NA; in mtk_add_mac()
4559 mac->speed = SPEED_UNKNOWN; in mtk_add_mac()
4561 mac->phylink_config.dev = &eth->netdev[id]->dev; in mtk_add_mac()
4562 mac->phylink_config.type = PHYLINK_NETDEV; in mtk_add_mac()
4563 mac->phylink_config.mac_capabilities = MAC_ASYM_PAUSE | MAC_SYM_PAUSE | in mtk_add_mac()
4570 if (!mac->hw->soc->disable_pll_modes || mac->id != 0) { in mtk_add_mac()
4572 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4574 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4576 if (MTK_HAS_CAPS(mac->hw->soc->caps, MTK_RGMII)) in mtk_add_mac()
4577 phy_interface_set_rgmii(mac->phylink_config.supported_interfaces); in mtk_add_mac()
4580 if (MTK_HAS_CAPS(mac->hw->soc->caps, MTK_TRGMII) && !mac->id) in mtk_add_mac()
4582 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4585 if (MTK_HAS_CAPS(mac->hw->soc->caps, MTK_GMAC1_TRGMII) && in mtk_add_mac()
4586 MTK_HAS_CAPS(mac->hw->soc->caps, MTK_TRGMII_MT7621_CLK)) { in mtk_add_mac()
4590 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4593 if (MTK_HAS_CAPS(mac->hw->soc->caps, MTK_SGMII)) { in mtk_add_mac()
4595 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4597 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4599 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4602 if (mtk_is_netsys_v3_or_greater(mac->hw) && in mtk_add_mac()
4603 MTK_HAS_CAPS(mac->hw->soc->caps, MTK_ESW_BIT) && in mtk_add_mac()
4605 mac->phylink_config.mac_capabilities = MAC_ASYM_PAUSE | in mtk_add_mac()
4608 phy_interface_zero(mac->phylink_config.supported_interfaces); in mtk_add_mac()
4610 mac->phylink_config.supported_interfaces); in mtk_add_mac()
4613 phylink = phylink_create(&mac->phylink_config, in mtk_add_mac()
4614 of_fwnode_handle(mac->of_node), in mtk_add_mac()
4621 mac->phylink = phylink; in mtk_add_mac()
4646 mac->device_notifier.notifier_call = mtk_device_event; in mtk_add_mac()
4647 register_netdevice_notifier(&mac->device_notifier); in mtk_add_mac()
5010 struct mtk_mac *mac; in mtk_remove() local
5018 mac = netdev_priv(eth->netdev[i]); in mtk_remove()
5019 phylink_disconnect_phy(mac->phylink); in mtk_remove()