From: Kamala Narasimhan Date: Mon, 14 Dec 2009 17:30:58 +0000 (-0500) Subject: Gave myself a dope slap and fixed disabling msi capabilities the right way. X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=29cf96bdb53ae99a01304337313daaf4411fcf96;p=xenclient%2Fioemu-pq.git Gave myself a dope slap and fixed disabling msi capabilities the right way. Yank the msi capability from the capabilities chain and not the pm capability in the pci space for iGfx. --- diff --git a/master/hide-msi-capability-for-igfx b/master/hide-msi-capability-for-igfx index 3ffbe43..d43fdf5 100644 --- a/master/hide-msi-capability-for-igfx +++ b/master/hide-msi-capability-for-igfx @@ -1,14 +1,20 @@ diff --git a/hw/pci.c b/hw/pci.c -index ec8b0c4..5a65d4c 100644 +index ec8b0c4..0453f8c 100644 --- a/hw/pci.c +++ b/hw/pci.c -@@ -636,7 +636,8 @@ uint32_t pci_data_read(void *opaque, uint32_t addr, int len) +@@ -635,9 +635,12 @@ uint32_t pci_data_read(void *opaque, uint32_t addr, int len) + if (config_addr == 0xa0 && len == 2) val = pt_pci_host_read_word(0, 0, 0, 0xa0); } - else if (vga_passthrough && pci_dev->devfn == 0x10 && // intel graphic card +- else if (vga_passthrough && pci_dev->devfn == 0x10 && // intel graphic card - config_addr == 0xfc) // OpRegion address -+ ( config_addr == 0xfc /* OpRegion address */ || -+ config_addr == 0x90 /*temporarily disable msi capabilities for iGfx*/ )) - val = 0; // force to fall back to SMI mode +- val = 0; // force to fall back to SMI mode ++ /* intel graphic card and OpRegion address */ ++ else if ( vga_passthrough && pci_dev->devfn == 0x10 && config_addr == 0xfc ) ++ val = 0; // force to fall back to SMI mode ++ /* For intel graphics card, temporarily disable msi capabilities for iGfx */ ++ else if ( vga_passthrough && pci_dev->devfn == 0x10 && config_addr == 0x34 ) ++ val = 0xd0; /* skip msi and chain right to power management capabilities register */ else val = pci_dev->config_read(pci_dev, config_addr, len); + #if defined(DEBUG_PCI)