Releases: riscv-software-src/opensbi
OpenSBI Version 1.5.1
This intermediate release has following fixes:
- Save/restore menvcfg only when it exists
- Adjust Sscofpmf mhpmevent mask for upper 8 bits
- Fix potential NULL pointer dereferences in SBI DBTR
- Fix incorrect size passed to sbi_zalloc() in SBI FWFT
- Check result of pmp_get() in is_pmp_entry_mapped()
OpenSBI Version 1.5
This release has:
- SBI debug triggers (DBTR) extension (Experimental)
- Support to specify coldboot harts in DT
- Relocatable FW_JUMP_ADDR and FW_JUMP_FDT_ADDR
- Smcsrind and Smcdeleg extensions support
- SBIUnit testing framework
- Initial domain context management support
- Platform specific load/store emulation callbacks
- New trap context
- Improved sbi_trap_error() to dump state in a nested trap
- SBI supervisor software events (SSE) extension (Experimental)
- Simplified wait_for_coldboot() implementation
- Early wakeup of non-coldboot HART in the coldboot path
- Sophgo CV18XX/SG200X series support
- APLIC delegation DT property fix
- Svade and Svadu extensions support
- SBI firmware features (FWFT) extension (Experimental)
Overall, this release mainly adds more ISA extensions, SBI extensions and other improvements.
OpenSBI Version 1.4
This release has:
- Synopsys DesignWare APB GPIO driver
- Zicntr and Zihpm support
- Console print improvements
- Smepmp support
- Simple FDT based syscon regmap driver
- Syscon based reboot and poweroff driver
- Non-contiguous hpm counters
- Smcntrpmf support
- Full sparse hartid support
- IPI improvements
- RFENCE improvements
- Zkr support
- Andes custom PMU support
Overall, this release mainly adds more ISA extensions, drivers and other improvements.
OpenSBI Version 1.3.1
This intermediate release has:
- ACLINT driver fix for disabled CPUs
- SBI PMU fix for out-of-bound access
- Designware GPIO driver
Overall, this is our first intermediate release with a crucial
for ACLINT drivers.
OpenSBI Version 1.3
This release has:
- Allow platform to influence cold boot HART selection
- Starfive JH7110 platform support
- Split RX and RW firmware regions
- Advertise non-retentive suspend for allwinner D1 platform
- Byteorder/endianness conversion macros
- SBI debug console extension (Experimental)
- Configure the PMA regions for RZ/Five platform
- SBI system suspend extension (Experimental)
- SBI PMU platform firmware events (Experimental)
- SBI CPPC extension (Experimental)
- Optimized remote TLB flushes
- Simple heap for boot time memory allocations
- Bring back no-map DT property for reserved memory nodes
Overall, this release mainly adds new SBI extensions along with other improvements.
OpenSBI Version 1.2
This release has:
- Menuconfig support using Kconfiglib v14.1.0
- RISC-V AIA v1.0.0 support
- Cadence UART driver
- Platform specific PMU device operations
- Trap handling improvements for platforms with H-extension
- Semihosting support
- T-HEAD C9XX PMU and CLINT support
- FDT based drivers for Andes AE350 platform
- Andes AE350 platform improvements
- Allow enabling/disabling of SBI extensions via Kconfig
- Renesas SCIF serial driver
- Renesas RZ/Five platform support
Overall, this release mainly adds Kconfig support, new drivers and new platforms along with other improvements.
OpenSBI Version 1.1
This release has:
- SBI PMU improvements
- RISC-V AIA v0.3.0 draft support
- Simple external interrupt handling framework
- Xilinx UART-Lite driver
- RISC-V privilege specification v1.12 support
- RISC-V Svpbmt extension support
- RISC-V Smstateen extension support
- RISC-V Sstc extension support
- RISC-V privilege specification version detection
- Platform callback to populate HART extensions
- Compile time C arrays support
- Probing FDT based drivers using compile time C arrays
- SBI HSM improvements
- Allwinner D1 platform support
- Trap redirection improvements related to [m|h]tinst CSR
- SBI v1.0 specification support
Overall, this release mainly adds support for various RISC-V ISA extensions ratified in December 2021 along with other improvements.
OpenSBI Version 1.0
This release has:
- SBI HSM suspend defined by SBI v0.3 specification
- Position independent execution for firmware
- Ticket based spinlocks
- Simplified / reduced platform callbacks
- ACLINT MTIMER and MSWI support
- SBI PMU extension defined by SBI v0.3 specification
- Simple FDT based GPIO driver framework
- Improved reset driver framework along with various reset drivers
- Generic timer delay loop APIs
- RISC-V Sscofpmf extension support
- Simple FDT based I2C driver framework along with SiFive I2C driver
- UART drivers for Gaisler and LiteX platforms
Overall, this release completes a major milestone by implementing the SBI v0.3 specification along with various other improvements.
OpenSBI Version 0.9
This release has:
- Lots of fixes and improvements
- Optimized trap handler for both RV32 and RV64
- Domain support for system-level partitioning
- Device tree based domain configuration
- SBI v0.3 SRST extension
- More detailed boot-time prints
- Makefile option to use toolchain default ISA and ABI
OpenSBI Version 0.8
This release has:
- Simple FDT timer driver framework
- Simple FDT ipi driver framework
- Simple FDT irqchip driver framework
- Simple FDT serial framework
- Generic FDT based platform support
- Nuclei UX600 platform support
- Detect HART CSRs at boot time
- Multi-PLIC support
- Multi-CLINT support
- Allow multiple builtin DTBs
- Hypervisor v0.6.1 specification support
- Shakti C-class platform support