summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-01-26bsp: cvitek: removed useless files after using rttpkgtoolChen Wang
Based on the patch "bsp: cvitek: use rttpkgtool to replace cvitek_bootloader", continue cleanup useless files. Signed-off-by: Chen Wang <[email protected]>
2025-01-26bsp: cvitek: use rttpkgtool to replace cvitek_bootloaderChen Wang
Originally, for riscv big and little cores under bsp/cvitek, after generating rtthread.bin, the cvitek_bootloader tool would be used to package it and generate fip.bin and boot.sd files that can be burned into sdcard. However, the cvitek_bootloader tool repository is relatively large, and it compiles and generates firmware such as fsbl, opensbi and uboot from the source code level. And when using it, it needs to be downloaded to the bsp/cvitek directory, which will introduce pollution to source files in the RTT repository under the original working path. The new solution uses rttpkgtool, which is similar to cvitek_bootloader, but it uses prebuilt firmware, so it is very small and does not introduce pollution to the source file. Signed-off-by: Chen Wang <[email protected]>
2025-01-24[bsp][nrf5x]added the cherryusb adapter for nrf52840 (#9939)hydevcode
2025-01-24[doxygen] add doxygen comment for blk.h (#9947)wumingzi
Signed-off-by: 1078249029 <[email protected]>
2025-01-23Revert "[action] add cvitek/c906_little ci" (#9945)Chen Wang
Revert "[action] add cvitek/c906_little ci (#9901)" This reverts commit 969e0e01ef603d3929a186e8bd03f3657ec8227c.
2025-01-23[action] add cvitek/c906_little ci (#9901)Supper Thomas
* [action] add cvitek/c906_little ci * Update bsp_buildings.yml * Update rtconfig.py
2025-01-23[bsp/stm32f407-rt-spark/stm32l496zg-st-nucleo] add cherryusb support (#9929)Supper Thomas
[bsp/stm32f407-rt-spark/l496zg] add cherryusb support
2025-01-22[scons] ci.attachconfig.yml is used in combination with sconshydevcode
2025-01-21Add pm driver for F472 and add lVD unlock in board_initJamie
2025-01-21[lwp]修正无法通过文件名查找pid的问题 (#9935)heyuanjie87
2025-01-20[components][netdev] add statistics and more inupt parameters to ping commandEvlers
2025-01-20fix when open samrt but using msh after run elf file the msh will downzhujiale
2025-01-20[bsp][cvitek] fix c906_little build warning in cache.cimcu
build warning: passing argument 1 of 'inv_icache_range' makes integer from pointer without a cast [-Wint-conversion] Analyze: The passed parameter type is void*, which is a pointer type, but the required type is uintptr_t, which is an integer type. Therefore, there will be a 'makes integer from pointer without a cast' warning. Solution: casting the void* pointer to uintptr_t, ensure that the function receives the correct type. Signed-off-by: zdtyuiop4444 <[email protected]>
2025-01-19[BSP] add some bsp drivers for F448, F472 and add bsp test codesJamie
2025-01-18bsp: cvitek: optimze build operations for aarch64Chen Wang
For bsp/cvitek, duo256m, the operation process is slightly different when building images for riscv and arm64. To improve the user experience, unify the building process and steps of the two as follows: - Enter c906_little and execute `scons` - Enter cv18xx_riscv/cv18xx_aarch64 and execute `scons` That's all. Finally, we can get `fip.bin` and `boot.sd` under `bsp/cvitek/output/milkv-duo256m`. Update the README.md accordingly. Signed-off-by: Chen Wang <[email protected]>
2025-01-17[bsp/stm32] change the attach file of stm32f407-rt-spark to yml (#9926)hydevcode
2025-01-16bsp/cvitek: print arch info. during boot-up (#9919)Chen Wang
Duo's CPU combination is more complicated: | BSP | B/L core| ISA | UART | | ------------- | ------- |---------------- |-------| | cv18xx_risc-v | Big | RISC-V C906 | UART0 | | c906-little | Littel | RISC-V C906 | UART1 | | cv18xx_aarch64| Big | ARM Cortex A53 | UART0 | Printing ISA and big and small core information during the boot process helps developers/testers determine the CPU and serial port corresponding to the current console. In addition, the RTT logo printing has already distinguished whether it is smart, so the bsp printing no longer distinguishes. Updated README to sync with this change. Signed-off-by: Chen Wang <[email protected]>
2025-01-16lwp: Kconfig: LWP_DEBUG default as n (#9921)Chen Wang
LWP_DEBUG is debugging related, should be disabled by default. Signed-off-by: Chen Wang <[email protected]>
2025-01-16[bsp][cvitek] add cache opration functions for cache coherenceimcu
By default, the small core enables D-Cache without ensuring cache coherence. Therefore, when using shared memory, inconsistencies can occur in the data read by the small core and the big core. Solution: Migrate cache-related functions from the official duo-buildroot-sdk library to implement cache-related operations in rthw.h. This allows you to either disable D-Cache or call the flush_dcache_range function before reading and after writing for synchronization. It is recommended to use the flush_dcache_range function, as disabling D-Cache can have a significant performance impact. Signed-off-by: zdtyuiop4444 <[email protected]>
2025-01-16bsp: cvitek: fix bug in setting PLIC_PRIORITY[n]kenneth.liu
description: In the bsp/cvitek/c906_little/board/interrupt.c, There is an issue with setting the PLIC_PRIORITY[n]. analysis: PLIC_PRIORITY[n] each register corresponds to the priority of a hardware interrupt number. Solution: Each register is 4 bytes. Multiply the total number of IRQs by 4 instead of dividing by 4. Signed-off-by: Liu Gui <[email protected]>
2025-01-15fix GPIO and SCI drivers for RZ series (#9908)DingDing
fix gpio and sci drivers for RZ series
2025-01-15[utest] fix twice operation of uassertMeco Man
2025-01-14fix cppcheck in lwp.c will fail if no define RT_USING_DFS (#9912)zhuzhuzhu
2025-01-14[components][fs]sync procfs (#9206)zms123456
* add procfs * fix ref count check error
2025-01-14[components][dfs]separate dfs fs data structure ops (#9205)zms123456
separate dfs fs data structure ops
2025-01-12[ht32][drv]新增了CAN、USB和SDIO的驱动文件QTbin
2025-01-11[tools] Add sdk_cfg.json setting for env CC detectionBernard Xiong
2025-01-10bsp: qemu-virt64-riscv: remove config RISCV_S_MODEChen Wang
RISCV_S_MODE configuration only affects the code in libcpu/risc-v/virt64, and the only bsp using this libcpu is qemu-virt64-riscv. Considering s-mode is the default mode RT-Thread running on virt64 machine, it seems unnecessary to make RISCV_S_MODE a Kconfig option. Solution: Remove RISCV_S_MODE from Kconfig and define it as a macro in the code in libcpu/risc-v/virt64. Plus, due to this macro is only related to virt64, rename RISCV_S_MODE to RISCV_VIRT64_S_MODE. Update the .config/rtconfig.h in this patch. Signed-off-by: Chen Wang <[email protected]>
2025-01-09[utest] make RT_USING_CI_ACTION to be clearMeco Man
RT_USING_CI_ACTION will select RT_UTEST_USING_AUTO_RUN and RT_UTEST_USING_ALL_CASES
2025-01-09[components][dfs_v2]: Fix dfs_devfs_open memory leakwycwyhwyq
2025-01-08[drivers] merge the software i2c driverkurisaw
2025-01-08fix: add \n for addr2line hintMeco Man
2025-01-08[bsp][qemu-virt64-riscv]修正内存大小超限制的问题heyuanjie87
2025-01-08bsp: cvitek: remove support for spinor/spinandChen Wang
Confirmed with milkv, only the sd card version is sold by default for duo in the market. The spi pins are provided through stamp holes, so that users can solder the corresponding components on their baseboard during secondary development. In order to simplify maintenance work, the mainline will only support the sd-card version and no longer support spinor/spinand. Updated config files the same in this patch. Signed-off-by: Chen Wang <[email protected]>
2025-01-08[bsp][hpmicro] fix the alignement check logic and the cache-maintenance logicFan YANG
- corrected the alignement check logic - optimized the cache maintenance logic Signed-off-by: Fan YANG <[email protected]>
2025-01-07[utest] 修复UTEST_UNIT_RUN嵌套宏时将宏直接输出的问题Meco Man
2025-01-07[utest] add float operatorsMeco Man
uassert_float_equal and uassert_float_not_equal
2025-01-06[action] set runner to ubuntu22.04Supper Thomas
2025-01-06feat: Kconfig: collecting some config to sub-menuShell
To improve the readability of the menuconfig. Signed-off-by: Shell <[email protected]>
2025-01-06fixup: umount: set errno according to POSIXShell
According to the POSIX.1, we should give a EBUSY on umount(2) of busy filesystem. Signed-off-by: Shell <[email protected]>
2025-01-06feat: add support for dfs remount functionalityShell
This patch introduces a remount feature for the DFS, allowing for the modification of mount parameters without unmounting the filesystem, the remount functionality helps modify certain mount flags (like `MS_RDONLY`) without requiring an unmount, providing more control over mounted filesystems in the system. The updates is essential for user space init proc to cleanup the runtime resource, ensuring clean handling of cached data and enhancing system robustness during power down processing. Changes: - Defined new constants for remount flags in `dfs_fs.h`. - Added the `dfs_remount()` function in `dfs_fs.c` to handle remount operations. - Introduced a check for unsupported flags and handle error conditions such as invalid paths or non-directory targets. - Updated the `dfs_mnt` structure in `dfs_mnt.h` to include a read-only flag (`MNT_RDONLY`). - The `dfs_remount()` function allows changing the read-only status of a mounted filesystem. - Added `MNT_LAZY_UMNT` and `MNT_RDONLY` flags to `dfs_mnt` structure. - Introduced `dfs_mnt_setflags` function for dynamic flag management. - Updated `dfs_remount` to utilize `dfs_mnt_setflags` for flag setting. - Enhanced unmount operations with `dfs_mnt_umount_iter` and lazy unmounting. - Added `dfs_pcache_clean` to handle cache cleanup for read-only mounts. - Improved error reporting in `dfs_umount` for better user feedback. - Refactored `sys_mount` to streamline parameter handling and support remounts. - Introduced `_cp_from_usr_string` helper for user-space string operations. - Updated internal APIs to ensure consistency in reference count management. Signed-off-by: Shell <[email protected]>
2025-01-06feat: add system reboot and process teardown supportShell
The patch introduces support for system reboot functionality and process teardown, allowing for a clean shutdown and unmounting of the root filesystem. This is necessary for ensuring a proper system shutdown process, especially when dealing with resource cleanup and ensuring that all processes have exited before system shutdown. Changes: - Added `lwp_teardown()` function to handle process cleanup and system teardown. - Introduced `lwp_pid_wait_for_empty()` to wait for process ID table emptiness before proceeding with shutdown. - Updated `dfs_mnt_unref()` to trigger callbacks when unmounting a filesystem. - Added new reboot types (`RB_AUTOBOOT`, `RB_POWER_OFF`) and implemented their corresponding actions, including cleanup of processes and unmounting root filesystem. - Extended `sys_reboot()` to handle reboot and power off types with appropriate callbacks for process and filesystem teardown. - Introduced callback mechanism for root filesystem unmount notifications. Signed-off-by: Shell <[email protected]>
2025-01-06feat: add universal process runtime serviceShell
This change introduces the `lwp_runtime.c` component, which provides the necessary runtime environment for the init process, including boot scripts, shutdown, and poweroff functionalities. The initialization logic has been moved from `lwp.c` to this new file, enhancing modularity and flexibility in handling LWP runtime tasks. Changes: - Moved the `lwp_startup` function from `lwp.c` to `lwp_runtime.c` to handle system initialization and runtime environment setup. - Added `lwp_teardown` placeholder for system shutdown and cleanup tasks in the future (though not yet implemented). - Introduced the `LWP_USING_RUNTIME` configuration option in `Kconfig` to conditionally enable the runtime environment. - Updated the `SConscript` to conditionally include `lwp_runtime.c` based on the `LWP_USING_RUNTIME` configuration. - Removed the old `lwp_startup` code from `lwp.c`, simplifying the file. Signed-off-by: Shell <[email protected]>
2025-01-06feat: add signal kill all functionalityShell
This change introduces the `lwp_signal_kill_all` function, which allows a signal to be sent to all processes in the system. The function iterates over all PIDs and sends the specified signal to each process, except those that are protected from signals. This enhancement provides a convenient way to broadcast signals across all processes in the system. Changes: - Added `lwp_signal_kill_all` function in `lwp_signal.c` to broadcast a signal to all processes by iterating over all PIDs using the existing `lwp_pid_for_each` function. - Introduced a new `kill_all_param` structure to encapsulate the signal information needed for killing processes. - Added internal `_kill_each` helper function for sending the signal to each PID. - Updated `lwp_signal.h` with the new function prototype for `lwp_signal_kill_all`. - Modified `sys_kill` in `lwp_syscall.c` to call `lwp_signal_kill_all` when a process is not specified. Signed-off-by: Shell <[email protected]>
2025-01-06feat: support PID iterationShell
This change introduces the `lwp_pid_for_each` function, which provides a convenient and thread-safe method for iterating over PIDs with a user- defined callback. This addition is necessary to support cases where operations must be performed on each PID in the balanced tree, enhancing flexibility and modularity for PID management. Changes: - Added `lwp_pid_for_each` function in `lwp_pid.c` to allow iteration over PIDs using a callback function and optional data parameter. - Defined a new internal `pid_foreach_param` structure to encapsulate the callback and data for the iteration. - Added `_before_cb` helper function for executing the callback on each PID node during AVL traversal. - Ensured thread safety by acquiring and releasing the PID lock around the AVL traversal within `lwp_pid_for_each`. - Updated `lwp_pid.h` with the `lwp_pid_for_each` function prototype and included `rtthread.h` for necessary types. Signed-off-by: Shell <[email protected]>
2025-01-05[tools] add logging as Env['log']bernard
Add logging as Env['log']: - the default level is INFO; - when using `scons --verbose`, the level will be change to debug level. - Add more debug information for cc detection.
2025-01-05[wq][fix]工作队列默认使用C99标准实现遍历Rbb666
2025-01-05[wlan] add ap_get_info api for more ap informationEvlers
2025-01-04[kservice] optimize console_deviceMeco Man
2025-01-04Fix: [CAN][STM32] GCC compile errorsGibby
error: a label can only be part of a statement and a declaration is not a statement 459 | rt_uint32_t errtype;