[package]
edition = "2024"
name = "ax-driver"
version = "0.6.1"
authors = ["RCore Team <yuchen@tsinghua.edu.cn>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "ArceOS rdrive driver registration and rdif binding collection"
readme = false
license = "Apache-2.0"
repository = "https://github.com/rcore-os/tgoskits"
[features]
ahci = [
"block",
"dep:simple-ahci",
]
bcm2835-sdhci = [
"block",
"dep:bcm2835-sdhci",
]
block = [
"dep:ax-errno",
"dep:ax-kspin",
"dep:rdif-block",
]
cvsd = [
"block",
"plat-dyn",
"dep:sg200x-bsp",
]
default = []
display = [
"dep:ax-errno",
"dep:rdif-display",
]
fxmac = [
"net",
"dep:ax-alloc",
"dep:ax-crate-interface",
"dep:fxmac_rs",
]
input = [
"dep:ax-errno",
"dep:rdif-input",
]
intel-net = [
"net",
"dep:eth-intel",
]
irq = []
ixgbe = [
"net",
"dep:ax-alloc",
"dep:ixgbe-driver",
]
k230-sdhci = [
"block",
"plat-dyn",
"dep:sdhci-host",
"dep:sdmmc-protocol",
"sdmmc-protocol/sdio",
]
list-pci-devices = []
net = ["dep:rd-net"]
nvme = [
"block",
"dep:nvme-driver",
]
pci-list-devices = ["list-pci-devices"]
phytium-mci = [
"block",
"plat-dyn",
"dep:ax-kspin",
"dep:phytium-mci-host",
"dep:sdmmc-protocol",
"sdmmc-protocol/sdio",
]
plat-dyn = ["dep:fdt-edit"]
plat-static = []
ramdisk = [
"block",
"dep:ramdisk",
]
realtek-rtl8125 = [
"net",
"dep:realtek-rtl8125",
]
rk3588-pcie = [
"plat-dyn",
"rockchip-soc",
"rockchip-pm",
"dep:rk3588-pci",
]
rknpu = [
"plat-dyn",
"rockchip-pm",
"rockchip-soc",
"dep:rockchip-npu",
]
rockchip-dwc-xhci = [
"usb",
"plat-dyn",
"rockchip-soc",
"rockchip-pm",
]
rockchip-dwmmc = [
"block",
"plat-dyn",
"rockchip-soc",
"dep:arm-scmi-rs",
"dep:ax-kspin",
"dep:dwmmc-host",
"dep:rdif-clk",
"dep:sdmmc-protocol",
"sdmmc-protocol/sdio",
]
rockchip-pm = [
"rockchip-soc",
"dep:rockchip-pm",
]
rockchip-sdhci = [
"block",
"plat-dyn",
"rockchip-soc",
"dep:ax-kspin",
"dep:rdif-clk",
"dep:sdhci-host",
"dep:sdmmc-protocol",
"sdmmc-protocol/sdio",
]
rockchip-soc = [
"plat-dyn",
"dep:rdif-clk",
"dep:rockchip-soc",
]
serial = [
"plat-dyn",
"dep:some-serial",
]
sg2002-placeholder = ["plat-dyn"]
usb = ["dep:crab-usb"]
virtio = ["virtio-core"]
virtio-blk = [
"block",
"virtio",
]
virtio-core = [
"dep:ax-alloc",
"dep:virtio-drivers",
"virtio-drivers/alloc",
]
virtio-gpu = [
"display",
"virtio",
]
virtio-input = [
"input",
"virtio",
]
virtio-net = [
"net",
"virtio",
"dep:ax-kernel-guard",
]
virtio-socket = [
"vsock",
"virtio",
]
vsock = [
"dep:ax-errno",
"dep:rdif-vsock",
]
xhci-mmio = [
"usb",
"plat-dyn",
]
xhci-pci = ["usb"]
[lib]
name = "ax_driver"
path = "src/lib.rs"
[[test]]
name = "model_register"
path = "tests/model_register.rs"
[dependencies.anyhow]
version = "1.0"
default-features = false
[dependencies.arm-scmi-rs]
version = "0.1.3"
optional = true
[dependencies.ax-alloc]
version = "0.8.0"
optional = true
default-features = false
[dependencies.ax-crate-interface]
version = "0.5.7"
optional = true
[dependencies.ax-errno]
version = "0.6.0"
optional = true
[dependencies.ax-kernel-guard]
version = "0.3.10"
optional = true
[dependencies.ax-kspin]
version = "0.3.10"
optional = true
[dependencies.axklib]
version = "0.6.0"
[dependencies.bcm2835-sdhci]
version = "0.1.1-preview.1"
optional = true
[dependencies.crab-usb]
version = "0.9.4"
optional = true
[dependencies.dma-api]
version = "0.8.0"
[dependencies.dwmmc-host]
version = "0.1.2"
optional = true
default-features = false
[dependencies.eth-intel]
version = "0.1.3"
optional = true
[dependencies.fdt-edit]
version = "0.2.3"
optional = true
[dependencies.fxmac_rs]
version = "0.5.1"
optional = true
[dependencies.heapless]
version = "0.9"
[dependencies.ixgbe-driver]
version = "0.1.1-preview.1"
optional = true
[dependencies.log]
version = "0.4"
[dependencies.mmio-api]
version = "0.2.2"
[dependencies.nvme-driver]
version = "0.5.0"
optional = true
[dependencies.pcie]
version = "0.6.2"
[dependencies.phytium-mci-host]
version = "0.1.2"
optional = true
default-features = false
[dependencies.ramdisk]
version = "0.1.2"
optional = true
[dependencies.rd-net]
version = "0.1.2"
optional = true
[dependencies.rdif-block]
version = "0.8.0"
optional = true
[dependencies.rdif-clk]
version = "0.5.1"
optional = true
[dependencies.rdif-display]
version = "0.1.0"
optional = true
[dependencies.rdif-input]
version = "0.1.0"
optional = true
[dependencies.rdif-intc]
version = "0.14.1"
[dependencies.rdif-pcie]
version = "0.2.2"
[dependencies.rdif-vsock]
version = "0.1.0"
optional = true
[dependencies.rdrive]
version = "0.21.0"
[dependencies.rdrive-macros]
version = "0.4.2"
[dependencies.realtek-rtl8125]
version = "0.2.1"
optional = true
[dependencies.rk3588-pci]
version = "0.2.1"
optional = true
[dependencies.rockchip-npu]
version = "0.2.2"
optional = true
[dependencies.rockchip-pm]
version = "0.4.3"
optional = true
[dependencies.rockchip-soc]
version = "0.3.1"
optional = true
[dependencies.sdhci-host]
version = "0.1.2"
optional = true
default-features = false
[dependencies.sdmmc-protocol]
version = "0.1.2"
optional = true
default-features = false
[dependencies.sg200x-bsp]
version = "0.6"
optional = true
[dependencies.simple-ahci]
version = "0.1.1-preview.1"
optional = true
[dependencies.some-serial]
version = "0.5.0"
optional = true
[dependencies.spin]
version = "0.12"
[dependencies.virtio-drivers]
version = "0.13.0"
optional = true
default-features = false
[target.'cfg(target_arch = "aarch64")'.dependencies.ax-arm-pl031]
version = "0.4.7"
[target.'cfg(target_arch = "riscv64")'.dependencies.riscv_goldfish]
version = "0.1"