Hi Laszlo,

On 7/12/2018 3:29 PM, Laszlo Ersek wrote:
On 07/12/18 07:43, Liu, Jing2 wrote:
Yep, thanks for the advice.
But hotplugging on pci-bridge is the actual use case
request so we would better solve and fix this.


You can cold-plug a PCI Express Root Port in the Q35 root complex
(pcie.0), reserving the MMIO resources you want, cold-plug a PCIE-PCI
Bridge in that root port, and then hot-plug the desired endpoint into
that PCIE-PCI Bridge.

I'm trying this. But actual results show that,
when pcie-pci-bridge has no coldplug device, it shows all NONE for each windows.
01:00.0 PCI bridge: Red Hat, Inc. Device 000e (prog-if 00 [Normal decode])
        I/O behind bridge: None
        Memory behind bridge: None
        Prefetchable memory behind bridge: None
Only if I cold plug some device (e.g. e1000) under it, and then hotplug
another device might be successful.

BTW, I open the guest kernel config: CONFIG_PCI_REALLOC_ENABLE_AUTO=y,
but it doesn't work.
I'm not sure if there are some other issues I forgot?

Jing

This is one of the exact examples that
"docs/pcie_pci_bridge.txt" provides. (The other example is when the
PCIE-PCI bridge itself is hot-plugged into the root port, for which bus
number reservation is necessary too, at the root port level.)

If you want more than that, e.g. do something similar on i440fx, that
will take QEMU work as well, not just SeaBIOS.

Laszlo



_______________________________________________
SeaBIOS mailing list
SeaBIOS@seabios.org
https://mail.coreboot.org/mailman/listinfo/seabios

Reply via email to