Lines Matching +full:build +full:- +full:without +full:- +full:default +full:- +full:devices

1 Intel Graphics Device (IGD) assignment with vfio-pci
4 Using vfio-pci, we can passthrough Intel Graphics Device (IGD) to guest, either
7 support. However, IGD devices are not "clean" PCI devices, they use extra
16 (*-Required by)
19 |---------------------------------------------|-------|---------|-------|---------|
30 For #1, the "x-igd-opregion=on" option exposes a copy of host IGD OpRegion to
33 For #2, "x-igd-lpc=on" option copies the IDs of host LPC bridge and host bridge
42 For #5, "x-vga=on" enables guest access to standard VGA IO/MMIO ranges.
57 x-igd-opregion=on,x-igd-lpc=on,x-vga=on
59 By default, "Legacy" mode won't fail, it continues on error. User can set
60 "x-igd-legacy-mode=on" to force enabling legacy mode, this also checks if the
62 fail immediately. Users can also set "x-igd-legacy-mode=off" to disable legacy
66 graphics devices should be removed, this can be done using "-nographic" or
67 "-vga none" or "-nodefaults", along with adding the device using vfio-pci.
70 may generate faults and errors upon re-binding to an IGD device after it
74 the driver_override option can be used to ensure that only vfio-pci can bind
75 to the device on the host[2], virsh nodedev-detach can be used to bind the
77 re-binding to i915, etc. Also note that IGD is also typically the primary
79 blacklisting i915 or using pci-stub/vfio-pci to take ownership of IGD as a
83 a catch-all, video=vesafb:off,efifb:off. Error messages such as:
105 * x-igd-opregion=[*on*|off]
108 * x-igd-lpc=[on|*off*]
111 * x-igd-legacy-mode=[on|off|*auto*]
114 * x-igd-gms=[hex, default 0]
117 'DVMT Pre-Allocated' option in host BIOS.
123 -device vfio-pci,host=00:02.0,id=hostdev0,addr=2.0
125 * Adding IGD with OpRegion and LPC ID hack, but without VGA ranges
127-device vfio-pci,host=00:02.0,id=hostdev0,addr=2.0,x-igd-legacy-mode=off,x-igd-lpc=on,romfile=efi_…
136 1) "etc/igd-opregion"
144 PCI class VGA device with Intel vendor ID. Multiple of such devices
147 2) "etc/igd-bdsm-size"
149 This fw_cfg file contains an 8-byte, little endian integer indicating
154 space of the IGD device at offset 0x5C (or 0xC0 for Gen 11+ devices using
155 64-bit BDSM). As this support is related to running the IGD ROM, which
160 Starting from Meteor Lake, IGD devices access stolen memory via its MMIO
166 Upstream Seabios has OpRegion and BDSM (pre-Gen11 device only) support.
171 * IntelGopDriver: Closed-source Intel GOP driver
179 You need to build them with EDK2.
188 EfiRom -f 0x8086 -i <Device ID of your IGD> -o output.rom \
189 -e IgdAssignmentDxe.efi PlatformGOPPolicy.efi IntelGopDriver.efi
195 warning: vfio_container_dma_map(0x55fab36ce610, 0x380010000000, 0x108000, 0x7fd336000000) = -22 (In…
199 -cpu host,host-phys-bits-limit=<IOMMU address width>
205 echo $(( ((0x$(cat /sys/devices/virtual/iommu/dmar0/intel-iommu/cap) & 0x3F0000) >> 16) + 1 ))
211 IGD has it own address space. To use system RAM as VRAM, a single-level page
214 the translation flow on IGD with 64-bit GTT PTEs.
216 (PTE_SIZE == 8) +-------------+---+
218 +-------------+---+
221 -----------------------> 0xd748| 0x42ba3e000 | 1 +------------------>
224 +-------------+---+
232 The Data Stolen Memory is reserved by firmware, and acts as the VRAM in pre-OS
239 +-------------+ +-------------+ +-------------+
242 | | +-------------+ +-------------+
245 | | +------------>+-------------+<------->+-------------+<--Guest BDSM
247 DSMSIZE+-------------+ | with IOMMU | | Mapping | | Programmed by guest…
250 0+-------------+--+ | | | |
251 | +-------------+ | |
252 | | Data Stolen | +-------------+
254 +------------>+-------------+<--Host BDSM
255 Non- | | "real" one in HW
257 +-------------+
261 …https://www.intel.com/content/www/us/en/docs/graphics-for-linux/developer-reference/1-0/dump-video
262 [2] # echo "vfio-pci" > /sys/bus/pci/devices/0000:00:02.0/driver_override
265 [4] https://eci.intel.com/docs/3.3/components/kvm-hypervisor.html, Patch 0001-0004
267 [6] https://winraid.level1techs.com/t/tool-guide-news-uefi-bios-updater-ubu/30357