Export USB host driver as kernel package
[openwrt/openwrt.git] / package / kernel / modules / usb.mk
index db6c403f3c0f9b8d1d2985af77019ef98a9ac1f4..3ab32fd30bd53ddbaad5d6cf08828a811662195e 100644 (file)
@@ -1,10 +1,9 @@
-# 
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2006-2008 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
-# $Id$
 
 USB_MENU:=USB Support
 
@@ -80,17 +79,17 @@ $(eval $(call KernelPackage,usb-uhci))
 
 define KernelPackage/usb-uhci-iv
   $(call usbdep,@LINUX_2_4)
-  TITLE:=Support for Intel/VIA UHCI controllers 
+  TITLE:=Support for Intel/VIA UHCI controllers
   KCONFIG:=CONFIG_USB_UHCI
   FILES:=$(LINUX_DIR)/drivers/usb/host/usb-uhci.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,50,usb-uhci) 
-endef 
+  AUTOLOAD:=$(call AutoLoad,50,usb-uhci)
+endef
 
 define KernelPackage/usb-uhci-iv/description
  Kernel support for Intel/VIA USB UHCI controllers
 endef
 
-$(eval $(call KernelPackage,usb-uhci-iv)) 
+$(eval $(call KernelPackage,usb-uhci-iv))
 
 
 define KernelPackage/usb-ohci
@@ -98,7 +97,8 @@ define KernelPackage/usb-ohci
   TITLE:=Support for OHCI controllers
   KCONFIG:= \
        CONFIG_USB_OHCI \
-       CONFIG_USB_OHCI_HCD
+       CONFIG_USB_OHCI_HCD \
+       CONFIG_USB_OHCI_AR71XX=y
 endef
 
 define KernelPackage/usb-ohci/2.4
@@ -134,13 +134,30 @@ endef
 
 $(eval $(call KernelPackage,usb-adm5120))
 
+define KernelPackage/usb-etrax
+  $(call usbdep,@TARGET_etrax)
+  DEPENDS=kmod-usb-core
+  TITLE:=Support for the ETRAX USB host controller
+  KCONFIG:=CONFIG_ETRAX_USB_HOST \
+       CONFIG_ETRAX_USB_HOST_PORT1=y CONFIG_ETRAX_USB_HOST_PORT2=y
+  FILES:=$(LINUX_DIR)/drivers/usb/host/hc-crisv10.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,50,hc-crisv10)
+endef
+
+define KernelPackage/usb-etrax/description
+ Kernel support for the ETRAX USB host controller
+endef
+
+$(eval $(call KernelPackage,usb-etrax))
+
 
 define KernelPackage/usb2
   $(call usbdep,)
   TITLE:=Support for USB2 controllers
-  KCONFIG:=CONFIG_USB_EHCI_HCD
+  KCONFIG:=CONFIG_USB_EHCI_HCD \
+    CONFIG_USB_EHCI_AR71XX=y
   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,50,ehci-hcd)
+  AUTOLOAD:=$(call AutoLoad,40,ehci-hcd)
 endef
 
 define KernelPackage/usb2/description
@@ -242,14 +259,14 @@ $(eval $(call KernelPackage,usb-serial))
 
 define KernelPackage/usb-serial-airprime
   $(call usbdep,kmod-usb-serial @LINUX_2_6)
-  TITLE:=Support for Airprime (EVDO) 
+  TITLE:=Support for Airprime (EVDO)
   KCONFIG:=CONFIG_USB_SERIAL_AIRPRIME
   FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,65,airprime)
 endef
 
 define KernelPackage/usb-serial-airprime/description
- Kernel support for Airprime (EVDO) 
+ Kernel support for Airprime (EVDO)
 endef
 
 $(eval $(call KernelPackage,usb-serial-airprime))
@@ -270,6 +287,21 @@ endef
 $(eval $(call KernelPackage,usb-serial-belkin))
 
 
+define KernelPackage/usb-serial-ch341
+  $(call usbdep,kmod-usb-serial @LINUX_2_6&&@!LINUX_2_6_23)
+  TITLE:=Support for CH341 devices
+  KCONFIG:=CONFIG_USB_SERIAL_CH341
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/ch341.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,65,ch341)
+endef
+
+define KernelPackage/usb-serial-belkin/description
+ Kernel support for Winchiphead CH341 USB-to-Serial converters
+endef
+
+$(eval $(call KernelPackage,usb-serial-ch341))
+
+
 define KernelPackage/usb-serial-ftdi
   $(call usbdep,kmod-usb-serial)
   TITLE:=Support for FTDI devices
@@ -315,8 +347,53 @@ endef
 $(eval $(call KernelPackage,usb-serial-pl2303))
 
 
-define KernelPackage/usb-serial-sierrawireless
+define KernelPackage/usb-serial-cp2101
+  $(call usbdep,kmod-usb-serial)
+  TITLE:=Support for Silicon Labs cp2101 devices
+  KCONFIG:=CONFIG_USB_SERIAL_CP2101
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/cp2101.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,65,cp2101)
+endef
+
+define KernelPackage/usb-serial-cp2101/description
+ Kernel support for Silicon Labs cp2101 USB-to-Serial converters
+endef
+
+$(eval $(call KernelPackage,usb-serial-cp2101))
+
+
+define KernelPackage/usb-serial-ark3116
+  $(call usbdep,kmod-usb-serial @LINUX_2_6)
+  TITLE:=Support for ArkMicroChips ARK3116 devices
+  KCONFIG:=CONFIG_USB_SERIAL_ARK3116
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,65,ark3116)
+endef
+
+define KernelPackage/usb-serial-ark3116/description
+ Kernel support for ArkMicroChips ARK3116 USB-to-Serial converters
+endef
+
+$(eval $(call KernelPackage,usb-serial-ark3116))
+
+
+define KernelPackage/usb-serial-oti6858
   $(call usbdep,kmod-usb-serial @LINUX_2_6)
+  TITLE:=Support for Ours Technology OTI6858 devices
+  KCONFIG:=CONFIG_USB_SERIAL_OTI6858
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,65,oti6858)
+endef
+
+define KernelPackage/usb-serial-oti6858/description
+ Kernel support for Ours Technology OTI6858 USB-to-Serial converters
+endef
+
+$(eval $(call KernelPackage,usb-serial-oti6858))
+
+
+define KernelPackage/usb-serial-sierrawireless
+  $(call usbdep,kmod-usb-serial)
   TITLE:=Support for Sierra Wireless devices
   KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
   FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.$(LINUX_KMOD_SUFFIX)
@@ -330,6 +407,22 @@ endef
 $(eval $(call KernelPackage,usb-serial-sierrawireless))
 
 
+define KernelPackage/usb-serial-motorola-phone
+  $(call usbdep,kmod-usb-serial)
+  TITLE:=Support for Motorola usb phone
+  KCONFIG:=CONFIG_USB_SERIAL_MOTOROLA
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/moto_modem.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,65,moto_modem)
+endef
+
+define KernelPackage/usb-serial-motorola-phone/description
+ Kernel support for Motorola usb phone
+endef
+
+$(eval $(call KernelPackage,usb-serial-motorola-phone))
+
+
+
 define KernelPackage/usb-serial-visor
   $(call usbdep,kmod-usb-serial)
   TITLE:=Support for Handspring Visor devices
@@ -434,7 +527,7 @@ $(eval $(call KernelPackage,usb-atm))
 
 
 define KernelPackage/usb-atm-speedtouch
-  $(call usbdep,@LINUX_2_6 kmod-usb-atm)
+  $(call usbdep,kmod-usb-atm @LINUX_2_6)
   TITLE:=SpeedTouch USB ADSL modems support
   KCONFIG:=CONFIG_USB_SPEEDTOUCH
   FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.$(LINUX_KMOD_SUFFIX)
@@ -449,7 +542,7 @@ $(eval $(call KernelPackage,usb-atm-speedtouch))
 
 
 define KernelPackage/usb-atm-ueagle
-  $(call usbdep,@LINUX_2_6 kmod-usb-atm)
+  $(call usbdep,kmod-usb-atm @LINUX_2_6)
   TITLE:=Eagle 8051 based USB ADSL modems support
   FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.$(LINUX_KMOD_SUFFIX)
   KCONFIG:=CONFIG_USB_UEAGLEATM
@@ -462,6 +555,20 @@ endef
 
 $(eval $(call KernelPackage,usb-atm-ueagle))
 
+define KernelPackage/usb-atm-cxacru
+  $(call usbdep,kmod-usb-atm @LINUX_2_6)
+  TITLE:=cxacru
+  FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.$(LINUX_KMOD_SUFFIX)
+  KCONFIG:=CONFIG_USB_CXACRU
+  AUTOLOAD:=$(call AutoLoad,70,cxacru)
+endef
+
+define KernelPackage/usb-atm-cxacru/description
+ Kernel support for cxacru based USB ADSL modems
+endef
+
+$(eval $(call KernelPackage,usb-atm-cxacru))
+
 
 define KernelPackage/usb-net
   $(call usbdep,)
@@ -500,6 +607,22 @@ endef
 $(eval $(call KernelPackage,usb-net-asix))
 
 
+define KernelPackage/usb-net-hso
+  $(call usbdep,kmod-usb-net @LINUX_2_6 @!LINUX_2_6_21 @!LINUX_2_6_23 @!LINUX_2_6_24 @!LINUX_2_6_25 +!TARGET_rb532||!TARGET_avr32||!TARGET_brcm47xx||!TARGET_s3c24xx||!TARGET_ifxmips||!TARGET_atheros||!TARGET_adm5120||!TARGET_ar7||!TARGET_ppc40x||!TARGET_ixp4xx||!TARGET_rdc:kmod-rfkill)
+  TITLE:=Kernel module for Option USB High Speed Mobile Devices
+  KCONFIG:=CONFIG_USB_HSO
+  FILES:= \
+       $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,61,hso)
+endef
+
+define KernelPackage/usb-net-hso/description
+ Kernel module for Option USB High Speed Mobile Devices
+endef
+
+$(eval $(call KernelPackage,usb-net-hso))
+
+
 define KernelPackage/usb-net-kaweth
   $(call usbdep,kmod-usb-net @LINUX_2_6)
   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
@@ -530,6 +653,34 @@ endef
 $(eval $(call KernelPackage,usb-net-pegasus))
 
 
+define KernelPackage/usb-net-mcs7830
+  $(call usbdep,kmod-usb-net @LINUX_2_6)
+  TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
+  KCONFIG:=CONFIG_USB_NET_MCS7830
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,61,mcs7830)
+endef
+
+define KernelPackage/usb-net-mcs7830/description
+ Kernel module for USB-to-Ethernet MCS7830 convertors
+endef
+
+$(eval $(call KernelPackage,usb-net-mcs7830))
+
+define KernelPackage/usb-net-dm9601-ether
+  $(call usbdep,kmod-usb-net @LINUX_2_6)
+  TITLE:=Support for DM9601 ethernet connections
+  KCONFIG:=CONFIG_USB_NET_DM9601
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,61,dm9601)
+endef
+
+define KernelPackage/usb-net-dm9601-ether/description
+  Kernel support for USB DM9601 devices
+endef
+
+$(eval $(call KernelPackage,usb-net-dm9601-ether))
+
 define KernelPackage/usb-net-cdc-ether
   $(call usbdep,kmod-usb-net @LINUX_2_6)
   TITLE:=Support for cdc ethernet connections
@@ -545,10 +696,26 @@ endef
 $(eval $(call KernelPackage,usb-net-cdc-ether))
 
 
+define KernelPackage/usb-net-rndis
+  $(call usbdep,kmod-usb-net @LINUX_2_6)
+  TITLE:=Support for RNDIS connections
+  DEPENDS:=+kmod-usb-net-cdc-ether
+  KCONFIG:=CONFIG_USB_NET_RNDIS_HOST 
+  FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,62,rndis_host)
+endef
+
+define KernelPackage/usb-net-rndis/description
+ Kernel support for RNDIS connections
+endef
+
+$(eval $(call KernelPackage,usb-net-rndis))
+
+
 define KernelPackage/usb-hid
-  $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
+  $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev +kmod-hid)
   TITLE:=Support for USB Human Input Devices
-  KCONFIG:=CONFIG_USB_HID
+  KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID
   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
   AUTOLOAD:=$(call AutoLoad,70,usbhid)
 endef
@@ -575,6 +742,22 @@ endef
 
 $(eval $(call KernelPackage,usb-yealink))
 
+
+define KernelPackage/usb-cm109
+  $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
+  TITLE:=Support for CM109 device
+  KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
+  FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
+  AUTOLOAD:=$(call AutoLoad,70,cm109)
+endef
+
+define KernelPackage/usb-cm109/description
+ Kernel support for CM109 VOIP phone
+endef
+
+$(eval $(call KernelPackage,usb-cm109))
+
+
 define KernelPackage/usb-test
   $(call usbdep,@LINUX_2_6 @DEVEL)
   TITLE:=USB Testing Driver
@@ -588,3 +771,16 @@ endef
 
 $(eval $(call KernelPackage,usb-test))
 
+define KernelPackage/usb-phidget
+  $(call usbdep,@LINUX_2_6)
+  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
+endef
+
+define KernelPackage/usb-phidget/description
+ Kernel support for USB Phidget devices.
+endef
+
+$(eval $(call KernelPackage,usb-phidget))
+