[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7a42d507-bf50-40f3-a2a0-8de682b314d7@SG2EHSMHS017.ehs.local>
Date: Mon, 5 Apr 2010 15:33:42 -0600
From: John Linn <John.Linn@...inx.com>
To: "Eric Dumazet" <eric.dumazet@...il.com>
CC: <netdev@...r.kernel.org>, <linuxppc-dev@...abs.org>,
<grant.likely@...retlab.ca>, <jwboyer@...ux.vnet.ibm.com>,
<john.williams@...alogix.com>, <michal.simek@...alogix.com>,
"John Tyner" <jtyner@...ucr.edu>
Subject: RE: [PATCH] [V3] Add non-Virtex5 support for LL TEMAC driver
> -----Original Message-----
> From: Eric Dumazet [mailto:eric.dumazet@...il.com]
> Sent: Monday, April 05, 2010 3:30 PM
> To: John Linn
> Cc: netdev@...r.kernel.org; linuxppc-dev@...abs.org; grant.likely@...retlab.ca;
> jwboyer@...ux.vnet.ibm.com; john.williams@...alogix.com; michal.simek@...alogix.com; John Tyner
> Subject: Re: [PATCH] [V3] Add non-Virtex5 support for LL TEMAC driver
>
> Le lundi 05 avril 2010 à 15:11 -0600, John Linn a écrit :
> > This patch adds support for using the LL TEMAC Ethernet driver on
> > non-Virtex 5 platforms by adding support for accessing the Soft DMA
> > registers as if they were memory mapped instead of solely through the
> > DCR's (available on the Virtex 5).
> >
> > The patch also updates the driver so that it runs on the MicroBlaze.
> > The changes were tested on the PowerPC 440, PowerPC 405, and the
> > MicroBlaze platforms.
> >
> > Signed-off-by: John Tyner <jtyner@...ucr.edu>
> > Signed-off-by: John Linn <john.linn@...inx.com>
> >
> > ---
>
> > +/* Align the IP data in the packet on word boundaries as MicroBlaze
> > + * needs it.
> > + */
> > +
> > #define XTE_ALIGN 32
> > -#define BUFFER_ALIGN(adr) ((XTE_ALIGN - ((u32) adr)) % XTE_ALIGN)
> > +#define BUFFER_ALIGN(adr) ((34 - ((u32) adr)) % XTE_ALIGN)
> >
>
> Very interesting way of doing this, but why such convoluted thing ?
Grant might have insight into why this started this way, I just updated to help with MicroBlaze alignment.
>
> Because of the % 32, this is equivalent to :
>
> #define BUFFER_ALIGN(adr) ((2 - ((u32) adr)) % XTE_ALIGN)
>
> But wait, dont we recognise the magic constant NET_IP_ALIGN ?
>
> So, I ask, cant you use netdev_alloc_skb_ip_align() in this driver ?
>
>
Will have to look at it to better understand, maybe.
Thanks,
John
This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.
Powered by blists - more mailing lists