You are not logged in.

#1 2019-10-04 01:21:03

JeloJelo
Member
Registered: 2019-09-27
Posts: 3

Qemu. GVT_g passthrough.

Cheers!

Have some questions, hope someone can give a hand.

I successfully passthrough Intel HD 620 to Windows 10 using this code.

#!/bin/bash

qemu-system-x86_64 \
    -machine type=q35,accel=kvm,kernel_irqchip=on\
    -cpu host,kvm=off\
    -smp sockets=1,cores=1,threads=2\
    -m 4G\
    -mem-prealloc \
    -enable-kvm \
    -device intel-iommu \
    -device qemu-xhci,id=xhci \
    -device ich9-intel-hda -device hda-duplex \
    -usb -device usb-kbd -device usb-tablet \
    -no-hpet \
    -M graphics=off \
    -vga none \
    -display gtk,gl=on,zoom-to-fit=off \
    -device vfio-pci-nohotplug,display=on,ramfb=on,sysfsdev=/sys/bus/pci/devices/0000:00:02.0/7d0d8742-1613-4702-a1b8-4edcf892ecd6,x-igd-opregion=on,rombar=0 \
    -hda win10.img \
    -parallel none \
    -serial none \

Works perfectly.  But the same script doesn't start Windows 7.  If assign -vga std as primary adapter everything works fine, but my idea to have only one graphics adapter (Intel HD 620).
No visible errors just not boot.
This is dmesg | tail output.

[ 2719.906685] kvm [2587]: vcpu0, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x150
[ 2719.906693] kvm [2587]: vcpu0, guest rIP: 0xfffff80639903055 ignored wrmsr: 0x150 data 0x8000000500000000
[ 2719.906697] kvm [2587]: vcpu0, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x150
[ 2720.093615] kvm [2587]: vcpu1, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x35
[ 2731.681915] kvm [2587]: vcpu0, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x35
[ 2819.775022] kvm [2587]: vcpu0, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x606
[ 2819.775026] kvm [2587]: vcpu0, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x614
[ 2819.775029] kvm [2587]: vcpu0, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x601
[ 2819.775033] kvm [2587]: vcpu0, guest rIP: 0xfffff806399027f3 ignored rdmsr: 0x602

I found this thread Windows 7 error . After 200s waiting nothing happens, still the same.

Also, I can't find out what these two options are used for (no info on google at all)

-global ICH9-LPC.disable_s3=1 \
-global ICH9-LPC.disable_s4=0 \

Offline

#2 2019-10-04 01:35:23

loqs
Member
Registered: 2014-03-06
Posts: 19,100

Re: Qemu. GVT_g passthrough.

JeloJelo wrote:

Also, I can't find out what these two options are used for (no info on google at all)

-global ICH9-LPC.disable_s3=1 \
-global ICH9-LPC.disable_s4=0 \

https://github.com/qemu/qemu/blob/maste … mware.json

Offline

#3 2019-10-04 11:34:21

liewkj
Member
Registered: 2019-07-08
Posts: 210

Re: Qemu. GVT_g passthrough.

Windows 7 boot requires legacy VGA resources and VESA VBE. With "-vga none", QEMU does not provide VGA-compatible display controller. The iGVT_g pass-through device is a non-VGA display controller.

Offline

#4 2019-10-07 00:21:22

JeloJelo
Member
Registered: 2019-09-27
Posts: 3

Re: Qemu. GVT_g passthrough.

liewkj wrote:

Windows 7 boot requires legacy VGA resources and VESA VBE. With "-vga none", QEMU does not provide VGA-compatible display controller. The iGVT_g pass-through device is a non-VGA display controller.

Yep, you are right. According to this article - LINK - vBIOS is requered.
So I add romfile=vbios.bin instead of rombar=0. Tried both ways the result is the same.

Offline

#5 2019-10-08 20:48:16

liewkj
Member
Registered: 2019-07-08
Posts: 210

Re: Qemu. GVT_g passthrough.

Providing vgabios does not give you the VGA I/O resources. I don't think iGVT_g pass-through will support Windows 7. It requires Windows 8 or newer.

Offline

Board footer

Powered by FluxBB