Skip to content

arch/risc-v/k210: Remove QEMU support#18577

Merged
xiaoxiang781216 merged 1 commit intoapache:masterfrom
no1wudi:k210
Mar 23, 2026
Merged

arch/risc-v/k210: Remove QEMU support#18577
xiaoxiang781216 merged 1 commit intoapache:masterfrom
no1wudi:k210

Conversation

@no1wudi
Copy link
Contributor

@no1wudi no1wudi commented Mar 22, 2026

Summary

Remove the CONFIG_K210_WITH_QEMU option and associated conditional code paths from the K210 architecture support. The reasons for removal are:

  1. Simplifies code path for real hardware - Removes QEMU workarounds that complicate the codebase
  2. Incorrect QEMU target - The current QEMU support uses sifive_u machine, which is not designed for K210 emulation
  3. Better alternatives exist - For RISC-V QEMU simulation, the qemu-rv (rv-virt) target is a better choice
  4. Renode alternative - Renode can be used as an alternative for K210 simulation if needed

Impact

  • Impact on user: YES - Users can no longer use CONFIG_K210_WITH_QEMU to run K210 code on QEMU's sifive_u machine
  • Impact on build: NO - No build system changes
  • Impact on hardware: NO - Real hardware (Maix Bit) functionality unchanged
  • Impact on documentation: YES - Removed QEMU-related documentation from maix-bit board docs
  • Impact on security: NO
  • Impact on compatibility: YES - Removes CONFIG_K210_WITH_QEMU config option

Testing

Build Host: Ubuntu 22.04, x86_64, GCC
Target: k210:maix-bit:nsh

Verified that the K210 real hardware configurations still compile correctly without the QEMU conditional code.

Build output:

CC:  arch/risc-v/src/k210/k210_clockconfig.c
CC:  arch/risc-v/src/k210/k210_timerisr.c
LD:  nuttx

@github-actions github-actions bot added Area: Build system Arch: risc-v Issues related to the RISC-V (32-bit or 64-bit) architecture Size: S The size of the change in this PR is small labels Mar 22, 2026
@lupyuen
Copy link
Member

lupyuen commented Mar 22, 2026

Sorry the CI Builds won't start until the PR below is merged. Please hang on :-)

@lupyuen
Copy link
Member

lupyuen commented Mar 22, 2026

@no1wudi Can you Rebase With Master Branch to trigger a rebuild? Thanks!

Remove the CONFIG_K210_WITH_QEMU option and associated conditional
code paths. The reasons for removal are:

* Simplifies code path for real hardware by removing QEMU workarounds
* The current QEMU target uses sifive_u machine, which is not designed
  for K210 emulation
* For RISC-V QEMU simulation, the qemu-rv (rv-virt) target is a better
  choice
* Renode can be used as an alternative for K210 simulation if needed

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
@no1wudi
Copy link
Contributor Author

no1wudi commented Mar 22, 2026

@no1wudi Can you Rebase With Master Branch to trigger a rebuild? Thanks!

OK

@xiaoxiang781216 xiaoxiang781216 merged commit 864fdb0 into apache:master Mar 23, 2026
41 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Arch: risc-v Issues related to the RISC-V (32-bit or 64-bit) architecture Area: Build system Size: S The size of the change in this PR is small

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants