aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2007-05-25 23:38:14 -0400
committerJohn W. Linville <linville@tuxdriver.com>2007-06-11 14:28:45 -0400
commitbb793e2bfc25b8891b84b8fe3cb4b77cd4619814 (patch)
tree87b0ebe1ed342a7ad4646d57010b2434c8f00f49 /drivers
parent[PATCH] libertas: first pass at fixing up endianness issues (diff)
downloadlinux-dev-bb793e2bfc25b8891b84b8fe3cb4b77cd4619814.tar.xz
linux-dev-bb793e2bfc25b8891b84b8fe3cb4b77cd4619814.zip
[PATCH] libertas: More endianness fixes.
Now it at least manages to load the firmware. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/libertas/if_usb.c4
-rw-r--r--drivers/net/wireless/libertas/if_usb.h2
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/wireless/libertas/if_usb.c b/drivers/net/wireless/libertas/if_usb.c
index b544fcdcd0e7..998317571ec2 100644
--- a/drivers/net/wireless/libertas/if_usb.c
+++ b/drivers/net/wireless/libertas/if_usb.c
@@ -313,7 +313,7 @@ static int if_prog_firmware(wlan_private * priv)
/*
lbs_deb_usbd(&cardp->udev->dev,
- "Data length = %d\n", fwdata->fwheader.datalength);
+ "Data length = %d\n", le32_to_cpu(fwdata->fwheader.datalength));
*/
cardp->fwseqnum = cardp->fwseqnum + 1;
@@ -332,7 +332,7 @@ static int if_prog_firmware(wlan_private * priv)
memcpy(cardp->bulk_out_buffer, fwheader, FW_DATA_XMIT_SIZE);
usb_tx_block(priv, cardp->bulk_out_buffer, FW_DATA_XMIT_SIZE);
- } else if (fwdata->fwheader.dnldcmd == FW_HAS_LAST_BLOCK) {
+ } else if (fwdata->fwheader.dnldcmd == cpu_to_le32(FW_HAS_LAST_BLOCK)) {
/*
lbs_deb_usbd(&cardp->udev->dev,
"Host has finished FW downloading\n");
diff --git a/drivers/net/wireless/libertas/if_usb.h b/drivers/net/wireless/libertas/if_usb.h
index 3ed46a33fd21..156bb485e1a6 100644
--- a/drivers/net/wireless/libertas/if_usb.h
+++ b/drivers/net/wireless/libertas/if_usb.h
@@ -100,7 +100,7 @@ struct fwsyncheader {
#define FW_HAS_LAST_BLOCK 0x00000004
#define FW_DATA_XMIT_SIZE \
- sizeof(struct fwheader) + fwdata->fwheader.datalength + sizeof(u32)
+ sizeof(struct fwheader) + le32_to_cpu(fwdata->fwheader.datalength) + sizeof(u32)
int usb_tx_block(wlan_private *priv, u8 *payload, u16 nb);
void if_usb_free(struct usb_card_rec *cardp);