Re: [PATCH] pci: dwc: hisi needs PCI_HOST_COMMON

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2017/3/22 16:00, Arnd Bergmann wrote:
> On Mar 22, 2017 04:27, "Zhou Wang" <wangzhou1@xxxxxxxxxxxxx <mailto:wangzhou1@xxxxxxxxxxxxx>> wrote:
> 
>     On 2017/3/21 23:48, Jingoo Han wrote:
>     > (+cc: Joao Pinto, Zhou Wang, Gabriele Paoloni)
>     >
>     > On Tuesday, March 21, 2017 10:32 AM, Arnd Bergmann wrote:
>     >>
>     >> Without PCI_HOST_COMMON support enabled, we get a link error:
>     >>
>     >> drivers/pci/dwc/built-in.o: In function `hisi_pcie_map_bus':
>     >> pcie-hisi.c:(.text+0x8860): undefined reference to `pci_ecam_map_bus'
>     >> drivers/pci/dwc/built-in.o: In function `hisi_pcie_almost_ecam_probe':
>     >> pcie-hisi.c:(.text+0x88b4): undefined reference to `pci_host_common_probe'
>     >>
>     >> This adds an explicit 'select', as the other users have.
> 
>     Hi Arnd,
> 
>     I wonder if we should select PCI_HOST_GENERIC here, like:
> 
>     diff --git a/drivers/pci/dwc/Kconfig b/drivers/pci/dwc/Kconfig
>     index dfb8a69..b25dce4 100644
>     --- a/drivers/pci/dwc/Kconfig
>     +++ b/drivers/pci/dwc/Kconfig
>     @@ -89,6 +89,7 @@ config PCI_HISI
>             depends on PCI_MSI_IRQ_DOMAIN
>             select PCIEPORTBUS
>             select PCIE_DW_HOST
>     +       select PCI_HOST_GENERIC
>             help
>               Say Y here if you want PCIe controller support on HiSilicon
>               Hip05 and Hip06 SoCs
> 
> 
> I don't know how that would be better. PCI_HOST_GENERIC is
> a standalone driver for machines that don't need any special
> handling (e.g. SBSA or KVM), while PCI_HOST_COMMON is
> the infrastructure used by both PCI_HISI and PCI_HOST_GENERIC.
> 
> Selecting PCI_HOST_GENERIC would also work as we implicitly
> get PCI_HOST_COMMON, but it would not be clear from reading
> the Kconfig file what the purpose of doing that is.

Yes, you are right. I just disabled PCI_HOST_GENERIC and enabled
PCI_HOST_COMMON to test PCI hosts of HiSilicon and Thunder, a build error
happened.

We can fix this by your PCI: generic: stop hiding pci_host_common_probe declaration.
And select PCI_HOST_COMMON here.

Thanks for pointing this!
Zhou.

> 
>       Arnd




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux