net: smc91x: dont't use SMC_outw for fixing up halfword-aligned data
authorWill Deacon <will.deacon@arm.com>
Fri, 11 Oct 2013 13:52:20 +0000 (14:52 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 11 Oct 2013 21:50:59 +0000 (17:50 -0400)
commite9e4ea74f06635f2ffc1dffe5ef40c854faa0a90
tree7f07c52efa9d265d81faf0a732778a1597da9f43
parent96b340406724d87e4621284ebac5e059d67b2194
net: smc91x: dont't use SMC_outw for fixing up halfword-aligned data

SMC_outw invokes an endian-aware I/O accessor, which may change the data
endianness before writing to the device. This is not suitable for data
transfers where the memory buffer is simply a string of bytes that does
not require any byte-swapping.

This patches fixes the smc91x SMC_PUSH_DATA macro so that it uses the
string I/O accessor for outputting the leading or trailing halfwords on
halfword-aligned buffers.

Cc: <netdev@vger.kernel.org>
Cc: Nicolas Pitre <nico@fluxnic.net>
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/smsc/smc91x.h