i2c-tiny-usb: Fix on big-endian systems
authorJean Delvare <khali@linux-fr.org>
Fri, 5 Feb 2010 16:48:13 +0000 (17:48 +0100)
committerJean Delvare <khali@linux-fr.org>
Fri, 5 Feb 2010 16:48:13 +0000 (17:48 +0100)
commit1c010ff8912cbc08d80e865aab9c32b6b00c527d
treed15ffa2f9db8a0768b5cefc321398d49d8886766
parentfc76be434d90bcd57a0ea6b93a2e66a3fec4b664
i2c-tiny-usb: Fix on big-endian systems

The functionality bit vector is always returned as a little-endian
32-bit number by the device, so it must be byte-swapped to the host
endianness.

On the other hand, the delay value is handled by the USB stack, so no
byte swapping is needed on our side.

This fixes bug #15105:
http://bugzilla.kernel.org/show_bug.cgi?id=15105

Reported-by: Jens Richter <jens@richter-stutensee.de>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Jens Richter <jens@richter-stutensee.de>
Cc: Till Harbaum <till@harbaum.org>
Cc: stable@kernel.org
drivers/i2c/busses/i2c-tiny-usb.c