Lines Matching +full:io +full:- +full:width

1 Intel Graphics Device (IGD) assignment with vfio-pci
4 Using vfio-pci, we can passthrough Intel Graphics Device (IGD) to guest, either
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
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
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"
147 2) "etc/igd-bdsm-size"
149 This fw_cfg file contains an 8-byte, little endian integer indicating
155 64-bit BDSM). As this support is related to running the IGD ROM, which
166 Upstream Seabios has OpRegion and BDSM (pre-Gen11 device only) support.
171 * IntelGopDriver: Closed-source Intel GOP driver
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…
198 Set the host physical address bits to IOMMU address width using
199 -cpu host,host-phys-bits-limit=<IOMMU address width>
202 <maxphysaddr mode='passthrough' limit='<IOMMU address width>'/>
204 The IOMMU address width can be determined with
205 echo $(( ((0x$(cat /sys/devices/virtual/iommu/dmar0/intel-iommu/cap) & 0x3F0000) >> 16) + 1 ))
206 Refer https://edk2.groups.io/g/devel/topic/patch_v1/102359124 for more details
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