[openwrt/openwrt] usb: add cdns3 support

LEDE Commits lede-commits at lists.infradead.org
Sun Mar 10 10:27:28 PDT 2024


wigyori pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/db0d7cf6a19f909a3cce958c5a8457511c1179e8

commit db0d7cf6a19f909a3cce958c5a8457511c1179e8
Author: Zoltan HERPAI <wigyori at uid0.hu>
AuthorDate: Mon Jan 1 13:50:46 2024 +0100

    usb: add cdns3 support
    
    CDNS3 is a SuperSpeed (SS) USB 3.0 Dual-Role-Device (DRD) controller from
    Cadence. Add support for this device, and add the required symbols into
    the generic configs.
    
    Compile-tested: apm821xx, bcm4908, imx, mpc85xx, pistachio, starfive
    
    Signed-off-by: Zoltan HERPAI <wigyori at uid0.hu>
---
 package/kernel/linux/modules/usb.mk | 38 +++++++++++++++++++++++++++++++++++++
 target/linux/generic/config-5.15    |  3 +++
 target/linux/generic/config-6.1     |  3 +++
 3 files changed, 44 insertions(+)

diff --git a/package/kernel/linux/modules/usb.mk b/package/kernel/linux/modules/usb.mk
index 7f9e627fdb..f4a2113e17 100644
--- a/package/kernel/linux/modules/usb.mk
+++ b/package/kernel/linux/modules/usb.mk
@@ -459,6 +459,44 @@ endef
 $(eval $(call KernelPackage,usb-dwc2-pci))
 
 
+define KernelPackage/usb-cdns
+  TITLE:=Cadence USB USB controller driver
+  DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget +kmod-usb-roles
+  KCONFIG:= \
+	CONFIG_USB_CDNS_SUPPORT
+  FILES:= $(LINUX_DIR)/drivers/usb/cdns3/cdns-usb-common.ko
+  AUTOLOAD:=$(call AutoLoad,50,cdns-usb-common,1)
+  $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb-cdns/description
+ This driver provides USB Device Controller support for the
+ Cadence USB Core
+endef
+
+$(eval $(call KernelPackage,usb-cdns))
+
+
+define KernelPackage/usb-cdns3
+  TITLE:=Cadence USB3 USB controller driver
+  DEPENDS:=+kmod-usb-cdns
+  KCONFIG:= \
+	CONFIG_USB_CDNS3 \
+	CONFIG_USB_CDNS3_GADGET=y \
+	CONFIG_USB_CDNS3_HOST=y
+  FILES:= $(LINUX_DIR)/drivers/usb/cdns3/cdns3.ko
+  AUTOLOAD:=$(call AutoLoad,54,cdns3,1)
+  $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb-cdns3/description
+ This driver provides support for the Dual Role SuperSpeed
+ USB Controller based on the Cadence USB3 IP Core
+endef
+
+$(eval $(call KernelPackage,usb-cdns3))
+
+
 define KernelPackage/usb-dwc3
   TITLE:=DWC3 USB controller driver
   KCONFIG:= \
diff --git a/target/linux/generic/config-5.15 b/target/linux/generic/config-5.15
index 6070000dd4..8f6ccad216 100644
--- a/target/linux/generic/config-5.15
+++ b/target/linux/generic/config-5.15
@@ -6833,7 +6833,10 @@ CONFIG_USB_BELKIN=y
 # CONFIG_USB_CATC is not set
 # CONFIG_USB_CDC_COMPOSITE is not set
 # CONFIG_USB_CDNS3 is not set
+# CONFIG_USB_CDNS3_IMX is not set
+# CONFIG_USB_CDNS3_PCI_WRAP is not set
 # CONFIG_USB_CDNS_SUPPORT is not set
+# CONFIG_USB_CDNSP_PCI is not set
 # CONFIG_USB_CHAOSKEY is not set
 # CONFIG_USB_CHIPIDEA is not set
 # CONFIG_USB_CHIPIDEA_GENERIC is not set
diff --git a/target/linux/generic/config-6.1 b/target/linux/generic/config-6.1
index 34a6503ce0..deecb62ba8 100644
--- a/target/linux/generic/config-6.1
+++ b/target/linux/generic/config-6.1
@@ -7117,7 +7117,10 @@ CONFIG_USB_BELKIN=y
 # CONFIG_USB_CATC is not set
 # CONFIG_USB_CDC_COMPOSITE is not set
 # CONFIG_USB_CDNS3 is not set
+# CONFIG_USB_CDNS3_IMX is not set
+# CONFIG_USB_CDNS3_PCI_WRAP is not set
 # CONFIG_USB_CDNS_SUPPORT is not set
+# CONFIG_USB_CDNSP_PCI is not set
 # CONFIG_USB_CHAOSKEY is not set
 # CONFIG_USB_CHIPIDEA is not set
 # CONFIG_USB_CHIPIDEA_GENERIC is not set




More information about the lede-commits mailing list