From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: AMD integrated graphics passthrough to KVM guest Date: Fri, 12 Jul 2013 10:33:29 -0600 Message-ID: <1373646809.8441.136.camel@ul30vt.home> References: <1373644471.8441.126.camel@ul30vt.home> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org To: Gustav Sorenson Return-path: Received: from mx1.redhat.com ([209.132.183.28]:2404 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S964814Ab3GLQdb (ORCPT ); Fri, 12 Jul 2013 12:33:31 -0400 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: On Fri, 2013-07-12 at 18:13 +0200, Gustav Sorenson wrote: > Hello Alex, > > thank you very much for your answer. > > > VGA assignment should only even be attempted on non-primary displays at > > this point (unless of course you want to work on adding support). > > I assume when you say "non-primary," you refer to graphics adapters > that are not used to display POST and kernel messages? Yes > Although I know C, I've never worked on hardware-related tasks, so I'm > afraid I won't be of much help in adding support, unless you think > it's a task that is suitable for a newcomer. In any case, I'd be happy > to help by testing suggestions by you or others. > > >> Next, I took a really old PCIe graphics card, installed it and set it > >> to be my primary graphics adapter in BIOS (or rather UEFI?), so that I > >> now saw POST and kernel messages via the dedicated GPU. Surprisingly > >> to me, I was able to pass-through the dedicated PCIe card to a KVM > >> guest, but still not the now supposedly unused integrated GPU, still > >> getting the same message when I tried. > > > > What is the plugin graphics card? > > I've pulled that card out of an old computer that I haven't bought. > It's manufactured by MSI, but other than that, I haven't found make or > model names. lspci says it's an "ATI RV515 [Radeon X1300]." Ok, I have an X500 and I've never been able to get it to work correctly for passthrough. It has additional quirks required beyond what either my HD5450 or HD7850 require. Also, these old devices have a weird co-processor secondary function (see 01:00.1 in your lspci). It probably needs to be co-assigned, but I'm not really sure what it does. FWIW, I don't think it's worth bothering to add support for anything older than a Radeon HD5xxx (I'd say HD6xxx, but I happen to have the HD5450 and it works, so...) > > Please provide 'sudo lspci -vvv'. Thanks, > lspci -vvv with the graphics card built into the first PCIe slot: > http://pastebin.com/92Q6uFwa > lspci -vvv without the graphics card: http://pastebin.com/RAAsXxF3 One reason you're probably not getting any output is because the device doesn't have a ROM (ie. there's no video BIOS to run to get seabios to POST the device). You'll either need to find a VBIOS for the device or use it as a secondary graphics device in the guest. In some cases you can rip this out of the system ROM or ACPI tables. I don't think that using the vfio-vga-reset branches is helping you since it's a root complex device and we can't do a reset even if we knew how and if you use it as a secondary device, you might not even need the x-vga=on option for VFIO (ie. VFIO would handle this just like any regular PCI device). Thanks, Alex