English | 中文
Introduction
axhvc provides AxVisor hypercall definitions for guest-hypervisor communication. It is a lightweight #![no_std] crate intended for bare-metal guests, hypervisors, and low-level virtualization components across x86_64, RISC-V, and AArch64 platforms.
This library exports three core public types:
HyperCallCode- Enumerates all supported AxVisor hypercall operationsInvalidHyperCallCode- Represents conversion errors for invalid numeric hypercall valuesHyperCallResult- Alias ofAxResult<usize>used by hypercall handlers
HyperCallCode supports TryFrom<u32> conversion and includes variants for hypervisor control and IVC channel management.
Quick Start
Requirements
- Rust nightly toolchain
- Rust components: rust-src, clippy, rustfmt
# Install rustup (if not installed)
|
# Install nightly toolchain and components
Run Check and Test
# 1. Enter the repository
# 2. Code check
# 3. Run tests
Integration
Installation
Add to your Cargo.toml:
[]
= "0.2.0"
Example
use ax_err;
use ;
Documentation
Generate and view API documentation:
Online documentation: docs.rs/axhvc
Contributing
- Fork the repository and create a branch
- Run local check:
./scripts/check.sh - Run local tests:
./scripts/test.sh - Submit PR and pass CI checks
License
Licensed under the Apache License, Version 2.0. See LICENSE for details.