summaryrefslogtreecommitdiff
path: root/documentation
AgeCommit message (Collapse)Author
2026-05-28[docs] device-driver: add DM subsystem docs and expand INDEXGuEe-GUI
Add Doxygen pages for RT-Thread device-model drivers: platform/OFW, DM core (bus, dm, power), clk/regulator/reset/power-domain, PCI/PIC, Phye, DMA/hwcache, block/SCSI/ATA/NVMe/UFS/SDIO, SCMI, RPMsg, mailbox, NVMem, NUMA, syscon, thermal, input/LED/IIO/graphic, and related power/charger/supply docs. Expand device-driver INDEX.md with ~90 @subpage entries so all new pages appear in the driver chapter navigation. Update existing UART/SPI/RTC/pin/framework/dtc pages: UART docs moved from serial/ to uart/ (uart + uart_dm + uart_earlycon); SPI and RTC gain DM companion pages; pin links to pin_dm; framework points at DM topics. Focus on registration/probe flow and in-tree APIs; no standalone VirtIO subsystem page (transport code still incomplete). Test plan: build Doxygen for documentation/ and verify device-driver INDEX links resolve without missing @ref/@subpage warnings. Signed-off-by: GuEe-GUI <[email protected]>
2026-04-24[docs] Add smp boot docs for aarch64#11057Bernard Xiong
2026-01-31[components][clock_time] Refactor time subsystem around clock_time (#11111)Bernard Xiong
* [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
2025-11-06fix(doc): Exclude 'src/utest/perf/README.md' from Doxygen build ↵lhxj
(RT-Thread#10888) Problem description: The file 'src/utest/perf/README.md' was incorrectly appearing as a root-level page in the Doxygen documentation output. Problem analysis: This file was unintentionally included by the Doxygen build process following commit 7499790. It is an internal README for performance tests and is not intended to be part of the generated documentation. Solution: The issue is resolved by explicitly excluding this file from the build. The path '../src/utest/perf/README.md' has been added to the EXCLUDE list in both 'documentation/Doxyfile.1.9.1' and 'documentation/Doxyfile.1.9.8'. This issue was originally introduced by the following commit: Commit: 7499790 Title: utest: core: move perf testcase from example to src Signed-off-by: lhxj <[email protected]>
2025-10-23[format][version]: synchronize bsp version configurationkurisaw
2025-10-20utest/msh: supports autocomplete of utest cases for utest_run (#10701)Yuqiang Wang
* utest/msh: supports autocomplete of utest cases for utest_run * docs/utest: explanation of adding the automatic completion function for utest_run * fix[utest]: Improvement of annotation description * remove outdated code
2025-10-15doxygen: update doc for utest for config naming ruleChen Wang
Configuration options naming rule for utest is changed from "RT_UTEST_TC_USING_XXXX" to "RT_UTEST_XXXX". Signed-off-by: Chen Wang <[email protected]>
2025-10-10doxygen: support 1.9.8Chen Wang
The current test environment is mainly based on Ubuntu 22.04 LTS and doxygen version is 1.9.1. But when we switch to Ubuntu 24.04, the default Doxygen version on Ubuntu 24.04 is 1.9.8. The supported configuration and layout file formats differ from those in 1.9.1 (Ubuntu 22.04). In particular, the layout XML file format of 1.9.8 is incompatible with the older format(1.9.1). Therefore, to support Doxygen on Ubuntu 24.04, we need to load different configuration and layout files. (The layout file is specified using the LAYOUT_FILE parameter in the configuration file.) Solution: Provide corresponding configuration and layout files for different Doxygen versions, distinguished by the Doxygen version number. Currently, only Doxygen versions 1.9.1 and above are supported. If the doxygen version is >= 1.9.1 but < 1.9.8, the 1.9.1 configuration and layout are used by default. If the doxygen version is >= 1.9.8, the 1.9.8 configuration and layout are used. Only 1.9.1 and 1.9.8 have been tested, as these are the default doxygen versions on Ubuntu 22.04 LTS and Ubuntu 24.04. Other versions have not been tested yet. If necessary, we will change the configuration based on the same approach in the future. Signed-off-by: Chen Wang <[email protected]>
2025-10-10doxygen: fix two issues when building with doxygen 1.9.8 (#10768)Chen Wang
* doxygen: remove @return command if function return void When doxygen is upgraded to v1.9.8 (on ubuntu 24.04), doxygen reports: "doxygen error: found documented return type for xxx that does not return anything" for those functions which return void but declare "@return" in doxygen comment. Solution: remove "@return" for those cases, and update guide document for how to write doxgen comment for functions. Signed-off-by: Chen Wang <[email protected]> * doxygen: fixed a minor typo for uart doc This error is found when building with doxygen 1.9.8, but not detecetd on 1.9.1. Signed-off-by: Chen Wang <[email protected]>
2025-09-26utest: remove RT_UTEST_USING_ALL_CASESChen Wang
Many modules' utests currently don't support enabling all tests at once. Furthermore, some modules' tests are complex, for example due to their numerous dependencies on other modules. This makes it nearly impossible to enable all tests with a single global switch. Consequently, the previously defined `RT_UTEST_USING_ALL_CASES` has lost its original meaning. We recommend deprecating this configuration switch. If a module needs to enable a group of functional tests through its own configuration, this local enable all switch should be implemented by the module itself, and a global RTT enable switch will no longer be provided. If such a requirement arises in the future, we recommend careful design, especially considering how to ensure that turning on a single switch enables all dependencies for all involved modules for ease of use. Signed-off-by: Chen Wang <[email protected]>
2025-09-15doxygen: update naming rule for utest-caseChen Wang
More details see PR #10681. As utest cases are currently moving out of `examples/utest/testcases` into their own module directories, the naming rule needs to change accordingly. Signed-off-by: Chen Wang <[email protected]>
2025-09-10doxygen: update doc for env to latestChen Wang
The introduction to Env under the documentation section of the RTT source code repository is outdated and unmaintained. We recommend moving the Env documentation to https://github.com/RT-Thread/env/ for self-maintenance. Solution: Direct users to the latest README at https://github.com/RT-Thread/env/. The Env content under the documentation section of RTT will not be deleted for now, but will be marked as "outdated". Signed-off-by: Chen Wang <[email protected]>
2025-09-09doxygen: fixed duplicated comments for scheduler APIsChen Wang
Similar to PR #10674, `src/scheduler_mp.c` and `src/scheduler_up.c` also have similar issues. After investigation, we found: in commit 2c98ce4605 "[HUST CSE][document] Fix some comments, invalid grouping commands and warnings in Doxygen." This patch excluded `src/scheduler_mp.c` and `src/scheduler_up.c` from the Doxygen build and include `documentation/doxygen/thread.h` (the new file path after adjustment is `documentation/0.doxygen/core/thread.h`), placing the Doxygen comments for some functions in this file. However, this approach has its problems: - The comments in `documentation/0.doxygen/core/thread.h` are separated from the source code, making them difficult to maintain. This also results in the comments for the newly added functions in `src/scheduler_mp.c` and `src/scheduler_up.c` not being updated in a timely manner and failing to be compiled into Doxygen (becoming HTML). - For the average programmer, it's unlikely that they'll consider the `documentation/0.doxygen/` directory for function declarations and comments, let alone the need to maintain the Doxygen comments in that directory. Currently, the header files under `documentation/0.doxygen/` should strictly be used only to define Doxygen groups and should not include Doxygen comments for the code itself. (Similar issues exist in documentation/0.doxygen/3.hardware.h and documentation/0.doxygen/core/systeminit.h, which require further cleanup.) The solution is similar to PR #10674, where only MP documentation is generated by default. For functions defined in MP but not in UP, we use the "@note" directive in the function's doxygen comment to indicate whether the function is supported in both UP and MP, or only in MP. After implementing this solution, the file `documentation/0.doxygen/core/thread.h` can be deleted. Signed-off-by: Chen Wang <[email protected]>
2025-09-08doxygen: fixed duplicated comments for cpu APIsChen Wang
Refer to the issue described in PR #10599. This was a temporary fix at that time. After further research, we discovered that this issue can be addressed using the "@cond" command supported by Doxygen. Since we currently do not intend to generate two sets of documentation for UP and MP when generating Doxygen documentation, the current solution is to generate only MP documentation by default. For functions defined in MP but not in UP, we will use the "@note" command in the function's Doxygen comment to indicate whether the function supports both UP and MP, or only MP. Signed-off-by: Chen Wang <[email protected]>
2025-09-02doxygen: updated doc for thread management subsystemChen Wang
Signed-off-by: Chen Wang <[email protected]>
2025-09-02doxygen: align code for kenerl object docChen Wang
The code formatting in the Object Management Markdown document is misaligned. This issue can be fixed by replacing tabs with spaces. Signed-off-by: Chen Wang <[email protected]>
2025-08-26doxygen: add howto for utestChen Wang
After "utest: re-org utest framework (initial version)" (PR #10534) was merged, adding a document to introduce how to add utest-cases for your module. Signed-off-by: Chen Wang <[email protected]>
2025-07-22doxygen: promote object management to a separate pageChen Wang
For "RT-Thread User Guide": Take the "RT-Thread Kernel Object Model" sub-section out of the "Kernel Basics" section and rename it to "Object Management". Correspondingly, rename the "Kernel Object Management" section in the "RT-Thread API Guide" to "Object Management". Signed-off-by: Chen Wang <[email protected]>
2025-07-22doxygen: group name all in lowcase (part 2) (#10530)Chen Wang
* doxygen: fs: unify groupname to lowercase Signed-off-by: Chen Wang <[email protected]> * doxygen: drivers: unify groupname to lowercase Signed-off-by: Chen Wang <[email protected]> * doxygen: signal: unify groupname to lowercase Signed-off-by: Chen Wang <[email protected]> --------- Signed-off-by: Chen Wang <[email protected]>
2025-06-30[TOOLS] Add DTC (Devicetree Compiler) toolsGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-06-25doxygen: group name all in lowcaseChen Wang
This patch only updated the groups defined in documentation/0.doxygen. Other groups will be moved into documentation/0.doxygen and updated at that time. Signed-off-by: Chen Wang <[email protected]>
2025-06-18doxygen: use layout to control the html displayChen Wang
Signed-off-by: Chen Wang <[email protected]>
2025-05-29doxygen: move device_driver under to components for pagesChen Wang
In line with the layout of the source code, the Device-Driver submodule should belong to components. The doxygen Module part has been adjusted. This commit modifies the markdown document part and moves the device-driver pages under to components. Signed-off-by: Chen Wang <[email protected]>
2025-05-29doxygen: change group_Device to group_device_driverChen Wang
The originally defined "group_Device" should actually be part of the device-driver component, so create a new "group_device_driver" and then rename "group_Device" to "group_device_driver". Signed-off-by: Chen Wang <[email protected]>
2025-04-18doxygen: fix one typo issue (#10200)Chen Wang
Signed-off-by: Chen Wang <[email protected]>
2025-04-18doxygen: re-org module groups (#10197)Chen Wang
Match the organization of modules (groups) with that of user guide. Preliminary arrangement. This patch is just a framework arrangement. Details need to be continued. P.S., in this patch, adding numerical prefixes to the files in documentation/0.doxygen is to meet the need of displaying sorting in HTML pages. Signed-off-by: Chen Wang <[email protected]>
2025-04-13doxygen: cleanup and re-org filesChen Wang
This patch contains two small changes, mainly to prepare for the next step of organizing the modules framework. The first change: move the files related to doxygen examples to `documentation/0.doxygen/example/` The second change: delete `documentation/0.doxygen/mainpage.h`, which is the mainpage of the old page. Now the new mainpage is `documentation/INDEX.md`, so the duplicate can be deleted. Signed-off-by: Chen Wang <[email protected]>
2025-03-12doxygen: fix wrong ref for group examplesChen Wang
Fixes: 94afe6a4f1 ("doxygen: improve howto") Signed-off-by: Chen Wang <[email protected]>
2025-03-12doxygen: update doc for kenrel object modelChen Wang
Move the introduction of function parameters in markdown to source code comments, because this part of the content is completely repeated. We only need to keep and maintain the comments in the code. The detailed explanation of the API in markdown can directly refer to the comments in the code. Try not to directly copy the definition of the structure in the markdown document, because this part of the content may change with the upgrade of the code. Therefore, when the structure definition is involved in markdown, try to indicate that it is just a code snippet. The specific definition is still directly quoted from the source code and the source code comments. It is very convenient to quote structures and functions in markdown. Just use "`" to enclose the structure name or function name, and the generated html is a link to its definition. According to this principle, this patch only modifies the documents and code comments of the kernel object model. Other modules will be modified one by one in separate patches later. Signed-off-by: Chen Wang <[email protected]>
2025-03-10doxygen: improve howtoChen Wang
- Add description on how to group macros. - Add description for structs on how to write comments for members when the name of member is too. - Use @ref to link group instead of the html filenames. Signed-off-by: Chen Wang <[email protected]>
2025-03-06doxygen: group examples in subpagesChen Wang
Doxygen examples are grouped on different pages so that you can easily link to pages of related types in the documentation. For example, macro examples have their own page, and function examples have their own page, which correspond to their own code examples, such as "macro.h" or "function.h". Signed-off-by: Chen Wang <[email protected]>
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-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-01[RFC][doxygen]Doxygen comment standard processing (#10058)wumingzi
Signed-off-by: 1078249029 <[email protected]>
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-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-19doxygen: More strict checks on build results (#10007)Chen Wang
Github CI doc_doxygen is very strict in checking the build results, and will output failure even if there are warnings. In order to match CI's checks, local build scripts are also checked more strictly to detect potential errors and even warnings as early as possible. Signed-off-by: Chen Wang <[email protected]>
2025-02-19Add recommanded script and extension for writing doxygen comments on … ↵wumingzi
(#10001) Add recommanded script and extension for writing doxygen comments on vscode Signed-off-by: 1078249029 <[email protected]>
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-13doxygen: add prefix for page name (#9989)Chen Wang
Add prefix "page_" to the name of pages. Add this as a rule in guide of writing doxygen documents. Signed-off-by: Chen Wang <[email protected]>
2025-02-11doxygen: add documentation for doxygenChen Wang
Documentation is provided to clarify how to write doxygen documentation for RT-Thread. This document is also integrated as part of RT-Thread doxygen documentation. An example is also provided. The original README.md is removed and integrated into this document. Updated github actions for doxygen too. Signed-off-by: Chen Wang <[email protected]>
2025-01-27[doxygen] add doxygen comment for clk.c and clk.h (#9950)wumingzi
Accroding to #9947 and #9424, adding doxygen comment for function in .c files and data structure, macro in .h file is a solution.For this pr, I encountered problem following situations. - rt_clk_unprepare function return value type is different from rt_clk_ops so I change type of rt_clk_unprepare and its dependencies. - clk_get function may be similar as rt_clk_unprepare but I'm not sure so not modify. - clk_release implements may be incomplete, so I just marked in comment. Signed-off-by: 1078249029 <[email protected]>
2025-01-26doxygen: create framework to unify markdown and source code part (#9946)Chen Wang
* doxygen: adjust documentation directory structure - Rename documentation/doxygen to documentation/0.doxygen and cleanup some unused files. - Add/rename folders for each sub sections, such as 1.introduction/...... Each sub section will be created as a subpage. - Generate initial Doxyfile, this Doxyfile will be used to unify doxygen generated API documents and those markdown files under documentation folder. This patch just add the default Doxyfile generated by running "doxygen -g". It is used as baseline to add more features/configurations. - Rename documentation/README.md to documentation/INDEX.md, and use it as mainpage. - Move 0.doxygen/readme.md to documentation/README.md. * doxygen: update configurations These configurations are from old documentation/doxygen/Doxyfile. Try best to compatible exixting design. * doxygen: add run script Add a script to automatic some operations. Updated the README.md. --------- Signed-off-by: Chen Wang <[email protected]> Co-authored-by: Supper Thomas <[email protected]>
2025-01-03[doc]Update doxygen rtthread_logo.png (#9861)Rbb666
2024-12-22doc: introduce how to build & run doxygen on ubuntuChen Wang
Update readme doc to introduce how to build doxygen and run html on Ubuntu machines. Signed-off-by: Chen Wang <[email protected]>
2024-11-26[documentation][Finsh]fix the wrong comments for FINSH_USING_SYMTAB macro in ↵ligr
markdown files.
2024-09-15[doxygen] add driver example for doxygen (#9446)Supper Thomas
2024-09-13[drivers] Specifies the name of the drivers driver fileCXSforHPU
https://github.com/RT-Thread/rt-thread/pull/9420
2024-08-15删除rt_thread_sleep遗留Meco Man