Re: [PATCH] PCI: keystone: Fix build error while only CONFIG_PCI_KEYSTONE is set
From: YueHaibing
Date: Fri Apr 19 2019 - 17:32:22 EST
On 2019/4/19 21:31, Bjorn Helgaas wrote:
> On Fri, Apr 19, 2019 at 10:58:55AM +0800, Yue Haibing wrote:
>> From: YueHaibing <yuehaibing@xxxxxxxxxx>
>>
>> During randconfig builds, I occasionally run into an invalid configuration
>>
>> drivers/pci/controller/dwc/pci-keystone.o: In function `ks_pcie_link_up':
>> pci-keystone.c:(.text+0x90): undefined reference to `__dw_pcie_read_dbi'
>> pci-keystone.c:(.text+0x90): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `__dw_pcie_read_dbi'
>> drivers/pci/controller/dwc/pci-keystone.o: In function `ks_pcie_v3_65_scan_bus':
>> pci-keystone.c:(.text+0x4f0): undefined reference to `__dw_pcie_write_dbi'
>> pci-keystone.c:(.text+0x4f0): relocation truncated to fit: R_AARCH64_CALL26 against undefined symbol `__dw_pcie_write_dbi'
>>
>> while CONFIG_PCI_KEYSTONE is selected but CONFIG_PCIE_DW
>> is not set, the building failed like this. This patch
>> selects PCIE_DW to fix it.
>>
>> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
>> Fixes: 5709114f0a97 ("PCI: keystone: Add support for PCIe EP in AM654x Platforms")
>> Signed-off-by: YueHaibing <yuehaibing@xxxxxxxxxx>
>> ---
>> drivers/pci/controller/dwc/Kconfig | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig
>> index b450ad2..641fa0f 100644
>> --- a/drivers/pci/controller/dwc/Kconfig
>> +++ b/drivers/pci/controller/dwc/Kconfig
>> @@ -105,6 +105,7 @@ config PCIE_SPEAR13XX
>> config PCI_KEYSTONE
>> bool "TI Keystone PCIe controller"
>> depends on ARCH_KEYSTONE || ARCH_K3 || ((ARM || ARM64) && COMPILE_TEST)
>> + select PCIE_DW
>
> What version are you building? In v5.0, PCI_KEYSTONE already selects
> PCIE_DW_HOST:
>
> $ git grep -A4 PCI_KEYSTONE v5.0:drivers/pci/controller/dwc/Kconfig | cat
> v5.0:drivers/pci/controller/dwc/Kconfig:config PCI_KEYSTONE
> v5.0:drivers/pci/controller/dwc/Kconfig- bool "TI Keystone PCIe controller"
> v5.0:drivers/pci/controller/dwc/Kconfig- depends on ARCH_KEYSTONE || (ARM && COMPILE_TEST)
> v5.0:drivers/pci/controller/dwc/Kconfig- depends on PCI_MSI_IRQ_DOMAIN
> v5.0:drivers/pci/controller/dwc/Kconfig- select PCIE_DW_HOST
> 08:30:42 ~/history (master)$
This patch based on linux-next:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=5709114f0a97
>
>> help
>> Say Y here if you want to enable PCI controller support on Keystone
>> SoCs. The PCI controller on Keystone is based on DesignWare hardware
>> --
>> 2.7.4
>>
>>
>
> .
>