Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1605658 > unrolled thread

[PATCH] pci: dwc: hisi needs PCI_HOST_COMMON

Started byArnd Bergmann <arnd@arndb.de>
First post2017-03-21 15:40 +0100
Last post2017-03-22 13:30 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] pci: dwc: hisi needs PCI_HOST_COMMON Arnd Bergmann <arnd@arndb.de> - 2017-03-21 15:40 +0100
    Re: [PATCH] pci: dwc: hisi needs PCI_HOST_COMMON "Jingoo Han" <jingoohan1@gmail.com> - 2017-03-21 16:50 +0100
      Re: [PATCH] pci: dwc: hisi needs PCI_HOST_COMMON Zhou Wang <wangzhou1@hisilicon.com> - 2017-03-22 04:30 +0100
        Re: [PATCH] pci: dwc: hisi needs PCI_HOST_COMMON Zhou Wang <wangzhou1@hisilicon.com> - 2017-03-22 13:30 +0100

#1605658 — [PATCH] pci: dwc: hisi needs PCI_HOST_COMMON

FromArnd Bergmann <arnd@arndb.de>
Date2017-03-21 15:40 +0100
Subject[PATCH] pci: dwc: hisi needs PCI_HOST_COMMON
Message-ID<tnt74-4zY-25@gated-at.bofh.it>
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.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/pci/dwc/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/pci/dwc/Kconfig b/drivers/pci/dwc/Kconfig
index dfb8a69afc28..d2d2ba5b8a68 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_COMMON
 	help
 	  Say Y here if you want PCIe controller support on HiSilicon
 	  Hip05 and Hip06 SoCs
-- 
2.9.0

[toc] | [next] | [standalone]


#1605744

From"Jingoo Han" <jingoohan1@gmail.com>
Date2017-03-21 16:50 +0100
Message-ID<tnucO-5iR-13@gated-at.bofh.it>
In reply to#1605658
(+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.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Acked-by: Jingoo Han <jingoohan1@gmail.com>

Best regards,
Jingoo Han

> ---
>  drivers/pci/dwc/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/pci/dwc/Kconfig b/drivers/pci/dwc/Kconfig
> index dfb8a69afc28..d2d2ba5b8a68 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_COMMON
>  	help
>  	  Say Y here if you want PCIe controller support on HiSilicon
>  	  Hip05 and Hip06 SoCs
> --
> 2.9.0

[toc] | [prev] | [next] | [standalone]


#1606184

FromZhou Wang <wangzhou1@hisilicon.com>
Date2017-03-22 04:30 +0100
Message-ID<tnF8d-4xC-11@gated-at.bofh.it>
In reply to#1605744
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
diff --git a/drivers/pci/host/Kconfig b/drivers/pci/host/Kconfig
index f7c1d4d..e7a24d0 100644
--- a/drivers/pci/host/Kconfig
+++ b/drivers/pci/host/Kconfig
@@ -151,7 +151,7 @@ config PCI_HOST_THUNDER_PEM
        bool "Cavium Thunder PCIe controller to off-chip devices"
        depends on ARM64
        depends on OF || (ACPI && PCI_QUIRKS)
-       select PCI_HOST_COMMON
+       select PCI_HOST_GENERIC
        help
          Say Y here if you want PCIe support for CN88XX Cavium Thunder SoCs.

@@ -159,7 +159,7 @@ config PCI_HOST_THUNDER_ECAM
        bool "Cavium Thunder ECAM controller to on-chip devices on pass-1.x silicon"
        depends on ARM64
        depends on OF || (ACPI && PCI_QUIRKS)
-       select PCI_HOST_COMMON
+       select PCI_HOST_GENERIC
        help
          Say Y here if you want ECAM support for CN88XX-Pass-1.x Cavium Thunder SoCs.

Thanks,
Zhou

>>
>> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
> Acked-by: Jingoo Han <jingoohan1@gmail.com>
> 
> Best regards,
> Jingoo Han
> 
>> ---
>>  drivers/pci/dwc/Kconfig | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/pci/dwc/Kconfig b/drivers/pci/dwc/Kconfig
>> index dfb8a69afc28..d2d2ba5b8a68 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_COMMON
>>  	help
>>  	  Say Y here if you want PCIe controller support on HiSilicon
>>  	  Hip05 and Hip06 SoCs
>> --
>> 2.9.0
> 
> 
> 
> .
> 

[toc] | [prev] | [next] | [standalone]


#1606413

FromZhou Wang <wangzhou1@hisilicon.com>
Date2017-03-22 13:30 +0100
Message-ID<tnNyN-2kr-3@gated-at.bofh.it>
In reply to#1606184
On 2017/3/22 16:00, Arnd Bergmann wrote:
> On Mar 22, 2017 04:27, "Zhou Wang" <wangzhou1@hisilicon.com <mailto:wangzhou1@hisilicon.com>> 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

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web