diff --git a/local/patches/base/P4-initfs-release-virtio-gpu.patch b/local/patches/base/P4-initfs-release-virtio-gpu.patch new file mode 100644 index 000000000..7eaff9fae --- /dev/null +++ b/local/patches/base/P4-initfs-release-virtio-gpu.patch @@ -0,0 +1,15 @@ +--- a/drivers/initfs.toml ++++ b/drivers/initfs.toml +@@ -29,9 +29,6 @@ vendor = 0x1AF4 + device = 0x1001 + command = ["/scheme/initfs/lib/drivers/virtio-blkd"] + +-[[drivers]] +-name = "virtio-gpu" +-class = 3 +-vendor = 0x1AF4 +-device = 0x1050 +-command = ["/scheme/initfs/lib/drivers/virtio-gpud"] ++# Red Bear full-image graphics hands display-class GPUs to the root filesystem ++# DRM/KMS stack. Do not claim QEMU virtio-gpu in initfs, or the later root ++# pcid-spawner cannot pass the PCI function to /usr/bin/redox-drm. diff --git a/recipes/core/base-initfs/recipe.toml b/recipes/core/base-initfs/recipe.toml index c8256681b..717e2c2a2 100644 --- a/recipes/core/base-initfs/recipe.toml +++ b/recipes/core/base-initfs/recipe.toml @@ -76,6 +76,7 @@ cp -v "${COOKBOOK_SOURCE}/drivers/initfs.toml" "${COOKBOOK_BUILD}/initfs/lib/pci export CARGO_PROFILE_RELEASE_OPT_LEVEL=s export CARGO_PROFILE_RELEASE_PANIC=abort +rm -rf "${CARGO_TARGET_DIR}" "${COOKBOOK_CARGO}" build ${build_flags} \ --manifest-path "${COOKBOOK_SOURCE}/Cargo.toml" \ $(for bin in "${BINS[@]}"; do echo "-p" "${bin}"; done) diff --git a/recipes/core/base/recipe.toml b/recipes/core/base/recipe.toml index da07a73a4..5ceac38cf 100644 --- a/recipes/core/base/recipe.toml +++ b/recipes/core/base/recipe.toml @@ -40,6 +40,7 @@ patches = [ "P4-acpi-shutdown-hardening.patch", "P4-acpi-s3-sleep.patch", "P4-initfs-usb-drm-services.patch", + "P4-initfs-release-virtio-gpu.patch", "P4-initfs-network-services.patch", "P4-initfs-getty-services.patch", "P4-initfs-dbus-services.patch",