diff options
-rw-r--r-- | drivers/net/ethernet/freescale/fec_main.c | 7 |
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 | ||
62 | static 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); |