<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git/libcpu, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/libcpu?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/libcpu?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2026-10-22T09:59:29Z</updated>
<entry>
<title>[libcpu][risc-v] Fix ticket spinlock stalls under SMP contention</title>
<updated>2026-10-22T09:59:29Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2026-10-20T07:58:07Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=2a4e78d2321cff9bc2ad2d41f5c18cfe5e82595b'/>
<id>urn:sha1:2a4e78d2321cff9bc2ad2d41f5c18cfe5e82595b</id>
<content type='text'>
Eight-core boot on SpacemiT K1 could stall with one CPU in the
unlock LR/SC loop, two CPUs allocating tickets, and the remaining
CPUs waiting for the scheduler lock.

Replace LR/SC ticket allocation with amoadd.w.aqrl and release the
lock with a halfword owner update. Order critical-section accesses
after acquiring ownership and before releasing it.

Verified eight-core boot on K1 with temporary diagnostics and
reservation-clearing changes removed.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<entry>
<title>[bsp][spacemit/k1] first version #11132</title>
<updated>2026-10-19T10:49:16Z</updated>
<author>
<name>GUI</name>
<email>39894654+GuEe-GUI@users.noreply.github.com</email>
</author>
<published>2026-10-19T10:49:16Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=1c801efabc36337d0013721eb30b11de0adb3075'/>
<id>urn:sha1:1c801efabc36337d0013721eb30b11de0adb3075</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[ARCH/RISC-V] Next RISC-V (#10320)</title>
<updated>2026-10-17T01:44:26Z</updated>
<author>
<name>GUI</name>
<email>39894654+GuEe-GUI@users.noreply.github.com</email>
</author>
<published>2026-10-17T01:44:26Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=8d8dc96b67eee53af2841a8819364d52fbec39cb'/>
<id>urn:sha1:8d8dc96b67eee53af2841a8819364d52fbec39cb</id>
<content type='text'>
* [libcpu][risc-v] Refactor the RISC-V architecture port

Introduce an opt-in unified RISC-V common layer for RV32 and RV64 while keeping existing BSPs on the legacy implementation during migration.

- use ARCH_RISCV and ARCH_CPU_64BIT for architecture and XLEN selection
- unify context, trap, MMU, cache, timer, SBI, SMP and ISA handling
- add PLIC, CLIC, ACLINT, APLIC and IMSIC support
- map physical hart IDs to contiguous logical CPU IDs
- add T-Head vendor overrides while preserving legacy ports
- migrate qemu-virt64-riscv with RV32 and RV64 support
- update clock_time, MM, LWP, OFW, PCI and Rust integration

Existing BSPs continue using legacy_common or common64 unless they select RT_USING_RISCV_NEW_COMMON.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;

* [libcpu][risc-v] skip disabled CPU nodes in early FDT walk

Rbb666 noted that rt_hw_fdt_install_early() walked every /cpus child
without checking status, so disabled cores still joined hart registration
and MMU capability probing. Skip nodes that are not okay/ok via
rt_fdt_device_is_available() before reading reg or mmu-type.

Signed-off-by: seteiro &lt;chenmoushun@163.com&gt;

* [libcpu][risc-v] Fix per-CPU page table mapping

- reuse existing non-leaf page table entries when mapping per-CPU areas
- reject leaf entry conflicts instead of overwriting mappings

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;

---------

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
Signed-off-by: seteiro &lt;chenmoushun@163.com&gt;
Co-authored-by: seteiro &lt;chenmoushun@163.com&gt;</content>
</entry>
<entry>
<title>[risc-v][vector] Restore vstart after vector configuration</title>
<updated>2026-10-14T01:13:49Z</updated>
<author>
<name>Piyush Patle</name>
<email>nikhilgpatle60@gmail.com</email>
</author>
<published>2026-10-14T01:13:49Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=f9436bb5bdabb9670792b22f79467b0ef16bff47'/>
<id>urn:sha1:f9436bb5bdabb9670792b22f79467b0ef16bff47</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[libcpu][risc-v]Feat: Add OpenSBI SMP support to t-head c908</title>
<updated>2026-09-15T14:57:55Z</updated>
<author>
<name>guanxi.cgh</name>
<email>guanxi.cgh@alibaba-inc.com</email>
</author>
<published>2026-09-04T03:04:21Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=e81494f881526b257165207cf716df1043f1bb2a'/>
<id>urn:sha1:e81494f881526b257165207cf716df1043f1bb2a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[libcpu][risc-v]Feat: Add mmu SV48/SV57 mode support and add mmu_demo for C908.</title>
<updated>2026-09-15T14:57:55Z</updated>
<author>
<name>guanxi.cgh</name>
<email>guanxi.cgh@alibaba-inc.com</email>
</author>
<published>2026-08-25T13:25:54Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=a5d9dc884b6f5f61b06664bbf745356416de98cf'/>
<id>urn:sha1:a5d9dc884b6f5f61b06664bbf745356416de98cf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[libcpu] Fix RZ/N2L interrupt dispatch</title>
<updated>2026-09-10T02:09:17Z</updated>
<author>
<name>CYFS</name>
<email>2805686936@qq.com</email>
</author>
<published>2026-08-28T09:50:18Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=fe966755e9d9b207b9271afd38e5086624328af4'/>
<id>urn:sha1:fe966755e9d9b207b9271afd38e5086624328af4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix[arm][cortex-m4]: clarify MPU permission expressions</title>
<updated>2026-09-01T01:39:10Z</updated>
<author>
<name>wdfk-prog</name>
<email>1425075683@qq.com</email>
</author>
<published>2026-08-29T02:24:53Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=ef413759d4f20435fa7d0471e9be7b867566cc59'/>
<id>urn:sha1:ef413759d4f20435fa7d0471e9be7b867566cc59</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat[bsp][xuantie]: c908 support rt-smart #11719</title>
<updated>2026-08-28T04:25:32Z</updated>
<author>
<name>BadmintonMaster</name>
<email>guanxi.cgh@alibaba-inc.com</email>
</author>
<published>2026-08-28T04:25:32Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=bf38ee2130634ac6571e816dde81b04818d75444'/>
<id>urn:sha1:bf38ee2130634ac6571e816dde81b04818d75444</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[arm][cortex-m4] Add hardware stack guard support</title>
<updated>2026-08-26T02:37:02Z</updated>
<author>
<name>hanzhijian</name>
<email>hanzhijian@zepp.com</email>
</author>
<published>2026-08-25T01:19:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=e2e6245aace07b545b8dbcef8fbcdb4469f55d9f'/>
<id>urn:sha1:e2e6245aace07b545b8dbcef8fbcdb4469f55d9f</id>
<content type='text'>
Enable RT_USING_HW_STACK_GUARD on Cortex-M4, which was previously only
available on Cortex-M7 and Cortex-M33.

Core porting (libcpu/arm/cortex-m4/):
- Add mpu.c/mpu.h/mputype.h aligned with the Cortex-M7 MPU layer. The only
  difference is the default memory type attribute: Cortex-M4 has no L1 cache,
  so the cacheability bits are reduced to three cases.
- Add rt_hw_stack_guard_init() to cpuport.c.
- Add missing #include &lt;rtconfig.h&gt; to context_gcc.S and invoke
  rt_hw_mpu_table_switch() in the PendSV context switch path.
- Update SConscript to exclude mpu.c when memory protection is disabled.

BSP reference (bsp/stm32/stm32f407-fk407m2-zgt6/):
- board.h: include rtthread.h and define NUM_STATIC_REGIONS.
- board.c: define static_regions[] marking the Flash region read-only,
  guarded by RT_USING_MEM_PROTECTION so it is not enabled by default.
</content>
</entry>
</feed>
