Browse Source

[components][drivers][spi]: fix: set message.parent.next to NULL for rt_qspi_send_then_recv API and rt_qspi_send API

- Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues.

Signed-off-by: Runcheng Lu <runcheng.lu@hpmicro.com>
Runcheng Lu 2 months ago
parent
commit
ba50b60817
1 changed files with 6 additions and 0 deletions
  1. 6 0
      components/drivers/spi/dev_qspi_core.c

+ 6 - 0
components/drivers/spi/dev_qspi_core.c

@@ -199,6 +199,9 @@ rt_err_t rt_qspi_send_then_recv(struct rt_qspi_device *device, const void *send_
     message.parent.cs_release = 1;
 
     message.qspi_data_lines = 1;
+    /* set next */
+    /* Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues.*/
+    message.parent.next = RT_NULL;
 
     result = rt_qspi_transfer_message(device, &message);
     if (result == 0)
@@ -282,6 +285,9 @@ rt_err_t rt_qspi_send(struct rt_qspi_device *device, const void *send_buf, rt_si
     message.parent.length = length - count;
     message.parent.cs_take = 1;
     message.parent.cs_release = 1;
+    /* set next */
+    /* Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues.*/
+    message.parent.next = RT_NULL;
 
     result = rt_qspi_transfer_message(device, &message);
     if (result == 0)