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)
committerVictor Kamensky <victor.kamensky@linaro.org>
Fri, 14 Mar 2014 01:25:48 +0000 (18:25 -0700)
commit00767d21ba2a58cc3ca74c53ee1559d9aa581157
treeb250d946abe473a874183b05c09ecfaa8af38bfb
parent1c3fe1f0b34efee5687b55448e463f567e4b7061
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>
(cherry picked from commit e9e4ea74f06635f2ffc1dffe5ef40c854faa0a90)

Signed-off-by: Victor Kamensky <victor.kamensky@linaro.org>
drivers/net/ethernet/smsc/smc91x.h