summaryrefslogtreecommitdiff
path: root/components
AgeCommit message (Collapse)Author
2025-04-13add RT_THREAD_CTRL_SET_PRIORITYwycwyhwyq
2025-04-13add RT_THREAD_CTRL_SET_PRIORITYwycwyhwyq
2025-04-11[fal/sample] readme 添加 (#10175)ricky
* 更改FLASH_PAGE_SIZE拼写错误
2025-03-27fal: add new example for norflashricky
2025-03-21解决 list_mutex 互斥量没有线程持有时打印错误Yang Xijing
2025-03-19[DM/Platform] Fixup the node will probe more than onceGUI
If a node request a new node or it's parent node. the request's node will probe a double time. So we check the device object of node in ofw probe entry and ofw probe child exit.
2025-03-17解决bps/simulator无法在vs2019环境下编译latercomer
Signed-off-by: latercomer <[email protected]>
2025-03-17[DM/DMA] DMA src and dst is wrong.GUI
The first arg is src, then dst.
2025-03-12[components][at] Add formatting message function for at client1078249029
It will be useful for quiting transmission mode of some chips like esp8266. Signed-off-by: 1078249029 <[email protected]>
2025-03-12修复 MMCSD 宏拼写错误+内核开启LOG_D编译问题yixinghua121
2025-03-11[doxygen][audio] Naming anonymous enumeration type audio_stream1078249029
Signed-off-by: 1078249029 <[email protected]>
2025-03-11[doxygen][audio] Fix group names by adding group_ prefix (#10094)wumingzi
Signed-off-by: 1078249029 <[email protected]>
2025-03-11fix dangling pointer in component pthread and dfs_elm (#9976)lingfengPeng
* [components/libc/posix][pthreads]fix the risk of dangling pointer * [components][dfs][dfs_elm]:fix risk of dangling pointer, unmount the temp driver then free the temp FATFS in dfs_elm_mkfs.
2025-03-10[mm]修复unmap内存时遗漏刷新地址转换表的问题,避免dcache( ↵heyuanjie87
PIPT)出错
2025-03-10fix(cherryusb): fix USBD_IRQHandler argumentsakumisu
Signed-off-by: sakumisu <[email protected]>
2025-03-10update(cherryusb): update to v1.4.3sakumisu
Signed-off-by: sakumisu <[email protected]>
2025-03-10feat: ci script associated with auto_utest. (#9933)Yuqiang Wang
* feat: ci script associated with auto_utest.
2025-03-06[doxygen][audio] Fix doxygen comments for audio component1078249029
Added comments for data structure and rt_audio_ops in dev_audio.h. Enriched comments for macro group. Moved and renamed folder audio. Signed-off-by: 1078249029 <[email protected]>
2025-03-05[DM/THERMAL] fixup coefficients's offset lostGUI
coefficients is double u32 data list.
2025-03-05[components][drivers][spi]: fix: set message.parent.next to NULL for ↵Runcheng Lu
rt_qspi_send_then_recv API and rt_qspi_send API - Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues. Signed-off-by: Runcheng Lu <[email protected]>
2025-03-05[components][drivers][spi] dev_spi_flash_sfud: fix: set message.parent.next ↵Runcheng Lu
to NULL for qspi_read API - Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues Signed-off-by: Runcheng Lu <[email protected]>
2025-03-05[DM/OFW] check available in stub probeGUI
device node should not probe in stub if device is not available.
2025-03-02[components][dfs_v2]: Fix cromfs bug (#10054)wycwyhwyq
2025-03-01[RFC][doxygen]Doxygen comment standard processing (#10058)wumingzi
Signed-off-by: 1078249029 <[email protected]>
2025-03-01fix:pwm msh errCYFS
2025-03-01Fixup device rename by chip_selectGUI
`chip_select` is array now, should use index of value.
2025-02-26[bsp][nxp] add cherryusb config for mcxa156 (#10041)hydevcode
[bsp][nxp] add cherryusb config for mcxa156 and add ci.attachconfig
2025-02-25feat: improve Kconfig structure on MMShell
Signed-off-by: Shell <[email protected]>
2025-02-25feat: mm: page poison debugging and assertion enhancementsShell
This commit introduces a page poison debugging mechanism and additional assertions for memory management, improving system maintainability and debugging capabilities. The changes aim to detect illegal memory usage early and provide better clarity in managing page allocations. Changes: - Added `RT_DEBUGGING_PAGE_POISON` option to enable memory usage tracing. - Introduced a page poisoner for detecting illegal memory usage. - Implemented region-based memory tracking using bitmaps. - Enhanced spinlock protection for memory management operations. - Fixed several assertion checks for memory safety. - Renamed macros for consistency (`FLOOR` to `CEIL`). - Refined memory allocation and deallocation logic to include poisoning. - Updated Kconfig to add configurable `RT_PAGE_MAX_ORDER` and poison debugging. - Improved debugging outputs for page regions and memory operations. Signed-off-by: Shell <[email protected]>
2025-02-25feat: mm: install page in a discrete methodShell
This patch refactors the `rt_page_install` function by delegating specific operations to new helper functions. Besides, the contiguous page regions are now separated to segments of fixed size. The goal is to improve the overall code readability, enhance modularity, and ensure better handling of page installation logic through clearer separation of concerns. Changes: - Introduced `_get_mpr_ready_n_install` to encapsulate memory preparation and page installation logic. - Added `_update_region_list` for updating the installed page registry. - Defined `_PAGE_STRIPE` for optimized region processing. - Modified `rt_page_install` to handle regions in smaller chunks using helper functions for better maintainability. - Improved locking mechanisms with `rt_spin_lock` for thread safety. - Reduced code duplication and clarified shadow region calculations. Signed-off-by: Shell <[email protected]>
2025-02-25feat: mm: added affinity pages allocatorShell
This patch introduces a tagged pages allocator to address the existing problems of page aliasing on specific platforms and the requirement of page coloring. It implements an affinity-id aware page manager by separating the runtime page list into two types: a normal single linked-list and a multi-dimensional affinity-list. Changes: - Introduced tagged pages allocator and managing algorithm for affinity pages list - Modified components to support affinity-id list management - Updated page allocation and freeing functions to handle tagged pages - Added configuration options for page affinity block size and debugging - Modified mmap and elf loading to respect affinity settings - Enhanced page list management to support multi-dimensional affinity-list Signed-off-by: Shell <[email protected]>
2025-02-24[lwp/riscv]修正用户态参数空间占用堆地址空间的问题 (#10014)heyuanjie87
* [lwp/riscv]修正用户态参数空间占用堆空间的问题
2025-02-22components: libc: fix pointer-to-integer cast warnings and address truncationkenneth.liu
[Problem Description] 1. When enabling RT_USING_MODULE=y, compilation warnings occur: dlelf.c:386:27: warning: cast from pointer to integer of different size dlelf.c:398:25: warning: cast from pointer to integer of different size dlelf.c:408:24: warning: cast from pointer to integer of different size 2. On RV64 architectures (e.g. Sophgo SG2042 with RISC-V Sv39 and 40-bit physical addressing), dlsym may fail when accessing addresses beyond 32-bit range. [Root Cause] In dlmodule_load_relocated_object() and dlmodule_symbol_find(), pointer is cast to rt_uint32_t which truncates: | rt_ubase_t rodata_addr = (rt_uint32_t)ptr; This causes: - Warnings on 64-bit systems (pointer width > 32-bit) - Actual address truncation on RV64 when physical address exceeds 32-bit [Solution] Replace rt_uint32_t with architecture-adaptive rt_ubase_t: | rt_ubase_t rodata_addr = (rt_ubase_t)ptr; The rt_ubase_t is defined in include/rttypes.h as: | #ifdef ARCH_CPU_64BIT | typedef rt_uint64_t rt_ubase_t; | #else | typedef rt_uint32_t rt_ubase_t; | #endif This ensures correct width casting for both 32/64-bit architectures. Signed-off-by: Liu Gui <[email protected]>
2025-02-20components: libc: fix array overflow in rt_object name assignmentkenneth.liu
[Problem Description] When assigning name to rt_object, strncpy() uses size equal to RT_NAME_MAX, which causes missing null-terminator and overflows into adjacent 'type' field. This corruption leads to unexpected system behavior. [Problem Analysis] The rt_object structure defines: | char name[RT_NAME_MAX] | -> buffer | rt_uint8_t type | -> adjacent field Original code calculates size as: size = end - first + 1; if (size > RT_NAME_MAX) size = RT_NAME_MAX; When size equals RT_NAME_MAX, strncpy() will copy exactly RT_NAME_MAX bytes without adding terminating '\0', causing two issues: 1. name buffer is not null-terminated 2. The implicit null-byte writes beyond name[] into type field [Solution] Change boundary check from: if (size > RT_NAME_MAX) size = RT_NAME_MAX; to: if (size >= RT_NAME_MAX) size = RT_NAME_MAX - 1; This ensures: 1. Always leaves space for null-terminator 2. Prevents overflow into type field 3. Maintains maximum valid name length (RT_NAME_MAX-1 + '\0') Signed-off-by: Liu Gui <[email protected]>
2025-02-19doxygen: finsh: Normalize macro definitions (#10006)Chen Wang
Regular macro definitions according to [1]. Note: for variadic macros such as MSH_CMD_EXPORT, we can not use normal @param command, otherwise doxygen will report "@param is not found in the argument list of ...". So I just write the parameters by manual. Link: https://rt-thread.github.io/rt-thread/page_howto_macro.html [1] Signed-off-by: Chen Wang <[email protected]>
2025-02-18[lwp]add comments for lwp system calls. (#9934)Guorui Li
2025-02-18[lwp]检查killpg的signo参数的有效性 (#9981)heyuanjie87
* [lwp]对检查killpg的signo参数的有效性
2025-02-18[ulog]Fix the problem of file_buf being released incorrectlyRbb666
2025-02-16[src/ktime] fix the bug when use keil AC6 and open RT_USING_HOOKLIST … (#9993)Supper Thomas
* [src/ktime] fix the bug when use keil AC6 and open RT_USING_HOOKLIST and RT_USING_KTIME
2025-02-15doxygen: add prefix for groups (#9991)Chen Wang
* doxygen: add prefix for groups Add "group_" prefix to doxygen group names. This makes it easier to grep with group name later. This patch only modifies the groups defined in the pathes of INPUT of documentation/Doxyfile: INPUT = . \ ../src \ ../include \ ../components/finsh \ ../components/drivers/include/drivers \ ../components/drivers/clk \ ../components/dfs/dfs_v2/src \ ../components/dfs/dfs_v2/include Other groups are not touched. Signed-off-by: Chen Wang <[email protected]> * ci: fixed error report when run file_check.py Such as: - "please delete extra space at the end of this line." - "the RT-Thread error code should return negative value. e.g. return -RT_ERROR" Signed-off-by: Chen Wang <[email protected]> --------- Signed-off-by: Chen Wang <[email protected]>
2025-02-11[DM/THERMAL] Remove unused code in update pollGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-02-11[DM/LED] Rename LED register/unregisterGuEe-GUI
rt_hw_* is use for DM and not DM, but LED only use in DM. Signed-off-by: GuEe-GUI <[email protected]>
2025-02-11[DM] Replace spinlock static init by RT_DEFINE_SPINLOCKGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-02-11[DFS/ISO9660] Remove warning for opsGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-02-11[DM/PIN] Reset the value of PIN_NONEGuEe-GUI
PIN_NONE is '-1', is similar to '-RT_ERROR', '-RT_EEMPTY' is better. Signed-off-by: GuEe-GUI <[email protected]>
2025-02-11[DM/CORE] Add IDA init in runtimeGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-02-11[DM/SPI] Make CS pin config fixed in system (#9977)GUI
Make a max CS pin value (16) for SPI, that will not alloc `*cs_pins` by malloc, because drivers call `rt_device_unregister` may not free item. Fixup the QSPI init configure member in DM mode. Make SoC Kconfig import easy. Signed-off-by: GuEe-GUI <[email protected]>
2025-02-11[drivers/spi]修复spi configure会执行两次的问题 (#9972)Rbb666
* [drivers/spi]修复spi configure会执行两次的问题
2025-02-10[DM/FDT] Fixup earlycon loss old messages.GuEe-GUI
The `rt_fdt_scan_chosen_stdout` will init fdt_earlycon data without `msg` only, the `msg_idx` should not clean, too. Because we check if have old messages by `msg_idx` Signed-off-by: GuEe-GUI <[email protected]>
2025-02-09[dfs]mmap的文件在关闭后释放file指针 (#9917)heyuanjie87
* [dfs]mmap的文件在关闭后释放file指针