The originally defined "group_Drivers" should actually
be part of the device-driver component, so
"group_Drivers" is renamed to "group_device_driver".
In this way, the original "group_Device" and
"group_Drivers" are merged into "group_device_driver".
Adjusted the writing method of doxygen comments in the
driver code to be unified as follows:
```c
* @defgroup group_XXX XXX
* @brief xxxxxx
* @ingroup group_device_driver
```
Signed-off-by: Chen Wang <unicorn_wang@outlook.com>
To enhance the robustness of key recognition and solve the problem of errors and omissions caused by the lag of state assignment statement
增强方向键识别的鲁棒性,解决状态赋值语句滞后带来的错漏问题
- Implemented vDSO functionality for the RISC-V architecture, including the necessary source files and linker scripts.
- Introduced a new `vdso_sys.c` file for RISC-V, containing functions to handle time retrieval using the vDSO mechanism.
- Created architecture-specific linker scripts (`vdso.lds.S`) for both AArch64 and RISC-V.
- Updated the build system to support vDSO compilation for RISC-V, including necessary adjustments in `SConstruct` files.
- Refactored existing vDSO code to improve compatibility and maintainability across architectures.
- Adjusted the maximum number of PTY devices in the terminal configuration from 64 to 32 for better resource management.
- Fixed minor issues in existing code, including correcting the path for the vDSO shared library and ensuring proper function definitions.
Achieve driver framework by operating memory to simulate audio
peripheral drivers. And it could be as a draft standrad for other
drivers test framework.
Signed-off-by: 1078249029 <1078249029@qq.com>
Fix garble caused by empty implementation of earlycon series
function in driver.If driver doesn't offer earlycon_id or rt_f
dt_earlycon_id.setup function but open option, the checking
of best_earlycon_id will failed.
Signed-off-by: 1078249029 <1078249029@qq.com>
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.
* [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.
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 <1078249029@qq.com>
- Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues.
Signed-off-by: Runcheng Lu <runcheng.lu@hpmicro.com>
- Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues
Signed-off-by: Runcheng Lu <runcheng.lu@hpmicro.com>
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 <smokewood@qq.com>
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 <smokewood@qq.com>
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 <smokewood@qq.com>