RE: linux-next: Tree for Dec 9 (usb/cdns3)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Peter,

>
>>
>>On 20-12-09 16:58:16, Randy Dunlap wrote:
>>> On 12/9/20 2:44 AM, Stephen Rothwell wrote:
>>> > Hi all,
>>> >
>>> > Changes since 20201208:
>>> >
>>>
>>> (I don't know what to do about this one -- seeking help.)
>>
>>Add Pawel.
>>
>>Hi Pawel,
>>
>>Add old cdns3 logic, when the CONFIG_USB=m
>>If CONFIG_USB_CDNS3 is M, the host will be built as module
>>If CONFIG_USB_CDNS3 is build-in, the host will not built due to
>>USB=m, so USB!= USB_CDNS3 at below dependency.
>>
>>config USB_CDNS3_HOST
>>	bool "Cadence USB3 host controller"
>>	depends on USB=y || USB=USB_CDNS3
>>
>>So, it has no such issue.
>>
>>But after adding CDNSSP support, the configuration relationship is
>>much complicated, both CDNS3 and CDNSSP could choose host file,
>>would you have a check for this issue?
>
>I can recreate this issue. I will try to resolve it.

config USB_CDNS3_HOST
        bool "Cadence USB3 host controller"
-       depends on USB=y || USB=USB_CDNS3
+       depends on USB=USB_CDNS3
        select USB_CDNS_HOST
        help
          Say Y here to enable host controller functionality of the
@@ -110,7 +110,7 @@ config USB_CDNSP_GADGET

 config USB_CDNSP_HOST
        bool "Cadence CDNSP host controller"
-       depends on USB=y || USB=USB_CDNSP_PCI
+       depends on USB=USB_CDNSP_PCI
        select USB_CDNS_HOST
        help
          Say Y here to enable host controller functionality of the

Peter, what about such change. It fix this issue but I need to check
It with some other kernel configurations. 
At this moment it's the only solution which I've found but
it's introduces some limitation in CDNS3/CDNSP configuration.

>
>>
>>Peter
>>
>>>
>>>
>>> on x86_64:
>>>
>>> ld: drivers/usb/cdns3/host.o: in function `xhci_cdns3_suspend_quirk':
>>> host.c:(.text+0x9): undefined reference to `usb_hcd_is_primary_hcd'
>>>
>>> This reference to 'usb_hdc_is_primary_hcd' is from hcd_to_xhci(),
>>> which is being built as a loadable module:
>>>
>>> int xhci_cdns3_suspend_quirk(struct usb_hcd *hcd)
>>> {
>>> 	struct xhci_hcd	*xhci = hcd_to_xhci(hcd);
>>>
>>>
>>>
>>>
>>> CONFIG_USB_GADGET=y
>>> CONFIG_USB_SUPPORT=y
>>> CONFIG_USB_COMMON=y
>>> # CONFIG_USB_CONN_GPIO is not set
>>> CONFIG_USB_ARCH_HAS_HCD=y
>>> CONFIG_USB=m
>>>
>>> CONFIG_USB_CDNS_SUPPORT=y
>>> CONFIG_USB_CDNS_HOST=y
>>> CONFIG_USB_CDNS3=m
>>> CONFIG_USB_CDNS3_GADGET=y
>>> CONFIG_USB_CDNS3_HOST=y
>>>
>>> Problem is mostly that CONFIG_USB=m and CONFIG_USB_GADGET=y.
>>>
>>>
>>> Full randconfig file is attached.
>>>
>>>
>>> thanks.
>>> --
>>> ~Randy
>>> Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
>>
>>
>>
--

Thanks
Pawel Laszczak





[Index of Archives]     [Linux Kernel]     [Linux USB Development]     [Yosemite News]     [Linux SCSI]

  Powered by Linux