|
@@ -1248,6 +1248,9 @@ int dsa_slave_suspend(struct net_device *slave_dev)
|
|
{
|
|
{
|
|
struct dsa_port *dp = dsa_slave_to_port(slave_dev);
|
|
struct dsa_port *dp = dsa_slave_to_port(slave_dev);
|
|
|
|
|
|
|
|
+ if (!netif_running(slave_dev))
|
|
|
|
+ return 0;
|
|
|
|
+
|
|
netif_device_detach(slave_dev);
|
|
netif_device_detach(slave_dev);
|
|
|
|
|
|
rtnl_lock();
|
|
rtnl_lock();
|
|
@@ -1261,6 +1264,9 @@ int dsa_slave_resume(struct net_device *slave_dev)
|
|
{
|
|
{
|
|
struct dsa_port *dp = dsa_slave_to_port(slave_dev);
|
|
struct dsa_port *dp = dsa_slave_to_port(slave_dev);
|
|
|
|
|
|
|
|
+ if (!netif_running(slave_dev))
|
|
|
|
+ return 0;
|
|
|
|
+
|
|
netif_device_attach(slave_dev);
|
|
netif_device_attach(slave_dev);
|
|
|
|
|
|
rtnl_lock();
|
|
rtnl_lock();
|