Hi Randy, > -----Original Message----- > From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > Sent: 2020年3月17日 12:59 > To: Z.q. Hou <zhiqiang.hou@xxxxxxx>; Bjorn Helgaas <helgaas@xxxxxxxxxx> > Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>; Linux Next Mailing List > <linux-next@xxxxxxxxxxxxxxx>; Linux Kernel Mailing List > <linux-kernel@xxxxxxxxxxxxxxx>; linux-pci <linux-pci@xxxxxxxxxxxxxxx>; > Karthikeyan Mitran <m.karthikeyan@xxxxxxxxxxxxxx> > Subject: Re: linux-next: Tree for Mar 12 (pci/controller/mobiveil/) > > On 3/16/20 9:31 PM, Z.q. Hou wrote: > > Hi Randy and Bjorn, > > > >> -----Original Message----- > >> From: Bjorn Helgaas <helgaas@xxxxxxxxxx> > >> Sent: 2020年3月13日 3:39 > >> To: Z.q. Hou <zhiqiang.hou@xxxxxxx> > >> Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>; Stephen Rothwell > >> <sfr@xxxxxxxxxxxxxxxx>; Linux Next Mailing List > >> <linux-next@xxxxxxxxxxxxxxx>; Linux Kernel Mailing List > >> <linux-kernel@xxxxxxxxxxxxxxx>; linux-pci > >> <linux-pci@xxxxxxxxxxxxxxx>; Karthikeyan Mitran > >> <m.karthikeyan@xxxxxxxxxxxxxx> > >> Subject: Re: linux-next: Tree for Mar 12 (pci/controller/mobiveil/) > >> > >> On Thu, Mar 12, 2020 at 08:13:50AM -0700, Randy Dunlap wrote: > >>> On 3/12/20 3:04 AM, Stephen Rothwell wrote: > >>>> Hi all, > >>>> > >>>> Changes since 20200311: > >>>> > >>> > >>> on i386: > >>> # CONFIG_PCI_MSI is not set > >>> > >>> WARNING: unmet direct dependencies detected for > PCIE_MOBIVEIL_HOST > >>> Depends on [n]: PCI [=y] && PCI_MSI_IRQ_DOMAIN [=n] > >>> Selected by [y]: > >>> - PCIE_MOBIVEIL_PLAT [=y] && PCI [=y] && (ARCH_ZYNQMP || > >> COMPILE_TEST [=y]) && OF [=y] > >> > >> Thanks, Randy. > >> > >> I'm not sure if this is a new problem introduced by something in my > >> "next" branch, or if this is an existing problem we just happened to > >> hit with randconfig. > >> > >> Here are the commits on remotes/lorenzo/pci/mobiveil branch: > >> > >> d29ad70a813b ("PCI: mobiveil: Add PCIe Gen4 RC driver for > >> Layerscape > >> SoCs") > >> 3edeb49525bb ("dt-bindings: PCI: Add NXP Layerscape SoCs PCIe Gen4 > >> controller") > >> 11d22cc395ca ("PCI: mobiveil: Add Header Type field check") > >> 029dea3cdc67 ("PCI: mobiveil: Add 8-bit and 16-bit CSR register > >> accessors") > >> 52cae4c7082f ("PCI: mobiveil: Allow mobiveil_host_init() to be used > >> to re-init host") > >> fc99b3311af7 ("PCI: mobiveil: Add callback function for link up check") > >> ed620e96541f ("PCI: mobiveil: Add callback function for interrupt > >> initialization") > >> 03bdc3884019 ("PCI: mobiveil: Modularize the Mobiveil PCIe Host > >> Bridge IP > >> driver") > >> 39e3a03eea5b ("PCI: mobiveil: Collect the interrupt related > >> operations into a function") > >> 2ba24842d6b4 ("PCI: mobiveil: Move the host initialization into a > function") > >> 1f442218d657 ("PCI: mobiveil: Introduce a new structure > >> mobiveil_root_port") > >> > >> I dropped that mobiveil branch for now, so Hou, can you please check > >> this out and resolve it one way or the other? > > > > I don't reproduce this issue with i386_defconfig, can you help me to > reproduce it? > > Sure, see below. > > > > Thanks, > > Zhiqiang > > > >> > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:375:15: error: > >> variable ‘mobiveil_msi_domain_info’ has initializer but incomplete > >> type > >>> static struct msi_domain_info mobiveil_msi_domain_info = { > >>> ^~~~~~~~~~~~~~~ > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:376:3: > >>> error: ‘struct > >> msi_domain_info’ has no member named ‘flags’ > >>> .flags = (MSI_FLAG_USE_DEF_DOM_OPS | > >> MSI_FLAG_USE_DEF_CHIP_OPS | > >>> ^~~~~ > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:376:12: error: > >> ‘MSI_FLAG_USE_DEF_DOM_OPS’ undeclared here (not in a function); > did > >> you mean ‘SIMPLE_DEV_PM_OPS’? > >>> .flags = (MSI_FLAG_USE_DEF_DOM_OPS | > >> MSI_FLAG_USE_DEF_CHIP_OPS | > >>> ^~~~~~~~~~~~~~~~~~~~~~~~ > >>> SIMPLE_DEV_PM_OPS > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:376:39: error: > >> ‘MSI_FLAG_USE_DEF_CHIP_OPS’ undeclared here (not in a function); did > >> you mean ‘MSI_FLAG_USE_DEF_DOM_OPS’? > >>> .flags = (MSI_FLAG_USE_DEF_DOM_OPS | > >> MSI_FLAG_USE_DEF_CHIP_OPS | > >>> > >> ^~~~~~~~~~~~~~~~~~~~~~~~~ > >>> > >> MSI_FLAG_USE_DEF_DOM_OPS > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:377:6: error: > >> ‘MSI_FLAG_PCI_MSIX’ undeclared here (not in a function); did you mean > >> ‘SS_FLAG_BITS’? > >>> MSI_FLAG_PCI_MSIX), > >>> ^~~~~~~~~~~~~~~~~ > >>> SS_FLAG_BITS > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:376:11: warning: > >> excess elements in struct initializer > >>> .flags = (MSI_FLAG_USE_DEF_DOM_OPS | > >> MSI_FLAG_USE_DEF_CHIP_OPS | > >>> ^ > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:376:11: > >>> note: (near > >> initialization for ‘mobiveil_msi_domain_info’) > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:378:3: > >>> error: ‘struct > >> msi_domain_info’ has no member named ‘chip’ > >>> .chip = &mobiveil_msi_irq_chip, > >>> ^~~~ > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:378:10: warning: > >> excess elements in struct initializer > >>> .chip = &mobiveil_msi_irq_chip, > >>> ^ > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:378:10: > >>> note: (near > >> initialization for ‘mobiveil_msi_domain_info’) > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c: In function > >> ‘mobiveil_allocate_msi_domains’: > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:469:20: error: > >> implicit declaration of function ‘pci_msi_create_irq_domain’; did you > >> mean ‘pci_msi_get_device_domain’? > >> [-Werror=implicit-function-declaration] > >>> msi->msi_domain = pci_msi_create_irq_domain(fwnode, > >>> ^~~~~~~~~~~~~~~~~~~~~~~~~ > >>> pci_msi_get_device_domain > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:469:18: warning: > >> assignment makes pointer from integer without a cast > >> [-Wint-conversion] > >>> msi->msi_domain = pci_msi_create_irq_domain(fwnode, > >>> ^ > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c: At top level: > >>> ../drivers/pci/controller/mobiveil/pcie-mobiveil-host.c:375:31: error: > >> storage size of ‘mobiveil_msi_domain_info’ isn’t known > >>> static struct msi_domain_info mobiveil_msi_domain_info = { > >>> ^~~~~~~~~~~~~~~~~~~~~~~~ > >>> > >>> > >>> > >>> Full randconfig file is attached. > > Use the .config file that was attached in the report. One query, which default config you used to generate this .config? I cannot select the PCIE_MOBIVEIL_PLAT in 'menuconfig' when use the i386_defconfig. Thanks, Zhiqiang > > > -- > ~Randy