kernel: drop obsolete linux 3.10 related dependencies/checks
[openwrt/openwrt.git] / package / kernel / linux / modules / usb.mk
index ecbf18668dc891da36aea5779e7c907498b680ec..7d160b0166e7560807f96dc8bb4b8f26ac26e1b9 100644 (file)
@@ -16,15 +16,10 @@ define KernelPackage/usb-core
   TITLE:=Support for USB
   DEPENDS:=@USB_SUPPORT
   KCONFIG:=CONFIG_USB CONFIG_XPS_USB_HCD_XILINX=n CONFIG_USB_FHCI_HCD=n
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.16.0)),1)
   FILES:= \
        $(LINUX_DIR)/drivers/usb/core/usbcore.ko \
-       $(LINUX_DIR)/drivers/usb/common/usb-common.ko
-else
-  FILES:= \
-       $(LINUX_DIR)/drivers/usb/core/usbcore.ko \
-       $(LINUX_DIR)/drivers/usb/usb-common.ko
-endif
+       $(LINUX_DIR)/drivers/usb/usb-common.ko@lt3.16 \
+       $(LINUX_DIR)/drivers/usb/common/usb-common.ko@ge3.16
   AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1)
   $(call AddDepends/nls)
 endef
@@ -155,11 +150,11 @@ define KernelPackage/usb-phy-omap-usb2
   TITLE:=Support for OMAP2 USB PHY
   KCONFIG:= \
        CONFIG_OMAP_USB2 \
-       CONFIG_OMAP_CONTROL_USB
+       CONFIG_OMAP_CONTROL_PHY
   DEPENDS:=@TARGET_omap
   FILES:= \
        $(LINUX_DIR)/drivers/phy/phy-omap-usb2.ko \
-       $(LINUX_DIR)/drivers/usb/phy/phy-omap-control.ko
+       $(LINUX_DIR)/drivers/phy/phy-omap-control.ko
   AUTOLOAD:=$(call AutoLoad,45,phy-omap-control phy-omap-usb2)
   $(call AddDepends/usb)
 endef
@@ -222,7 +217,9 @@ $(eval $(call KernelPackage,usb-phy-twl6030))
 define KernelPackage/usb-gadget
   TITLE:=USB Gadget support
   KCONFIG:=CONFIG_USB_GADGET
-  FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc-core.ko
+  FILES:=\
+       $(LINUX_DIR)/drivers/usb/gadget/udc-core.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/udc/udc-core.ko@ge3.18
   AUTOLOAD:=$(call AutoLoad,45,udc-core)
   DEPENDS:=@USB_GADGET_SUPPORT
   $(call AddDepends/usb)
@@ -257,21 +254,18 @@ define KernelPackage/usb-eth-gadget
        CONFIG_USB_ETH_RNDIS=y \
        CONFIG_USB_ETH_EEM=n
   DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
-ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko),)
   FILES:= \
-       $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm_subset.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/usb_f_rndis.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko
-  ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko),)
-    FILES+=$(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko
-  endif
+       $(LINUX_DIR)/drivers/usb/gadget/function/u_ether.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm_subset.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_rndis.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/legacy/g_ether.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm_subset.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/usb_f_rndis.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko@lt3.18
   AUTOLOAD:=$(call AutoLoad,52,usb_f_ecm g_ether)
-else
-  FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_ether.ko
-  AUTOLOAD:=$(call AutoLoad,52,g_ether)
-endif
   $(call AddDepends/usb)
 endef
 
@@ -286,18 +280,18 @@ define KernelPackage/usb-serial-gadget
   TITLE:=USB Serial Gadget support
   KCONFIG:=CONFIG_USB_G_SERIAL
   DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
-ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko),)
   FILES:= \
-       $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/usb_f_acm.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/usb_f_obex.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/usb_f_serial.ko \
-       $(LINUX_DIR)/drivers/usb/gadget/g_serial.ko
+       $(LINUX_DIR)/drivers/usb/gadget/function/u_serial.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_acm.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_obex.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_serial.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/legacy/g_serial.ko@ge3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/usb_f_acm.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/usb_f_obex.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/usb_f_serial.ko@lt3.18 \
+       $(LINUX_DIR)/drivers/usb/gadget/g_serial.ko@lt3.18
   AUTOLOAD:=$(call AutoLoad,52,usb_f_acm g_serial)
-else
-  FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_serial.ko
-  AUTOLOAD:=$(call AutoLoad,52,g_serial)
-endif
   $(call AddDepends/usb)
 endef
 
@@ -337,10 +331,9 @@ define KernelPackage/usb-ohci
        CONFIG_USB_OCTEON_OHCI=y \
        CONFIG_USB_OHCI_HCD_OMAP3=y \
        CONFIG_USB_OHCI_HCD_PLATFORM=y
-  FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
-ifeq ($(CONFIG_LINUX_3_8)$(CONFIG_LINUX_3_10),)
-  FILES+=$(LINUX_DIR)/drivers/usb/host/ohci-platform.ko
-endif
+  FILES:= \
+       $(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko \
+       $(LINUX_DIR)/drivers/usb/host/ohci-platform.ko
   AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform,1)
   $(call AddDepends/usb)
 endef
@@ -352,6 +345,22 @@ endef
 $(eval $(call KernelPackage,usb-ohci,1))
 
 
+define KernelPackage/usb-ohci-pci
+  TITLE:=Support for PCI OHCI controllers
+  DEPENDS:=@PCI_SUPPORT +kmod-usb-ohci
+  KCONFIG:=CONFIG_USB_OHCI_HCD_PCI
+  FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-pci.ko
+  AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1)
+  $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb2-pci/description
+ Kernel support for PCI OHCI controllers
+endef
+
+$(eval $(call KernelPackage,usb-ohci-pci))
+
+
 define KernelPackage/usb2-fsl
   TITLE:=Support for Freescale USB2 controllers
   DEPENDS:=@TARGET_mpc85xx
@@ -373,7 +382,9 @@ $(eval $(call KernelPackage,usb2-fsl))
 define KernelPackage/usb2-omap
   TITLE:=Support for USB2 for OMAP
   DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-phy-am335x +kmod-usb2
-  KCONFIG:=CONFIG_USB_EHCI_HCD_OMAP
+  KCONFIG:=\
+       CONFIG_MFD_OMAP_USB_HOST=y \
+       CONFIG_USB_EHCI_HCD_OMAP
   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-omap.ko
   AUTOLOAD:=$(call AutoLoad,39,ehci-omap)
   $(call AddDepends/usb)
@@ -435,7 +446,7 @@ $(eval $(call KernelPackage,usb2-pci))
 
 define KernelPackage/usb-dwc2
   TITLE:=DWC2 USB controller driver
-  DEPENDS:=@!LINUX_3_8 @!LINUX_3_10
+  DEPENDS:=+(TARGET_brcm2708||TARGET_at91||TARGET_brcm63xx||TARGET_mxs):kmod-usb-gadget
   KCONFIG:= \
        CONFIG_USB_DWC2 \
        CONFIG_USB_DWC2_PCI \
@@ -475,6 +486,28 @@ endef
 $(eval $(call KernelPackage,usb2-oxnas))
 
 
+define KernelPackage/usb-dwc3
+  TITLE:=DWC3 USB controller driver
+  KCONFIG:= \
+       CONFIG_USB_DWC3 \
+       CONFIG_USB_DWC3_HOST=y \
+       CONFIG_USB_DWC3_GADGET=n \
+       CONFIG_USB_DWC3_DUAL_ROLE=n \
+       CONFIG_USB_DWC3_DEBUG=n \
+       CONFIG_USB_DWC3_VERBOSE=n
+  FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3.ko
+  AUTOLOAD:=$(call AutoLoad,54,dwc3,1)
+  $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb-dwc3/description
+ This driver provides support for the Dual Role SuperSpeed
+ USB Controller based on the Synopsys DesignWare USB3 IP Core
+endef
+
+$(eval $(call KernelPackage,usb-dwc3))
+
+
 define KernelPackage/usb-acm
   TITLE:=Support for modems/isdn controllers
   KCONFIG:=CONFIG_USB_ACM
@@ -615,6 +648,49 @@ endef
 $(eval $(call KernelPackage,usb-serial-ftdi))
 
 
+define KernelPackage/usb-serial-garmin
+  TITLE:=Support for Garmin GPS devices
+  KCONFIG:=CONFIG_USB_SERIAL_GARMIN
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/garmin_gps.ko
+  AUTOLOAD:=$(call AutoProbe,garmin_gps)
+  $(call AddDepends/usb-serial)
+endef
+
+define KernelPackage/usb-serial-garmin/description
+ Should work with most Garmin GPS devices which have a native USB port.
+endef
+
+$(eval $(call KernelPackage,usb-serial-garmin))
+
+
+define KernelPackage/usb-serial-simple
+  TITLE:=USB Serial Simple (Motorola phone)
+  KCONFIG:=CONFIG_USB_SERIAL_SIMPLE
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/usb-serial-simple.ko
+  AUTOLOAD:=$(call AutoProbe,usb-serial-simple)
+  $(call AddDepends/usb-serial)
+endef
+
+define KernelPackage/usb-serial-simple/description
+  Kernel support for "very simple devices".
+
+Specifically, it supports:
+       - Suunto ANT+ USB device.
+       - Medtronic CareLink USB device (3.18)
+       - Fundamental Software dongle.
+       - Google USB serial devices (3.19)
+       - HP4x calculators
+       - a number of Motorola phones
+       - Novatel Wireless GPS receivers (3.18)
+       - Siemens USB/MPI adapter.
+       - ViVOtech ViVOpay USB device.
+       - Infineon Modem Flashloader USB interface
+       - ZIO Motherboard USB serial interface
+endef
+
+$(eval $(call KernelPackage,usb-serial-simple))
+
+
 define KernelPackage/usb-serial-ti-usb
   TITLE:=Support for TI USB 3410/5052
   KCONFIG:=CONFIG_USB_SERIAL_TI
@@ -995,7 +1071,8 @@ $(eval $(call KernelPackage,usb-atm-cxacru))
 define KernelPackage/usb-net
   TITLE:=Kernel modules for USB-to-Ethernet convertors
   DEPENDS:=+kmod-mii
-  KCONFIG:=CONFIG_USB_USBNET
+  KCONFIG:=CONFIG_USB_USBNET \
+       CONFIG_USB_NET_DRIVERS@ge3.18
   AUTOLOAD:=$(call AutoProbe,usbnet)
   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
   $(call AddDepends/usb)
@@ -1030,6 +1107,23 @@ endef
 $(eval $(call KernelPackage,usb-net-asix))
 
 
+define KernelPackage/usb-net-asix-ax88179
+  TITLE:=Kernel module for USB-to-Gigabit-Ethernet Asix convertors
+  DEPENDS:=+kmod-libphy
+  KCONFIG:=CONFIG_USB_NET_AX88179_178A
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/ax88179_178a.ko
+  AUTOLOAD:=$(call AutoProbe,ax88179_178a)
+  $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-asix-ax88179/description
+ Kernel module for USB-to-Ethernet ASIX AX88179 based USB 3.0/2.0
+ to Gigabit Ethernet adapters.
+endef
+
+$(eval $(call KernelPackage,usb-net-asix-ax88179))
+
+
 define KernelPackage/usb-net-hso
   TITLE:=Kernel module for Option USB High Speed Mobile Devices
   KCONFIG:=CONFIG_USB_HSO
@@ -1235,7 +1329,7 @@ define KernelPackage/usb-net-huawei-cdc-ncm
   KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM
   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko
   AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm)
-  $(call AddDepends/usb-net,+kmod-usb-wdm @!LINUX_3_8 @!LINUX_3_10)
+  $(call AddDepends/usb-net,+kmod-usb-net-cdc-ncm +kmod-usb-wdm)
 endef
 
 define KernelPackage/usb-net-huawei-cdc-ncm/description
@@ -1293,11 +1387,10 @@ $(eval $(call KernelPackage,usb-net-kalmia))
 define KernelPackage/usb-hid
   TITLE:=Support for USB Human Input Devices
   KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
+  DEPENDS:=+kmod-hid +kmod-hid-generic +kmod-input-evdev
   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
   AUTOLOAD:=$(call AutoProbe,usbhid)
   $(call AddDepends/usb)
-  $(call AddDepends/hid,+kmod-hid-generic)
-  $(call AddDepends/input,+kmod-input-evdev)
 endef
 
 define KernelPackage/usb-hid/description
@@ -1309,11 +1402,11 @@ $(eval $(call KernelPackage,usb-hid))
 
 define KernelPackage/usb-yealink
   TITLE:=USB Yealink VOIP phone
+  DEPENDS:=+kmod-input-evdev
   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
   AUTOLOAD:=$(call AutoProbe,yealink)
   $(call AddDepends/usb)
-  $(call AddDepends/input,+kmod-input-evdev)
 endef
 
 define KernelPackage/usb-yealink/description
@@ -1325,11 +1418,11 @@ $(eval $(call KernelPackage,usb-yealink))
 
 define KernelPackage/usb-cm109
   TITLE:=Support for CM109 device
+  DEPENDS:=+kmod-input-evdev
   KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
   AUTOLOAD:=$(call AutoProbe,cm109)
   $(call AddDepends/usb)
-  $(call AddDepends/input,+kmod-input-evdev)
 endef
 
 define KernelPackage/usb-cm109/description
@@ -1452,7 +1545,7 @@ endef
 
 $(eval $(call KernelPackage,usbmon))
 
-XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,xhci-hcd xhci-pci xhci-plat))
+XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,xhci-hcd xhci-pci xhci-plat-hcd))
 XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES))
 
 define KernelPackage/usb3
@@ -1462,6 +1555,7 @@ define KernelPackage/usb3
        CONFIG_USB_XHCI_HCD \
        CONFIG_USB_XHCI_PCI \
        CONFIG_USB_XHCI_PLATFORM \
+       CONFIG_USB_XHCI_MVEBU=y \
        CONFIG_USB_XHCI_HCD_DEBUGGING=n
   FILES:= \
        $(XHCI_FILES)