Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 28 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,34 @@

> ⚠️ Please update this file for any changes to the hvisor project along with your name and GitHub profile link under the CURRENT section.

## CURRENT - v0.5
## CURRENT - v0.6

- [feature] **PCIe/virtio**: Add emulated virtio PCI device support. ([PR #287](https://github.com/syswonder/hvisor/pull/287), [ZZJJWarth](https://github.com/ZZJJWarth))
- [ci] Update CI workflow, add license / format checks, restore manual workflow triggers, and update CI terminal output. ([PR #302](https://github.com/syswonder/hvisor/pull/302), [PR #306](https://github.com/syswonder/hvisor/pull/306), [PR #360](https://github.com/syswonder/hvisor/pull/360), [Xingyu Chen](https://github.com/dallasxy))
- [feature] **aarch64**: Extend VCPU state handling. ([PR #303](https://github.com/syswonder/hvisor/pull/303), [Jingyu Liu](https://github.com/liulog))
- [feature] **riscv64**: Add virtual **RISC-V IOMMU** support. ([PR #307](https://github.com/syswonder/hvisor/pull/307), [Jingyu Liu](https://github.com/liulog))
- [bugfix] Detect and diagnose hvisor memory region overlap with the root zone, and add overlap checks between MMIO passthrough and MMIO intercept handler regions. ([PR #311](https://github.com/syswonder/hvisor/pull/311), [PR #384](https://github.com/syswonder/hvisor/pull/384), [Inquisitor-201](https://github.com/Inquisitor-201), [Solicey](https://github.com/Solicey))
- [bugfix] **aarch64**: Use `dc civac` instead of `dc ivac` in `invalidate_dcache_range`. ([PR #312](https://github.com/syswonder/hvisor/pull/312), [Inquisitor-201](https://github.com/Inquisitor-201))
- [refactor] Remove redundant frame allocator wrappers, fix alignment parameter semantics, and fix `alloc_contiguous` alignment. ([PR #316](https://github.com/syswonder/hvisor/pull/316), [PR #359](https://github.com/syswonder/hvisor/pull/359), [Nehckl](https://github.com/Inquisitor-201), [Jingyu Liu](https://github.com/liulog))
- [refactor] Migrate platform options from Cargo features to **Kconfig**. ([PR #319](https://github.com/syswonder/hvisor/pull/319), [Xingyu Chen](https://github.com/dallasxy))
- [feature] **PCIe**: Add **DWC MSI** injection and **SR-IOV** support (VF enumeration, capability handler, ARI). ([PR #321](https://github.com/syswonder/hvisor/pull/321), [PR #358](https://github.com/syswonder/hvisor/pull/358), [Zhongkai Xu](https://github.com/ZhongkaiXu))
- [feature] **aarch64**: Support **OpenHarmony** on dayu200 platform. ([PR #357](https://github.com/syswonder/hvisor/pull/357), [Stone749990226](https://github.com/Stone749990226))
- [feature] **x86_64**: Boot **Asterinas** as zone1 via Multiboot2, with virtio-console support, x2APIC timer virtualization, IOAPIC fixes, and dedicated Jenkins CI. ([PR #362](https://github.com/syswonder/hvisor/pull/362), [PR #376](https://github.com/syswonder/hvisor/pull/376), [yyda](https://github.com/yydawx))
- [config] Complete PCI fields in zone examples. ([PR #363](https://github.com/syswonder/hvisor/pull/363), [Jaxtonmax](https://github.com/Jaxtonmax))
- [feature] **riscv64**: Add **RVA23** ISA features for QEMU platforms. ([PR #364](https://github.com/syswonder/hvisor/pull/364), [Jingyu Liu](https://github.com/liulog))
- [platform] **aarch64**: Add support for **Jetson Orin** with UEFI memory map virtualization. ([PR #366](https://github.com/syswonder/hvisor/pull/366), [Ren HangQi](https://github.com/ForeverYolo))
- [feature] **x86_64**: Add a hypercall to query the ECAM base. ([PR #377](https://github.com/syswonder/hvisor/pull/377), [yyda](https://github.com/yydawx))
- [platform] **riscv64**: Add initial support for **Spacemit k3-com260**. ([PR #378](https://github.com/syswonder/hvisor/pull/378), [Jingyu Liu](https://github.com/liulog))
- [feature] **rk3588 (sysoul_x3300)**: Add Linux NPU / GPU / display zone configurations via SCMI. ([PR #379](https://github.com/syswonder/hvisor/pull/379), [agicy](https://github.com/agicy))
- [feature] **loongarch64**: Make SMP IPI and Virtio IRQ delivery stateful, track guest-to-physical CPU mappings, and fix Virtio consuming too much CPU. ([PR #380](https://github.com/syswonder/hvisor/pull/380), [Xinhao Li](https://github.com/li041), [Stl_](https://github.com/weifenjihe))
- [ci] **aarch64**: Add hardware CI for rk3568 and phytium-pi. ([PR #381](https://github.com/syswonder/hvisor/pull/381), [Xingyu Chen](https://github.com/dallasxy))
- [bugfix] **loongarch64**: Preserve firmware PCI bridge bus numbers. ([PR #386](https://github.com/syswonder/hvisor/pull/386), [Stl_](https://github.com/weifenjihe))
- [infra] Support older Python environments in Kconfig tooling and fix the LoongArch release build. ([Xinhao Li](https://github.com/li041), [Stl_](https://github.com/weifenjihe))
- [bugfix] **aarch64**: Refine early boot assembly. ([Nehckl](https://github.com/Inquisitor-201))

## History Release

## hvisor - v0.5

- [platform] **aarch64**: Add support for **sysoul_x3300**. ([agicy](https://github.com/agicy))
- [feature] **aarch64**: Add dual-zone Linux / Android deployment. ([agicy](https://github.com/agicy))
Expand All @@ -24,8 +51,6 @@
- [ci] Add CI / CD support for **x86_64**. ([Tianhong Liu](https://github.com/Solicey))
- [ci] Add performance benchmarking scripts for QEMU platforms. ([Xinhao Li](https://github.com/li041))

## History Release

## hvisor - v0.4

- [platform] **x86**: Add support for ECX-2300F-PEG. ([Tianhong Liu](https://github.com/Solicey))
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "hvisor"
version = "0.1.0"
version = "0.6.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
Expand Down
20 changes: 13 additions & 7 deletions README-zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,13 +66,15 @@ hvisor 是一个用 Rust 实现的 Type-1 裸机虚拟机监控器,采用分
- [x] Rockchip RK3568
- [x] Forlinx OK6254-C
- [x] Phytium Pi
- [x] Jetson Orin

### riscv64

- [x] QEMU virt riscv64
- [x] Milk-V Megrez
- [x] Sifive Hifive Premier P550
- [x] dp-1000
- [x] Spacemit k3-com260
- [ ] FPGA 香山(昆明湖)on S2C Prodigy S7-19PS-2

### loongarch64
Expand All @@ -93,7 +95,8 @@ hvisor 是一个用 Rust 实现的 Type-1 裸机虚拟机监控器,采用分
- [x] Zephyr AArch32
- [x] RT-Thread
- [x] Android
- [ ] OpenHarmony
- [x] OpenHarmony
- [x] Asterinas

## 开始使用

Expand All @@ -105,22 +108,25 @@ hvisor 是一个用 Rust 实现的 Type-1 裸机虚拟机监控器,采用分
- [更新日志](./CHANGELOG.md)
- 支持 USB zoneU 直通
- 支持 PCIe 总线虚拟化
- 支持 Android
- 支持 OpenHarmony
- 支持 Jetson Orin
- 支持 IOMMU 虚拟化(Intel VT-d / RISC-V 虚拟 IOMMU)
- 支持时钟控制器虚拟化(virtio-scmi Clock 协议,ARM)
- 支持 NPU zoneU 直通(sysoul_x3300-scmi)

### 计划中
- 支持 OpenHarmony
- 支持 ARMv9
- 支持 GICv4
- 支持缓存着色
- 支持 SR-IOV
- 支持 NPU zoneU 直通
- 支持 Nvidia GPU zoneU 直通
- 支持 ARM SMMU 虚拟化
- 支持 x86_64 时钟控制器虚拟化
- 支持 SR-IOV
- Web Management tool
- 设备树配置工具
- 支持 Nvidia Orin
- 支持 Nvidia Thor
- 支持 Raspberry Pi 5
- 支持 IOMMU 虚拟化
- 支持 时钟控制器 虚拟化
- 支持 pinctrl 虚拟化
- 支持无 zone0 启动 zoneU / zoneR

Expand Down
20 changes: 13 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,13 +65,15 @@ hvisor is a Type-1 bare-metal virtual machine monitor implemented in Rust, featu
- [x] Rockchip RK3568
- [x] Forlinx OK6254-C
- [x] Phytium Pi
- [x] Jetson Orin

### riscv64

- [x] QEMU virt riscv64
- [x] Milk-V Megrez
- [x] Sifive Hifive Premier P550
- [x] dp-1000
- [x] Spacemit k3-com260
- [ ] FPGA XiangShan(KunMingHu) on S2C Prodigy S7-19PS-2

### loongarch64
Expand All @@ -92,7 +94,8 @@ hvisor is a Type-1 bare-metal virtual machine monitor implemented in Rust, featu
- [x] Zephyr AArch32
- [x] RT-Thread
- [x] Android
- [ ] OpenHarmony
- [x] OpenHarmony
- [x] Asterinas

## Getting Started

Expand All @@ -103,22 +106,25 @@ Please refer to the hvisor documentation for quick start guides, build and run i
- [CHANGELOG](./CHANGELOG.md)
- Support for USB zoneU passthrough
- Support for PCIe bus virtualization
- Support for Android
- Support for OpenHarmony
- Support for Jetson Orin
- Support for IOMMU virtualization (Intel VT-d / RISC-V virtual IOMMU)
- Support for Clock Controller virtualization (virtio-scmi Clock protocol, ARM)
- Support for NPU zoneU passthrough (sysoul_x3300-scmi)

### Planned
- Support for OpenHarmony
- Support for ARMv9
- Support for GICv4
- Support for Cache Coloring
- Support for SR-IOV
- Support for NPU zoneU passthrough
- Support for Nvidia GPU zoneU passthrough
- Support for ARM SMMU virtualization
- Support for Clock Controller virtualization on x86_64
- Support for SR-IOV
- Web Management tool
- Device Tree configuration tool
- Support for Nvidia Orin
- Support for Nvidia Thor
- Support for Raspberry Pi 5
- Support for IOMMU virtualization
- Support for Clock Controller virtualization
- Support for pinctrl virtualization
- Support for booting zoneU / zoneR without zone0

Expand Down
Loading