From: Lennart Sorensen Date: Fri, 7 Sep 2012 12:14:02 +0000 (+0000) Subject: sierra_net: Endianess bug fix. X-Git-Tag: v3.2.31~20 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=6e95789b0c1ec39ab7159ec3b2dbcad0af69532e;p=karo-tx-linux.git sierra_net: Endianess bug fix. [ Upstream commit 2120c52da6fe741454a60644018ad2a6abd957ac ] I discovered I couldn't get sierra_net to work on a powerpc. Turns out the firmware attribute check assumes the system is little endian and hence fails because the attributes is a 16 bit value. Signed-off-by: Len Sorensen Signed-off-by: David S. Miller Signed-off-by: Ben Hutchings --- diff --git a/drivers/net/usb/sierra_net.c b/drivers/net/usb/sierra_net.c index 864448b76120..e7732508b8f1 100644 --- a/drivers/net/usb/sierra_net.c +++ b/drivers/net/usb/sierra_net.c @@ -678,7 +678,7 @@ static int sierra_net_get_fw_attr(struct usbnet *dev, u16 *datap) return -EIO; } - *datap = *attrdata; + *datap = le16_to_cpu(*attrdata); kfree(attrdata); return result;