RE: [PATCH 0/2] usb: cdns3: USBSSP platform driver support
From: Pawel Laszczak
Date: Tue Mar 03 2026 - 03:08:03 EST
>
>Hi Pawel,
>
>The Cadence USBSSP (CDNSP) controller was previously only accessible
>through PCI, coupling the gadget driver with the PCI glue layer into a single
>monolithic module (cdnsp-udc-pci). This prevented using the CDNSP IP on
>SoC/platform designs that expose the controller through device tree, eg, CIX
>Sky1 SoC.
>
>In this series, it restructures the driver to decouple the CDNSP gadget from
>PCI, and refactor cdnsp-pci.c into a thin PCI-to-platform wrapper (similar to
>cdns3-pci-wrap.c) that registers a platform device and passes PCI resources
>and platform data to the common platform driver. So, please help test it in
>your platform.
>
>The changes are tested with random configuration combination tests.
>
>============================================================
>ALL TESTS COMPLETE. Summary:
>============================================================
>Starting cdns3 config combination tests...
>Timestamp: 2026年 03月 02日 星期一 09:34:47 CST
>
>PASS: all-builtin (SUPPORT=y CDNS3=y GADGET=y HOST=y CDNSP=y
>CDNSP_G=y CDNSP_H=y)
>PASS: support-y_cdns3-m_gadget-y (SUPPORT=y CDNS3=m GADGET=y
>HOST=y CDNSP=y CDNSP_G=y CDNSP_H=y)
>PASS: support-y_cdns3-m_gadget-n (SUPPORT=y CDNS3=m GADGET=n
>HOST=y CDNSP=y CDNSP_G=y CDNSP_H=y)
>PASS: support-y_cdnsp-m_gadget-y (SUPPORT=y CDNS3=y GADGET=y HOST=y
>CDNSP=m CDNSP_G=y CDNSP_H=y)
>PASS: all-module (SUPPORT=m CDNS3=m GADGET=y HOST=y CDNSP=m
>CDNSP_G=y CDNSP_H=y)
>PASS: no-cdns3 (SUPPORT=y CDNS3=n GADGET=n HOST=n CDNSP=y
>CDNSP_G=y CDNSP_H=y)
>PASS: no-gadget (SUPPORT=y CDNS3=y GADGET=n HOST=y CDNSP=y
>CDNSP_G=n CDNSP_H=y)
>PASS: support-y_both-m_gadget-y (SUPPORT=y CDNS3=m GADGET=y HOST=y
>CDNSP=m CDNSP_G=y CDNSP_H=y)
>PASS: minimal-module (SUPPORT=m CDNS3=m GADGET=n HOST=n CDNSP=m
>CDNSP_G=n CDNSP_H=n)
>
>This patch was developed with assistance from Anthropic Claude Opus 4.6.
>
I can compile the kernel but when I try to install modules with
make modules_install I get error:
DEPMOD /lib/modules/7.0.0-rc1-new-pci-plat-support-next-20260227+
depmod: ERROR: Cycle detected: cdns_usb_common -> cdnsp -> cdns_usb_common
depmod: ERROR: Cycle detected: udc_core
depmod: ERROR: Found 2 modules in dependency cycles!
make[2]: *** [scripts/Makefile.modinst:132: depmod] Error 1
It occurs even with minimal configuration:
CONFIG_USB_CDNS_SUPPORT=m
# CONFIG_USB_CDNS3 is not set
CONFIG_USB_CDNSP=m
CONFIG_USB_CDNSP_GADGET=y
Regards,
Pawel
>Peter Chen (2):
> usb: cdns3: Add USBSSP platform driver support
> dt-bindings: usb: cdns,usb3: Add support for USBSSP
>
> .../devicetree/bindings/usb/cdns,usb3.yaml | 36 ++-
> drivers/usb/cdns3/Kconfig | 44 ++--
> drivers/usb/cdns3/Makefile | 30 +--
> drivers/usb/cdns3/cdns3-gadget.c | 4 +
> drivers/usb/cdns3/cdns3-plat.c | 14 +-
> drivers/usb/cdns3/cdnsp-gadget.c | 4 +
> drivers/usb/cdns3/cdnsp-pci.c | 221 ++++++++----------
> drivers/usb/cdns3/core.h | 1 +
> drivers/usb/cdns3/gadget-export.h | 4 +-
> 9 files changed, 184 insertions(+), 174 deletions(-)
>
>--
>2.50.1