Linux PCI subsystem development
 help / color / mirror / Atom feed
* [pci:controller/rockchip 10/11] drivers/pci/controller/dwc/pcie-designware-ep.c:26:undefined reference to `pci_epc_init_notify'
@ 2024-06-26 18:23 kernel test robot
  2024-06-26 19:03 ` Niklas Cassel
  0 siblings, 1 reply; 3+ messages in thread
From: kernel test robot @ 2024-06-26 18:23 UTC (permalink / raw)
  To: Niklas Cassel
  Cc: oe-kbuild-all, linux-pci, Krzysztof Wilczyński,
	Manivannan Sadhasivam

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git controller/rockchip
head:   246afbe0f6fca433d8d918b740719170b1b082cc
commit: 9b2ba393b3a659a4695691794dc030b6f7744b23 [10/11] PCI: dw-rockchip: Add endpoint mode support
config: loongarch-randconfig-r081-20240626 (https://download.01.org/0day-ci/archive/20240627/202406270250.k2esVVnL-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240627/202406270250.k2esVVnL-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202406270250.k2esVVnL-lkp@intel.com/

All errors (new ones prefixed by >>):

   loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.o: in function `dw_pcie_ep_init_notify':
>> drivers/pci/controller/dwc/pcie-designware-ep.c:26:(.text+0x1e4): undefined reference to `pci_epc_init_notify'
   loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.o: in function `dw_pcie_ep_deinit':
>> drivers/pci/controller/dwc/pcie-designware-ep.c:640:(.text+0x83c): undefined reference to `pci_epc_mem_free_addr'
>> loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.c:643:(.text+0x854): undefined reference to `pci_epc_mem_exit'
   loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.o: in function `dw_pcie_ep_linkup':
>> drivers/pci/controller/dwc/pcie-designware-ep.c:811:(.text+0x924): undefined reference to `pci_epc_linkup'
   loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.o: in function `dw_pcie_ep_linkdown':
>> drivers/pci/controller/dwc/pcie-designware-ep.c:836:(.text+0x964): undefined reference to `pci_epc_linkdown'
   loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.o: in function `dw_pcie_ep_init':
>> drivers/pci/controller/dwc/pcie-designware-ep.c:875:(.text+0xe90): undefined reference to `__devm_pci_epc_create'
>> loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.c:888:(.text+0xf20): undefined reference to `pci_epc_mem_init'
>> loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.c:895:(.text+0xf54): undefined reference to `pci_epc_mem_alloc_addr'
   loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.c:906:(.text+0xf74): undefined reference to `pci_epc_mem_exit'


vim +26 drivers/pci/controller/dwc/pcie-designware-ep.c

f8aed6ec624fb4 drivers/pci/dwc/pcie-designware-ep.c            Kishon Vijay Abraham I 2017-03-27  17  
7cbebc86c72aa2 drivers/pci/controller/dwc/pcie-designware-ep.c Manivannan Sadhasivam  2024-03-27  18  /**
7cbebc86c72aa2 drivers/pci/controller/dwc/pcie-designware-ep.c Manivannan Sadhasivam  2024-03-27  19   * dw_pcie_ep_init_notify - Notify EPF drivers about EPC initialization complete
7cbebc86c72aa2 drivers/pci/controller/dwc/pcie-designware-ep.c Manivannan Sadhasivam  2024-03-27  20   * @ep: DWC EP device
7cbebc86c72aa2 drivers/pci/controller/dwc/pcie-designware-ep.c Manivannan Sadhasivam  2024-03-27  21   */
ac37dde7217764 drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-02-17  22  void dw_pcie_ep_init_notify(struct dw_pcie_ep *ep)
ac37dde7217764 drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-02-17  23  {
ac37dde7217764 drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-02-17  24  	struct pci_epc *epc = ep->epc;
ac37dde7217764 drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-02-17  25  
ac37dde7217764 drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-02-17 @26  	pci_epc_init_notify(epc);
ac37dde7217764 drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-02-17  27  }
c57247f940e8ea drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-03-03  28  EXPORT_SYMBOL_GPL(dw_pcie_ep_init_notify);
ac37dde7217764 drivers/pci/controller/dwc/pcie-designware-ep.c Vidya Sagar            2020-02-17  29  

:::::: The code at line 26 was first introduced by commit
:::::: ac37dde721776463f866ba5c93986af19a6b73b9 PCI: dwc: Add API to notify core initialization completion

:::::: TO: Vidya Sagar <vidyas@nvidia.com>
:::::: CC: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [pci:controller/rockchip 10/11] drivers/pci/controller/dwc/pcie-designware-ep.c:26:undefined reference to `pci_epc_init_notify'
  2024-06-26 18:23 [pci:controller/rockchip 10/11] drivers/pci/controller/dwc/pcie-designware-ep.c:26:undefined reference to `pci_epc_init_notify' kernel test robot
@ 2024-06-26 19:03 ` Niklas Cassel
  2024-06-28  0:12   ` Krzysztof Wilczyński
  0 siblings, 1 reply; 3+ messages in thread
From: Niklas Cassel @ 2024-06-26 19:03 UTC (permalink / raw)
  To: kernel test robot
  Cc: oe-kbuild-all, linux-pci, Krzysztof Wilczyński,
	Manivannan Sadhasivam

On Thu, Jun 27, 2024 at 02:23:38AM +0800, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/pci/pci.git controller/rockchip
> head:   246afbe0f6fca433d8d918b740719170b1b082cc
> commit: 9b2ba393b3a659a4695691794dc030b6f7744b23 [10/11] PCI: dw-rockchip: Add endpoint mode support
> config: loongarch-randconfig-r081-20240626 (https://download.01.org/0day-ci/archive/20240627/202406270250.k2esVVnL-lkp@intel.com/config)
> compiler: loongarch64-linux-gcc (GCC) 13.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240627/202406270250.k2esVVnL-lkp@intel.com/reproduce)
> 
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202406270250.k2esVVnL-lkp@intel.com/
>

Hello Krzysztof,

> All errors (new ones prefixed by >>):
> 
>    loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.o: in function `dw_pcie_ep_init_notify':
> >> drivers/pci/controller/dwc/pcie-designware-ep.c:26:(.text+0x1e4): undefined reference to `pci_epc_init_notify'

Seeing that it is pcie-designware-ep.c that fails to build, I can see the error.
I have forgotten to do:

diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig
index 9c4fb8ba7573..4c38181acffa 100644
--- a/drivers/pci/controller/dwc/Kconfig
+++ b/drivers/pci/controller/dwc/Kconfig
@@ -329,6 +329,7 @@ config PCIE_ROCKCHIP_DW_EP
        bool "Rockchip DesignWare PCIe controller (endpoint mode)"
        depends on ARCH_ROCKCHIP || COMPILE_TEST
        depends on OF
+       depends on PCI_ENDPOINT
        select PCIE_DW_EP
        select PCIE_ROCKCHIP_DW
        help

(The .config in this build has PCIE_ROCKCHIP_DW_EP selected, but not PCI_ENDPOINT,
which should not be allowed...)

This is my fault, all the other endpoint drivers have a depends on PCI_ENDPOINT.
Will send a patch for this shortly. I'm truly sorry for this mistake.




Looking more closely at the pci/controller/rockchip branch,
I can also see that we have another potential problem:

Commit 7a847796e509 ("PCI: endpoint: Introduce 'epc_deinit' event and notify the EPF drivers"),
which is on branch: pci/endpoint
has introduced a stub (dummy definition) for pci_epc_init_notify.
However, if the test robot builds the pci/controller/rockchip branch with PCIE_ROCKCHIP_DW_HOST
selected, and not PCIE_ROCKCHIP_DW_EP selected, we could get a failure that pci_epc_init_notify()
does not have a stub...

This problem can be solved by cherry-picking 7a847796e509 ("PCI: endpoint: Introduce 'epc_deinit'
event and notify the EPF drivers") to the pci/controller/rockchip branch, or by rebasing the
pci/controller/rockchip branch on top of the pci/endpoint branch... I'm sorry for this too.


Kind regards,
Niklas

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [pci:controller/rockchip 10/11] drivers/pci/controller/dwc/pcie-designware-ep.c:26:undefined reference to `pci_epc_init_notify'
  2024-06-26 19:03 ` Niklas Cassel
@ 2024-06-28  0:12   ` Krzysztof Wilczyński
  0 siblings, 0 replies; 3+ messages in thread
From: Krzysztof Wilczyński @ 2024-06-28  0:12 UTC (permalink / raw)
  To: Niklas Cassel
  Cc: kernel test robot, oe-kbuild-all, linux-pci,
	Manivannan Sadhasivam

Hello,

[...]
> > All errors (new ones prefixed by >>):
> > 
> >    loongarch64-linux-ld: drivers/pci/controller/dwc/pcie-designware-ep.o: in function `dw_pcie_ep_init_notify':
> > >> drivers/pci/controller/dwc/pcie-designware-ep.c:26:(.text+0x1e4): undefined reference to `pci_epc_init_notify'
> 
> Seeing that it is pcie-designware-ep.c that fails to build, I can see the error.
> I have forgotten to do:
> 
> diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig
> index 9c4fb8ba7573..4c38181acffa 100644
> --- a/drivers/pci/controller/dwc/Kconfig
> +++ b/drivers/pci/controller/dwc/Kconfig
> @@ -329,6 +329,7 @@ config PCIE_ROCKCHIP_DW_EP
>         bool "Rockchip DesignWare PCIe controller (endpoint mode)"
>         depends on ARCH_ROCKCHIP || COMPILE_TEST
>         depends on OF
> +       depends on PCI_ENDPOINT
>         select PCIE_DW_EP
>         select PCIE_ROCKCHIP_DW
>         help
> 
> (The .config in this build has PCIE_ROCKCHIP_DW_EP selected, but not PCI_ENDPOINT,
> which should not be allowed...)
> 
> This is my fault, all the other endpoint drivers have a depends on PCI_ENDPOINT.
> Will send a patch for this shortly. I'm truly sorry for this mistake.

No worries.  Thank you for a quick fix!  Much appreciated.

	Krzysztof

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-06-28  0:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-26 18:23 [pci:controller/rockchip 10/11] drivers/pci/controller/dwc/pcie-designware-ep.c:26:undefined reference to `pci_epc_init_notify' kernel test robot
2024-06-26 19:03 ` Niklas Cassel
2024-06-28  0:12   ` Krzysztof Wilczyński

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox