[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Debugging PCI Enhanced Allocation - IOMMU of a bridge?
From: |
Alexander von Gluck IV |
Subject: |
[Qemu-devel] Debugging PCI Enhanced Allocation - IOMMU of a bridge? |
Date: |
Wed, 12 Sep 2018 17:30:29 +0000 |
Good morning!
I'm working through adding support (or at least ignoring) PCI Enhance
Allocation devices under Haiku.
We run into one of these devices, and crash at boot due to attempting to read
an invalid address.
Our testing showed that with a USB C dongle plugged in, we don't crash. Without
it plugged in we get
invalid addresses from PCI
(for a long-drawn out debug ticket, see https://dev.haiku-os.org/ticket/12885 )
So, i'm trying to see if I can emulate a PCI bridge with EA under QEMU, I found
this patch, but it seems it wasn't accepted:
https://lists.gnu.org/archive/html/qemu-devel/2015-05/msg02073.html
(https://lists.gnu.org/archive/html/qemu-devel/2015-05/msg02073.html)
My other thought is since I have access to two laptops implementing this, I
could attach the bridge to
qemu via iommu, but the new vfio stuff doesn't seem to work with bridges. :-|
Anyone know of a way to: * emulate a PCI EA in qemu. * attach the local PCI
EA bridge to qemu to troubleshoot using real hardware. For context, here is
the suspect EA device:
(no USB C dongle)
$ lspci -tvnn
-[0000:00]-+-00.0 Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core
Processor Host Bridge/DRAM Registers [8086:1910]
+-1d.6-[06-3e]--
vs
(USB C dongle)
$ lspci -tvnn
-[0000:00]-+-00.0 Intel Corporation Skylake Host Bridge/DRAM Registers
[8086:1904]
+-1d.6-[06-3e]----00.0-[07-3e]--+-00.0-[08]--
| +-01.0-[09-3d]--
| -02.0-[3e]----00.0 Intel Corporation DSL6340 USB 3.1 Controller [Alpine
Ridge] [8086:15b5]
The bride is at 1d.6 in it's own IOMMU group:
IOMMU group 12
00:1d.6 PCI bridge [0604]: Intel Corporation 100 Series/C230 Series Chipset
Family PCI Express Root Port #15 [8086:a11e] (rev f1)
-- Alex
- [Qemu-devel] Debugging PCI Enhanced Allocation - IOMMU of a bridge?,
Alexander von Gluck IV <=