kernel: add dependencies for kernel 3.10
[openwrt.git] / package / kernel / modules / usb.mk
index e4f0995..1cb8e2c 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.2)),1)
-    FILES:= \
+  FILES:= \
        $(LINUX_DIR)/drivers/usb/core/usbcore.ko \
        $(LINUX_DIR)/drivers/usb/usb-common.ko
-    AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1)
-  else
-    FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.ko
-    AUTOLOAD:=$(call AutoLoad,20,usbcore,1)
-  endif
+  AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1)
   $(call AddDepends/nls)
 endef
 
@@ -37,7 +32,7 @@ $(eval $(call KernelPackage,usb-core))
 
 define AddDepends/usb
   SUBMENU:=$(USB_MENU)
-  DEPENDS+=+!TARGET_etrax:kmod-usb-core $(1)
+  DEPENDS+=+kmod-usb-core $(1)
 endef
 
 
@@ -101,8 +96,8 @@ define KernelPackage/usb-ohci
        CONFIG_USB_OHCI_HCD \
        CONFIG_USB_OHCI_ATH79=y \
        CONFIG_USB_OHCI_BCM63XX=y \
-       CONFIG_USB_OHCI_RT3883=y \
-       CONFIG_USB_OCTEON_OHCI=y
+       CONFIG_USB_OCTEON_OHCI=y \
+       CONFIG_USB_OHCI_HCD_PLATFORM=y
   FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
   AUTOLOAD:=$(call AutoLoad,50,ohci-hcd,1)
   $(call AddDepends/usb)
@@ -115,109 +110,42 @@ endef
 $(eval $(call KernelPackage,usb-ohci,1))
 
 
-define KernelPackage/musb-hdrc
-  TITLE:=Support for Mentor Graphics silicon dual role USB
-  KCONFIG:= \
-       CONFIG_USB_MUSB_HDRC \
-       CONFIG_MUSB_PIO_ONLY=n \
-       CONFIG_USB_MUSB_OTG=y \
-       CONFIG_USB_MUSB_DEBUG=y
-  DEPENDS:=@TARGET_omap24xx
-  FILES:=$(LINUX_DIR)/drivers/usb/musb/musb_hdrc.ko
-  AUTOLOAD:=$(call AutoLoad,46,musb_hdrc)
-  $(call AddDepends/usb)
-endef
-
-define KernelPackage/musb-hdrc/description
-  Kernel support for Mentor Graphics silicon dual role USB device.
-endef
-
-$(eval $(call KernelPackage,musb-hdrc))
-
-
-define KernelPackage/nop-usb-xceiv
-  TITLE:=Support for USB OTG NOP transceiver
-  KCONFIG:= \
-       CONFIG_NOP_USB_XCEIV
-  DEPENDS:=@TARGET_omap24xx
-  FILES:=$(LINUX_DIR)/drivers/usb/otg/nop-usb-xceiv.ko
-  AUTOLOAD:=$(call AutoLoad,45,nop-usb-xceiv)
-  $(call AddDepends/usb)
-endef
-
-define KernelPackage/nop-usb-xceiv/description
-  Support for USB OTG NOP transceiver
-endef
-
-$(eval $(call KernelPackage,nop-usb-xceiv))
-
-
-define KernelPackage/tusb6010
-  TITLE:=Support for TUSB 6010
-  KCONFIG:= \
-       CONFIG_USB_MUSB_TUSB6010 \
-       CONFIG_USB_TUSB6010=y
-  DEPENDS:=+kmod-musb-hdrc +kmod-nop-usb-xceiv
-  $(call AddDepends/usb)
-endef
-
-define KernelPackage/tusb6010/description
-  TUSB6010 support
-endef
-
-$(eval $(call KernelPackage,tusb6010))
-
-
-define KernelPackage/usb-tahvo
-  TITLE:=Support for Tahvo (Nokia n810) USB
-  KCONFIG:= \
-       CONFIG_CBUS_TAHVO_USB \
-       CONFIG_CBUS_TAHVO_USB_HOST_BY_DEFAULT=n \
-       CONFIG_USB_OHCI_HCD_OMAP1=y \
-       CONFIG_USB_GADGET_DEBUG_FS=n
-  DEPENDS:=@TARGET_omap24xx +kmod-tusb6010 +kmod-usb-gadget
-  FILES:=$(LINUX_DIR)/drivers/cbus/tahvo-usb.ko
-  AUTOLOAD:=$(call AutoLoad,45,tahvo-usb)
-  $(call AddDepends/usb)
-endef
-
-define KernelPackage/usb-tahvo/description
-  Kernel support for Nokia n810 USB OHCI controller.
-endef
-
-$(eval $(call KernelPackage,usb-tahvo))
-
-
-define KernelPackage/usb-isp116x-hcd
-  TITLE:=Support for the ISP116x USB Host Controller
-  DEPENDS:=@TARGET_ppc40x
-  KCONFIG:= \
-       CONFIG_USB_ISP116X_HCD \
-       CONFIG_USB_ISP116X_HCD_OF=y \
-       CONFIG_USB_ISP116X_HCD_PLATFORM=n
-  FILES:=$(LINUX_DIR)/drivers/usb/host/isp116x-hcd.ko
-  AUTOLOAD:=$(call AutoLoad,50,isp116x-hcd)
+define KernelPackage/usb2-fsl
+  TITLE:=Support for Freescale USB2 controllers
+  DEPENDS:=TARGET_mpc85xx
+  KCONFIG:=\
+       CONFIG_USB_FSL_MPH_DR_OF \
+       CONFIG_USB_EHCI_FSL=y
+  FILES:=$(LINUX_DIR)/drivers/usb/host/fsl-mph-dr-of.ko
+  AUTOLOAD:=$(call AutoLoad,39,fsl-mph-dr-of,1)
   $(call AddDepends/usb)
 endef
 
-define KernelPackage/usb-isp116x-hcd/description
-  Kernel support for the ISP116X USB Host Controller
+define KernelPackage/usb2-fsl/description
+ Kernel support for Freescale USB2 (EHCI) controllers
 endef
 
-$(eval $(call KernelPackage,usb-isp116x-hcd))
+$(eval $(call KernelPackage,usb2-fsl))
 
 
 define KernelPackage/usb2
   TITLE:=Support for USB2 controllers
-  DEPENDS:=+TARGET_brcm47xx:kmod-usb-brcm47xx
+  DEPENDS:=+TARGET_brcm47xx:kmod-usb-brcm47xx +TARGET_mpc85xx:kmod-usb2-fsl
   KCONFIG:=CONFIG_USB_EHCI_HCD \
-    CONFIG_USB_EHCI_ATH79=y \
-    CONFIG_USB_EHCI_BCM63XX=y \
-    CONFIG_USB_EHCI_RT3883=y \
-    CONFIG_USB_OCTEON_EHCI=y \
-    CONFIG_USB_EHCI_FSL=n
+       CONFIG_USB_EHCI_ATH79=y \
+       CONFIG_USB_EHCI_BCM63XX=y \
+       CONFIG_USB_OCTEON_EHCI=y \
+       CONFIG_USB_EHCI_HCD_ORION=y \
+       CONFIG_USB_EHCI_HCD_PLATFORM=y
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.8.0)),1)
+  FILES:= \
+       $(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko \
+       $(LINUX_DIR)/drivers/usb/host/ehci-platform.ko
+  AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform,1)
+else
   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko
   AUTOLOAD:=$(call AutoLoad,40,ehci-hcd,1)
+endif
   $(call AddDepends/usb)
 endef
 
@@ -228,6 +156,22 @@ endef
 $(eval $(call KernelPackage,usb2))
 
 
+define KernelPackage/usb2-pci
+  TITLE:=Support for PCI USB2 controllers
+  DEPENDS:=@PCI_SUPPORT @(LINUX_3_8||LINUX_3_9||LINUX_3_10) +kmod-usb2
+  KCONFIG:=CONFIG_USB_EHCI_PCI
+  FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko
+  AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1)
+  $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb2-pci/description
+ Kernel support for PCI USB2 (EHCI) controllers
+endef
+
+$(eval $(call KernelPackage,usb2-pci))
+
+
 define KernelPackage/usb-acm
   TITLE:=Support for modems/isdn controllers
   KCONFIG:=CONFIG_USB_ACM
@@ -243,6 +187,22 @@ endef
 $(eval $(call KernelPackage,usb-acm))
 
 
+define KernelPackage/usb-wdm
+  TITLE:=USB Wireless Device Management
+  KCONFIG:=CONFIG_USB_WDM
+  FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-wdm.ko
+  AUTOLOAD:=$(call AutoLoad,60,cdc-wdm)
+$(call AddDepends/usb)
+$(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-wdm/description
+ USB Wireless Device Management support
+endef
+
+$(eval $(call KernelPackage,usb-wdm))
+
+
 define KernelPackage/usb-audio
   TITLE:=Support for USB audio devices
   KCONFIG:= \
@@ -307,21 +267,6 @@ define AddDepends/usb-serial
 endef
 
 
-define KernelPackage/usb-serial-airprime
-  TITLE:=Support for Airprime (EVDO)
-  KCONFIG:=CONFIG_USB_SERIAL_AIRPRIME
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.ko
-  AUTOLOAD:=$(call AutoLoad,65,airprime)
-  $(call AddDepends/usb-serial)
-endef
-
-define KernelPackage/usb-serial-airprime/description
- Kernel support for Airprime (EVDO)
-endef
-
-$(eval $(call KernelPackage,usb-serial-airprime))
-
-
 define KernelPackage/usb-serial-belkin
   TITLE:=Support for Belkin devices
   KCONFIG:=CONFIG_USB_SERIAL_BELKIN
@@ -576,7 +521,6 @@ $(eval $(call KernelPackage,usb-serial-keyspan))
 
 define KernelPackage/usb-serial-wwan
   TITLE:=Support for GSM and CDMA modems
-  DEPENDS:= @!LINUX_2_6_30&&!LINUX_2_6_31&&!LINUX_2_6_32
   KCONFIG:=CONFIG_USB_SERIAL_WWAN
   FILES:=$(LINUX_DIR)/drivers/usb/serial/usb_wwan.ko
   AUTOLOAD:=$(call AutoLoad,61,usb_wwan)
@@ -592,7 +536,7 @@ $(eval $(call KernelPackage,usb-serial-wwan))
 
 define KernelPackage/usb-serial-option
   TITLE:=Support for Option HSDPA modems
-  DEPENDS:=+!LINUX_2_6_30&&!LINUX_2_6_31&&!LINUX_2_6_32:kmod-usb-serial-wwan
+  DEPENDS:=+kmod-usb-serial-wwan
   KCONFIG:=CONFIG_USB_SERIAL_OPTION
   FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
   AUTOLOAD:=$(call AutoLoad,65,option)
@@ -611,6 +555,7 @@ define KernelPackage/usb-serial-qualcomm
   KCONFIG:=CONFIG_USB_SERIAL_QUALCOMM
   FILES:=$(LINUX_DIR)/drivers/usb/serial/qcserial.ko
   AUTOLOAD:=$(call AutoLoad,65,qcserial)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-qualcomm/description
@@ -675,21 +620,6 @@ endef
 $(eval $(call KernelPackage,usb-storage-extras))
 
 
-define KernelPackage/usb-video
-  TITLE:=Support for USB video devices
-  KCONFIG:=CONFIG_VIDEO_USBVIDEO
-  FILES:=$(LINUX_DIR)/drivers/media/video/usbvideo/usbvideo.ko
-  AUTOLOAD:=$(call AutoLoad,61,usbvideo)
-  $(call AddDepends/usb)
-endef
-
-define KernelPackage/usb-video/description
- Kernel support for USB video devices
-endef
-
-$(eval $(call KernelPackage,usb-video))
-
-
 define KernelPackage/usb-atm
   TITLE:=Support for ATM on USB bus
   DEPENDS:=+kmod-atm
@@ -884,6 +814,21 @@ endef
 $(eval $(call KernelPackage,usb-net-cdc-ether))
 
 
+define KernelPackage/usb-net-qmi-wwan
+  TITLE:=QMI WWAN driver
+  KCONFIG:=CONFIG_USB_NET_QMI_WWAN
+  FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/qmi_wwan.ko
+  AUTOLOAD:=$(call AutoLoad,61,qmi_wwan)
+  $(call AddDepends/usb-net,+kmod-usb-wdm)
+endef
+
+define KernelPackage/usb-net-qmi-wwan/description
+ QMI WWAN driver for Qualcomm MSM based 3G and LTE modems
+endef
+
+$(eval $(call KernelPackage,usb-net-qmi-wwan))
+
+
 define KernelPackage/usb-net-rndis
   TITLE:=Support for RNDIS connections
   KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
@@ -898,6 +843,37 @@ endef
 
 $(eval $(call KernelPackage,usb-net-rndis))
 
+define KernelPackage/usb-net-cdc-mbim
+  SUBMENU:=$(USB_MENU)
+  TITLE:=Kernel module for MBIM Devices
+  KCONFIG:=CONFIG_USB_NET_CDC_MBIM
+  FILES:= \
+   $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_mbim.ko
+  AUTOLOAD:=$(call AutoLoad,62,cdc_mbim)
+  $(call AddDepends/usb-net,+kmod-usb-wdm,+kmod-usb-net-cdc-ncm)
+endef
+
+define KernelPackage/usb-net-cdc-mbim/description
+ Kernel module for Option USB High Speed Mobile Devices
+endef
+
+$(eval $(call KernelPackage,usb-net-cdc-mbim))
+
+define KernelPackage/usb-net-cdc-ncm
+  TITLE:=Support for CDC NCM connections
+  KCONFIG:=CONFIG_USB_NET_CDC_NCM
+  FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
+  AUTOLOAD:=$(call AutoLoad,61,cdc_ncm)
+  $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-cdc-ncm/description
+ Kernel support for CDC NCM connections
+endef
+
+$(eval $(call KernelPackage,usb-net-cdc-ncm))
+
+
 define KernelPackage/usb-net-sierrawireless
   TITLE:=Support for Sierra Wireless devices
   KCONFIG:=CONFIG_USB_SIERRA_NET
@@ -913,6 +889,21 @@ endef
 $(eval $(call KernelPackage,usb-net-sierrawireless))
 
 
+define KernelPackage/usb-net-ipheth
+  TITLE:=Apple iPhone USB Ethernet driver
+  KCONFIG:=CONFIG_USB_IPHETH
+  FILES:=$(LINUX_DIR)/drivers/net/usb/ipheth.ko
+  AUTOLOAD:=$(call AutoLoad,64,ipheth)
+  $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-ipheth/description
+ Kernel support for Apple iPhone USB Ethernet driver
+endef
+
+$(eval $(call KernelPackage,usb-net-ipheth))
+
+
 define KernelPackage/usb-hid
   TITLE:=Support for USB Human Input Devices
   KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
@@ -978,52 +969,34 @@ endef
 $(eval $(call KernelPackage,usb-test))
 
 
-define KernelPackage/usb-phidget
-  TITLE:=USB Phidget Driver
-  KCONFIG:=CONFIG_USB_PHIDGET CONFIG_USB_PHIDGETKIT CONFIG_USB_PHIDGETMOTORCONTROL CONFIG_USB_PHIDGETSERVO
-  FILES:=$(LINUX_DIR)/drivers/usb/misc/phidget*.ko
-$(call AddDepends/usb)
-endef
-
-define KernelPackage/usb-phidget/description
- Kernel support for USB Phidget devices.
-endef
-
-$(eval $(call KernelPackage,usb-phidget))
-
-define KernelPackage/usb-rt305x-dwc_otg
-  TITLE:=RT305X USB controller driver
-  DEPENDS:=@TARGET_ramips_rt305x
+define KernelPackage/usbip
+  TITLE := USB-over-IP kernel support
   KCONFIG:= \
-       CONFIG_DWC_OTG \
-       CONFIG_DWC_OTG_HOST_ONLY=y \
-       CONFIG_DWC_OTG_DEVICE_ONLY=n \
-       CONFIG_DWC_OTG_DEBUG=n
-  FILES:=$(LINUX_DIR)/drivers/usb/dwc_otg/dwc_otg.ko
-  AUTOLOAD:=$(call AutoLoad,54,dwc_otg,1)
+       CONFIG_USBIP_CORE \
+       CONFIG_USBIP_DEBUG=n
+  FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip-core.ko
+  AUTOLOAD:=$(call AutoLoad,90,usbip-core)
   $(call AddDepends/usb)
 endef
+$(eval $(call KernelPackage,usbip))
 
-define KernelPackage/usb-rt305x-dwc_otg/description
-  This driver provides USB Device Controller support for the
-  Synopsys DesignWare USB OTG Core used in the Ralink RT305X SoCs.
+define KernelPackage/usbip-client
+  TITLE := USB-over-IP client driver
+  DEPENDS := +kmod-usbip
+  KCONFIG := CONFIG_USBIP_VHCI_HCD
+  FILES := $(LINUX_DIR)/drivers/staging/usbip/vhci-hcd.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD := $(call AutoLoad,95,vhci-hcd)
+  $(call AddDepends/usb)
 endef
+$(eval $(call KernelPackage,usbip-client))
 
-$(eval $(call KernelPackage,usb-rt305x-dwc_otg))
-
-define KernelPackage/usb-brcm47xx
-  SUBMENU:=$(USB_MENU)
-  TITLE:=Support for USB on bcm47xx
-  DEPENDS:=@USB_SUPPORT @TARGET_brcm47xx
-  KCONFIG:= \
-       CONFIG_USB_HCD_BCMA \
-       CONFIG_USB_HCD_SSB
-  FILES:= \
-       $(LINUX_DIR)/drivers/usb/host/bcma-hcd.ko \
-       $(LINUX_DIR)/drivers/usb/host/ssb-hcd.ko
-  AUTOLOAD:=$(call AutoLoad,19,bcma-hcd ssb-hcd,1)
+define KernelPackage/usbip-server
+$(call KernelPackage/usbip/Default)
+  TITLE := USB-over-IP host driver
+  DEPENDS := +kmod-usbip
+  KCONFIG := CONFIG_USBIP_HOST
+  FILES := $(LINUX_DIR)/drivers/staging/usbip/usbip-host.ko
+  AUTOLOAD := $(call AutoLoad,95,usbip-host)
   $(call AddDepends/usb)
 endef
-
-$(eval $(call KernelPackage,usb-brcm47xx))
-
+$(eval $(call KernelPackage,usbip-server))