| Age | Commit message (Collapse) | Author |
|
|
|
In this patch, a hook list has been introduced to address the concerns
regarding coupling issues arising from modifications to the serial code
for integrating TTY logic.
Signed-off-by: Shell <[email protected]>
|
|
|
|
and RT_SERIAL_TX_BLOCKING
为什么提交这份PR (why to submit this PR)
serial_v2驱动框架,rt_serial_tx_enable()函数,在 DMA阻塞发送(RT_DEVICE_FLAG_DMA_TX and RT_SERIAL_TX_BLOCKING) 的时候,使用rt_malloc分配了tx_fifo内存,但是并未对tx_fifo->rb.buffer_ptr指针进行初始化(rt_malloc不会自动初始化内存),因此可能导致buffer_ptr是一个随机指针。但是rt_serail_write()函数需要根据tx_fifo->rb.buffer_ptr是否为RT_NULL来判断是调用_serial_fifo_tx_blocking_nbuf()还是_serial_fifo_tx_blocking_buf()。
由于tx_fifo->rb.buffer_ptr可能是一个随机值(不一定为RT_NULL=0),导致RT_DEVICE_FLAG_DMA_TX and RT_SERIAL_TX_BLOCKING模式下调用了_serial_fifo_tx_blocking_buf(),但是rb没有真正开辟内存空间,导致内存异常
你的解决方案是什么 (what is your solution)
rt_serial_tx_enable(),在DMA阻塞发送分支下,对tx_fifo->rb.buffer_ptr进行初始化,赋值为RT_NULL。
|
|
修复阻塞模式下中断发送的逻辑顺序问题与多线程下的竞态条件 (#7997)
|
|
(#7394)
|
|
|
|
|
|
|
|
* [DFS] prepare for dfs_v2. dfs_fd -> dfs_file; dfs_fnode -> dfs_vnode.
* [BSP] fix code analysis warning
* [smart] fix the pointer overflow.
* code format
* [smart] fix the lwp->lwp_obj checking.
|
|
|
|
rt_ssize_t can give negative error code, which follows the unix style correctly
|
|
* [fix/lwp] don't restore term for background lwp
|
|
* [drivers][serial_v2]修复DMA+TX阻塞模式异常
|
|
* Synchronize the code of the rt mart branch to the master branch.
* TTY device
* Add lwP code from rt-smart
* Add vnode in DFS, but DFS will be re-write for rt-smart
* There are three libcpu for rt-smart:
* arm/cortex-a, arm/aarch64
* riscv64
Co-authored-by: Rbb666 <[email protected]>
Co-authored-by: zhkag <[email protected]>
|
|
|
|
|
|
|
|
* [kernel][timer] fixed bug serial_v2 驱动问题,导致所有写入都使用阻塞方式写入
|
|
|
|
* [stm32] fix h7 uart V2 driver unused code.
* [DeviceDriver][serialv2] fix the serialv2 when using for console device on DMA mode.
* [stm32][art-pi] using serial v2 by default
* [DeviceDriver][SerialV2] Add termios for serial@V2 .
* [BSP][STM32] Add hardware flow control for STM32 serial@V2 driver.
* [DeviceDriver][Serial@V2] Add hardware flow control for serial V2.
|
|
* [stm32] fix h7 uart V2 driver unused code.
* [DeviceDriver][serialv2] fix the serialv2 when using for console device on DMA mode.
* [stm32][art-pi] using serial v2 by default
|
|
* fix:Open RT_USING_POSIX_STDIO caused serial_v2 to compile failed
|
|
|
|
|
|
|
|
[components][src] Optimize interrupt disable time
|
|
|
|
|
|
|
|
|
|
|
|
优化发送非阻塞时,serial_close未执行rt_completion_done的问题。
|
|
优化dma接收处理流程,解耦驱动调用串口框架的API接口
|
|
|