[PATCH] [V3] Add non-Virtex5 support for LL TEMAC driver
Eric Dumazet
eric.dumazet at gmail.com
Tue Apr 6 07:29:53 EST 2010
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 at cs.ucr.edu>
> Signed-off-by: John Linn <john.linn at xilinx.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 ?
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 ?
More information about the Linuxppc-dev
mailing list