1 diff --git a/drivers/net/ethernet/broadcom/bcmsysport.c b/drivers/net/ethernet/broadcom/bcmsysport.c
2 index a9d3c77..c16603e 100644
3 --- a/drivers/net/ethernet/broadcom/bcmsysport.c
4 +++ b/drivers/net/ethernet/broadcom/bcmsysport.c
5 @@ -1751,7 +1751,7 @@ static int bcm_sysport_probe(struct platform_device *pdev)
6 if (of_property_read_u32(dn, "systemport,num-rxq", &rxq))
9 - dev = alloc_etherdev_mqs(sizeof(*priv), txq, rxq);
10 + dev = alloc_etherdev_mqs_sys(sizeof(*priv), txq, rxq);
14 diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
15 index 9c5529d..a3917c6 100644
16 --- a/include/linux/etherdevice.h
17 +++ b/include/linux/etherdevice.h
18 @@ -48,6 +48,8 @@ int eth_validate_addr(struct net_device *dev);
20 struct net_device *alloc_etherdev_mqs(int sizeof_priv, unsigned int txqs,
22 +struct net_device *alloc_etherdev_mqs_sys(int sizeof_priv, unsigned int txqs,
24 #define alloc_etherdev(sizeof_priv) alloc_etherdev_mq(sizeof_priv, 1)
25 #define alloc_etherdev_mq(sizeof_priv, count) alloc_etherdev_mqs(sizeof_priv, count, count)
27 diff --git a/net/ethernet/eth.c b/net/ethernet/eth.c
28 index a7a0254..0f4bc21 100644
29 --- a/net/ethernet/eth.c
30 +++ b/net/ethernet/eth.c
31 @@ -396,6 +396,13 @@ struct net_device *alloc_etherdev_mqs(int sizeof_priv, unsigned int txqs,
33 EXPORT_SYMBOL(alloc_etherdev_mqs);
35 +struct net_device *alloc_etherdev_mqs_sys(int sizeof_priv, unsigned int txqs,
38 + return alloc_netdev_mqs(sizeof_priv, "sys%d", ether_setup, txqs, rxqs);
40 +EXPORT_SYMBOL(alloc_etherdev_mqs_sys);
42 ssize_t sysfs_format_mac(char *buf, const unsigned char *addr, int len)
44 return scnprintf(buf, PAGE_SIZE, "%*phC\n", len, addr);