summaryrefslogtreecommitdiff
path: root/package/sierra-directip/patches/100-sierra_net_endian.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/sierra-directip/patches/100-sierra_net_endian.patch')
-rw-r--r--package/sierra-directip/patches/100-sierra_net_endian.patch22
1 files changed, 22 insertions, 0 deletions
diff --git a/package/sierra-directip/patches/100-sierra_net_endian.patch b/package/sierra-directip/patches/100-sierra_net_endian.patch
new file mode 100644
index 0000000..196d77d
--- /dev/null
+++ b/package/sierra-directip/patches/100-sierra_net_endian.patch
@@ -0,0 +1,22 @@
+--- a/sierra_net.c
++++ b/sierra_net.c
+@@ -840,8 +840,8 @@ static int sierra_net_bind(struct usbnet
+ init_timer(&priv->sync_timer);
+ /* verify fw attributes */
+ status = sierra_net_get_fw_attr(dev, &fwattr);
+- dev_dbg(&dev->udev->dev, "Fw attr: %x\n", fwattr);
+- if (status == sizeof(fwattr) && (fwattr & SWI_GET_FW_ATTR_APM)) {
++ dev_dbg(&dev->udev->dev, "Fw attr: %x\n", cpu_to_le16(fwattr));
++ if (status == sizeof(fwattr) && (cpu_to_le16(fwattr) & SWI_GET_FW_ATTR_APM)) {
+ /*******************************************************************************
+ * If you want the default /sys/bus/usb/devices/.../.../power/level to be forced
+ * to auto, the following needs to be compiled in.
+@@ -856,7 +856,7 @@ static int sierra_net_bind(struct usbnet
+ usb_disable_autosuspend(dev->udev);
+ }
+ /* test whether firmware supports DHCP */
+- if (!(status == sizeof(fwattr) && (fwattr & SWI_GET_FW_ATTR_MASK))) {
++ if (!(status == sizeof(fwattr) && (cpu_to_le16(fwattr) & SWI_GET_FW_ATTR_MASK))) {
+ /* found incompatible firmware version */
+ dev_err(&dev->udev->dev, "Incompatible driver and firmware"
+ " versions\n");