aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2024-02-24 16:31:22 -0600
committerDenis Kenzior <denkenz@gmail.com>2024-02-26 09:34:21 -0600
commitdf0c32bda1865504c22841666e742d399499bf58 (patch)
tree50ef47135bbd14d4cb579d1e565849d6364d3c12
parentd3f4c6cb395946d0663217ba842e0259277e6d99 (diff)
downloadofono-df0c32bda1865504c22841666e742d399499bf58.tar.gz
qmi: Make sure to set transaction id as LE16
Transaction identifier for QMI service messages was always read in as LE16 value, however when allocating a request it was set in host byte order. Fix that.
-rw-r--r--drivers/qmimodem/qmi.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/qmimodem/qmi.c b/drivers/qmimodem/qmi.c
index 2371f178a..35751d7ce 100644
--- a/drivers/qmimodem/qmi.c
+++ b/drivers/qmimodem/qmi.c
@@ -670,13 +670,13 @@ static uint16_t __request_submit(struct qmi_device *device,
struct qmi_service_hdr *hdr =
(struct qmi_service_hdr *) &req->data[QMI_MUX_HDR_SIZE];
- hdr->type = 0x00;
- hdr->transaction = device->next_service_tid++;
+ req->tid = device->next_service_tid++;
if (device->next_service_tid < 256)
device->next_service_tid = 256;
- req->tid = hdr->transaction;
+ hdr->type = 0x00;
+ hdr->transaction = L_CPU_TO_LE16(req->tid);
l_queue_push_tail(device->req_queue, req);
wakeup_writer(device);