diff options
| author | Shaun <[email protected]> | 2026-02-23 00:59:33 +0800 |
|---|---|---|
| committer | Rbb666 <[email protected]> | 2026-02-25 17:53:06 +0800 |
| commit | ffcd1cb3160b18ba789c6ae620b5e1c5d76052bc (patch) | |
| tree | d0821617a6a7ddea820a2520a095e23166874c3e /components/drivers/serial/dev_serial_v2.c | |
| parent | f610f18a3c796ba1bc404c886b408b01ca814cef (diff) | |
fix(drivers/ipc): correct rt_ringbuffer_peek to not consume data
Diffstat (limited to 'components/drivers/serial/dev_serial_v2.c')
| -rw-r--r-- | components/drivers/serial/dev_serial_v2.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/components/drivers/serial/dev_serial_v2.c b/components/drivers/serial/dev_serial_v2.c index 13007cbe5e..0a7c343b79 100644 --- a/components/drivers/serial/dev_serial_v2.c +++ b/components/drivers/serial/dev_serial_v2.c @@ -2000,13 +2000,13 @@ void rt_hw_serial_isr(struct rt_serial_device *serial, int event) { rt_serial_update_write_index(&rx_fifo->dma_ping_rb, rx_length); - size = rt_ringbuffer_peek(&rx_fifo->dma_ping_rb, &ptr); + size = rt_ringbuffer_get_direct(&rx_fifo->dma_ping_rb, &ptr); put_len = rt_ringbuffer_put(&rx_fifo->rb, ptr, size); if (put_len != size) break; - size = rt_ringbuffer_peek(&rx_fifo->dma_ping_rb, &ptr); + size = rt_ringbuffer_get_direct(&rx_fifo->dma_ping_rb, &ptr); if (size == 0) break; @@ -2022,11 +2022,11 @@ void rt_hw_serial_isr(struct rt_serial_device *serial, int event) { rt_serial_update_write_index(&rx_fifo->dma_ping_rb, rx_length); - size = rt_ringbuffer_peek(&rx_fifo->dma_ping_rb, &ptr); + size = rt_ringbuffer_get_direct(&rx_fifo->dma_ping_rb, &ptr); rt_ringbuffer_put_force(&rx_fifo->rb, ptr, size); - size = rt_ringbuffer_peek(&rx_fifo->dma_ping_rb, &ptr); + size = rt_ringbuffer_get_direct(&rx_fifo->dma_ping_rb, &ptr); if (size == 0) break; |
