[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <05b35cb5-7f00-e67d-fd76-fbe2d34f875c@infradead.org>
Date: Wed, 18 Mar 2020 08:37:51 -0700
From: Randy Dunlap <rdunlap@...radead.org>
To: "Z.q. Hou" <zhiqiang.hou@....com>,
Bjorn Helgaas <helgaas@...nel.org>
Cc: Stephen Rothwell <sfr@...b.auug.org.au>,
Linux Next Mailing List <linux-next@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-pci <linux-pci@...r.kernel.org>,
Karthikeyan Mitran <m.karthikeyan@...iveil.co.in>
Subject: Re: linux-next: Tree for Mar 12 (pci/controller/mobiveil/)
On 3/18/20 2:44 AM, Z.q. Hou wrote:
> Hi Randy,
>
>> -----Original Message-----
>> From: Randy Dunlap <rdunlap@...radead.org>
>> Sent: 2020年3月17日 23:16
>> To: Z.q. Hou <zhiqiang.hou@....com>; Bjorn Helgaas <helgaas@...nel.org>
>> Cc: Stephen Rothwell <sfr@...b.auug.org.au>; Linux Next Mailing List
>> <linux-next@...r.kernel.org>; Linux Kernel Mailing List
>> <linux-kernel@...r.kernel.org>; linux-pci <linux-pci@...r.kernel.org>;
>> Karthikeyan Mitran <m.karthikeyan@...iveil.co.in>
>> Subject: Re: linux-next: Tree for Mar 12 (pci/controller/mobiveil/)
>>
>> On 3/17/20 3:05 AM, Z.q. Hou wrote:
>>> Hi Randy,
>>>
>>>> -----Original Message-----
>>>> From: Randy Dunlap <rdunlap@...radead.org>
>>>> Sent: 2020年3月17日 12:59
>>>> To: Z.q. Hou <zhiqiang.hou@....com>; Bjorn Helgaas
>>>> <helgaas@...nel.org>
>>>> Cc: Stephen Rothwell <sfr@...b.auug.org.au>; Linux Next Mailing List
>>>> <linux-next@...r.kernel.org>; Linux Kernel Mailing List
>>>> <linux-kernel@...r.kernel.org>; linux-pci
>>>> <linux-pci@...r.kernel.org>; Karthikeyan Mitran
>>>> <m.karthikeyan@...iveil.co.in>
>>>> 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@...nel.org>
>>>>>> Sent: 2020年3月13日 3:39
>>>>>> To: Z.q. Hou <zhiqiang.hou@....com>
>>>>>> Cc: Randy Dunlap <rdunlap@...radead.org>; Stephen Rothwell
>>>>>> <sfr@...b.auug.org.au>; Linux Next Mailing List
>>>>>> <linux-next@...r.kernel.org>; Linux Kernel Mailing List
>>>>>> <linux-kernel@...r.kernel.org>; linux-pci
>>>>>> <linux-pci@...r.kernel.org>; Karthikeyan Mitran
>>>>>> <m.karthikeyan@...iveil.co.in>
>>>>>> 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.
>>
>> Hi,
>>
>> I did not use any defconfig.
>> Just cp that config file into your build directory (as .config)
>>
>> and do something like:
>> $ make ARCH=i386 oldconfig
>
> I sent a patch to fix this issue, but I also want to know why did you enable the
> PCIE_MOBIVEIL_PLAT in the i386 .config? I mean what is this test for.
Hi,
Every day that linux-next is released, I run a bunch of randconfigs:
$ make ARCH=i386 randconfig
$ make ARCH=x86_64 randconfig
That's what caused PCIE_MOBIVEIL_PLAT to be set.
--
~Randy
Powered by blists - more mailing lists