[U-Boot] [PATCH 1/2] x86: qemu: Make host bridge (b.d.f=0.0.0) visible

The default weak version of pci_skip_dev() in drivers/pci/pci_common.c skips the host bridge (b.d.f = 0.0.0) which is actually the i440fx/q35 chipset for QEMU targets. Make it visible in the PCI configuration space.
Signed-off-by: Bin Meng bmeng.cn@gmail.com ---
arch/x86/cpu/qemu/pci.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/arch/x86/cpu/qemu/pci.c b/arch/x86/cpu/qemu/pci.c index ac9c056..c09bdf2 100644 --- a/arch/x86/cpu/qemu/pci.c +++ b/arch/x86/cpu/qemu/pci.c @@ -69,3 +69,13 @@ int board_pci_post_scan(struct pci_controller *hose)
return ret; } + +/* + * The default weak version of pci_skip_dev() in drivers/pci/pci_common.c skips + * the host bridge (b.d.f = 0.0.0) which is actually the i440fx/q35 chipset for + * QEMU targets. We want to make it visible in the PCI configuration space. + */ +int pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) +{ + return 0; +}

Hi Bin,
On 20 May 2015 at 03:04, Bin Meng bmeng.cn@gmail.com wrote:
The default weak version of pci_skip_dev() in drivers/pci/pci_common.c skips the host bridge (b.d.f = 0.0.0) which is actually the i440fx/q35 chipset for QEMU targets. Make it visible in the PCI configuration space.
Signed-off-by: Bin Meng bmeng.cn@gmail.com
arch/x86/cpu/qemu/pci.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/arch/x86/cpu/qemu/pci.c b/arch/x86/cpu/qemu/pci.c index ac9c056..c09bdf2 100644 --- a/arch/x86/cpu/qemu/pci.c +++ b/arch/x86/cpu/qemu/pci.c @@ -69,3 +69,13 @@ int board_pci_post_scan(struct pci_controller *hose)
return ret;
}
+/*
- The default weak version of pci_skip_dev() in drivers/pci/pci_common.c skips
- the host bridge (b.d.f = 0.0.0) which is actually the i440fx/q35 chipset for
- QEMU targets. We want to make it visible in the PCI configuration space.
- */
+int pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) +{
return 0;
+}
Would it be better to define CONFIG_PCI_CONFIG_HOST_BRIDGE?
Regards, Simon

Hi Simon,
On Thu, May 21, 2015 at 1:45 AM, Simon Glass sjg@chromium.org wrote:
Hi Bin,
On 20 May 2015 at 03:04, Bin Meng bmeng.cn@gmail.com wrote:
The default weak version of pci_skip_dev() in drivers/pci/pci_common.c skips the host bridge (b.d.f = 0.0.0) which is actually the i440fx/q35 chipset for QEMU targets. Make it visible in the PCI configuration space.
Signed-off-by: Bin Meng bmeng.cn@gmail.com
arch/x86/cpu/qemu/pci.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/arch/x86/cpu/qemu/pci.c b/arch/x86/cpu/qemu/pci.c index ac9c056..c09bdf2 100644 --- a/arch/x86/cpu/qemu/pci.c +++ b/arch/x86/cpu/qemu/pci.c @@ -69,3 +69,13 @@ int board_pci_post_scan(struct pci_controller *hose)
return ret;
}
+/*
- The default weak version of pci_skip_dev() in drivers/pci/pci_common.c skips
- the host bridge (b.d.f = 0.0.0) which is actually the i440fx/q35 chipset for
- QEMU targets. We want to make it visible in the PCI configuration space.
- */
+int pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) +{
return 0;
+}
Would it be better to define CONFIG_PCI_CONFIG_HOST_BRIDGE?
Yes, we should. Will get a v2.
Regards, Bin
participants (2)
-
Bin Meng
-
Simon Glass