aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/stmicro/stmmac/stmmac_main.c')
-rw-r--r--drivers/net/ethernet/stmicro/stmmac/stmmac_main.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index c6e567e04eff..68fb5b0593a0 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -42,6 +42,7 @@
42#include <linux/crc32.h> 42#include <linux/crc32.h>
43#include <linux/mii.h> 43#include <linux/mii.h>
44#include <linux/phy.h> 44#include <linux/phy.h>
45#include <linux/if.h>
45#include <linux/if_vlan.h> 46#include <linux/if_vlan.h>
46#include <linux/dma-mapping.h> 47#include <linux/dma-mapping.h>
47#include <linux/slab.h> 48#include <linux/slab.h>
@@ -1284,7 +1285,7 @@ static int stmmac_config(struct net_device *dev, struct ifmap *map)
1284} 1285}
1285 1286
1286/** 1287/**
1287 * stmmac_multicast_list - entry point for multicast addressing 1288 * stmmac_set_rx_mode - entry point for multicast addressing
1288 * @dev : pointer to the device structure 1289 * @dev : pointer to the device structure
1289 * Description: 1290 * Description:
1290 * This function is a driver entry point which gets called by the kernel 1291 * This function is a driver entry point which gets called by the kernel
@@ -1292,7 +1293,7 @@ static int stmmac_config(struct net_device *dev, struct ifmap *map)
1292 * Return value: 1293 * Return value:
1293 * void. 1294 * void.
1294 */ 1295 */
1295static void stmmac_multicast_list(struct net_device *dev) 1296static void stmmac_set_rx_mode(struct net_device *dev)
1296{ 1297{
1297 struct stmmac_priv *priv = netdev_priv(dev); 1298 struct stmmac_priv *priv = netdev_priv(dev);
1298 1299
@@ -1421,7 +1422,7 @@ static const struct net_device_ops stmmac_netdev_ops = {
1421 .ndo_stop = stmmac_release, 1422 .ndo_stop = stmmac_release,
1422 .ndo_change_mtu = stmmac_change_mtu, 1423 .ndo_change_mtu = stmmac_change_mtu,
1423 .ndo_fix_features = stmmac_fix_features, 1424 .ndo_fix_features = stmmac_fix_features,
1424 .ndo_set_multicast_list = stmmac_multicast_list, 1425 .ndo_set_rx_mode = stmmac_set_rx_mode,
1425 .ndo_tx_timeout = stmmac_tx_timeout, 1426 .ndo_tx_timeout = stmmac_tx_timeout,
1426 .ndo_do_ioctl = stmmac_ioctl, 1427 .ndo_do_ioctl = stmmac_ioctl,
1427 .ndo_set_config = stmmac_config, 1428 .ndo_set_config = stmmac_config,
@@ -1498,10 +1499,12 @@ static int stmmac_mac_device_setup(struct net_device *dev)
1498 1499
1499 struct mac_device_info *device; 1500 struct mac_device_info *device;
1500 1501
1501 if (priv->plat->has_gmac) 1502 if (priv->plat->has_gmac) {
1503 dev->priv_flags |= IFF_UNICAST_FLT;
1502 device = dwmac1000_setup(priv->ioaddr); 1504 device = dwmac1000_setup(priv->ioaddr);
1503 else 1505 } else {
1504 device = dwmac100_setup(priv->ioaddr); 1506 device = dwmac100_setup(priv->ioaddr);
1507 }
1505 1508
1506 if (!device) 1509 if (!device)
1507 return -ENOMEM; 1510 return -ENOMEM;