[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <OFC89C8D8B.9962FD9A-ON802575A0.005335A8-802575A0.00545CBF@smsc.com>
Date: Wed, 22 Apr 2009 16:21:32 +0100
From: Steve.Glendinning@...c.com
To: Magnus Damm <magnus.damm@...il.com>
Cc: davem@...emloft.net, iwamatsu@...auri.org, lethal@...ux-sh.org,
Magnus Damm <magnus.damm@...il.com>, netdev@...r.kernel.org,
Ian.Saturley@...c.com
Subject: Re: [PATCH] smsc911x: add fifo byteswap support
Magnus Damm <magnus.damm@...il.com> wrote on 22/04/2009 15:55:53:
> From: Magnus Damm <damm@...l.co.jp>
>
> This patch adds fifo byteswap support to the smsc911x driver.
>
> The smsc911x hardware supports both big and little and endian
> hardware configurations, and the linux smsc911x driver currently
> detects word order.
>
> For correct operation on big endian platforms lacking swapped
> byte lanes the following patch is needed. Only fifo data is
> swapped, register data does not require any swapping.
>
> Signed-off-by: Magnus Damm <damm@...l.co.jp>
I guess this is to work around a problem with hardware that's
already in production?
The best solution would be to swap the byte lanes in hardware,
as the device's endian swapping features only affect registers
(not the FIFOs). The very latest devices in this family
(such as the LAN9221) can swap both independently, but this
driver has to also support older parts.
Performance will be suboptimal with this software byteswapping,
so I think we should also add a comment to stress that this is
a "last resort" workaround for broken hardware.
Acked-by: Steve Glendinning <steve.glendinning@...c.com>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists