drv-acpi is the ACPI platform discovery daemon in EriX hardware mediation.
- Rust 100%
| .github | ||
| src | ||
| .editorconfig | ||
| .gitignore | ||
| ARCHITECTURE.md | ||
| Cargo.toml | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| linker.ld | ||
| README.md | ||
| ROADMAP.md | ||
| rustfmt.toml | ||
| SECURITY.md | ||
drv-acpi
drv-acpi is the ACPI platform discovery daemon in EriX hardware mediation.
It discovers a deterministic set of ACPI platform classes and reports them to
deviced using typed IPC contracts.
Responsibilities
- read ACPI bootstrap ingress through kernel-control operations:
IPC_KERNEL_CONTROL_OP_GET_ACPI_RSDP(20)IPC_KERNEL_CONTROL_OP_READ_ACPI_QWORDS(21)
- classify and normalize platform classes:
- battery
- AC adapter
- TPM
- thermal
- map classes to seeded synthetic device IDs defined in
lib-device - report discovery metadata to
devicedviaIPC_PHASE2_DEVICED_OP_REPORT_DEVICE - serve typed discovery RPCs:
IPC_PHASE2_DRV_ACPI_OP_DISCOVER(0x590)IPC_PHASE2_DRV_ACPI_OP_READ_LAST_SCAN(0x591)
Non-Responsibilities
- it does not own driver lifecycle policy (
devicedowns start/stop/restart) - it does not implement full platform-specific ACPI table walking in v1
- it does not manage dynamic hotplug policy
Build
cargo build --release --target x86_64-unknown-none \
--features drv-acpi-integration-smoke,drv-acpi-integration-phase2-acpi
Test
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
VM/system validation is executed through the integration repository scenarios.