summaryrefslogtreecommitdiff
path: root/components/drivers/serial/dev_serial.c
AgeCommit message (Collapse)Author
2026-08-30[components][serial] Format termios staging declarationbernard
2026-08-30[components][serial] Address review findings for ioctl hardeningbernard
2026-08-30[components][serial] Harden RT-Smart serial ioctl argumentsbernard
在 v1/v2 串口文件边界复制已知用户参数,补齐 v2 unread count 和 termios 缓冲区保护。 在 imx6ull UART 编程前校验波特率,并在硬件配置成功后提交串口状态。
2025-12-13[dm][pinctrl] Set pinctrl default auto in platform bus. (#11052)GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-09-01fix(ioctl): _IOR() overflows in switch (int) #10650Tang Haojin
2025-08-10[driver][serial] V1]: fix correct data loss logic when RX ring buffer is fullwdfk-prog
In the serial ISR (`rt_hw_serial_isr`), the previous logic for handling a full RX FIFO was flawed. When the buffer was filled, it would increment `get_index` (`get_index += 1`). This had two negative consequences: 1. It effectively discarded the oldest byte of data prematurely. 2. It reduced the usable capacity of a buffer of size N to N-1. For example, a 64-byte buffer could only ever hold 63 readable bytes after becoming full. This patch corrects the behavior by implementing a standard overwriting ring buffer strategy. When the buffer is full, the logic is changed to `get_index = put_index`. This ensures that: - When new data arrives, it correctly overwrites the oldest data. - The `get_index` is advanced along with the `put_index`, correctly marking the new start of the buffer. - The full N-byte capacity of the buffer is utilized, always storing the N most recent bytes. This change resolves the unexpected data loss and makes the buffer behavior correct and predictable.
2024-12-17[serial] add bypass testcase in utestzhujiale
2024-12-17[serial] add bypass hook to direct processing char when uart irq comingzhujiale
2024-09-13[drivers] Specifies the name of the drivers driver fileCXSforHPU
https://github.com/RT-Thread/rt-thread/pull/9420