Linux 6.12 成功移植到 ESP32-S31

Linux on ESP32

GrieferPig 在 GitHub 上分享了将 MMU Linux 移植到 ESP32-S31 架构的最新进展。该项目基于 Linux 6.12 内核,成功在 ESP32-S31-WROOM-3 开发板上运行。由于 ESP32-S31 的 Supervisor 模式非标准且缺乏官方技术参考手册,开发者通过逆向工程猜测了 CSR 寄存器用法,并修改了 OpenSBI 以支持 XIP(就地执行)来节省宝贵的 PSRAM 内存。目前,UART 控制台、时钟树等核心功能正在开发或测试中,而 I2C、SPI 等外设驱动尚未实现。尽管部分功能如双核 SMP 和 USB 仍在完善,但 CoreMark 跑分测试已验证了系统的基本运行能力,为在低功耗 RISC-V 芯片上运行完整 Linux 系统提供了新的可能性。

由于 ESP32-S31 的 Supervisor 模式并非标准实现,且在 ESP-IDF 中完全没有被使用,因此这些 CSR 寄存器的用法大多是根据 P4 的技术参考手册或 CSR 探测猜测出来的。
  1. tyingq

    所有内容都未经测试或仍在开发中。这有什么新闻吗?抱歉问一句。

  2. Izmaki

    > 主线 Linux 移除了 RISC-V 的 XIP 支持,所以改用了 6.12 版本,因为它拥有完善的 XIP 支持。

    这难道不是让它处于一个尴尬的境地,依赖一个即将废弃的特性吗?

  3. Aurornis

    看起来挺有意思,但像 netBSD 这样的系统不是更合适吗?

同日更多故事

2026-08-01