• Home
  • Raw
  • Download

Lines Matching refs:slave_dev

1277 static int dsa_slave_phy_connect(struct net_device *slave_dev, int addr)  in dsa_slave_phy_connect()  argument
1279 struct dsa_port *dp = dsa_slave_to_port(slave_dev); in dsa_slave_phy_connect()
1282 slave_dev->phydev = mdiobus_get_phy(ds->slave_mii_bus, addr); in dsa_slave_phy_connect()
1283 if (!slave_dev->phydev) { in dsa_slave_phy_connect()
1284 netdev_err(slave_dev, "no phy at %d\n", addr); in dsa_slave_phy_connect()
1288 return phylink_connect_phy(dp->pl, slave_dev->phydev); in dsa_slave_phy_connect()
1291 static int dsa_slave_phy_setup(struct net_device *slave_dev) in dsa_slave_phy_setup() argument
1293 struct dsa_port *dp = dsa_slave_to_port(slave_dev); in dsa_slave_phy_setup()
1303 dp->pl_config.dev = &slave_dev->dev; in dsa_slave_phy_setup()
1309 netdev_err(slave_dev, in dsa_slave_phy_setup()
1329 ret = dsa_slave_phy_connect(slave_dev, dp->index); in dsa_slave_phy_setup()
1332 netdev_err(slave_dev, "failed to connect to PHY: %pe\n", in dsa_slave_phy_setup()
1340 int dsa_slave_suspend(struct net_device *slave_dev) in dsa_slave_suspend() argument
1342 struct dsa_port *dp = dsa_slave_to_port(slave_dev); in dsa_slave_suspend()
1344 if (!netif_running(slave_dev)) in dsa_slave_suspend()
1350 netif_device_detach(slave_dev); in dsa_slave_suspend()
1359 int dsa_slave_resume(struct net_device *slave_dev) in dsa_slave_resume() argument
1361 struct dsa_port *dp = dsa_slave_to_port(slave_dev); in dsa_slave_resume()
1363 if (!netif_running(slave_dev)) in dsa_slave_resume()
1366 netif_device_attach(slave_dev); in dsa_slave_resume()
1395 struct net_device *slave_dev; in dsa_slave_create() local
1402 slave_dev = alloc_netdev_mqs(sizeof(struct dsa_slave_priv), name, in dsa_slave_create()
1405 if (slave_dev == NULL) in dsa_slave_create()
1408 slave_dev->features = master->vlan_features | NETIF_F_HW_TC; in dsa_slave_create()
1410 slave_dev->features |= NETIF_F_HW_VLAN_CTAG_FILTER; in dsa_slave_create()
1411 slave_dev->hw_features |= NETIF_F_HW_TC; in dsa_slave_create()
1412 slave_dev->features |= NETIF_F_LLTX; in dsa_slave_create()
1413 slave_dev->ethtool_ops = &dsa_slave_ethtool_ops; in dsa_slave_create()
1415 ether_addr_copy(slave_dev->dev_addr, port->mac); in dsa_slave_create()
1417 eth_hw_addr_inherit(slave_dev, master); in dsa_slave_create()
1418 slave_dev->priv_flags |= IFF_NO_QUEUE; in dsa_slave_create()
1419 slave_dev->netdev_ops = &dsa_slave_netdev_ops; in dsa_slave_create()
1420 slave_dev->min_mtu = 0; in dsa_slave_create()
1421 slave_dev->max_mtu = ETH_MAX_MTU; in dsa_slave_create()
1422 SET_NETDEV_DEVTYPE(slave_dev, &dsa_type); in dsa_slave_create()
1424 SET_NETDEV_DEV(slave_dev, port->ds->dev); in dsa_slave_create()
1425 slave_dev->dev.of_node = port->dn; in dsa_slave_create()
1426 slave_dev->vlan_features = master->vlan_features; in dsa_slave_create()
1428 p = netdev_priv(slave_dev); in dsa_slave_create()
1431 free_netdev(slave_dev); in dsa_slave_create()
1435 ret = gro_cells_init(&p->gcells, slave_dev); in dsa_slave_create()
1444 port->slave = slave_dev; in dsa_slave_create()
1446 netif_carrier_off(slave_dev); in dsa_slave_create()
1448 ret = dsa_slave_phy_setup(slave_dev); in dsa_slave_create()
1454 dsa_slave_notify(slave_dev, DSA_PORT_REGISTER); in dsa_slave_create()
1456 ret = register_netdev(slave_dev); in dsa_slave_create()
1459 ret, slave_dev->name); in dsa_slave_create()
1474 free_netdev(slave_dev); in dsa_slave_create()
1479 void dsa_slave_destroy(struct net_device *slave_dev) in dsa_slave_destroy() argument
1481 struct dsa_port *dp = dsa_slave_to_port(slave_dev); in dsa_slave_destroy()
1482 struct dsa_slave_priv *p = netdev_priv(slave_dev); in dsa_slave_destroy()
1484 netif_carrier_off(slave_dev); in dsa_slave_destroy()
1489 dsa_slave_notify(slave_dev, DSA_PORT_UNREGISTER); in dsa_slave_destroy()
1490 unregister_netdev(slave_dev); in dsa_slave_destroy()
1494 free_netdev(slave_dev); in dsa_slave_destroy()