aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUri Shkolnik <uris@siano-ms.com>2009-05-17 05:01:03 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-06-16 18:14:34 -0400
commit01abc0b07685137765ec36441adf66f7cfcaf654 (patch)
treee71095f5996ba9aa0921624cc0086ca65a4bbc9b
parenta9349315f65cd6a16e8fab1f6cf0fd40f379c4db (diff)
V4L/DVB (11820): Siano: smscore - fix byte ordering bug
Fix byte ordering bug. Signed-off-by: Uri Shkolnik <uris@siano-ms.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/dvb/siano/smscoreapi.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/media/dvb/siano/smscoreapi.c b/drivers/media/dvb/siano/smscoreapi.c
index 9a5358caec46..e80641afa52a 100644
--- a/drivers/media/dvb/siano/smscoreapi.c
+++ b/drivers/media/dvb/siano/smscoreapi.c
@@ -31,6 +31,7 @@
31 31
32#include <linux/firmware.h> 32#include <linux/firmware.h>
33#include <linux/wait.h> 33#include <linux/wait.h>
34#include <asm/byteorder.h>
34 35
35#include "smscoreapi.h" 36#include "smscoreapi.h"
36#include "sms-cards.h" 37#include "sms-cards.h"
@@ -511,9 +512,13 @@ static int smscore_load_firmware_family2(struct smscore_device_t *coredev,
511{ 512{
512 struct SmsFirmware_ST *firmware = (struct SmsFirmware_ST *) buffer; 513 struct SmsFirmware_ST *firmware = (struct SmsFirmware_ST *) buffer;
513 struct SmsMsgHdr_ST *msg; 514 struct SmsMsgHdr_ST *msg;
514 u32 mem_address = firmware->StartAddress; 515 u32 mem_address;
515 u8 *payload = firmware->Payload; 516 u8 *payload = firmware->Payload;
516 int rc = 0; 517 int rc = 0;
518 firmware->StartAddress = le32_to_cpu(firmware->StartAddress);
519 firmware->Length = le32_to_cpu(firmware->Length);
520
521 mem_address = firmware->StartAddress;
517 522
518 sms_info("loading FW to addr 0x%x size %d", 523 sms_info("loading FW to addr 0x%x size %d",
519 mem_address, firmware->Length); 524 mem_address, firmware->Length);