From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff Garzik Subject: Re: [PATCH] Fix ethernet multicast for ucc_geth. Date: Mon, 29 Oct 2007 06:05:35 -0400 Message-ID: <4725B06F.7070304@garzik.org> References: <1192611942.7848.19.camel@gentoo-jocke.transmode.se> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Netdev To: joakim.tjernlund@transmode.se, Li Yang-r58472 Return-path: Received: from srv5.dvmed.net ([207.36.208.214]:46755 "EHLO mail.dvmed.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752378AbXJ2KFl (ORCPT ); Mon, 29 Oct 2007 06:05:41 -0400 In-Reply-To: <1192611942.7848.19.camel@gentoo-jocke.transmode.se> Sender: netdev-owner@vger.kernel.org List-Id: netdev.vger.kernel.org Joakim Tjernlund wrote: >>>From 5761a9e5924b34615c748fba2dcb977ed04c1243 Mon Sep 17 00:00:00 2001 > From: Joakim Tjernlund > Date: Wed, 17 Oct 2007 11:01:44 +0200 > Subject: [PATCH] Fix ethernet multicast for ucc_geth. > hw_add_addr_in_hash() already swaps byte > order, don't do it in ucc_geth_set_multi() too. > > > Signed-off-by: Joakim Tjernlund > --- > drivers/net/ucc_geth.c | 15 ++------------- > 1 files changed, 2 insertions(+), 13 deletions(-) > > diff --git a/drivers/net/ucc_geth.c b/drivers/net/ucc_geth.c > index 61f5cce..f649b1e 100644 > --- a/drivers/net/ucc_geth.c > +++ b/drivers/net/ucc_geth.c > @@ -2214,9 +2214,7 @@ static void ucc_geth_set_multi(struct net_device *dev) > struct dev_mc_list *dmi; > struct ucc_fast *uf_regs; > struct ucc_geth_82xx_address_filtering_pram *p_82xx_addr_filt; > - u8 tempaddr[6]; > - u8 *mcptr, *tdptr; > - int i, j; > + int i; > > ugeth = netdev_priv(dev); > > @@ -2255,19 +2253,10 @@ static void ucc_geth_set_multi(struct net_device *dev) > if (!(dmi->dmi_addr[0] & 1)) > continue; > > - /* The address in dmi_addr is LSB first, > - * and taddr is MSB first. We have to > - * copy bytes MSB first from dmi_addr. > - */ > - mcptr = (u8 *) dmi->dmi_addr + 5; > - tdptr = (u8 *) tempaddr; > - for (j = 0; j < 6; j++) > - *tdptr++ = *mcptr--; > - > /* Ask CPM to run CRC and set bit in > * filter mask. > */ > - hw_add_addr_in_hash(ugeth, tempaddr); > + hw_add_addr_in_hash(ugeth, dmi->dmi_addr); did the maintainer ever ACK this?