Message ID | 12faee3a.750c.16b64f00e8e.Coremail.lcy985a@126.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | hvmloader crashed when passthrough bridge device but not intel piix4 acpi pm | expand |
>>> On 17.06.19 at 12:16, <lcy985a@126.com> wrote: > When passthrough a PLX PCI9056 PCI to IOBus bridge, > hvmloader will crashed for it disallow init bridge class pci device > except intel PIIX4 ACPI PM. Right now the conceptual model implies that bridges aren't supposed to be passed through in the first place. At least that's my understanding. Could you explain why you need to do so in the first place? Furthermore making an exclusion on a vendor/device ID basis is something you can use for your own purposes, but is unlikely to be suitable for upstream inclusion: Why would this one specific device be different from all other similar ones? Jan
In my case, this PLX bridge must work with some special software which can't run on domain-0。So I have no choice without passthrough it. I'm not sure are there some other devices working similar with this bridge, And not sure it is suitable for others. Just deal with the one I faced. At 2019-06-17 18:33:02, "Jan Beulich" <JBeulich@suse.com> wrote: >>>> On 17.06.19 at 12:16, <lcy985a@126.com> wrote: >> When passthrough a PLX PCI9056 PCI to IOBus bridge, >> hvmloader will crashed for it disallow init bridge class pci device >> except intel PIIX4 ACPI PM. > >Right now the conceptual model implies that bridges aren't supposed >to be passed through in the first place. At least that's my understanding. >Could you explain why you need to do so in the first place? > >Furthermore making an exclusion on a vendor/device ID basis is >something you can use for your own purposes, but is unlikely to be >suitable for upstream inclusion: Why would this one specific device >be different from all other similar ones? > >Jan > <div style="line-height:1.7;color:#000000;font-size:14px;font-family:Arial"><div>In my case, this PLX bridge must work with some special software which can't </div><div>run on domain-0。So I have no choice without passthrough it.</div><div>I'm not sure are there some other devices working similar with this bridge,</div><div>And not sure it is suitable for others.</div><div>Just deal with the one I faced.<br></div><div id="divNeteaseMailCard"></div><br><pre><br>At 2019-06-17 18:33:02, "Jan Beulich" <JBeulich@suse.com> wrote: >>>> On 17.06.19 at 12:16, <lcy985a@126.com> wrote: >> When passthrough a PLX PCI9056 PCI to IOBus bridge, >> hvmloader will crashed for it disallow init bridge class pci device >> except intel PIIX4 ACPI PM. > >Right now the conceptual model implies that bridges aren't supposed >to be passed through in the first place. At least that's my understanding. >Could you explain why you need to do so in the first place? > >Furthermore making an exclusion on a vendor/device ID basis is >something you can use for your own purposes, but is unlikely to be >suitable for upstream inclusion: Why would this one specific device >be different from all other similar ones? > >Jan > </pre></div><br><br><span title="neteasefooter"><p> </p></span>
diff --git a/tools/firmware/hvmloader/pci.c b/tools/firmware/hvmloader/pci.c index 0b708bf..33aadc7 100644 --- a/tools/firmware/hvmloader/pci.c +++ b/tools/firmware/hvmloader/pci.c @@ -189,6 +189,8 @@ void pci_setup(void) break; case 0x0680: /* PIIX4 ACPI PM. Special device with special PCI config space. */ + if ( (vendor_id == 0x10b5) && (device_id == 0x9056) ) + break; ASSERT((vendor_id == 0x8086) && (device_id == 0x7113)); pci_writew(devfn, 0x20, 0x0000); /* No smb bus IO enable */ pci_writew(devfn, 0xd2, 0x0000); /* No smb bus IO enable */
When passthrough a PLX PCI9056 PCI to IOBus bridge, hvmloader will crashed for it disallow init bridge class pci device except intel PIIX4 ACPI PM. Signed-off-by: Beyond Lee <lcy985a@126.com>