summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-03-03[libcpu][riscv] add a doc for wch saving the irq stack as stack-512 (#10063)Kai
2025-03-03[bsp][stm32][uartv1]:adjust uart time out (#10069)CYFS
2025-03-03doxygen: improve doc for kernel basics sectionChen Wang
Organize the document content of the "Kerenl Basics" section. This PR does not make substantial changes to the text content, but only makes some optimizations and adjustments to the document formatting, including: - Enclose the function name and variable name in "`", so that the HTML rendering will use different fonts to distinguish them from the text part. - Add blank lines between paragraphs, otherwise the HTML rendering will merge the paragraphs without blank lines into one paragraph. - Use "@ref" to reference the page of the corresponding chapter, such as the reference to page_thread_management at the end of the "Thread Scheduling" chapter. - For tables in markdown, try to align the columns in the text to beautify the reading experience. Signed-off-by: Chen Wang <[email protected]>
2025-03-03[bsp][stm32][uart]:fix stm32 uart timout (#10022)CYFS
fix:stm32 uart timout
2025-03-02[components][dfs_v2]: Fix cromfs bug (#10054)wycwyhwyq
2025-03-02[libcpu][risc-v]add comments for rv64 sv39 mmu APIs. (#10053)Guorui Li
2025-03-01[tools][cmake] get some info from env to save time (#10062)Kai
[tools][cmake] remove some code that is unnecessary but takes time, get them from env
2025-03-01[RFC][doxygen]Doxygen comment standard processing (#10058)wumingzi
Signed-off-by: 1078249029 <[email protected]>
2025-03-01fix:nxp pwm kconfigCYFS
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-28[bugfix][risc-v]fix the PPN length error in GET_PPN(pte). (#10020)Guorui Li
2025-02-27bsp: cvitek: aarch64: add switchto-arm diagramChen Wang
In actual operation, we often forget how to connect the wires, so we just put the schematic diagram in the readme document for quick recall. Signed-off-by: Chen Wang <[email protected]>
2025-02-27fix:[stm32][lcd]Error in control call of lcd test function (#10040)wdfk-prog
* Optimize the lcd_test function to call it in thread to prevent the CLI environment from being unavailable after execution.
2025-02-26Update action_tools.ymlSupper Thomas
2025-02-26[action/tool] ci 验证l4平台, 修复scons --distSupper Thomas
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-26[bsp][wch] update v208 readme (#10045)Kai
2025-02-26[action/ci] pkgs --update-force instead of pkgs --update (#10042)Supper Thomas
* [action/ci] pkgs --update-force instead of pkgs --update * Update bsp_buildings.yml * l4 单独拉出来
2025-02-26[bsp][nxp]:add p3t1754 sensorCYFS
2025-02-25[bsp/k230] 修复Kconfig中由RTT_DIR路径错误引起的无法编译问题 ↵directorhorse
(#10033) * 修复Kconfig中由RTT_DIR路径错误引起的无法编译问题 * 添加k230的ci检查 * revert Update bsp_buildings.yml --------- Co-authored-by: Supper Thomas <[email protected]>
2025-02-25[bsp][wch] move ch32v20x sdk to package (#10023)Kai
* [bsp][wch]to clear the serial of ch32v20x * [bsp][wch] move ch32v20x sdk to pkg * [ci] add ch32v208 bsp * [bsp][wch] update readme
2025-02-25doxygen: reorganize directory structureChen Wang
The original directory structure was too flat and inconvenient to view. The directory is now reorganized according to the first-level chapters, and some sub-chapters are moved to the second-level directory. Note: documentation/env is not moved to documentation/4.tool because there are too many external places that reference this path, especially in bsp, so this directory path remains as it is. Signed-off-by: Chen Wang <[email protected]>
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-24fix - 1 优化中断中打印日志问题;2 ↵JOONH0o
优化SPI写外部FLASH慢的问题 (#10009) * 1. 优化中断中打印日志问题;2 优化SPI写外部FLASH慢的问题 * 2. 在spi驱动中有在中断中打印调试信息的问题,增加ISR log判断进行 * 3. spi+DMA 写外部flash,由于spi速度很快,不进行delay就可以;同时,仿照Linux的驱动框架进行优化,数据小不使用DMA
2025-02-24[lwp/riscv]修正用户态参数空间占用堆地址空间的问题 (#10014)heyuanjie87
* [lwp/riscv]修正用户态参数空间占用堆空间的问题
2025-02-24模板工程从mcxa153更新成mcxa156,且默认调试器改为cmsisdap, ↵oxlm
因为板载调试器为cmsisdap
2025-02-23[bsp][nxp]:fix frdm-mcxa156 scons --dist err (#10024)CYFS
fix:frdm-mcxa156 scons --dist err
2025-02-22fix missing some flags added in Sconscriptkaidegit
2025-02-22libcpu: riscv: fixed ARCH_RISCV_VECTOR issuekenneth.liu
description: Using the vector instruction set to trigger an illegal instruction exception when ARCH_SISCV_VECTOR=y. analysis: When initializing the thread stack, the rt_cw_stack_init function did not enable VS for SSTATUS. Solution: When ARCH_SISCV_VECTOR=y, increment the initial value of sstatus by 0x600(SSTATUS_VS). Signed-off-by: Liu Gui <[email protected]>
2025-02-22fix: clear error compilation of signal in qemu-a9 smp modekurisaw
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-21doxygen: Improve the text description of the introduction sectionChen Wang
Adjust the paragraph format and correct some inaccurate statements. Signed-off-by: Chen Wang <[email protected]>
2025-02-21doxygen: support running from the root directoryChen Wang
Previously, you had to enter the documentation directory before executing the run.sh script, which was not very convenient during development, especially when you needed to execute other commands in the source code root directory at the same time, such as git commands. Now you can directly run script in the source code root directory as below: ```shell $ cd $RTT $ ./documentation/run.sh ``` No need to switch the working path any more after entering the source code root directory. Signed-off-by: Chen Wang <[email protected]>
2025-02-21bsp: nxp/mcx/mcxa/frdm-mcxa156: Enable SPI driver support.Yilin Sun
This patch: * Enables SPI support * Adds RW001 driver example * Increases heap size to 32kB. Signed-off-by: Yilin Sun <[email protected]>
2025-02-21[bsp][hpmicro] fix 'scons -dist' issue in the hpmicro bsps. (#10013)Fan Yang
- added tools and dist_handle function Signed-off-by: Fan YANG <[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-20bsp: nxp/mcx/mcxa/frdm-mcxa153: Kconfig: Remove ARCH_ARM_CORTEX_SECUREYilin Sun
MCXA153 does not support CMSE (Secure Extension). Remove it from Kconfig. Minor: Fixed a typo in Kconfig which makes Kconfig fail on case-sensitive operating system. Minor: Fixed a Kconfig defined incorrect SOC name (SOC_MCXN947 -> SOC_MCXA156) Signed-off-by: Yilin Sun <[email protected]>
2025-02-20bsp: nxp/mcx/mcxa/frdm-mcxa156: Kconfig: Remove ARCH_ARM_CORTEX_SECUREYilin Sun
MCXA156 does not support CMSE (Secure Extension). Remove it from Kconfig. Minor: Fixed a typo in Kconfig which makes Kconfig fail on case-sensitive operating system. Signed-off-by: Yilin Sun <[email protected]>
2025-02-20bsp: nxp/mcx/mcxa/frdm-mcxa156: Added FPU support.Yilin Sun
MCXA156 series supports FPU and DSP, adding corresponding compiler flags. Signed-off-by: Yilin Sun <[email protected]>
2025-02-19fix: fixed an issue where rt_typeof was not supported in the MDK toolchainkurisaw
2025-02-19fix: without KConfig in rsource and without command help.ZhaoCake
2025-02-19[fix]Some components do not have explicit KconfigZhaoCake
2025-02-19[fix] not ignore notes inZhaoCake
2025-02-19[feat][tools]Only add used components to distubution package.ZhaoCake
2025-02-19bsp: nxp/mcx/mcxa/frdm-mcxa156: Add LED blinking demo.Yilin Sun
Add LED blinking demo to align with other BSPs. Signed-off-by: Yilin Sun <[email protected]>
2025-02-19bsp: nxp/mcx/mcxa/frdm-mcxa156: Enable PORT and GPIO clocks.Yilin Sun
Enable PORT and GPIO peripheral clocks and release resets for all ports. Signed-off-by: Yilin Sun <[email protected]>