<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git/include/rtdef.h, branch v5.2.0-beta</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/include/rtdef.h?h=v5.2.0-beta</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/include/rtdef.h?h=v5.2.0-beta'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2025-02-15T04:15:19Z</updated>
<entry>
<title>doxygen: add prefix for groups (#9991)</title>
<updated>2025-02-15T04:15:19Z</updated>
<author>
<name>Chen Wang</name>
<email>unicorn_wang@outlook.com</email>
</author>
<published>2025-02-15T04:15:19Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=c40b79037ce8bb09ba95411ebee1b22631cf9027'/>
<id>urn:sha1:c40b79037ce8bb09ba95411ebee1b22631cf9027</id>
<content type='text'>
* 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 &lt;unicorn_wang@outlook.com&gt;

* 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 &lt;unicorn_wang@outlook.com&gt;

---------

Signed-off-by: Chen Wang &lt;unicorn_wang@outlook.com&gt;</content>
</entry>
<entry>
<title>[DM/FEATURE] Support NVME (#9591)</title>
<updated>2024-11-24T05:57:37Z</updated>
<author>
<name>GUI</name>
<email>39894654+GuEe-GUI@users.noreply.github.com</email>
</author>
<published>2024-11-24T05:57:37Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=945114fd59475f94c3dc5829163680f399b5b91d'/>
<id>urn:sha1:945114fd59475f94c3dc5829163680f399b5b91d</id>
<content type='text'>
* [DM/FEATURE] Support NVME

1. Support PRP and SGL (&gt;= NVME v1.1) transport.
2. Support MSI/MSI-X for IO queues.
3. Support NVME on PCI.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;</content>
</entry>
<entry>
<title>[DM/FIXUP] remove some redundant INIT_EXPORT</title>
<updated>2024-11-18T07:03:23Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-10-24T03:54:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=1bef42c64c2db3608814207a580e27e2673a4148'/>
<id>urn:sha1:1bef42c64c2db3608814207a580e27e2673a4148</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/FEATURE] DM Device IDA management</title>
<updated>2024-11-18T06:23:25Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-10-23T11:07:06Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=3b22dbd04960a1934994059a4ef97d8403be2a54'/>
<id>urn:sha1:3b22dbd04960a1934994059a4ef97d8403be2a54</id>
<content type='text'>
Drivers can manage their own IDs without having to concern
themselves with the register/unregister in system

Link: https://github.com/RT-Thread/rt-thread/issues/9534

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>feat: smp_call: added signaling call_req</title>
<updated>2024-11-03T02:08:45Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-10-31T03:57:04Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=2f6d98bfcb4a280f396bda0ea412df10834689d5'/>
<id>urn:sha1:2f6d98bfcb4a280f396bda0ea412df10834689d5</id>
<content type='text'>
This patch introduces `rt_smp_call_request` API to handle queued
requests across cores with user provided data buffer, which provides a
way to request IPI through a non-blocking pattern.

It also resolved several issues in the old implementation:
- Multiple requests from different cores can not be queued in the work
  object of the target core.
- Data racing on `rt_smp_work` of same core. If multiple requests came
  in turns, or if the call is used by the target cpu, while a new
  request is coming, the value will be overwrite.
- Memory vulnerability. The rt_smp_event is allocated on stack, though
  the caller may not wait until the call is done.
- API naming problem. Actually we don't provide a way to issue an IPI to
  ANY core in mask. What the API do is aligned to MANY pattern.
- FUNC_IPI registering to PIC.

Changes:
- Declared and configured the new `RT_SMP_CALL_IPI` to support
  functional IPIs for task requests across cores.
- Replaced the single `rt_smp_work` array with `call_req_cores` to
  manage per-core call requests safely.
- Added `_call_req_take` and `_call_req_release` functions for atomic
  handling of request lifetimes, preventing data race conditions.
- Replaced single event handling with a queue-based approach
  (`call_queue`) for efficient multi-request processing per core.
- Introduced `rt_smp_call_ipi_handler` to process queued requests,
  reducing IPI contention by only sending new requests when needed.
- Implemented `_smp_call_remote_request` to handle remote requests
  with specific flags, enabling more flexible core-to-core task
  signaling.
- Refined `rt_smp_call_req_init` to initialize and track requests
  with atomic usage flags, mitigating potential memory vulnerabilities.

Signed-off-by: Shell &lt;smokewood@qq.com&gt;
</content>
</entry>
<entry>
<title>feat: Added rt_interrupt_context* family for nested interrupt handling</title>
<updated>2024-11-03T02:08:45Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-10-30T08:57:42Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=40cd8cce995e24ea265664c5db127c662a747032'/>
<id>urn:sha1:40cd8cce995e24ea265664c5db127c662a747032</id>
<content type='text'>
These changes introduce the rt_interrupt_context family, providing a
mechanism for managing nested interrupts. The context management
ensures proper storage and retrieval of interrupt states, improving
reliability in nested interrupt scenarios by enabling context tracking
across different interrupt levels. This enhancement is essential for
platforms where nested interrupt handling is crucial, such as in real-
time or multi-threaded applications.

Changes:
- Defined rt_interrupt_context structure with context and node fields
  in `rtdef.h` to support nested interrupts.
- Added rt_slist_pop function in `rtservice.h` for simplified node
  removal in singly linked lists.
- Declared rt_interrupt_context_push, rt_interrupt_context_pop, and
  rt_interrupt_context_get functions in `rtthread.h` to manage the
  interrupt/exception stack.
- Modified AArch64 CPU support in `cpuport.h` to include
  rt_hw_show_register for debugging registers.
- Refactored `_rt_hw_trap_irq` in `trap.c` for context-aware IRQ
  handling, with stack push/pop logic to handle nested contexts.
- Implemented interrupt context push, pop, and retrieval logic in
  `irq.c` to manage context at the CPU level.

Signed-off-by: Shell &lt;smokewood@qq.com&gt;
</content>
</entry>
<entry>
<title>fix: suppress unused warnings when DEBUG disabled</title>
<updated>2024-10-26T02:22:09Z</updated>
<author>
<name>KunYi Chen</name>
<email>kunyi.chen@gmail.com</email>
</author>
<published>2024-10-25T04:14:39Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=6b7f1177deeae01a7092c22a89cd41e7b318f01c'/>
<id>urn:sha1:6b7f1177deeae01a7092c22a89cd41e7b318f01c</id>
<content type='text'>
When RT_USING_DEBUG is disabled, variables used only in RT_ASSERT
statements become unused, triggering -Wunused-but-set-variable compiler
warnings. These variables are essential for runtime assertions in debug
builds but appear unused in release builds.

Example:
- Variables used in RT_ASSERT(var != RT_NULL) checks
- Affects multiple drivers and components using RT_ASSERT

This is a general cleanup to improve code compilation without affecting
functionality.
</content>
</entry>
<entry>
<title>feat: includes: included kerrno.h in rtdef.h</title>
<updated>2024-09-26T01:03:48Z</updated>
<author>
<name>Shell</name>
<email>smokewood@qq.com</email>
</author>
<published>2024-09-25T03:12:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=588611d314af6850bee1d45c376b15a2829b6fd8'/>
<id>urn:sha1:588611d314af6850bee1d45c376b15a2829b6fd8</id>
<content type='text'>
Those definitions are presented in rtdef.h until PR #9461 moved them to
kerrno.h, which introduced unknown definition error for project building

Changes:

- Added includes of kerrno.h

Signed-off-by: Shell &lt;smokewood@qq.com&gt;
</content>
</entry>
<entry>
<title>SMP</title>
<updated>2024-09-24T01:56:30Z</updated>
<author>
<name>zhujiale</name>
<email>945386260@qq.com</email>
</author>
<published>2024-09-12T05:12:35Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=244cf61af6a0549d2a197af05183a7e902207598'/>
<id>urn:sha1:244cf61af6a0549d2a197af05183a7e902207598</id>
<content type='text'>
</content>
</entry>
<entry>
<title>smp_ipi</title>
<updated>2024-09-24T01:56:30Z</updated>
<author>
<name>zhujiale</name>
<email>945386260@qq.com</email>
</author>
<published>2024-08-29T02:12:47Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=512dae84bef1d85f8f7670c24ab774c9afdc0133'/>
<id>urn:sha1:512dae84bef1d85f8f7670c24ab774c9afdc0133</id>
<content type='text'>
</content>
</entry>
</feed>
