mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 03:27:44 -04:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Just some simple overlapping changes in marvell PHY driver and the DSA core code. Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
commit
216fe8f021
436 changed files with 3741 additions and 2070 deletions
|
|
@ -228,6 +228,53 @@ static int dsa_switch_rcv(struct sk_buff *skb, struct net_device *dev,
|
|||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PM_SLEEP
|
||||
int dsa_switch_suspend(struct dsa_switch *ds)
|
||||
{
|
||||
int i, ret = 0;
|
||||
|
||||
/* Suspend slave network devices */
|
||||
for (i = 0; i < ds->num_ports; i++) {
|
||||
if (!dsa_is_port_initialized(ds, i))
|
||||
continue;
|
||||
|
||||
ret = dsa_slave_suspend(ds->ports[i].netdev);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (ds->ops->suspend)
|
||||
ret = ds->ops->suspend(ds);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dsa_switch_suspend);
|
||||
|
||||
int dsa_switch_resume(struct dsa_switch *ds)
|
||||
{
|
||||
int i, ret = 0;
|
||||
|
||||
if (ds->ops->resume)
|
||||
ret = ds->ops->resume(ds);
|
||||
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* Resume slave network devices */
|
||||
for (i = 0; i < ds->num_ports; i++) {
|
||||
if (!dsa_is_port_initialized(ds, i))
|
||||
continue;
|
||||
|
||||
ret = dsa_slave_resume(ds->ports[i].netdev);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dsa_switch_resume);
|
||||
#endif
|
||||
|
||||
static struct packet_type dsa_pack_type __read_mostly = {
|
||||
.type = cpu_to_be16(ETH_P_XDSA),
|
||||
.func = dsa_switch_rcv,
|
||||
|
|
|
|||
|
|
@ -474,8 +474,10 @@ static void dsa_dst_unapply(struct dsa_switch_tree *dst)
|
|||
dsa_ds_unapply(dst, ds);
|
||||
}
|
||||
|
||||
if (dst->cpu_dp)
|
||||
if (dst->cpu_dp) {
|
||||
dsa_cpu_port_ethtool_restore(dst->cpu_dp);
|
||||
dst->cpu_dp = NULL;
|
||||
}
|
||||
|
||||
pr_info("DSA: tree %d unapplied\n", dst->tree);
|
||||
dst->applied = false;
|
||||
|
|
|
|||
|
|
@ -288,53 +288,6 @@ static void dsa_switch_destroy(struct dsa_switch *ds)
|
|||
dsa_switch_unregister_notifier(ds);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PM_SLEEP
|
||||
int dsa_switch_suspend(struct dsa_switch *ds)
|
||||
{
|
||||
int i, ret = 0;
|
||||
|
||||
/* Suspend slave network devices */
|
||||
for (i = 0; i < ds->num_ports; i++) {
|
||||
if (!dsa_is_port_initialized(ds, i))
|
||||
continue;
|
||||
|
||||
ret = dsa_slave_suspend(ds->ports[i].netdev);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (ds->ops->suspend)
|
||||
ret = ds->ops->suspend(ds);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dsa_switch_suspend);
|
||||
|
||||
int dsa_switch_resume(struct dsa_switch *ds)
|
||||
{
|
||||
int i, ret = 0;
|
||||
|
||||
if (ds->ops->resume)
|
||||
ret = ds->ops->resume(ds);
|
||||
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/* Resume slave network devices */
|
||||
for (i = 0; i < ds->num_ports; i++) {
|
||||
if (!dsa_is_port_initialized(ds, i))
|
||||
continue;
|
||||
|
||||
ret = dsa_slave_resume(ds->ports[i].netdev);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(dsa_switch_resume);
|
||||
#endif
|
||||
|
||||
/* platform driver init and cleanup *****************************************/
|
||||
static int dev_is_class(struct device *dev, void *class)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue