Lines Matching refs:user_dev

2569 static int dsa_user_phy_connect(struct net_device *user_dev, int addr,  in dsa_user_phy_connect()  argument
2572 struct dsa_port *dp = dsa_user_to_port(user_dev); in dsa_user_phy_connect()
2575 user_dev->phydev = mdiobus_get_phy(ds->user_mii_bus, addr); in dsa_user_phy_connect()
2576 if (!user_dev->phydev) { in dsa_user_phy_connect()
2577 netdev_err(user_dev, "no phy at %d\n", addr); in dsa_user_phy_connect()
2581 user_dev->phydev->dev_flags |= flags; in dsa_user_phy_connect()
2583 return phylink_connect_phy(dp->pl, user_dev->phydev); in dsa_user_phy_connect()
2586 static int dsa_user_phy_setup(struct net_device *user_dev) in dsa_user_phy_setup() argument
2588 struct dsa_port *dp = dsa_user_to_port(user_dev); in dsa_user_phy_setup()
2594 dp->pl_config.dev = &user_dev->dev; in dsa_user_phy_setup()
2618 ret = dsa_user_phy_connect(user_dev, dp->index, phy_flags); in dsa_user_phy_setup()
2621 netdev_err(user_dev, "failed to connect to PHY: %pe\n", in dsa_user_phy_setup()
2658 int dsa_user_suspend(struct net_device *user_dev) in dsa_user_suspend() argument
2660 struct dsa_port *dp = dsa_user_to_port(user_dev); in dsa_user_suspend()
2662 if (!netif_running(user_dev)) in dsa_user_suspend()
2665 netif_device_detach(user_dev); in dsa_user_suspend()
2674 int dsa_user_resume(struct net_device *user_dev) in dsa_user_resume() argument
2676 struct dsa_port *dp = dsa_user_to_port(user_dev); in dsa_user_resume()
2678 if (!netif_running(user_dev)) in dsa_user_resume()
2681 netif_device_attach(user_dev); in dsa_user_resume()
2694 struct net_device *user_dev; in dsa_user_create() local
2711 user_dev = alloc_netdev_mqs(sizeof(struct dsa_user_priv), name, in dsa_user_create()
2714 if (user_dev == NULL) in dsa_user_create()
2717 user_dev->rtnl_link_ops = &dsa_link_ops; in dsa_user_create()
2718 user_dev->ethtool_ops = &dsa_user_ethtool_ops; in dsa_user_create()
2720 user_dev->dcbnl_ops = &dsa_user_dcbnl_ops; in dsa_user_create()
2723 eth_hw_addr_set(user_dev, port->mac); in dsa_user_create()
2725 eth_hw_addr_inherit(user_dev, conduit); in dsa_user_create()
2726 user_dev->priv_flags |= IFF_NO_QUEUE; in dsa_user_create()
2728 user_dev->priv_flags |= IFF_UNICAST_FLT; in dsa_user_create()
2729 user_dev->netdev_ops = &dsa_user_netdev_ops; in dsa_user_create()
2731 user_dev->max_mtu = ds->ops->port_max_mtu(ds, port->index); in dsa_user_create()
2732 SET_NETDEV_DEVTYPE(user_dev, &dsa_type); in dsa_user_create()
2734 SET_NETDEV_DEV(user_dev, port->ds->dev); in dsa_user_create()
2735 SET_NETDEV_DEVLINK_PORT(user_dev, &port->devlink_port); in dsa_user_create()
2736 user_dev->dev.of_node = port->dn; in dsa_user_create()
2737 user_dev->vlan_features = conduit->vlan_features; in dsa_user_create()
2739 p = netdev_priv(user_dev); in dsa_user_create()
2740 user_dev->pcpu_stat_type = NETDEV_PCPU_STAT_TSTATS; in dsa_user_create()
2742 ret = gro_cells_init(&p->gcells, user_dev); in dsa_user_create()
2748 port->user = user_dev; in dsa_user_create()
2749 dsa_user_setup_tagger(user_dev); in dsa_user_create()
2751 netif_carrier_off(user_dev); in dsa_user_create()
2753 ret = dsa_user_phy_setup(user_dev); in dsa_user_create()
2755 netdev_err(user_dev, in dsa_user_create()
2763 ret = dsa_user_change_mtu(user_dev, ETH_DATA_LEN); in dsa_user_create()
2768 ret = register_netdevice(user_dev); in dsa_user_create()
2771 ret, user_dev->name); in dsa_user_create()
2777 ret = dsa_user_dcbnl_init(user_dev); in dsa_user_create()
2779 netdev_err(user_dev, in dsa_user_create()
2787 ret = netdev_upper_dev_link(conduit, user_dev, NULL); in dsa_user_create()
2797 unregister_netdev(user_dev); in dsa_user_create()
2806 free_netdev(user_dev); in dsa_user_create()
2811 void dsa_user_destroy(struct net_device *user_dev) in dsa_user_destroy() argument
2813 struct net_device *conduit = dsa_user_to_conduit(user_dev); in dsa_user_destroy()
2814 struct dsa_port *dp = dsa_user_to_port(user_dev); in dsa_user_destroy()
2815 struct dsa_user_priv *p = netdev_priv(user_dev); in dsa_user_destroy()
2817 netif_carrier_off(user_dev); in dsa_user_destroy()
2819 netdev_upper_dev_unlink(conduit, user_dev); in dsa_user_destroy()
2820 unregister_netdevice(user_dev); in dsa_user_destroy()
2826 free_netdev(user_dev); in dsa_user_destroy()