<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rt-thread.git, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>http://cgit.235523.xyz/rt-thread.git/atom/?h=master</id>
<link rel='self' href='http://cgit.235523.xyz/rt-thread.git/atom/?h=master'/>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/'/>
<updated>2026-10-22T10:00:03Z</updated>
<entry>
<title>[tools] fix: replace console emoji in attachconfig.py</title>
<updated>2026-10-22T10:00:03Z</updated>
<author>
<name>Yunlk</name>
<email>3283559503@qq.com</email>
</author>
<published>2026-10-20T16:12:27Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=2f7aba80fbbe3e3e44997dfe9819665f01a82534'/>
<id>urn:sha1:2f7aba80fbbe3e3e44997dfe9819665f01a82534</id>
<content type='text'>
scons --attach prints a check mark / cross emoji as status prefix. On
Windows the standard output encoding follows the locale code page (936/GBK
on a Chinese system), which cannot encode U+2705/U+274C, so Python raises
UnicodeEncodeError and the command aborts:

    UnicodeEncodeError: 'gbk' codec can't encode character '\u2705'
      File "tools/attachconfig.py", line 18, in GenAttachConfigProject

All three commands go through the same function, so --attach=?,
--attach=&lt;name&gt; and --attach=default were all unusable on such systems.

Replace the emoji with plain ASCII markers and keep the existing ANSI colour
codes, which the other scripts under tools/ already use.

Refs #11906
</content>
</entry>
<entry>
<title>[bsp][spacemit/k1] Enable eight CPUs and add BSP support overview</title>
<updated>2026-10-22T09:59:29Z</updated>
<author>
<name>GuEe-GUI</name>
<email>2991707448@qq.com</email>
</author>
<published>2026-10-20T07:58:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=e7c293802a3eaef0761a2fea6244382ae42ed00f'/>
<id>urn:sha1:e7c293802a3eaef0761a2fea6244382ae42ed00f</id>
<content type='text'>
Increase RT_CPUS_NR from 4 to 8 in the K1 default configuration
and regenerate rtconfig.h.

Add the SpacemiT K1 entry and peripheral support matrix to the
BSP overview.

Verified eight-core boot and root filesystem mounting with the
RISC-V ticket spinlock fix.

Signed-off-by: GuEe-GUI &lt;2991707448@qq.com&gt;
</content>
</entry>
<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][esp32] adapt C3/C6 to ESP-IDF v6.1 and bump RISC-V toolchain to gcc 15.2 (#11870)</title>
<updated>2026-10-22T07:42:35Z</updated>
<author>
<name>Chen Moushun</name>
<email>cms19859230182@gmail.com</email>
</author>
<published>2026-10-22T07:42:35Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=dff75f072fe2b047325a312d6b944dd3acce8676'/>
<id>urn:sha1:dff75f072fe2b047325a312d6b944dd3acce8676</id>
<content type='text'>
* [bsp][esp32] adapt C3/C6 to ESP-IDF v6.1 and bump RISC-V toolchain to gcc 15.2

- Adapt ESP32-C3/C6 BSP to ESP-IDF v6.1; bump RISC-V toolchain to gcc 15.2
- C6: re-enable SPI with board-local drv_spi.c; add devices.spi to CI
  attachconfig; drop shared drv_spi.c spi_command_t hack
- C6: fix ADC oneshot multi-channel unit handle and mutex
- C3: fix portTRY_ENTER_CRITICAL_SAFE expansion in portmacro.h
- Compat with RT-Thread-packages/esp-idf rtt-dev used by CI: map
  SYSTIMER_* to SYSTIMER_LL_* (C3 and C6 board.c), accept uart_periph.h
  from hal/ or soc/
- Fix clang-format and cppcheck issues in the compat code

Signed-off-by: seteiro &lt;chenmoushun@163.com&gt;
Co-Authored-By: Grok &lt;seteiro@mail.grokbot.com&gt;

* ci: retrigger after esp-idf#18 merged

* bsp: ESP: fix C6 ADC for IDF 6.1 (adc_ll bus clock)

Replace removed PERIPH_SARADC_MODULE with adc_ll_enable_bus_clock /
adc_ll_reset_register when ESP_IDF_VERSION &gt;= 6.0.0.

---------

Signed-off-by: seteiro &lt;chenmoushun@163.com&gt;
Co-authored-by: Grok &lt;seteiro@mail.grokbot.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>drivers/misc: register rt_null at BOARD init for default console (#11472)</title>
<updated>2026-10-19T08:53:09Z</updated>
<author>
<name>seteiro</name>
<email>chenmoushun@163.com</email>
</author>
<published>2026-10-17T14:35:25Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=54f5cac5b4cc81f7d28ff783791950ed7e8f1d53'/>
<id>urn:sha1:54f5cac5b4cc81f7d28ff783791950ed7e8f1d53</id>
<content type='text'>
rt_console_set_device() is typically called in rt_hw_board_init() right
after rt_components_board_init(). null was INIT_DEVICE (level 3), so it
was not registered yet and could not be RT_CONSOLE_DEVICE_NAME.

Raise to INIT_BOARD_EXPORT; null is a pure software sink with no HW deps.

Co-Authored-By: Grok &lt;seteiro@mail.grokbot.com&gt;
</content>
</entry>
<entry>
<title>[drivers][touch] Remove redundant path from global CPPPATH</title>
<updated>2026-10-17T08:42:48Z</updated>
<author>
<name>zhangyuyang</name>
<email>zhangyuyang821@163.com</email>
</author>
<published>2026-10-16T07:32:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=8159dc81b773bd82f191696b672c69dec2742328'/>
<id>urn:sha1:8159dc81b773bd82f191696b672c69dec2742328</id>
<content type='text'>
The touch framework has no private headers in its source directory, so
adding the directory to CPPPATH is unnecessary. Remove it to avoid
polluting the global header search path, as discussed in #10980.
</content>
</entry>
<entry>
<title>[bsp][hpmicro] upgrade hpm_sdk to v1.13.0 and add hpm5100evk support</title>
<updated>2026-10-17T08:28:33Z</updated>
<author>
<name>Fan YANG</name>
<email>fan.yang@hpmicro.com</email>
</author>
<published>2026-10-15T14:56:12Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=fc64f78669b42b35981f97c23c7e952832f3b48b'/>
<id>urn:sha1:fc64f78669b42b35981f97c23c7e952832f3b48b</id>
<content type='text'>
Sync the HPMicro BSPs with hpm_sdk v1.13.0 and add the HPM5100EVK
(HPM5151) board.

- add the hpm5100evk BSP (board/startup/applications/Kconfig/docs) and
  register it in .github/ALL_BSP_COMPILE.json, bsp/README.md and the
  HPMicro READMEs
- re-sync the 11 existing boards (board/startup/debug scripts/linker
  scripts/applications) with hpm_sdk v1.13.0, keeping the RT-Thread
  specific parts: clock_time based drv_timer, CXX wired into the scons
  environment, SConscript outputs under build/, named Kconfig choices,
  rt_hw_us_delay in board_delay_*, board local codec files
- sync the shared driver layer with hpm_sdk v1.13.0 (GPTMRv2/PTMR,
  PUART, soft I2C/SPI and the remaining peripheral driver updates)
- select the hpm_sdk v1.13.0 online package (PKG_USING_HPM_SDK_V113)
- use -Og instead of -O0 for the debug builds and print floats with the
  RT-Thread klibc implementation instead of newlib nano
- initialize the RT-Thread heap before the SDK console init: the SDK
  console_init() calls setvbuf(), which allocates through the C library
  malloc() and tripped RT_ASSERT() in rt_smem_alloc() on the boards
  built with RT_USING_DEBUG
- keep only ram_rtt.ld/flash_rtt.ld per board, align the DLM origin to
  4KB on hpm5300evk/hpm5301evklite (the unaligned origin made the
  linker emit a file backed PT_LOAD for the RAM area, which broke
  "program rtthread.elf"), and anchor the generated .bin at the flash
  base address 0x80000000
- sync the hpm6750evk openocd debug scripts with the new style used by
  the other boards (hpm_common.cfg/hpm_reset.cfg with arp_halt)

- keep the upstream synced board/startup/libraries trees of bsp/hpmicro out of the
  changed-file cppcheck run (same policy as bsp/hpmicro/.clang-format-ignore): the
  check runs without the hpm_sdk include paths, so it reports ATTR_PLACE_AT and the
  linker script symbol arithmetic in c_startup() as errors

- give the hpmicro boards in the changed-file scons trigger list the RV32 toolchain
  they need (RISC-V-GCC-RV32) and add the matching installation step to that
  workflow: the entries used sourcery-arm, which only provides the ARM toolchain,
  so those legs could not find riscv32-unknown-elf-gcc

- keep hpm5100evk's ram_rtt.ld identical to the hpm_sdk v1.13.0
  reference: the .fast_ram sections belong in DLM there (the DLM has
  enough headroom), and that also makes its RAM and flash layouts agree
- skip the dependency pre-check when cleaning (scons -c): it runs from
  DoBuilding() unconditionally, so a clean request with packages/ not
  fetched yet was aborted with exit code 1 instead of cleaning

- make the manual scons trigger workflow runnable: it aborted while still
  downloading actions because actions/upload-artifact@v3 is deprecated,
  and scons was not on PATH because ~/.env/env.sh was never sourced.
  Install tools/requirements.txt and source the Env PATH script in the
  build step, and use @main action versions, as bsp_buildings.yml does
- start the LED demo thread only when rt_thread_create() succeeded

Tested:
- 12 boards x {ram_debug, ram_release, flash_debug, flash_release}:
  48/48 clean builds
- flash boot + msh on hpm5100evk, hpm5300evk, hpm5e00evk, hpm6200evk,
  hpm6300evk, hpm6750evk, hpm6750evk2, hpm6750evkmini, hpm6800evk,
  hpm6e00evk, hpm6p00evk (list device/timer, ps, free, reset, rt_kprintf
  float formatting)

- re-ran .github/workflows/manual_trigger_scons_except_STM32_all.yml with
  the matrix reduced to the three hpmicro rows: all three legs build and
  scons --dist succeeds with no local workarounds
</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>[kernel] Bump version to v5.4.0</title>
<updated>2026-10-17T01:43:50Z</updated>
<author>
<name>Rbb666</name>
<email>zhangbingru@rt-thread.com</email>
</author>
<published>2026-10-17T01:11:11Z</published>
<link rel='alternate' type='text/html' href='http://cgit.235523.xyz/rt-thread.git/commit/?id=c1d931bcc78915f24c3526a07bdecc64d5110d51'/>
<id>urn:sha1:c1d931bcc78915f24c3526a07bdecc64d5110d51</id>
<content type='text'>
</content>
</entry>
</feed>
