aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/ethernet/freescale/fec_main.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index ed6180e7db2f..5664acd8e0f4 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -59,6 +59,8 @@
59 59
60#include "fec.h" 60#include "fec.h"
61 61
62static void set_multicast_list(struct net_device *ndev);
63
62#if defined(CONFIG_ARM) 64#if defined(CONFIG_ARM)
63#define FEC_ALIGNMENT 0xf 65#define FEC_ALIGNMENT 0xf
64#else 66#else
@@ -470,9 +472,8 @@ fec_restart(struct net_device *ndev, int duplex)
470 /* Clear any outstanding interrupt. */ 472 /* Clear any outstanding interrupt. */
471 writel(0xffc00000, fep->hwp + FEC_IEVENT); 473 writel(0xffc00000, fep->hwp + FEC_IEVENT);
472 474
473 /* Reset all multicast. */ 475 /* Setup multicast filter. */
474 writel(0, fep->hwp + FEC_GRP_HASH_TABLE_HIGH); 476 set_multicast_list(ndev);
475 writel(0, fep->hwp + FEC_GRP_HASH_TABLE_LOW);
476#ifndef CONFIG_M5272 477#ifndef CONFIG_M5272
477 writel(0, fep->hwp + FEC_HASH_TABLE_HIGH); 478 writel(0, fep->hwp + FEC_HASH_TABLE_HIGH);
478 writel(0, fep->hwp + FEC_HASH_TABLE_LOW); 479 writel(0, fep->hwp + FEC_HASH_TABLE_LOW);