A strong March for the RISC-V software stack: 422 commits across 11 projects. The most active projects were LLVM (RISC-V) (205), Linux Kernel (RISC-V) (68), QEMU (RISC-V) (68). The extension landscape saw work on Smnpm, Sscofpmf, Ssnpm, Zaamo, Zalrsc, Zawrs, Zicbom, Zicntr. Virtualisation saw 10 KVM-related patches. Most-discussed mailing list thread: "lib: sbi_ipi: Return error for invalid hartids" (OpenSBI, 8 replies).
RISC-V International
The spec repos saw 34 commits this month, led by ISA Manual with 26 commits.
Spec Repository Activity
Repository
Commits
Contributors
ISA Manual
26
14
SBI Spec
8
4
Linux Kernel (RISC-V)
68
Commits
34
Contributors
1603
Lines Added
733
Lines Removed
Linux Kernel (RISC-V) saw healthy activity with 68 commits from 34 contributors. Top contributor: Andrew Jones with 7 commits. New feature work included 23 commits: "riscv: Support CONFIG_RELOCATABLE on riscv32"; "riscv: Support CONFIG_RELOCATABLE on NOMMU". ISA extension work spanned 12 commits, touching Zaamo, Zalrsc, Zawrs, Zicbom, Zicntr, Zihpm. Bug fixes accounted for 10 commits (14%). 8 commits targeted performance improvements.
23 New features & support12 ISA extensions10 Bug fixes8 Performance optimisations4 KVM / Virtualisation3 Vector extension (RVV)3 Cleanup & refactoring1 Device tree / platform support
Notable Changes
riscv/crc32: reimplement the CRC32 functions using new template (72acff5f81, Eric Biggers)
riscv: add ISA extension parsing for bfloat16 ISA extension (e186c28dda, Inochi Amaoto)
RISC-V: add f & d extension validation checks (and 4 more) (12e7fbb6a8, Conor Dooley)
riscv/crc: add "template" for Zbc optimized CRC functions (bbe2610bc5, Eric Biggers)
riscv/crc-t10dif: add Zbc optimized CRC-T10DIF function (8bf3e17898, Eric Biggers)
riscv: add parsing for Zaamo and Zalrsc extensions (35173b666a, Clément Léger)
riscv/crc64: add Zbc optimized CRC64 functions (511484fa88, Eric Biggers)
riscv: Add runtime constant support (a44fb57221, Charlie Jenkins)
riscv: ftrace: Add parentheses in macro definitions of make_call_t0 and make_call_ra (5f1a58ed91, Juhan Jin)
kbuild: Introduce Kconfig symbol for linking vmlinux with relocations (9b400d1725, Ard Biesheuvel)
RISC-V: KVM: Optimize comments in kvm_riscv_vcpu_isa_disable_allowed (b3f263a98d, Chao Du)
riscv: Fix missing __free_pages() in check_vector_unaligned_access() (33981b1c4e, Alexandre Ghiti)
riscv: Add parameter for skipping access speed tests (and 6 more) (aecb09e091, Andrew Jones)
riscv: Simplify base extension checks and direct boolean return (7f238b1266, Chin Yik Ming)
riscv: Fix the __riscv_copy_vec_words_unaligned implementation (475afa39b1, Tingbo Liao)
A steady month for OpenSBI with 22 commits from 9 contributors. Top contributor: Clément Léger with 7 commits. New feature work included 6 commits: "lib: utils/serial: Add PXA UARTs support"; "lib: sbi: sse: Add support for SSTATUS.SDT". The interrupt subsystem got 2 patches of attention this month.
6 New features & support3 ISA extensions2 Interrupt controllers (AIA/APLIC/PLIC)2 Bug fixes1 Cleanup & refactoring1 Performance optimisations1 Device tree / platform support
Notable Changes
lib: sbi: sse: Add support for SSTATUS.SDT (and 6 more) (3ac49712e3, Clément Léger)
lib: utils/serial: Add PXA UARTs support (8fe835303c, Junhui Liu)
lib: sbi_scratch: Add sbi_hart_count() and for_each_hartindex() (and 2 more) (757f7acafd, Samuel Holland)
lib: tests: add bitwise operations unit tests (3e6bd14246, Dongdong Zhang)
lib: add tests for sbi_ecall functionality (0b78665a6c, Akshay Behl)
Revert "lib: utils/irqchip: Match against more specific compatible strings first" (98c0a3860a, Samuel Holland)
scripts: Fix firmware binaries compilation in create-binary-archive.sh (8573a9b858, Anup Patel)
lib: sbi: Return SBI_EALREADY error code if SSE event is present (b2e8e6986d, Himanshu Chauhan)
lib: utils: Make sure that hartid and the scratch are aligned (321ca8063b, Raj Vishwanathan)
lib: sbi: Fix potential garbage data in string copy functions (56341e95ae, Dongdong Zhang)
lib: sbi: Avoid GOT indirection for global symbol references (86c01a73ff, Samuel Holland)
lib: sbi: Use sbi_hart_count() and sbi_for_each_hartindex() (949c83a799, Samuel Holland)
lib: utils/fdt: Respect compatible string fallback priority (0ffe265fd9, Samuel Holland)
lib: Emit lr and sc instructions based on -march flags (995f226f3f, Chao-ying Fu)
A productive month for QEMU (RISC-V) with 68 commits from 18 contributors. Leading the charge was Daniel Henrique Barboza with 22 commits. New feature work included 26 commits: "Revert "target/riscv/kvm: add missing KVM CSRs""; "target/riscv: Add check for 16-bit aligned PC for different priv versions.". Bug fixes accounted for 14 commits (20%). The KVM subsystem saw 6 patches this month. Extension support saw 6 commits covering Sscofpmf.
26 New features & support14 Bug fixes6 KVM / Virtualisation6 ISA extensions4 Vector extension (RVV)4 Cleanup & refactoring1 Interrupt controllers (AIA/APLIC/PLIC)1 Performance optimisations
Notable Changes
target/riscv: Add support to access ctrsource, ctrtarget, ctrdata regs. (and 5 more) (8b65852196, Rajnesh Kanwal)
optimize the memory probing for vector fault-only-first loads. (17288e38be, Paolo Savini)
target/riscv/kvm: Add some exts support (1c17df6fc4, Quan Zhou)
target/riscv: rvv: Fix unexpected behavior of vector reduction instructions when vl is 0 (ffd455963f, Max Chou)
target/riscv: fix handling of nop for vstart >= vl in some vector instruction (4e9e2478df, Chao Liu)
target/riscv: Add check for 16-bit aligned PC for different priv versions. (ffe4db11f8, Yu-Ming Chang)
target/riscv: machine: Add Control Transfer Record state description (bda6522e3f, Rajnesh Kanwal)
GCC (RISC-V) saw lighter activity with 8 commits from 3 contributors. Jeff Law was the most active contributor with 4 commits. Bug fixes accounted for 4 commits (50%). The vector extension (RVV) saw 2 commits of continued development.
4 Bug fixes2 Vector extension (RVV)1 New features & support
Notable Changes
RISC-V: Mask values before initializing bitmask vector [PR119114]. (and 2 more) (b58a0af4e2, Robin Dapp)
[RISC-V][PR target/118934] Fix ICE in RISC-V long branch support (67e824c249, Jeff Law)
[RISC-V][PR target/116256][V4] Fix minor code quality regression in reassociated arithmetic (9d68a2a673, Jeff Law)
[RISC-V] Fix unreported code quality regression with single bit manipulations (d9a8ec7fe0, Jeff Law)
RISC-V: disable the abd expander for gcc-15 release [PR119224] (cb6070c79d, Vineet Gupta)
[RISC-V] Fix another unreported code quality regression (e9888795b8, Jeff Law)
Top Contributors
Author
Commits
Jeff Law
4
Robin Dapp
3
Vineet Gupta
1
LLVM (RISC-V)
205
Commits
40
Contributors
46335
Lines Added
30686
Lines Removed
LLVM (RISC-V) saw an exceptional level of activity with 205 commits from 40 contributors. A hefty +46,335/-30,686 line diff. Leading the charge was Craig Topper with 50 commits. Code housekeeping was a significant theme at 65 commits (31%). New feature work included 53 commits: "[RISCV] Initial codegen support for the XRivosVizip extension (#131933)"; "[RISCV] Add Qualcomm uC Xqciio (External Input Output) extension (#132721)". Extension support saw 33 commits covering Zvbb, Zvfhmin. Bug fixes accounted for 15 commits (7%).
65 Cleanup & refactoring53 New features & support33 ISA extensions15 Bug fixes12 Compiler backend / code generation11 Vector extension (RVV)5 Performance optimisations2 Interrupt controllers (AIA/APLIC/PLIC)
Notable Changes
[RISCV] Enable scalable loop vectorization for fmax/fmin reductions with f16/bf16 type for zvfhmin/zvfbfmin (#129629) (03505a004f, Jim Lin)
[RISCV] Add vector hasAndNot to enable optimizations (#132438) (96925fa84c, Piotr Fusik)
[RISCV] Add missing space to optimized-nf*-segment-load-store description. NFC (#132531) (fb44c54d65, Craig Topper)
A quieter month for glibc (RISC-V), with 8 commits from 5 contributors. A net deletion month (+62/-2,934) — always satisfying. Joseph Myers was the most active contributor with 4 commits. New feature work included 6 commits: "Implement C23 pown"; "Add _FORTIFY_SOURCE support for inet_pton".
6 New features & support1 Bug fixes1 Cleanup & refactoring
Notable Changes
Add _FORTIFY_SOURCE support for inet_pton (e3a6e85d67, Aaron Merey)
Add _FORTIFY_SOURCE support for inet_ntop (090dfa40a5, Frédéric Bérat)
Linux: Add the pthread_gettid_np function (bug 27880) (74d463c50b, Florian Weimer)
Implement C23 rsqrt (77261698b4, Joseph Myers)
Implement C23 pown (75ad83f564, Joseph Myers)
Implement C23 powr (409668f6e8, Joseph Myers)
math: Refactor how to use libm-test-ulps (3e8814903c, Adhemerval Zanella)
Update syscall lists for Linux 6.13 (eea6f1e079, Joseph Myers)
Not the busiest month for Binutils (RISC-V): 14 commits from 8 contributors. Nelson Chu was the most active contributor with 6 commits. Extension support saw 5 commits covering Smnpm, Ssnpm, Zicsr. RVV work continued with 1 commit touching vector-related code.
5 ISA extensions5 New features & support1 Vector extension (RVV)
Notable Changes
RISC-V: Add extension XTheadVdot for T-Head VECTOR vendor extension [1] (66b81b40dc, Jin Ma)
RISC-V: Support ssqosid extension with version 1.0. (56a0188548, Kito Cheng)
RISC-V: Support pointer masking extension 1.0 (7b2a5f7183, Jerry Zhang Jian)
RISC-V: add Smrnmi 1.0 instruction support (a7ecc1ba97, Jerry Zhang Jian)
RISC-V: Don't show support for 1.9.1 priv spec (0d1f436268, Marek Pikuła)
RISC-V: Avoid parsing arch string repeatedly for dis-assembler (and 5 more) (e4c9f0e6c3, Nelson Chu)
RISC-V: Re-define mapping symbol $x to the file elf architecture attribute (ade87b8e62, Andrew Oates)
RISC-V: Ssnpm, smnpm and smmpm imply zicsr. (bc965121b5, Dongyan Chen)
RISC-V: use is_end_of_stmt() (64ac402023, Jan Beulich)
U-Boot (RISC-V) saw moderate activity with 17 commits from 10 contributors. The codebase got leaner: +69/-349. Heinrich Schuchardt was the most active contributor with 5 commits. New feature work included 6 commits: "Add reset config options for k1"; "riscv: dts: k1: add reset controller node in device tree". Device tree and platform support saw 6 commits.
6 New features & support6 Device tree / platform support1 Cleanup & refactoring
Notable Changes
boot: arm: riscv: sandbox: Add a format for the booti file (098407e673, Simon Glass)
riscv: dts: k1: add reset controller node in device tree (d5b621d8b5, Huan Zhou)
treewide: Add a function to change page permissions (ec1c6cfb1c, Ilias Apalodimas)
spl: Add an SPL_HAVE_INIT_STACK option (d6a53f523a, Simon Glass)
Add reset config options for k1 (9c40d92305, Huan Zhou)
board: starfive: Remove compatible boards Milk-V Mars CM and Mars CM Lite (870c4d105a, E Shattow)
spl: starfive: visionfive2: Disable USB overcurrent pin by default. (05aa34cef9, Minda Chen)
Minimal activity in OpenOCD (RISC-V): 4 commits from 2 contributors.
2 New features & support
Notable Changes
flash/nor: Add basic support for TI's MSPM0L/G family (8a6f89ca17, Nishanth Menon)
tcl/target: Add support for TI MSPM0 (c81cb4aa2d, Nishanth Menon)
doc: drop mention of not implemented SPI transport (e4a51b3235, Antonio Borneo)
adapter: drop command 'adapter transports' (6beb6280af, Antonio Borneo)
Top Contributors
Author
Commits
Antonio Borneo
2
Nishanth Menon
2
Linux Kernel Docs & DT (RISC-V)
5
Commits
3
Contributors
149
Lines Added
0
Lines Removed
Not the busiest month for Linux Kernel Docs & DT (RISC-V): 5 commits from 3 contributors. Most of the work came from Conor Dooley (3 of 5 commits, 60%). Platform and DT work accounted for 5 commits. Extension support saw 3 commits covering Zaamo, Zalrsc. RVV work continued with 2 commits touching vector-related code.
5 Device tree / platform support3 ISA extensions3 New features & support2 Vector extension (RVV)
Notable Changes
dt-bindings: riscv: add Zaamo and Zalrsc ISA extension description (a65e0f67da, Clément Léger)
dt-bindings: riscv: add bfloat16 ISA extension description (35bc188373, Inochi Amaoto)