VirtIO GPU: QEMU 11.x has RESOURCE_ATTACH_BACKING (0x0104) and RESOURCE_FLUSH (0x0106) command types swapped in its legacy MMIO VirtIO GPU implementation. Workaround: send swapped type values. Confirmed via QEMU monitor (xp shows correct bytes in memory) and QEMU trace events (device dispatches to wrong handler). Display pipeline now works end-to-end: adapter → GPU init → create_2d → attach_backing → set_scanout display-server → clear(blue) → flush → transfer + resource_flush snake → draw commands via IPC → display renders → flush to GPU Input server: - New driver-input-uart crate (reads UART at mapped VA 0x20000) - New bins/input-qemu composition root - Adapter loads input-server, maps UART MMIO into its address space - Init delegates both display_ep (slot 0) and input_ep (slot 1) to snake - WASD keys → UART → input-server → IPC → snake direction change Snake game runs with display and input, exits on wall collision.
344 lines
4.5 KiB
TOML
344 lines
4.5 KiB
TOML
# This file is automatically @generated by Cargo.
|
|
# It is not intended for manual editing.
|
|
version = 4
|
|
|
|
[[package]]
|
|
name = "accessibility-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "adapter-riscv"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"domain",
|
|
"elf",
|
|
"hw-virtio",
|
|
"kernel",
|
|
"platform",
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "alarm-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "audio-capture-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "audio-playback-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "bluetooth-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "calendar-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "camera-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "clipboard-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "contacts-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "display-qemu"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"display-server",
|
|
"driver-framebuffer-virtio",
|
|
"port-framebuffer",
|
|
"server-framework",
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "display-server"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"driver-framebuffer-mock",
|
|
"port-framebuffer",
|
|
"server-framework",
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "domain"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "driver-block-virtio"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"hw-virtio",
|
|
"port-block-device",
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "driver-framebuffer-mock"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"port-framebuffer",
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "driver-framebuffer-virtio"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"hw-virtio",
|
|
"port-framebuffer",
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "driver-input-uart"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"port-input-device",
|
|
]
|
|
|
|
[[package]]
|
|
name = "echo"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "elf"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "gatekeeper"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "gps-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "hello"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "hw-virtio"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "init"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"elf",
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "input-qemu"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"driver-input-uart",
|
|
"input-server",
|
|
"server-framework",
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "input-server"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"port-input-device",
|
|
"server-framework",
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "kernel"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"domain",
|
|
"platform",
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "keychain-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "log-server"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"server-framework",
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "media-index-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "network-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "notification-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "package-manager"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "permission-manager"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"server-framework",
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "platform"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"domain",
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "port-block-device"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "port-framebuffer"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "port-input-device"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "power-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "print-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "server-framework"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
"userspace",
|
|
]
|
|
|
|
[[package]]
|
|
name = "session-server"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"server-framework",
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "snake"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
"userspace",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "storage-qemu"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"storage-server",
|
|
"userspace-rt",
|
|
]
|
|
|
|
[[package]]
|
|
name = "storage-server"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"driver-block-virtio",
|
|
"port-block-device",
|
|
"server-framework",
|
|
"types",
|
|
"userspace",
|
|
]
|
|
|
|
[[package]]
|
|
name = "sync-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "telephony-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "types"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "usb-server"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "user-manager"
|
|
version = "0.1.0"
|
|
|
|
[[package]]
|
|
name = "userspace"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
]
|
|
|
|
[[package]]
|
|
name = "userspace-rt"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"types",
|
|
"userspace",
|
|
]
|