<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git/components/drivers/pic, branch copilot/use-refined-kconfiglib</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/components/drivers/pic?h=copilot%2Fuse-refined-kconfiglib</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/components/drivers/pic?h=copilot%2Fuse-refined-kconfiglib'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2025-07-11T23:16:25Z</updated>
<entry>
<title>[DM/PIC] Fixup the interrput info list format</title>
<updated>2025-07-11T23:16:25Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2025-07-11T01:27:59Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=01e4caf60c1000b259b73398a8736dfa071fc51e'/>
<id>urn:sha1:01e4caf60c1000b259b73398a8736dfa071fc51e</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/PIC] Config IPI by RT_MAX_IPI</title>
<updated>2025-07-11T23:16:25Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2025-07-11T01:26:13Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=30ab08c7c9f80bca1bd8aa4e5caa6d423b087cc1'/>
<id>urn:sha1:30ab08c7c9f80bca1bd8aa4e5caa6d423b087cc1</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/PIC] Import DM Kconfig</title>
<updated>2025-07-11T23:16:25Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2025-07-11T01:25:23Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=5297c13ab0c9b1386596429d212bf73465a73be9'/>
<id>urn:sha1:5297c13ab0c9b1386596429d212bf73465a73be9</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM] Replace spinlock static init by RT_DEFINE_SPINLOCK</title>
<updated>2025-02-11T06:58:18Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2025-02-10T06:19:30Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f50607628192b7ad1828e811bba238993b9afd55'/>
<id>urn:sha1:f50607628192b7ad1828e811bba238993b9afd55</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/PIC] Support AMP mode</title>
<updated>2024-12-18T13:42:12Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-12-09T11:35:46Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=b294fba5657afcc7b18bac488d2554a74fa8cc82'/>
<id>urn:sha1:b294fba5657afcc7b18bac488d2554a74fa8cc82</id>
<content type='text'>
Only support on &gt;= ARM GICv2

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/FIXUP] Fixup PIC ktime depends</title>
<updated>2024-12-13T02:39:20Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-12-11T09:42:34Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=ec4f375bbc8f4baf88c99d0464842f67a79b3def'/>
<id>urn:sha1:ec4f375bbc8f4baf88c99d0464842f67a79b3def</id>
<content type='text'>
Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[DM/FIXUP] Fixup bitmap to new type</title>
<updated>2024-12-13T02:39:20Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-12-11T11:11:07Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=76d3cf3b8688f170a0cef4d3816488f54de8c756'/>
<id>urn:sha1:76d3cf3b8688f170a0cef4d3816488f54de8c756</id>
<content type='text'>
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>[DRIVER/PIC] Add ARM GICv2/v3 V2M, ITS support.</title>
<updated>2024-09-19T13:14:42Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-09-11T05:07:38Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=3d503e931bfa395822143beac3f06c39e620e68a'/>
<id>urn:sha1:3d503e931bfa395822143beac3f06c39e620e68a</id>
<content type='text'>
Fix some code style and init for V2M, ITS.

V2M is the PCI MSI/MSI-X for GICv2.
ITS is the PCI MSI/MSI-X for GICv3/v4.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[FEATURE/PIC] support PIC cancel (only in debug)</title>
<updated>2024-09-19T13:14:42Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2024-09-11T04:59:55Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=94e49755af3fe7b66f7da531502f3cc5e1ad71b0'/>
<id>urn:sha1:94e49755af3fe7b66f7da531502f3cc5e1ad71b0</id>
<content type='text'>
PIC may free because some wrongs in debug.
We should remove in PIC list or there are
some undefined behavior will happen.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
</feed>
