diff options
-rw-r--r-- | drivers/media/common/siano/smscoreapi.c | 14 | ||||
-rw-r--r-- | drivers/media/common/siano/smsdvb.c | 8 | ||||
-rw-r--r-- | drivers/media/mmc/siano/smssdio.c | 3 | ||||
-rw-r--r-- | drivers/media/usb/siano/smsusb.c | 9 |
4 files changed, 9 insertions, 25 deletions
diff --git a/drivers/media/common/siano/smscoreapi.c b/drivers/media/common/siano/smscoreapi.c index 9379ea7f8152..8c576a6e3829 100644 --- a/drivers/media/common/siano/smscoreapi.c +++ b/drivers/media/common/siano/smscoreapi.c | |||
@@ -37,7 +37,6 @@ | |||
37 | #include "smscoreapi.h" | 37 | #include "smscoreapi.h" |
38 | #include "sms-cards.h" | 38 | #include "sms-cards.h" |
39 | #include "smsir.h" | 39 | #include "smsir.h" |
40 | #include "smsendian.h" | ||
41 | 40 | ||
42 | static int sms_dbg; | 41 | static int sms_dbg; |
43 | module_param_named(debug, sms_dbg, int, 0644); | 42 | module_param_named(debug, sms_dbg, int, 0644); |
@@ -807,8 +806,6 @@ static int smscore_init_ir(struct smscore_device_t *coredev) | |||
807 | msg->msgData[0] = coredev->ir.controller; | 806 | msg->msgData[0] = coredev->ir.controller; |
808 | msg->msgData[1] = coredev->ir.timeout; | 807 | msg->msgData[1] = coredev->ir.timeout; |
809 | 808 | ||
810 | smsendian_handle_tx_message( | ||
811 | (struct SmsMsgHdr_ST2 *)msg); | ||
812 | rc = smscore_sendrequest_and_wait(coredev, msg, | 809 | rc = smscore_sendrequest_and_wait(coredev, msg, |
813 | msg->xMsgHeader. msgLength, | 810 | msg->xMsgHeader. msgLength, |
814 | &coredev->ir_init_done); | 811 | &coredev->ir_init_done); |
@@ -853,7 +850,6 @@ int smscore_configure_board(struct smscore_device_t *coredev) | |||
853 | MtuMsg.xMsgHeader.msgLength = sizeof(MtuMsg); | 850 | MtuMsg.xMsgHeader.msgLength = sizeof(MtuMsg); |
854 | MtuMsg.msgData[0] = board->mtu; | 851 | MtuMsg.msgData[0] = board->mtu; |
855 | 852 | ||
856 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)&MtuMsg); | ||
857 | coredev->sendrequest_handler(coredev->context, &MtuMsg, | 853 | coredev->sendrequest_handler(coredev->context, &MtuMsg, |
858 | sizeof(MtuMsg)); | 854 | sizeof(MtuMsg)); |
859 | } | 855 | } |
@@ -867,7 +863,6 @@ int smscore_configure_board(struct smscore_device_t *coredev) | |||
867 | sizeof(CrysMsg)); | 863 | sizeof(CrysMsg)); |
868 | CrysMsg.msgData[0] = board->crystal; | 864 | CrysMsg.msgData[0] = board->crystal; |
869 | 865 | ||
870 | smsendian_handle_tx_message((struct SmsMsgHdr_S *)&CrysMsg); | ||
871 | coredev->sendrequest_handler(coredev->context, &CrysMsg, | 866 | coredev->sendrequest_handler(coredev->context, &CrysMsg, |
872 | sizeof(CrysMsg)); | 867 | sizeof(CrysMsg)); |
873 | } | 868 | } |
@@ -989,7 +984,6 @@ static int smscore_load_firmware_family2(struct smscore_device_t *coredev, | |||
989 | /* Entry point */ | 984 | /* Entry point */ |
990 | msg->msgData[1] = firmware->Length; | 985 | msg->msgData[1] = firmware->Length; |
991 | msg->msgData[2] = 0; /* Regular checksum*/ | 986 | msg->msgData[2] = 0; /* Regular checksum*/ |
992 | smsendian_handle_tx_message(msg); | ||
993 | rc = smscore_sendrequest_and_wait(coredev, msg, | 987 | rc = smscore_sendrequest_and_wait(coredev, msg, |
994 | msg->xMsgHeader.msgLength, | 988 | msg->xMsgHeader.msgLength, |
995 | &coredev->data_validity_done); | 989 | &coredev->data_validity_done); |
@@ -1013,14 +1007,12 @@ static int smscore_load_firmware_family2(struct smscore_device_t *coredev, | |||
1013 | TriggerMsg->msgData[3] = 0; /* Parameter */ | 1007 | TriggerMsg->msgData[3] = 0; /* Parameter */ |
1014 | TriggerMsg->msgData[4] = 4; /* Task ID */ | 1008 | TriggerMsg->msgData[4] = 4; /* Task ID */ |
1015 | 1009 | ||
1016 | smsendian_handle_tx_message((struct SmsMsgHdr_S *)msg); | ||
1017 | rc = smscore_sendrequest_and_wait(coredev, TriggerMsg, | 1010 | rc = smscore_sendrequest_and_wait(coredev, TriggerMsg, |
1018 | TriggerMsg->xMsgHeader.msgLength, | 1011 | TriggerMsg->xMsgHeader.msgLength, |
1019 | &coredev->trigger_done); | 1012 | &coredev->trigger_done); |
1020 | } else { | 1013 | } else { |
1021 | SMS_INIT_MSG(&msg->xMsgHeader, MSG_SW_RELOAD_EXEC_REQ, | 1014 | SMS_INIT_MSG(&msg->xMsgHeader, MSG_SW_RELOAD_EXEC_REQ, |
1022 | sizeof(struct SmsMsgHdr_ST)); | 1015 | sizeof(struct SmsMsgHdr_ST)); |
1023 | smsendian_handle_tx_message((struct SmsMsgHdr_S *)msg); | ||
1024 | rc = coredev->sendrequest_handler(coredev->context, msg, | 1016 | rc = coredev->sendrequest_handler(coredev->context, msg, |
1025 | msg->xMsgHeader.msgLength); | 1017 | msg->xMsgHeader.msgLength); |
1026 | } | 1018 | } |
@@ -1305,7 +1297,6 @@ int smscore_init_device(struct smscore_device_t *coredev, int mode) | |||
1305 | sizeof(struct SmsMsgData_ST)); | 1297 | sizeof(struct SmsMsgData_ST)); |
1306 | msg->msgData[0] = mode; | 1298 | msg->msgData[0] = mode; |
1307 | 1299 | ||
1308 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)msg); | ||
1309 | rc = smscore_sendrequest_and_wait(coredev, msg, | 1300 | rc = smscore_sendrequest_and_wait(coredev, msg, |
1310 | msg->xMsgHeader. msgLength, | 1301 | msg->xMsgHeader. msgLength, |
1311 | &coredev->init_device_done); | 1302 | &coredev->init_device_done); |
@@ -1526,8 +1517,6 @@ void smscore_onresponse(struct smscore_device_t *coredev, | |||
1526 | rc = client->onresponse_handler(client->context, cb); | 1517 | rc = client->onresponse_handler(client->context, cb); |
1527 | 1518 | ||
1528 | if (rc < 0) { | 1519 | if (rc < 0) { |
1529 | smsendian_handle_rx_message((struct SmsMsgData_ST *)phdr); | ||
1530 | |||
1531 | switch (phdr->msgType) { | 1520 | switch (phdr->msgType) { |
1532 | case MSG_SMS_ISDBT_TUNE_RES: | 1521 | case MSG_SMS_ISDBT_TUNE_RES: |
1533 | break; | 1522 | break; |
@@ -2008,7 +1997,6 @@ int smscore_gpio_configure(struct smscore_device_t *coredev, u8 PinNum, | |||
2008 | pMsg->msgData[5] = 0; | 1997 | pMsg->msgData[5] = 0; |
2009 | } | 1998 | } |
2010 | 1999 | ||
2011 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)pMsg); | ||
2012 | rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen, | 2000 | rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen, |
2013 | &coredev->gpio_configuration_done); | 2001 | &coredev->gpio_configuration_done); |
2014 | 2002 | ||
@@ -2058,7 +2046,6 @@ int smscore_gpio_set_level(struct smscore_device_t *coredev, u8 PinNum, | |||
2058 | pMsg->msgData[1] = NewLevel; | 2046 | pMsg->msgData[1] = NewLevel; |
2059 | 2047 | ||
2060 | /* Send message to SMS */ | 2048 | /* Send message to SMS */ |
2061 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)pMsg); | ||
2062 | rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen, | 2049 | rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen, |
2063 | &coredev->gpio_set_level_done); | 2050 | &coredev->gpio_set_level_done); |
2064 | 2051 | ||
@@ -2107,7 +2094,6 @@ int smscore_gpio_get_level(struct smscore_device_t *coredev, u8 PinNum, | |||
2107 | pMsg->msgData[1] = 0; | 2094 | pMsg->msgData[1] = 0; |
2108 | 2095 | ||
2109 | /* Send message to SMS */ | 2096 | /* Send message to SMS */ |
2110 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)pMsg); | ||
2111 | rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen, | 2097 | rc = smscore_sendrequest_and_wait(coredev, pMsg, totalLen, |
2112 | &coredev->gpio_get_level_done); | 2098 | &coredev->gpio_get_level_done); |
2113 | 2099 | ||
diff --git a/drivers/media/common/siano/smsdvb.c b/drivers/media/common/siano/smsdvb.c index dbb807e3a212..6335574e9342 100644 --- a/drivers/media/common/siano/smsdvb.c +++ b/drivers/media/common/siano/smsdvb.c | |||
@@ -29,7 +29,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
29 | #include "dvb_frontend.h" | 29 | #include "dvb_frontend.h" |
30 | 30 | ||
31 | #include "smscoreapi.h" | 31 | #include "smscoreapi.h" |
32 | #include "smsendian.h" | ||
33 | #include "sms-cards.h" | 32 | #include "sms-cards.h" |
34 | 33 | ||
35 | DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr); | 34 | DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr); |
@@ -324,8 +323,6 @@ static int smsdvb_onresponse(void *context, struct smscore_buffer_t *cb) | |||
324 | /*u32 MsgDataLen = phdr->msgLength - sizeof(struct SmsMsgHdr_ST);*/ | 323 | /*u32 MsgDataLen = phdr->msgLength - sizeof(struct SmsMsgHdr_ST);*/ |
325 | bool is_status_update = false; | 324 | bool is_status_update = false; |
326 | 325 | ||
327 | smsendian_handle_rx_message((struct SmsMsgData_ST *) phdr); | ||
328 | |||
329 | switch (phdr->msgType) { | 326 | switch (phdr->msgType) { |
330 | case MSG_SMS_DVBT_BDA_DATA: | 327 | case MSG_SMS_DVBT_BDA_DATA: |
331 | dvb_dmx_swfilter(&client->demux, (u8 *)(phdr + 1), | 328 | dvb_dmx_swfilter(&client->demux, (u8 *)(phdr + 1), |
@@ -545,7 +542,6 @@ static int smsdvb_start_feed(struct dvb_demux_feed *feed) | |||
545 | PidMsg.xMsgHeader.msgLength = sizeof(PidMsg); | 542 | PidMsg.xMsgHeader.msgLength = sizeof(PidMsg); |
546 | PidMsg.msgData[0] = feed->pid; | 543 | PidMsg.msgData[0] = feed->pid; |
547 | 544 | ||
548 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)&PidMsg); | ||
549 | return smsclient_sendrequest(client->smsclient, | 545 | return smsclient_sendrequest(client->smsclient, |
550 | &PidMsg, sizeof(PidMsg)); | 546 | &PidMsg, sizeof(PidMsg)); |
551 | } | 547 | } |
@@ -566,7 +562,6 @@ static int smsdvb_stop_feed(struct dvb_demux_feed *feed) | |||
566 | PidMsg.xMsgHeader.msgLength = sizeof(PidMsg); | 562 | PidMsg.xMsgHeader.msgLength = sizeof(PidMsg); |
567 | PidMsg.msgData[0] = feed->pid; | 563 | PidMsg.msgData[0] = feed->pid; |
568 | 564 | ||
569 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)&PidMsg); | ||
570 | return smsclient_sendrequest(client->smsclient, | 565 | return smsclient_sendrequest(client->smsclient, |
571 | &PidMsg, sizeof(PidMsg)); | 566 | &PidMsg, sizeof(PidMsg)); |
572 | } | 567 | } |
@@ -577,7 +572,6 @@ static int smsdvb_sendrequest_and_wait(struct smsdvb_client_t *client, | |||
577 | { | 572 | { |
578 | int rc; | 573 | int rc; |
579 | 574 | ||
580 | smsendian_handle_tx_message((struct SmsMsgHdr_ST *)buffer); | ||
581 | rc = smsclient_sendrequest(client->smsclient, buffer, size); | 575 | rc = smsclient_sendrequest(client->smsclient, buffer, size); |
582 | if (rc < 0) | 576 | if (rc < 0) |
583 | return rc; | 577 | return rc; |
@@ -606,8 +600,6 @@ static int smsdvb_send_statistics_request(struct smsdvb_client_t *client) | |||
606 | else | 600 | else |
607 | Msg.msgType = MSG_SMS_GET_STATISTICS_REQ; | 601 | Msg.msgType = MSG_SMS_GET_STATISTICS_REQ; |
608 | 602 | ||
609 | smsendian_handle_tx_message((struct SmsMsgHdr_S *)&Msg); | ||
610 | |||
611 | rc = smsdvb_sendrequest_and_wait(client, &Msg, sizeof(Msg), | 603 | rc = smsdvb_sendrequest_and_wait(client, &Msg, sizeof(Msg), |
612 | &client->stats_done); | 604 | &client->stats_done); |
613 | 605 | ||
diff --git a/drivers/media/mmc/siano/smssdio.c b/drivers/media/mmc/siano/smssdio.c index c96da47bece5..8834c435acae 100644 --- a/drivers/media/mmc/siano/smssdio.c +++ b/drivers/media/mmc/siano/smssdio.c | |||
@@ -43,6 +43,7 @@ | |||
43 | 43 | ||
44 | #include "smscoreapi.h" | 44 | #include "smscoreapi.h" |
45 | #include "sms-cards.h" | 45 | #include "sms-cards.h" |
46 | #include "smsendian.h" | ||
46 | 47 | ||
47 | /* Registers */ | 48 | /* Registers */ |
48 | 49 | ||
@@ -97,6 +98,7 @@ static int smssdio_sendrequest(void *context, void *buffer, size_t size) | |||
97 | 98 | ||
98 | sdio_claim_host(smsdev->func); | 99 | sdio_claim_host(smsdev->func); |
99 | 100 | ||
101 | smsendian_handle_tx_message((struct SmsMsgData_ST *) buffer); | ||
100 | while (size >= smsdev->func->cur_blksize) { | 102 | while (size >= smsdev->func->cur_blksize) { |
101 | ret = sdio_memcpy_toio(smsdev->func, SMSSDIO_DATA, | 103 | ret = sdio_memcpy_toio(smsdev->func, SMSSDIO_DATA, |
102 | buffer, smsdev->func->cur_blksize); | 104 | buffer, smsdev->func->cur_blksize); |
@@ -231,6 +233,7 @@ static void smssdio_interrupt(struct sdio_func *func) | |||
231 | cb->size = hdr->msgLength; | 233 | cb->size = hdr->msgLength; |
232 | cb->offset = 0; | 234 | cb->offset = 0; |
233 | 235 | ||
236 | smsendian_handle_rx_message((struct SmsMsgData_ST *) cb->p); | ||
234 | smscore_onresponse(smsdev->coredev, cb); | 237 | smscore_onresponse(smsdev->coredev, cb); |
235 | } | 238 | } |
236 | 239 | ||
diff --git a/drivers/media/usb/siano/smsusb.c b/drivers/media/usb/siano/smsusb.c index 751c0d6d98b8..acd3d1e82e03 100644 --- a/drivers/media/usb/siano/smsusb.c +++ b/drivers/media/usb/siano/smsusb.c | |||
@@ -129,6 +129,8 @@ static void smsusb_onresponse(struct urb *urb) | |||
129 | smscore_translate_msg(phdr->msgType), | 129 | smscore_translate_msg(phdr->msgType), |
130 | phdr->msgType, phdr->msgLength); | 130 | phdr->msgType, phdr->msgLength); |
131 | 131 | ||
132 | smsendian_handle_rx_message((struct SmsMsgData_ST *) phdr); | ||
133 | |||
132 | smscore_onresponse(dev->coredev, surb->cb); | 134 | smscore_onresponse(dev->coredev, surb->cb); |
133 | surb->cb = NULL; | 135 | surb->cb = NULL; |
134 | } else { | 136 | } else { |
@@ -207,13 +209,14 @@ static int smsusb_sendrequest(void *context, void *buffer, size_t size) | |||
207 | struct SmsMsgHdr_ST *phdr = (struct SmsMsgHdr_ST *) buffer; | 209 | struct SmsMsgHdr_ST *phdr = (struct SmsMsgHdr_ST *) buffer; |
208 | int dummy; | 210 | int dummy; |
209 | 211 | ||
212 | if (dev->state != SMSUSB_ACTIVE) | ||
213 | return -ENOENT; | ||
214 | |||
210 | sms_debug("sending %s(%d) size: %d", | 215 | sms_debug("sending %s(%d) size: %d", |
211 | smscore_translate_msg(phdr->msgType), phdr->msgType, | 216 | smscore_translate_msg(phdr->msgType), phdr->msgType, |
212 | phdr->msgLength); | 217 | phdr->msgLength); |
213 | 218 | ||
214 | if (dev->state != SMSUSB_ACTIVE) | 219 | smsendian_handle_tx_message((struct SmsMsgData_ST *) phdr); |
215 | return -ENOENT; | ||
216 | |||
217 | smsendian_handle_message_header((struct SmsMsgHdr_ST *)buffer); | 220 | smsendian_handle_message_header((struct SmsMsgHdr_ST *)buffer); |
218 | return usb_bulk_msg(dev->udev, usb_sndbulkpipe(dev->udev, 2), | 221 | return usb_bulk_msg(dev->udev, usb_sndbulkpipe(dev->udev, 2), |
219 | buffer, size, &dummy, 1000); | 222 | buffer, size, &dummy, 1000); |