Commit Graph

4566 Commits

Author SHA1 Message Date
Shell 6b12bce22f
[quality] fixup compiler warning (#8961)
Signed-off-by: Shell <smokewood@qq.com>
2024-05-21 19:47:42 +08:00
Shell 5f947863b4
[dfsv2] fixup out-of-memory access (#8973)
This change addresses a potential out-of-memory access issue in the
devfs filesystem component. The issue arises when the `rt_malloc`
function allocates memory for a path string without accounting for
the null terminator, leading to undefined behavior.

As the manual documented:

> DESCRIPTION
>   The strlen() function calculates the length of the string pointed to
>   by s, excluding the terminating null byte ('\0').

To fix this, the memory allocation size was increased by one byte
to ensure space for the null terminator. This prevents potential
out-of-memory access and ensures proper string termination.

Signed-off-by: Shell <smokewood@qq.com>
2024-05-21 19:45:08 +08:00
zms123456 6101f1fd29
[components][driver]add isr statistics (#8955)
add isr statistics
2024-05-21 09:01:42 +08:00
Shell f2d6325b43
[smart] select console device dynamically (#8949)
* [smart] select console device dynamically

- Fixed compiler warning on terminal subsystem for
  `components/lwp/terminal/terminal.h`
- Updated default console setup to dynamically select an appropriate tty
  device based on the configured console device name.

Signed-off-by: Shell <smokewood@qq.com>

* fixup: remove useless codes

---------

Signed-off-by: Shell <smokewood@qq.com>
2024-05-17 13:19:00 +08:00
xiao-mang e46333496f
fix specified network card not taking effect with msh's ping error (#8937)
* fix specified network card not taking effect with msh's ping error

* fix specified network card not taking effect with msh's ping error
2024-05-16 15:43:50 +08:00
zms123456 ed002bb84a
[drivers][serial]fix error in getting serial_tty settings (#8953)
fix error in getting serial_tty settings
2024-05-16 15:36:16 +08:00
liYangYang 78bdf67ab2
[drivers][ofw] fix ofw_alias_scan() bug (#8908)
* fix ofw_alias_scan() bug

* fix tag_len
2024-05-13 20:56:32 +08:00
atwww b421b4e1f4
修复C++11 thread_local对象析构函数与实际内存释放动作顺序相反问题 2024-05-11 13:50:02 -04:00
zms123456 151a96cb88
[components][drivers]fix compiler error in serial dm (#8927)
fix compiler error in serial dm
2024-05-11 11:16:26 +08:00
Shell 989cc61f48
[hrtimer] fixup use-after-free (#8928)
Signed-off-by: Shell <smokewood@qq.com>
2024-05-11 08:53:42 +08:00
zhao maosheng 5dba9a4214 remove intr disable 2024-05-10 14:39:53 +08:00
zhao maosheng e2214cc899 add percpu interrupt info 2024-05-10 14:39:53 +08:00
Shell 017b2a5a44
[smart] fixup arm64 aspace switch (#8925)
* [smart] fixup arm64 aspace switch

Signed-off-by: Shell <smokewood@qq.com>

* fixup: arm add arch_kernel_mmu_table_get

---------

Signed-off-by: Shell <smokewood@qq.com>
2024-05-10 09:17:19 +08:00
geniusgogo 79b3d5ec1e fix_serial_baudrate_set 2024-05-09 00:35:46 -04:00
Shell 48bd0e49f2
[ipc] support of lockless rt_completion (#8887)
* [ipc] lockless rt_completion implementation

The new rt_completion implemented by lockless algorithm can improve timer resolution for up to ~12%, compare to sem IPC.

Signed-off-by: Shell <smokewood@qq.com>

* fixup: error

* remove useless changes

---------

Signed-off-by: Shell <smokewood@qq.com>
2024-05-08 09:25:57 +08:00
Shell 9ba6cec663
[libcpu/arm64] dealing with mem region out of kernel space (#8847)
* [ofw] dealing with mem region out of kernel space

- Fix parameter checking in _out_of_range() that NULL is excluded for
  fixed mapping
- Split page install with a deferred stage to avoid mapping over
  ARCH_EARLY_MAP_SIZE

Signed-off-by: Shell <smokewood@qq.com>

* fixup: restrict vstart for using of RT_NULL

---------

Signed-off-by: Shell <smokewood@qq.com>
2024-05-08 09:23:31 +08:00
geniusgogo 02e0334ac3 fix_serial_baudrate_set
Signed-off-by: geniusgogo <xpxyr@sina.com>
2024-05-07 19:03:14 -04:00
Shell 2c9b7c10b9
[kernel] add rt_thread_close()
* [thread] Add rt_thread_close()

This patch introduces a new function `rt_thread_close()` to enhances the
usability and maintainability by providing a dedicated mechanism for
closing threads.

- A new function `rt_thread_close()` is added to the API, providing a
  standardized approach for closing threads.
- The `rt_thread_close()` function removes a thread from the thread
  queue, updates its status to indicate closure, and performs the thread
  timer detaching which is a embedded timer in thread object.
- Additionally, the `rt_thread_detach()` function is modified to utilize
  `rt_thread_close()` internally, streamlining the thread detachment
  process.

Signed-off-by: Shell <smokewood@qq.com>
2024-05-01 00:49:09 -04:00
Troy 1d2fde8d73 Add comments for all functions in components/libc/posix/ipc/mqueue.c 2024-04-30 01:08:36 -04:00
LZerro f190cba0ab
[i2c] adjust the timing for I2C initialization 2024-04-29 20:46:12 -04:00
yiyi 4c9d3be98a
[components][drivers] added sensor device lookup function 2024-04-29 17:54:13 -04:00
xiao-mang b586889216
fix baudrate error (#8873)
* fix baudrate error

* fix baudrate error

* fix baudrate error

* fix baudrate error

* fix baudrate error

* fix baudrate error

* fix baudrate error

* fix baudrate error

* fix baudrate error
2024-04-29 18:00:34 +08:00
xiao-mang c359e93a9c
fix file mmap (#8865) 2024-04-28 15:21:02 +08:00
liYangYang d30c8b340e
[drivers][ofw] Fixed fdt_scan_memory() memory adjustment bug (#8853)
* Fixed fdt memory adjustment bug

* Modify the memory adjustment logic
2024-04-27 18:25:42 +08:00
Troy 946dd264ed Add comments for all functions in components/libc/posix/io/termios/termios.c 2024-04-26 23:13:27 -04:00
xiao-mang 75f41723cb
fix sys_getcwd (#8852) 2024-04-25 18:28:53 +08:00
zms123456 be97a8ef25
[components][dfs]remove duplicate lseek in devfs (#8859)
remove duplicate lseek in devfs
2024-04-25 18:28:43 +08:00
Shell 9e1a816f06
[smart] fix tty serial ioctl (#8861)
Using param callback to reduce unnecessary call.

Signed-off-by: Shell <smokewood@qq.com>
2024-04-25 18:21:32 +08:00
Troy 98a234d430
Add some comments in components/libc/posix/ipc/semaphore.c (#8848) 2024-04-24 05:46:43 +08:00
sp-cai 554632f1ee
[ipc] [dataqueue] 修复队列 pop 挂起的线程 push 无法恢复运行的错误 (#8839)
队列在 push 后查找挂起列表时使用了错误的挂起列表。
2024-04-22 20:20:35 +08:00
zms123456 5ca1e45020
[components][drivers]improve ktimer sleep (#8838)
improve ktimer sleep
2024-04-22 11:55:20 +08:00
latercomer 3ff2b08d82 [clang-format] 增加clang-format格式化配置,通过ide或者手动运行tools/run-clang-format.py进行代码自动格式化 2024-04-21 01:18:37 -04:00
Shell 732d32be09 [smart] fixup rt_hw_serial_unregister_tty of serial tty
Mutex lock should be taken before release the TTY device.

Signed-off-by: Shell <smokewood@qq.com>
2024-04-20 11:35:45 -04:00
latercomer 6bfe740f27 解决LOG_RAW异步输出多条文本的时候会被截断,原因是rt_vsnprintf会在字符串最后添加\0,ulog.c中的do_output()将\0也压入到ulog.async_rb,当LOG_RAW没有及时输出,那么rb中的字符串被\0截断了,导致没法正确输出LOG_RAW信息 2024-04-19 22:27:33 -04:00
xiao-mang 98204c249b fix for art-pi smart 2024-04-19 18:17:20 +08:00
xiao-mang 4de96450be fix for art-pi smart 2024-04-19 18:17:20 +08:00
xiao-mang b50a53129f
fix chdir for ash's cd (#8824) 2024-04-19 17:58:04 +08:00
zmq bbdfad93eb Increased the limit on the number of messages 2024-04-18 21:51:42 -04:00
zms123456 0bcf5968c2
[components][drivers]delete nonexist include file 2024-04-16 22:15:51 -04:00
zms123456 96eabab698
[components][drivers]fix some uninitialize err (#8806)
fix some uninitialize err
2024-04-16 21:58:13 +08:00
zms123456 a68b4df4d8
[component][driver][serial/tty]using serial name to name tty
当使用新device model时,serial的名字由系统分配,id也由系统分配,此时应根据系统分配的serial id来作为serial-tty的id
2024-04-15 23:20:30 -04:00
zms123456 be699795f8
[components][drivers]close can irq before release fifo
原来的CAN close中先释放fifo后关闭CAN中断,可能导致释放fifo后且关闭CAN中断前来CAN中断,此时rt_hw_can_isr可能在RT_ASSERT(tx/rx_fifo != RT_NULL)断言失败
2024-04-15 23:17:06 -04:00
zms123456 6ad0b2bd09
[components][drivers]fix workqueue bug
fix workqueue bug
2024-04-15 23:15:37 -04:00
atwww 2cc88b6cf5
修复POSIX线程本地存储寻找posix线程句柄时的逻辑错误 (#8790)
* Add GCC generalized atomic operation function

* 修复POSIX线程本地存储寻找posix线程句柄时的逻辑错误
2024-04-15 23:13:24 +08:00
Shell 5730097296
[smart] fixup devfs porting layer of terminal (#8797)
Signed-off-by: Shell <smokewood@qq.com>
2024-04-15 18:24:19 +08:00
Eric LGF 58ecde786f
[ymodem] fix the cmd "sy" without close file 2024-04-13 08:11:31 -04:00
Yuqiang Wang c6d20e47ac [bsp][renesas] Add HMI rw007 initialization configuration by default 2024-04-13 13:32:30 +08:00
chinky a2ab247d8f [fal]修正类型不匹配 2024-04-12 19:00:41 -04:00
zms123456 d5e74be81d
[components][drivers][can]fix can warning in 64bit cpu (#8772)
fix can warning
2024-04-12 16:00:49 +08:00
geniusgogo bdfa1ea20a
fix symlink (#8755)
Signed-off-by: geniusgogo <xpxyr@sina.com>
2024-04-10 23:55:29 +08:00
geniusgogo 651f23a604
[dfsv2] add dfs pwrite pread 2024-04-09 22:26:58 -04:00
Yuqiang Wang d08ae0bfd1
[driver][soft-spi] spi device driver framework adds pin init function function
为什么提交这份PR (why to submit this PR)
ps:在设备初始化阶段不应该存在对硬件的操作

你的解决方案是什么 (what is your solution)
ps:添加一个pin_init函数,在spi设备使用时调用该函数来完成硬件引脚的状态初始化,而不是在设备初始化阶段对硬件进行操作,已经在瑞萨HMI上通过验证
2024-04-09 18:33:29 -04:00
Troy 5bb902895c
[libc] add some posix function comments 2024-04-09 18:11:34 -04:00
zms123456 cbf316a5f7
[components][drivers]fix compile warning in 64 bits arch cpu (#8739)
fix compile warning in 64 bits arch
2024-04-09 21:38:10 +08:00
Shell 4b0f42c24a
[drivers/serial] Introduce hooker for TTY (#8733)
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 <smokewood@qq.com>
2024-04-09 21:36:16 +08:00
zms123456 4ffcbfef2a
[components][drivers]add ofw support i2c 2024-04-07 09:57:38 -04:00
Meco Man 545155616d [iar] fix legacy macros will be added if cannot get the IAR version 2024-04-06 23:37:32 -04:00
zhao maosheng 687eb87a2b fix: code format of serial.c and compile error in aarch64 context_gcc 2024-04-02 08:07:21 -04:00
Troy 3a4db99104
[libc][posix/io] add comments 2024-04-01 23:18:15 -04:00
zms123456 d856f77a55
[components][drivers] fix posix tty, and add more baudrate (#8683)
* serial-tty fix

* v2
2024-04-01 21:23:04 +08:00
Meco Man 1bf8a460e7 [finsh] remove finsh_syscall_lookup() function declaration 2024-03-31 20:31:35 -04:00
Meco Man a4204c61bd [devcie][pwm] fix warnings 2024-03-31 07:38:00 +08:00
Shell 864055bf18
[fixup] aarch64 UMP compiler error (#8677)
Signed-off-by: Shell <smokewood@qq.com>
2024-03-30 17:58:38 +08:00
Meco Man 6d1bc9b2f8 [msh] add comment for secondary-commands
新增加的二级命令使用方式没有清晰的描述
- 功能实现PR:https://github.com/RT-Thread/rt-thread/pull/8086
- 补充优化PR:https://github.com/RT-Thread/rt-thread/pull/8251
- 使用二级命令的例子:https://github.com/RT-Thread/rt-thread/pull/8398
- 相关issue:https://github.com/RT-Thread/rt-thread/issues/8691
2024-03-30 02:48:54 -04:00
geniusgogo 99245a1a8f fix pin ofw variable init. 2024-03-29 21:48:31 +08:00
Troy 7e492fc37c Add comments for all functions in components/libc/posix/io/eventfd/eventfd.c 2024-03-28 21:28:46 -04:00
Shell 83e95bdff4
sync smart & dfs (#8672)
Signed-off-by: xqyjlj <xqyjlj@126.com>
Signed-off-by: Shell <smokewood@qq.com>
Co-authored-by: xqyjlj <xqyjlj@126.com>
2024-03-28 23:42:56 +08:00
Troy 56fd6984ac Fix the issue of incorrect return of invalid parameters in aio_write 2024-03-27 22:58:54 -04:00
Meco Man e0f2313c53 [msh] solve data access bugs and fix shell.c strcat()
When using musl libc's strcat, strcat itself will cause system crash.
2024-03-27 18:40:56 -04:00
Troy 51d4a9c804 Fix epoll.c file format error 2024-03-26 17:42:01 -04:00
Troy 9fc7c7569b Fix incorrect naming of triggered 2024-03-26 17:42:01 -04:00
Troy 46d6036c28 modified: components/libc/posix/io/aio/aio.c Added some function comments
modified:   components/libc/posix/io/aio/aio.h		Align comments within the aiocb structure
modified:   components/libc/posix/io/epoll/epoll.c	Add comments for all functions and members within structure members
2024-03-26 17:42:01 -04:00
Troy b228f67385 modified: components/libc/posix/delay/delay.c Added comments for all functions in this file
modified:   components/libc/posix/signal/posix_signal.c		Add comments to the sigqueue function, although it does not have an internal implementation
modified:   components/libc/posix/signal/posix_signal.h		Added detailed explanation to all members of the rt_signal_value enumeration
2024-03-25 18:36:17 -04:00
Shell 3237efd089
fixup d1s (#8671)
Signed-off-by: Shell <smokewood@qq.com>
2024-03-25 20:29:56 +08:00
Wat cb6d451564 Add GCC generalized atomic operation function 2024-03-24 23:01:11 -04:00
Evlers dca8a06471 [wlan][cmd] fixed a duplicate issue with the wifi scan command 2024-03-24 14:35:41 -04:00
Evlers 3a65967a40 [wlan] add the wlan join scan function 2024-03-24 14:35:15 -04:00
kk 2549b82bd6
[pin] pin_read/write rt_uint8_t to rt_ssize_t 2024-03-23 14:50:31 -04:00
Shell 22106bb8de [finsh] feat: add finsh thread entry hook
Signed-off-by: Shell <smokewood@qq.com>
2024-03-22 18:52:35 -04:00
Liu Yang 59dbebe6fc [components/driver] Fix issue for serial_V2 in no buffer bloking tx mode. 2024-03-20 02:28:35 -04:00
zms123456 5e26b4c585
[components/dirver]Fix issue of not releasing sem resource 2024-03-19 20:01:49 -04:00
StackYuan a582c0cc31 [fix] NXP bsp for RT-Thread 5.1.0 fixed up. 2024-03-19 08:13:00 -04:00
Meco Man 6ee7197587 [stm32][pwm] fix warning in Keil5 2024-03-18 23:22:34 -04:00
exxfire 90f86c2b71 netdev_unreg: modyify netdev remove logical when mutil-netdev exist 2024-03-18 20:39:15 -04:00
Meco Man 9ac8b47eb2 [sensor-v2] enable sensor v2
fix the confilcts with sensor v1
2024-03-16 23:31:54 -04:00
Meco Man 59231a4276 [msh][ci]only GCC use strict checking 2024-03-16 10:21:38 -04:00
Shell bef4bbd50a
[dfs] fixup bugs in dfs_dentry_lookup (#8612)
Signed-off-by: Shell <smokewood@qq.com>
2024-03-15 14:57:38 +08:00
yangpeng 1919ad0748 [spi]修复spi总线挂载多设备通信可能失败问题 2024-03-04 19:50:36 -05:00
Shell 53754ff50a
[fixup] check NULL pointer before access (#8573)
Signed-off-by: Shell <smokewood@qq.com>
2024-03-02 16:05:19 +08:00
fangjianzhou 00c6800e4e
[components/driver] update serial (#8567) 2024-03-01 10:29:21 +08:00
zms123456 6b5058ba5c
[components/drivers]update hwtimer (#8565) 2024-02-29 22:27:38 +08:00
zms123456 97c5edf947
[component][drivers]add pinctrl/pin-irqchip (#8383) 2024-02-29 22:27:27 +08:00
zms123456 195f94ef1d
[components][drivers]add pic-gic (#8388) 2024-02-29 09:39:56 +08:00
Shell 71560bafb5
🎯 Sync smart & scheduler codes (#8537)
Signed-off-by: Shell <smokewood@qq.com>
Co-authored-by: xqyjlj <xqyjlj@126.com>
2024-02-23 17:49:15 +08:00
LaterComer 82bb104f65
fix(serial_v2): tx_fifo->rb.buffer_ptr not init when RT_DEVICE_FLAG_DMA_TX 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。
2024-02-21 00:29:53 -05:00
Yuqiang Wang c6bdee3c50
[ci] open ci check with function declaration warning (#8546) 2024-02-20 22:45:04 -05:00
Meco Man bd228eb9c5 [ci] fix errors under strick compiling mode 2024-02-20 08:39:05 +08:00
yangpengya a8d5a645f2
[components][at] 优化AT组件,并解决内存泄露
1.优化at server endmark判断,支持自动识别'\r''\n'"\r\n"。
2.优化at_recvfrom,修复大数据量时sem多次释放造成的接收错误。
3.修复at组件中可能存在的内存泄露。
4.优化部分代码逻辑,减少冗余代码。
2024-02-18 11:07:05 -05:00
yangpeng 02eaf76d7b [qspi]修复qspi配置未生效问题 2024-02-17 01:07:19 -05:00
Bernard Xiong cad5ceb1e0
[msh] fix the version command (#8531) 2024-02-09 19:56:52 +08:00