The order that the two 32-bit words written to the Hash Address (Low, High) Registers for matching of multicast addresses is incorrect.
Signed-off-by: Lars Reemts <[EMAIL PROTECTED]> Signed-off-by: Andrew Victor <[EMAIL PROTECTED]> diff -urN linux-2.6.21/drivers/net/arm/at91_ether.c linux-2.6.21.new/drivers/net/arm/at91_ether.c --- linux-2.6.21/drivers/net/arm/at91_ether.c Thu Apr 26 05:08:32 2007 +++ linux-2.6.21.new/drivers/net/arm/at91_ether.c Wed May 2 12:03:21 2007 @@ -535,8 +535,8 @@ mc_filter[bitnr >> 5] |= 1 << (bitnr & 31); } - at91_emac_write(AT91_EMAC_HSH, mc_filter[0]); - at91_emac_write(AT91_EMAC_HSL, mc_filter[1]); + at91_emac_write(AT91_EMAC_HSL, mc_filter[0]); + at91_emac_write(AT91_EMAC_HSH, mc_filter[1]); } /* - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html