RISC-V Software News

October 2025 — Upstream Open Source Activity

The Big Picture

The RISC-V upstream saw 286 commits across 13 projects this October. The most active projects were LLVM (RISC-V) (106), Linux Kernel (RISC-V) (49), QEMU (RISC-V) (48). Extension support continued to broaden, with work on QC_SETWMI, QC_SHLADD, Zaamo, Zacas, Zalrsc, Zdinx, Zfinx, Zvfhmin. Virtualisation saw 7 KVM-related patches. Most-discussed mailing list thread: "riscv: Add RVV memset via multiarch/IFUNC" (glibc (RISC-V), 17 replies).

RISC-V International

The spec repos saw 24 commits this month, led by ISA Manual with 20 commits.

Spec Repository Activity

RepositoryCommitsContributors
ISA Manual 20 10
ELF psABI 3 2
SBI Spec 1 1

Community Buzz (r/RISCV)

The most popular posts on r/RISCV this month, ranked by upvotes.

Linux Kernel (RISC-V)

49
Commits
26
Contributors
1315
Lines Added
181
Lines Removed

Linux Kernel (RISC-V) saw healthy activity with 49 commits from 26 contributors. Samuel Holland was the most active contributor with 7 commits. New feature work included 17 commits: "riscv: dts: thead: Add PWM fan and thermal control"; "riscv: dts: thead: Add PWM controller node". Board and device tree support got 17 commits. The interrupt subsystem got 7 patches of attention this month. Bug fixes accounted for 6 commits (12%).

17 New features & support 17 Device tree / platform support 7 Interrupt controllers (AIA/APLIC/PLIC) 6 Bug fixes 3 KVM / Virtualisation 3 ISA extensions 2 Vector extension (RVV) 1 Security & memory safety fixes 1 Cleanup & refactoring

Notable Changes

  • irqchip/sifive-plic: Add support for UltraRISC DP1000 PLIC (539d147ef6, Charles Mirabile)
  • irqchip/riscv-imsic: Inline imsic_vector_from_local_id() (and 2 more) (3a16b05384, Samuel Holland)
  • riscv: Kconfig.socs: Add ARCH_TENSTORRENT for Tenstorrent SoCs (16eb4e02a6, Drew Fustini)
  • riscv: dts: spacemit: add i2c aliases on BPI-F3 (and 2 more) (859ce3828f, Aurelien Jarno)
  • riscv: dts: spacemit: add Ethernet and PDMA to OrangePi RV2 (9813395078, Michael Opdenacker)
  • irqchip/sifive-plic: Cache the interrupt enable state (14ff9e54dd, Charles Mirabile)
  • riscv: dts: Add Tenstorrent Blackhole SoC PCIe cards (8e88602e99, Drew Fustini)
  • riscv: dts: spacemit: add UART pinctrl combinations (1187f9b3f6, Hendrik Hamerlinck)
  • riscv: dts: thead: Add PWM fan and thermal control (a9fb9c7e3b, Michal Wilczynski)
  • riscv: dts: thead: add zfh for th1520 (and 2 more) (fac4be7b3d, Han Gao)
  • riscv: add a forward declaration for cpuinfo_op (492c513ec6, Paul Walmsley)
  • riscv: kprobes: Fix probe address validation (9e68bd803f, Fabian Vogt)
  • riscv: dts: thead: Add PWM controller node (b6b00b220d, Michal Wilczynski)
  • riscv: defconfig: Enable Tenstorrent SoCs (a71e6e8eea, Drew Fustini)
  • RISC-V: clear hot-unplugged cores from all task mm_cpumasks to avoid rfence errors (ae9e9f3d67, Danil Skrebenkov)

Top Contributors

AuthorCommits
Samuel Holland7
Paul Walmsley4
Han Gao4
Drew Fustini3
Aurelien Jarno3
Alex Elder3
Michal Wilczynski2
Vivian Wang2
Charles Mirabile2
Fangyu Yu2

OpenSBI

24
Commits
8
Contributors
2158
Lines Added
379
Lines Removed

OpenSBI kept moving with 24 commits from 8 contributors. Leading the charge was Nick Hu with 11 commits. New feature work included 17 commits: "lib: utils/suspend: Add SiFive SMC0 driver"; "lib: sbi: Add system_resume callback for restoring the system". The interrupt subsystem got 1 patch of attention this month.

17 New features & support 2 Device tree / platform support 1 Interrupt controllers (AIA/APLIC/PLIC)

Notable Changes

  • lib: utils/timer: mtimer: Add SiFive CLINT v2 support (3990c8ee07, Yong-Xuan Wang)
  • platform: generic: Add SpacemiT K1 platform support (ca380bcb10, Xianbin Zhu)
  • lib: sbi: Add system_resume callback for restoring the system (and 3 more) (ab23d8a392, Nick Hu)
  • lib: serial: sifive-uart: add shared memory region for SiFive UART (5de8c1d499, Yu-Chien Peter Lin)
  • lib: sbi: sbi_pmu: added checks for ctr_idx in match (and 2 more) (ac16c6b604, Alexander Chuprunov)
  • lib: utils/irqchip: Add APLIC restore function (c2d2b9140a, Nick Hu)
  • lib: utils/suspend: Add SiFive SMC0 driver (37b72cb575, Nick Hu)
  • utils: cache: Add SiFive ccache controller (8ea972838c, Vincent Chen)
  • lib: utils/hsm: Add SiFive TMC0 driver (1514a32730, Nick Hu)
  • lib: utils/cache: Add fdt cmo helpers (ce4dc7649e, Nick Hu)
  • lib: utils: Add cache flush library (1207c7568f, Nick Hu)
  • platform: generic: spacemit: add K1 (1f84ec2ac2, Xianbin Zhu)
  • platform: spacemit: Add HSM driver (fb70fe8b98, Xianbin Zhu)
  • lib: utils: Add FDT cache library (d6b684ec86, Nick Hu)
  • lib: sbi: Prevent target domain same as the current (and 2 more) (e3eb59a396, Xiang W)

Top Contributors

AuthorCommits
Nick Hu11
Alexander Chuprunov3
Xianbin Zhu3
Xiang W3
Vincent Chen1
Anup Patel1
Yong-Xuan Wang1
Yu-Chien Peter Lin1

Notable Discussions

QEMU (RISC-V)

48
Commits
19
Contributors
1023
Lines Added
407
Lines Removed

QEMU (RISC-V) saw healthy activity with 48 commits from 19 contributors. Top contributor: Philippe Mathieu-Daudé with 18 commits. Bug fixes accounted for 10 commits (20%). The KVM subsystem saw 4 patches this month.

10 Bug fixes 5 New features & support 4 KVM / Virtualisation 4 ISA extensions 3 Vector extension (RVV) 1 Cleanup & refactoring 1 Device tree / platform support

Notable Changes

  • target/riscv: Introduce mo_endian_env() helper (and 12 more) (d652720ecc, Philippe Mathieu-Daudé)
  • microchip icicle: Enable PCS on Cadence Ethernet (cdbb7c3fa6, Guenter Roeck)
  • target/riscv: rvv: Fix vslide1[up|down].vx unexpected result when XLEN=32 and SEW=64 (and 2 more) (81d1885dcc, Max Chou)
  • target/riscv: Use 32 bits for misa extensions (89e1cd7363, Anton Johansson)
  • target/riscv: implement MonitorDef HMP API (e06d209aa6, Daniel Henrique Barboza)
  • accel/kvm: Introduce KvmPutState enum (665a8035b7, Philippe Mathieu-Daudé)
  • target/riscv/kvm: Replace legacy cpu_physical_memory_read/write() calls (b4c93258a9, Philippe Mathieu-Daudé)
  • target/riscv/kvm: Use riscv_cpu_is_32bit() when handling SBI_DBCN reg (c69fc80035, Philippe Mathieu-Daudé)
  • hw/riscv: Correct mmu-type property of sifive_u harts in device tree (e41139eaad, Zejun Zhao)
  • target/riscv/monitor: Replace legacy cpu_physical_memory_read() call (d936261844, Philippe Mathieu-Daudé)
  • qom: remove redundant typedef when use OBJECT_DECLARE_SIMPLE_TYPE (b12c1b3724, Nguyen Dinh Phi)
  • accel/tcg: Name gen_goto_tb()'s TB slot index as @tb_slot_idx (482869ca84, Philippe Mathieu-Daudé)
  • target/riscv: Fix endianness swap on compressed instructions (b25133d38f, vhaudiquet)
  • target/riscv/kvm: fix env->priv setting in reset_regs_csr() (2a21cbee47, Daniel Henrique Barboza)
  • hw/riscv: microchip_pfsoc: Connect Ethernet PHY channels (a79a4b9c2e, Guenter Roeck)

Top Contributors

AuthorCommits
Philippe Mathieu-Daudé18
Anton Johansson4
Daniel Henrique Barboza4
Max Chou3
Jim Shu3
Jay Chang2
Guenter Roeck2
Julian Ganz1
Marc-André Lureau1
Vishal Chourasia1

GCC (RISC-V)

28
Commits
12
Contributors
775
Lines Added
220
Lines Removed

GCC (RISC-V) saw moderate activity with 28 commits from 12 contributors. Top contributor: Jeff Law with 9 commits. Bug fixes accounted for 9 commits (32%). Compiler backend and code generation improvements accounted for 8 commits. RVV work continued with 6 commits touching vector-related code.

9 Bug fixes 8 Compiler backend / code generation 6 Vector extension (RVV) 4 New features & support 1 ISA extensions 1 Cleanup & refactoring 1 Performance optimisations

Notable Changes

  • [RISC-V][PR target/120674] Avoid division by zero in dwarf emitter when vector is not enabled (a92369a6be, Jeff Law)
  • [PR target/118945][PATCH v3] RISC-V: Add 'prefer_agnostic' tune parameter for vector policies (4b4d5fc649, Zhongyao Chen)
  • [PATCH v3] RISC-V: Implement RISC-V profile macro support (79b8f23a70, Zhongyao Chen)
  • [RISC-V][PR target/122051] Fix pmode_reg_or_uimm5_operand for thead vector (c34ccc8ba2, Jeff Law)
  • [RISC-V][PR target/122106] Add missing predicate on crc expanders (c866a8a882, Jeff Law)
  • RISC-V: Fix incorrect op of vwaddu/vwsubu wx combine (and 2 more) (d58a8e37f0, Pan Li)
  • [RISC-V][PR target/120811] Improving address reloads in LRA (304d7359a6, Shreya Munnangi)
  • [RISC-V][PR target/64345][PR tree-optimization/80770] Improve simple bit extractions on RISC-V (e0f27973e6, Jeff Law)
  • Revert "[PR target/116662][RISC-V] Adjust destructive interference size for RISC-V" (3e8013e785, Jeff Law)
  • [PR target/116662][RISC-V] Adjust destructive interference size for RISC-V (36a3b24ff8, Jeff Law)
  • [PATCH v2] RISC-V: Fix moving data from V_REGS to GR_REGS by scalar move. (a5785e8023, Kuan-Lin Chen)
  • [RISC-V][PR target/122147] Avoid creating (subreg (mem)) in RISC-V port (e037693f66, Jeff Law)
  • RISC-V: Clean up build warnings for VLS calling convention (and 2 more) (27861393a9, Kito Cheng)
  • [PATCH v2] RISC-V: fix __builtin_round NaN handling [PR target/121652] (60c6f92fb1, Aurelien Jarno)
  • [PATCH v2] RISC-V: avlprop: Scale AVL by subreg ratio [PR122445]. (bce897412c, Robin Dapp)

Top Contributors

AuthorCommits
Jeff Law9
Robin Dapp3
Kito Cheng3
Pan Li3
Zhongyao Chen2
Raphael Moreira Zinsly2
Andrew Pinski1
Kuan-Lin Chen1
Shreya Munnangi1
Bohan Lei1

LLVM (RISC-V)

106
Commits
29
Contributors
67927
Lines Added
6524
Lines Removed

Plenty of action in LLVM (RISC-V) this month: 106 commits from 29 contributors. That's +67,927/-6,524 lines of churn. Top contributor: Craig Topper with 51 commits. Code housekeeping was a significant theme at 46 commits (43%). Code generation improvements dominated with 40 commits. New feature work included 33 commits: "[RISCV] Support P extension ABSW instruction. (#165047)"; "[RISCV][GISel] Support select vector load intrinsics (#160720)". ISA extension work spanned 27 commits, touching QC_SETWMI, QC_SHLADD, Zaamo, Zacas, Zalrsc, Zdinx.

46 Cleanup & refactoring 40 Compiler backend / code generation 33 New features & support 27 ISA extensions 8 Vector extension (RVV) 8 Bug fixes 2 Performance optimisations

Notable Changes

  • [RISCV][MC] Introduce XSfvfexp* and XSfvfbfexpa* extensions and their MC supports (#164349) (90bc75043c, Min-Yih Hsu)
  • [RISCV] Add a new subtarget feature for throttled FP64 vector performance (#162399) (69f913821d, Min-Yih Hsu)
  • [RISCV] Add commutative support for Qualcomm uC Xqcics extension (#161328) (1098a5cefd, quic_hchandel)
  • [RISCV][GISel] Legalize G_INSERT_VECTOR_ELT for supported vector types (#159708) (705b6cf52f, Jianjian Guan)
  • [RISCV] Support codegen for some scalar P extension instructions. (#164359) (17abc16d7b, Craig Topper)
  • [RISCV][GISel] Add tests for SDAG fallback for vector tuples. NFC (#162164) (e115b02188, Craig Topper)
  • [RISCV] Add XSfmm pseudo instruction and vset* insertion support (#143068) (50aac2cd93, Brandon Wu)
  • [RISCV][GISel] Support select vector load intrinsics (#160720) (279a81e240, Jianjian Guan)
  • [RISCV][GISel] Support ret fp16 vector for zvfhmin (#160719) (066ee516d5, Jianjian Guan)
  • [RISCV] Support P extension ABSW instruction. (#165047) (521fb93ec2, Craig Topper)
  • [RISCV][GISel] Add manual instruction selection for i8/i16/i32->i32/i64 G_SEXT/G_ZEXT. (#161971) (5deb787c02, Craig Topper)
  • [RISCV] Add an explicit i32 to QC_SETWMI pattern to reduce RISCVGenDAGISel.inc. NFC (#162720) (e02c645f90, Craig Topper)
  • [RISCV][NFC] Avoid iteration and division while selecting SHXADD instructions (#158851) (3a3a524f54, Piotr Fusik)
  • [RISCV] Add helper function getVecPolicyOpNum in RISCVInsertVSETVLI.cpp. NFC. (#161476) (8b9e208448, Jim Lin)
  • [RISCV][GISel] Add manual isel for s8/s16/s32 load/store for the GPR bank. (#161995) (bd1561d5f1, Craig Topper)

Top Contributors

AuthorCommits
Craig Topper51
Jim Lin7
Min-Yih Hsu6
Brandon Wu5
Kazu Hirata4
Philip Reames3
Sam Elliott3
Jianjian Guan3
slachowsky2
Jakub Kuderski2

glibc (RISC-V)

6
Commits
2
Contributors
27
Lines Added
23
Lines Removed

A quieter month for glibc (RISC-V), with 6 commits from 2 contributors. On the mailing list, "riscv: Add RVV memset via multiarch/IFUNC" drew 17 replies.

2 Bug fixes 2 New features & support 1 Compiler backend / code generation 1 Cleanup & refactoring

Notable Changes

  • Implement C23 memset_explicit (bug 32378) (0f201f4a81, Joseph Myers)
  • riscv: memcpy_noalignment: Reorder to store via a3, then bump a3 (and 2 more) (09a94c86ca, Yao Zihong)
  • Implement C23 memalignment (ea18d5a4c2, Joseph Myers)
  • Rename uimaxabs to umaxabs (bug 33325) (096fcdc0a5, Joseph Myers)

Top Contributors

AuthorCommits
Yao Zihong3
Joseph Myers3

Notable Discussions

Binutils (RISC-V)

2
Commits
1
Contributors
2
Lines Added
4
Lines Removed

Minimal activity in Binutils (RISC-V): 2 commits. Most of the work came from Jan Beulich (2 of 2 commits, 100%).

Notable Changes

  • bfd: move sec_info from ELF to general section struct (eb92a17c47, Jan Beulich)
  • bfd: simplify _bfd_merged_section_offset() interface (f2dbe10f66, Jan Beulich)

Top Contributors

AuthorCommits
Jan Beulich2

GDB (RISC-V)

2
Commits
2
Contributors
144
Lines Added
342
Lines Removed

GDB (RISC-V) was quiet this month with 2 commits from 2 contributors. The codebase got leaner: +144/-342. Optimisation efforts accounted for 1 commit.

1 Performance optimisations

Notable Changes

  • Rewrote riscv-canonicalize-gen.py using xml file (321ac819c4, Timur Golubovich)
  • gdb/record: Speeding up recording in RISC-V (bef948d551, timurgol007)

Top Contributors

AuthorCommits
timurgol0071
Timur Golubovich1

U-Boot (RISC-V)

6
Commits
4
Contributors
66
Lines Added
1036
Lines Removed

A quieter month for U-Boot (RISC-V), with 6 commits from 4 contributors. Notably, more code was removed than added (+66/-1,036). Extension support saw 1 commit covering Zalrsc.

3 New features & support 1 ISA extensions 1 Device tree / platform support

Notable Changes

  • board: starfive: visionfive2: Add Milk-V Mars CM and Mars CM Lite selection by product_id (6674ffb51b, E Shattow)
  • board: starfive: Add initial Milk-V Mars CM and Mars CM Lite user documentation (e1c05c0069, E Shattow)
  • Revert "riscv: Add a Zalrsc-only alternative for synchronization in start.S" (e6646b35f4, Yao Zi)
  • riscv: dts: starfive: prune redundant jh7110 overrides (e599023f31, E Shattow)
  • sunxi: switch the Allwinner T113 SoC to OF_UPSTREAM (15e158ccd9, Andre Przywara)
  • spl: split spl_board_fixups to arch/board specific (16ffcff028, Anshul Dalal)

Top Contributors

AuthorCommits
E Shattow3
Andre Przywara1
Anshul Dalal1
Yao Zi1

Mailing List Activity

Rust (RISC-V)

4
Commits
2
Contributors
29
Lines Added
6
Lines Removed

Rust (RISC-V) was quiet this month with 4 commits from 2 contributors. Aria Desires dominated with 3/4 commits (75%).

1 New features & support

Notable Changes

  • Add riscv64gc-unknown-redox (fa0f1630d6, bjorn3)
  • update all other references to musl 1.2.3 to 1.2.5 (a014a9b0ed, Aria Desires)
  • remove references to upstreamed patches (22e6656c21, Aria Desires)
  • fmt (010b690117, Aria Desires)

Top Contributors

AuthorCommits
Aria Desires3
bjorn31

OpenOCD (RISC-V)

4
Commits
3
Contributors
13
Lines Added
15
Lines Removed

OpenOCD (RISC-V) was quiet this month with 4 commits from 3 contributors.

3 New features & support

Notable Changes

  • target: cortex-m: add support for armv8m caches (04da6e2c62, Antonio Borneo)
  • adapter/parport: Add device file support (910e6ba2f0, Marc Schink)
  • adapter/parport: Deprecate direct I/O support (39ed0b0bba, Marc Schink)
  • jtag/ch347: Refine driver and configs for EasyDevKits adapters (5fa74d4ee8, EasyDevKits)

Top Contributors

AuthorCommits
Marc Schink2
EasyDevKits1
Antonio Borneo1

OpenBLAS (RISC-V)

5
Commits
1
Contributors
275
Lines Added
7
Lines Removed

A quieter month for OpenBLAS (RISC-V), with 5 commits. Most of the work came from Chip Kerchner (5 of 5 commits, 100%).

1 Bug fixes 1 New features & support

Notable Changes

  • Better FP16 vectorized GEMV - 20% faster. (809e1cba8f, Chip Kerchner)
  • Add SBGEMV and SHGEMV routines to RISC-V. (588f0e87cc, Chip Kerchner)
  • Change signature of SBGEMV. (aecb7f9537, Chip Kerchner)
  • Tie in SHGEMV for RISC-V. (03a83778bb, Chip Kerchner)
  • Fix stride issue. (f552040c5d, Chip Kerchner)

Top Contributors

AuthorCommits
Chip Kerchner5

Linux Kernel Docs & DT (RISC-V)

2
Commits
1
Contributors
29
Lines Added
0
Lines Removed

Minimal activity in Linux Kernel Docs & DT (RISC-V): 2 commits. Drew Fustini dominated with 2/2 commits (100%).

2 New features & support 2 Device tree / platform support

Notable Changes

  • dt-bindings: riscv: Add Tenstorrent Blackhole compatible (4de28f1edc, Drew Fustini)
  • dt-bindings: riscv: cpus: Add SiFive X280 compatible (571e42a119, Drew Fustini)

Top Contributors

AuthorCommits
Drew Fustini2