summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuncheng Lu <[email protected]>2025-03-04 10:22:09 +0800
committerRbb666 <[email protected]>2025-03-10 22:48:28 +0800
commitacd4a187e39c234b58df35f7eb3562e97f85df99 (patch)
treef44d2386662415fd9a362df0a3088b36dc16ea0d
parent5e41729ebf48eed9060b07dc987bb5821de47260 (diff)
[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 <[email protected]>
-rw-r--r--components/drivers/spi/dev_qspi_core.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/components/drivers/spi/dev_qspi_core.c b/components/drivers/spi/dev_qspi_core.c
index 75dd35424f..f076945b64 100644
--- a/components/drivers/spi/dev_qspi_core.c
+++ b/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)