[PATCH] [09051_50] Siano: smscore - Add big endian support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



# HG changeset patch
# User Uri Shkolnik <uris@xxxxxxxxxxxx>
# Date 1242748399 -10800
# Node ID a93ebe0069b3d7d8d791ccb620a7797508cf724c
# Parent  4d75f9d1c4f96d65a8ad312c21e488a212ee58a3
[09051_50] Siano: smscore - Add big endian support

From: Uri Shkolnik <uris@xxxxxxxxxxxx>

Add support for big endian target, to the smscore module.

Priority: normal

Signed-off-by: Uri Shkolnik <uris@xxxxxxxxxxxx>

diff -r 4d75f9d1c4f9 -r a93ebe0069b3 linux/drivers/media/dvb/siano/smscoreapi.c
--- a/linux/drivers/media/dvb/siano/smscoreapi.c	Tue May 19 18:48:35 2009 +0300
+++ b/linux/drivers/media/dvb/siano/smscoreapi.c	Tue May 19 18:53:19 2009 +0300
@@ -34,8 +34,10 @@
 #include <asm/byteorder.h>
 
 #include "smscoreapi.h"
+#include "smsendian.h"
 #include "sms-cards.h"
 #include "smsir.h"
+
 #define MAX_GPIO_PIN_NUMBER	31
 
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 10)
@@ -465,6 +467,8 @@ static int smscore_init_ir(struct smscor
 				msg->msgData[0] = coredev->ir.controller;
 				msg->msgData[1] = coredev->ir.timeout;
 
+				smsendian_handle_tx_message(
+					(struct SmsMsgHdr_ST2 *)msg);
 				rc = smscore_sendrequest_and_wait(coredev, msg,
 						msg->xMsgHeader. msgLength,
 						&coredev->ir_init_done);
@@ -545,6 +549,7 @@ static int smscore_load_firmware_family2
 		sms_debug("sending reload command.");
 		SMS_INIT_MSG(msg, MSG_SW_RELOAD_START_REQ,
 			     sizeof(struct SmsMsgHdr_ST));
+		smsendian_handle_tx_message((struct SmsMsgHdr_ST *)msg);
 		rc = smscore_sendrequest_and_wait(coredev, msg,
 						  msg->msgLength,
 						  &coredev->reload_start_done);
@@ -563,6 +568,7 @@ static int smscore_load_firmware_family2
 		DataMsg->MemAddr = mem_address;
 		memcpy(DataMsg->Payload, payload, payload_size);
 
+		smsendian_handle_tx_message((struct SmsMsgHdr_ST *)msg);
 		if ((coredev->device_flags & SMS_ROM_NO_RESPONSE) &&
 		    (coredev->mode == DEVICE_MODE_NONE))
 			rc = coredev->sendrequest_handler(
@@ -595,6 +601,7 @@ static int smscore_load_firmware_family2
 			TriggerMsg->msgData[3] = 0; /* Parameter */
 			TriggerMsg->msgData[4] = 4; /* Task ID */
 
+			smsendian_handle_tx_message((struct SmsMsgHdr_ST *)msg);
 			if (coredev->device_flags & SMS_ROM_NO_RESPONSE) {
 				rc = coredev->sendrequest_handler(
 					coredev->context, TriggerMsg,
@@ -608,7 +615,7 @@ static int smscore_load_firmware_family2
 		} else {
 			SMS_INIT_MSG(msg, MSG_SW_RELOAD_EXEC_REQ,
 				     sizeof(struct SmsMsgHdr_ST));
-
+			smsendian_handle_tx_message((struct SmsMsgHdr_ST *)msg);
 			rc = coredev->sendrequest_handler(coredev->context,
 							  msg, msg->msgLength);
 		}
@@ -767,6 +774,7 @@ static int smscore_detect_mode(struct sm
 	SMS_INIT_MSG(msg, MSG_SMS_GET_VERSION_EX_REQ,
 		     sizeof(struct SmsMsgHdr_ST));
 
+	smsendian_handle_tx_message((struct SmsMsgHdr_ST *)msg);
 	rc = smscore_sendrequest_and_wait(coredev, msg, msg->msgLength,
 					  &coredev->version_ex_done);
 	if (rc == -ETIME) {
@@ -895,6 +903,7 @@ int smscore_set_device_mode(struct smsco
 				     sizeof(struct SmsMsgData_ST));
 			msg->msgData[0] = mode;
 
+			smsendian_handle_tx_message((struct SmsMsgHdr_ST *)msg);
 			rc = smscore_sendrequest_and_wait(
 				coredev, msg, msg->xMsgHeader.msgLength,
 				&coredev->init_device_done);
@@ -1102,6 +1111,8 @@ void smscore_onresponse(struct smscore_d
 		rc = client->onresponse_handler(client->context, cb);
 
 	if (rc < 0) {
+		smsendian_handle_rx_message((struct SmsMsgData_ST *)phdr);
+
 		switch (phdr->msgType) {
 		case MSG_SMS_GET_VERSION_EX_RES:
 		{
@@ -1604,6 +1615,7 @@ int smscore_gpio_configure(struct smscor
 		pMsg->msgData[5] = 0;
 	}
 
+	smsendian_handle_tx_message((struct SmsMsgHdr_ST *)pMsg);
 	rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen,
 			&coredev->gpio_configuration_done);
 
@@ -1653,6 +1665,7 @@ int smscore_gpio_set_level(struct smscor
 	pMsg->msgData[1] = NewLevel;
 
 	/* Send message to SMS */
+	smsendian_handle_tx_message((struct SmsMsgHdr_ST *)pMsg);
 	rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen,
 			&coredev->gpio_set_level_done);
 
@@ -1701,6 +1714,7 @@ int smscore_gpio_get_level(struct smscor
 	pMsg->msgData[1] = 0;
 
 	/* Send message to SMS */
+	smsendian_handle_tx_message((struct SmsMsgHdr_ST *)pMsg);
 	rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen,
 			&coredev->gpio_get_level_done);
 



      
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux