Commit Graph

5183 Commits

Author SHA1 Message Date
copilot-swe-agent[bot] 1d4b45954b
[finsh][shell] Avoid prompt format-string injection
Agent-Logs-Url: https://github.com/RT-Thread/rt-thread/sessions/b514540d-90fa-4ac9-bb74-5c84dd939b40

Co-authored-by: BernardXiong <1241087+BernardXiong@users.noreply.github.com>
2026-04-01 13:52:14 +00:00
AFWEF_147 9c8b58f482 fix(lwp): reject wrapped user copy ranges 2026-04-01 10:11:37 +08:00
AFWEF_147 6fa12d5dd8 fix(ramfs): harden entry name validation and termination 2026-04-01 10:09:07 +08:00
AFWEF_147 c167bbbc7e fix(tmpfs): harden path component bounds and validation 2026-04-01 10:09:07 +08:00
Telecaster2147 c7122a46b4 style: format code with clang-format [skip ci] 2026-03-31 10:37:11 +08:00
AFWEF_147 7cd7e05ba4 fix(lwp): validate thread priority in sched syscalls 2026-03-31 10:37:11 +08:00
GuEe-GUI e41c7ccf88 [dm][clk][rockchip] fixup rockchip clk
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2026-03-24 22:56:54 +08:00
shuta.lst fd2bae8a5e fix[components][finsh]: Fix for implicit declaration of function 'strtoul' in multi-core build; 2026-03-19 21:15:17 +08:00
GuEe-GUI 2b58dec87b [dm][block] fixup the EFI partition checked in 32bits
Link: https://github.com/RT-Thread/rt-thread/issues/11260

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2026-03-18 21:43:22 +08:00
wdfk-prog 6a635e32d9 fix[stm32][spi]: add usage_freq and compute transfer timeout by frequency 2026-03-16 22:05:48 +08:00
wdfk-prog cda0a63ab5 refactor(core): Move __rt_fls to kservice 2026-03-12 16:40:33 +08:00
wdfk-prog b0af22a96f feat[i2c]: add bus configuration and max-hz control 2026-03-12 15:15:02 +08:00
huangshuhua 4617729c4c [lwp/aarch64] Fix macro definition style in reloc.c
Split the merged #define macros on line 13 into separate lines to comply with coding standards and avoid potential preprocessor issues.
2026-03-12 14:39:13 +08:00
kenneth.liu cffaa514e2 components: libc: fix reset static variable unsolved in dlmodule_load_shared_object
[Problem Description]
In the dlmodule_load_shared_object function,
if a module loading fails once due to an unresolved symbol,
all subsequent attempts to load any module will fail.
The system becomes unable to load modules correctly until a reboot.

[Problem Analysis]
The root cause is that the variable unsolved is defined as static.
Static variables retain their value between function calls.
If a relocation error occurs, unsolved is set to RT_TRUE.
However, when the function returns with an error, the value of unsolved is not reset.
Consequently, on the next function call, unsolved remains RT_TRUE from the previous execution.
This causes the check if (unsolved) to trigger immediately (or after the loop),
forcing the function to return an error regardless of whether the current module is valid or not.

[Solution]
Reset the unsolved variable to RT_FALSE before returning the error code -RT_ERROR.
This ensures the variable is in a clean state for the next function call, preventing state leakage between invocations.

Signed-off-by: Liu Gui <kenneth.liu@sophgo.com>
2026-03-12 13:59:15 +08:00
CYFS 737ae54878
[bsp][gd32]:gd32vw553h-eval add wifi support#11175 2026-03-04 18:07:10 +08:00
GuEe-GUI 566e74af83 [dm][pci] fixup the shift of class in probe
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2026-03-02 09:37:07 +08:00
wdfk-prog d8546a9a0f fix(ymodem): improve send read loop and unify session cleanup
- Accumulate short reads, mark finishing on EOF
- Track begin/end callback states and cleanup on error paths
- Add ACK handling with retry/error counting in send flow
2026-02-27 09:54:28 +08:00
wdfk-prog 71fd98e56d fix(serial): only apply CRLF translation in STREAM mode for poll tx 2026-02-27 09:54:28 +08:00
Weixie Cui 7247a456e0 fix(finsh): dup / cause error
if src == '/', result in something lik 'dest//file'
2026-02-25 18:23:22 +08:00
Shaun ffcd1cb316 fix(drivers/ipc): correct rt_ringbuffer_peek to not consume data 2026-02-25 17:53:06 +08:00
hzt 1b39e04687 [libc/posix] Fix mq_send() to block when queue is full per POSIX standard
The POSIX mq_send() function currently passes timeout=0 to
rt_mq_send_wait_prio(), causing it to return immediately when the
queue is full instead of blocking as required by POSIX.1-2017.

This patch:
1. Changes mq_send() to use RT_WAITING_FOREVER for blocking behavior
2. Implements mq_timedsend() properly with timeout support
3. Fixes errno mapping for different error conditions

Reference: POSIX.1-2017 mq_send(3p):
"If the specified message queue is full, mq_send() shall block until
space becomes available to enqueue the message, or until mq_send()
is interrupted by a signal."

Fixes: https://github.com/RT-Thread/rt-thread/issues/11196

Signed-off-by: hzt <3061613175@qq.com>
2026-02-24 13:39:05 +08:00
Shaun 040c029055 fix(drivers/block): replace GNU ?: extension with standard C ternary in blk.c 2026-02-22 13:04:31 +08:00
theqengineer 85b656b14d chore: fix typo in components and libcpu 2026-02-13 21:54:59 +08:00
wdfk-prog e5e29350b8 fix(ulog): Avoid async ulog empty wakeups and missed notifications 2026-02-13 11:00:13 +08:00
wdfk-prog cbc759d6a5 refactor(ulog): Unify ulog warning output with ulog_warn_once 2026-02-13 11:00:13 +08:00
O-O-BOOK 9412a2899d [style][components/fal_rtt] misrac style 2026-02-11 14:51:46 +08:00
wdfk-prog 27b2ba5556 fix(CAN): Avoid double counting RX overflow drops 2026-02-10 11:41:41 +08:00
GuEe-GUI 4e5c1cfb44 [bsp][rockchip] fixup rk3500 build and run
Linker: https://github.com/RT-Thread/rt-thread/issues/11150

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2026-02-09 22:07:32 +08:00
CYFS 25b6953501 [components][lwip]: fix ping timeout handling and support LWIP_SO_SNDRCVTIMEO_NONSTANDARD 2026-02-05 17:08:37 +08:00
CYFS 68da106253 [components][drivers]:fix wlan err 2026-02-04 22:13:54 +08:00
copilot-swe-agent[bot] 5e04105723 rename i2c mutex
Co-authored-by: BernardXiong <1241087+BernardXiong@users.noreply.github.com>
2026-02-04 09:47:00 +08:00
wdfk-prog 06e829b1b3 docs(can): improve dev_can.h docs for batched RX example 2026-02-03 18:40:45 +08:00
wdfk-prog 2b95c3409c fix[dfs_v1]: prevent vnode ref underflow and double release on close/fd release 2026-02-02 13:33:32 +08:00
Damon 88c1e6c88a
sdio: fix missing card status polling after CMD6 in eMMC DDR mode switch 2026-02-01 14:02:10 +08:00
Bernard Xiong 743b614875
[components][clock_time] Refactor time subsystem around clock_time (#11111)
* [components][clock_time] Refactor time subsystem around clock_time

Introduce the clock_time core with clock source/event separation, high-resolution scheduling, and boot-time helpers, plus clock_timer adapters for timer peripherals.

Remove legacy ktime/cputime/hwtimer implementations and migrate arch and BSP time paths to the new subsystem while keeping POSIX time integration functional.

Update drivers, Kconfig/SConscript wiring, documentation, and tests; add clock_time overview docs and align naming to clock_boottime/clock_hrtimer/clock_timer.

* [components][clock_time] Use BSP-provided clock timer frequency on riscv64

* [risc-v] Use runtime clock timer frequency for tick and delays

* [bsp] Add clock timer frequency hooks for riscv64 boards

* [bsp] Update Renesas RA driver doc clock_timer link

* [bsp] Sync zynqmp-r5-axu4ev rtconfig after config refresh

* [bsp][rk3500] Update rk3500 clock configuration

* [bsp][hpmicro] Add rt_hw_us_delay hook and update board delays

* [bsp][stm32l496-st-nucleo] enable clock_time for hwtimer sample in ci

* [bsp][hpmicro] Fix rtconfig include scope for hpm6750evk

Move rtconfig.h include outside the ENET_MULTIPLE_PORT guard for hpm6750evk and hpm6750evk2 so configuration macros are available regardless of ENET settings.

* [bsp][raspi3] select clock time for systimer

* [bsp][hpm5300evk] Trim trailing blank line

* [bsp][hpm5301evklite] Trim trailing blank line

* [bsp][hpm5e00evk] Trim trailing blank line

* [bsp][hpm6200evk] Trim trailing blank line

* [bsp][hpm6300evk] Trim trailing blank line

* [bsp][hpm6750evk] Trim trailing blank line

* [bsp][hpm6750evk2] Trim trailing blank line

* [bsp][hpm6750evkmini] Trim trailing blank line

* [bsp][hpm6800evk] Trim trailing blank line

* [bsp][hpm6e00evk] Trim trailing blank line

* [bsp][nxp] switch lpc178x to gcc and remove mcx timer source

* [bsp][stm32] fix the CONFIG_RT_USING_CLOCK_TIME issue.

* [docs][clock_time] add clock time documentation

* [docs][clock_time] Update clock time subsystem documentation

- Update device driver index to use correct page reference
- Clarify upper layer responsibilities in architecture overview
- Update README to describe POSIX/libc, Soft RTC, and device driver usage
- Refine architecture diagram with improved layout and color scheme
- Remove obsolete clock_timer.md file

* [kernel][utest] Trim trailing space

* [clock_time] Fix hrtimer wrap handling

* [clock_time] fix the static rt_inline issue

* [clock_time] fix the rt_clock_hrtimer_control result issue
2026-01-31 17:44:27 +08:00
sakumisu f2a646cff4 fix(cherryusb): fix dwc2 host size check
Signed-off-by: sakumisu <1203593632@qq.com>
2026-01-29 14:23:39 +08:00
R b b666 3e2d924e9d
[driver/usb]Update dwc2/usb_glue_infineon.c to add the missing header file. (#11158) 2026-01-28 10:54:30 +08:00
sakumisu cdc50db570 update(cherryusb): update to v1.6.0
Signed-off-by: sakumisu <1203593632@qq.com>
2026-01-28 09:46:34 +08:00
wdfk-prog 5d1f199e9e feat(fal): add Kconfig options for device name length and block count 2026-01-26 17:24:39 +08:00
lhxj 7641ef6885 [drivers] Fix OFW bus conflict and prevent duplicate device creation
Problem:
When enumerating device tree nodes, platform bus and native buses (I2C/SPI)
may create duplicate devices for the same OFW node, causing cross-bus conflicts.
This triggers assertion failure '(dev->bus != new_bus)' in
rt_bus_reload_driver_device() during boot on minimal DM-enabled systems.

Root Cause:
1. Platform bus tries to reload devices that already belong to other buses
   by calling rt_bus_reload_driver_device(dev->bus, dev), which violates
   the API contract (requires dev->bus != new_bus).
2. Native buses (I2C/SPI) do not mark OFW nodes as occupied, so platform
   bus creates duplicate platform devices for I2C/SPI client nodes.

Solution:
1. components/drivers/core/platform_ofw.c: Return RT_EOK when np->dev exists,
   letting the native bus handle device lifecycle instead of cross-bus reload.
2. components/drivers/i2c/dev_i2c_bus.c: Mark i2c_client_np->dev during scan
   to prevent platform bus from duplicating I2C client devices.
3. components/drivers/spi/dev_spi_bus.c: Mark spi_dev_np->dev during scan
   to prevent platform bus from duplicating SPI devices.

Tested on Spacemit K1 RISC-V platform with minimal DM configuration.

Signed-off-by: lhxj <2743257167@qq.com>
2026-01-20 22:05:28 +08:00
wdfk-prog d76eca1384 fix(Kconfig): Update the default value of FINSH_THREAD_PRIORITY to support different thread priorities 2026-01-19 09:47:48 +08:00
milo 3ca5cd53f5 [fix] fix normalization issue of mktime and timegm 2026-01-17 19:12:40 -05:00
AngryProton f4566f14dc
[drivers/blk] 解决块设备写入不对齐数据失败的问题 #11103 2026-01-12 17:14:59 +08:00
AngryProton 3d8114bcfe
[FIX][fal]char设备类型补充缺失的入参,适配DFSv2框架 (#11112)
* [FIX][fal]补充缺失的入参,适配DFSv2框架

* [FIX][fal]正确声明入参的数据类型

* [chg]按审查建议修改变量类型和代码格式。
2026-01-06 17:12:55 +08:00
wdfk-prog bd22f2fa6a fix(dfs): align fd API declarations with DFS_USING_POSIX 2026-01-06 16:44:35 +08:00
AngryProton 7384a8e035 [FIX]Locking for dfs_dentry_dump must be consistent with that of all other dentry functions. 2026-01-06 12:03:41 +08:00
Runcheng Lu 17d026c6cc [fix] drivers: spi: refactor SPI bit operations into independent configuration
- Add RT_USING_SPI_BITOPS as a separate configurable option
- Make RT_USING_SOFT_SPI depend on RT_USING_SPI_BITOPS
- Adjust build order in SConscript for proper com

Signed-off-by: Runcheng Lu <runcheng.lu@hpmicro.com>
2026-01-04 17:04:34 +08:00
Copilot 7c05661ae9
[virtio] Fix queue_sel ordering in virtio_queue_init and virtio_queue_destroy #11114 2026-01-04 16:55:19 +08:00
angryproton df85c74265 [FIX][DFSv2][ELMFAT]解决dfs_elm_unlink在FF_VOLUMES为1时赋值drivers_fn引用未定义变量导致编译报错的问题 2025-12-27 10:46:50 +08:00
GUI c6498b5f65
[sdio][dm] update for DM (#11078)
* [sdio][dm] import Kconfig for DM

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [sdio] fixup IRQ and mmcsd threads' stack size default

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [sdio][dm] Support DM mode

1. Support features read by DM.
2. Support regulator API in drivers.
3. Support send tuning option CMD.
4. Replace `switch_uhs_voltage` by `signal_voltage_switch`.

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [dm][sdhci] Cleanup the SDHCI

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [sdio][dm] add new SDIO/SDHCI drivers

1. SDHCI support on PCI bus
2. Synopsys DesignWare MMC Family(MMIO/PCI)

Signed-off-by: GuEe-GUI <2991707448@qq.com>

---------

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-12-26 21:04:42 +08:00