Add Tahvo USB support
[openwrt.git] / package / kernel / modules / usb.mk
index 548c6ce..7144833 100644 (file)
@@ -1,47 +1,23 @@
-# 
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2006-2010 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
-# $Id$
-
-USBMENU:=USB Support
-
-ifeq ($(KERNEL),2.4)
-  USBNET_DIR:=usb/net
-endif
 
 
-ifeq ($(KERNEL_PATCHVER),2.6.21)
-  USBNET_DIR:=usb/net
-  USBHID_DIR:=usb/input
-  USBINPUT_DIR:=usb/input
-endif
+USB_MENU:=USB Support
 
 
-USBNET_DIR?=net/usb
+USBNET_DIR:=net/usb
 USBHID_DIR?=hid/usbhid
 USBINPUT_DIR?=input/misc
 
 USBHID_DIR?=hid/usbhid
 USBINPUT_DIR?=input/misc
 
-define usbdep
-  SUBMENU:=$(USBMENU)
-  DEPENDS:=kmod-usb-core $(1)
-endef
-
-
 define KernelPackage/usb-core
 define KernelPackage/usb-core
-  SUBMENU:=$(USBMENU)
+  SUBMENU:=$(USB_MENU)
   TITLE:=Support for USB
   TITLE:=Support for USB
-  DEPENDS:=@USB_SUPPORT
+  DEPENDS:=@USB_SUPPORT +kmod-nls-base
   KCONFIG:=CONFIG_USB
   KCONFIG:=CONFIG_USB
-  AUTOLOAD:=$(call AutoLoad,20,usbcore)
-endef
-
-define KernelPackage/usb-core/2.4
-  FILES:=$(LINUX_DIR)/drivers/usb/usbcore.$(LINUX_KMOD_SUFFIX)
-endef
-
-define KernelPackage/usb-core/2.6
-  FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.ko
+  AUTOLOAD:=$(call AutoLoad,20,usbcore,1)
 endef
 
 define KernelPackage/usb-core/description
 endef
 
 define KernelPackage/usb-core/description
@@ -51,96 +27,93 @@ endef
 $(eval $(call KernelPackage,usb-core))
 
 
 $(eval $(call KernelPackage,usb-core))
 
 
+define AddDepends/usb
+  SUBMENU:=$(USB_MENU)
+  DEPENDS+=+!TARGET_etrax:kmod-usb-core $(1)
+endef
+
+
 define KernelPackage/usb-uhci
 define KernelPackage/usb-uhci
-  $(call usbdep,)
   TITLE:=Support for UHCI controllers
   KCONFIG:= \
        CONFIG_USB_UHCI_ALT \
        CONFIG_USB_UHCI_HCD
   TITLE:=Support for UHCI controllers
   KCONFIG:= \
        CONFIG_USB_UHCI_ALT \
        CONFIG_USB_UHCI_HCD
-endef
-
-define KernelPackage/usb-uhci/2.4
-#  KCONFIG:=CONFIG_USB_UHCI_ALT
-  FILES:=$(LINUX_DIR)/drivers/usb/host/uhci.o
-  AUTOLOAD:=$(call AutoLoad,50,uhci)
-endef
-
-define KernelPackage/usb-uhci/2.6
-#  KCONFIG:=CONFIG_USB_UHCI_HCD
   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
-  AUTOLOAD:=$(call AutoLoad,50,uhci-hcd)
+  AUTOLOAD:=$(call AutoLoad,50,uhci-hcd,1)
+  $(call AddDepends/usb)
 endef
 
 define KernelPackage/usb-uhci/description
  Kernel support for USB UHCI controllers
 endef
 
 endef
 
 define KernelPackage/usb-uhci/description
  Kernel support for USB UHCI controllers
 endef
 
-$(eval $(call KernelPackage,usb-uhci))
-
-
-define KernelPackage/usb-uhci-iv
-  $(call usbdep,@LINUX_2_4)
-  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 
-
-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,1))
 
 
 define KernelPackage/usb-ohci
 
 
 define KernelPackage/usb-ohci
-  $(call usbdep,)
   TITLE:=Support for OHCI controllers
   KCONFIG:= \
        CONFIG_USB_OHCI \
   TITLE:=Support for OHCI controllers
   KCONFIG:= \
        CONFIG_USB_OHCI \
-       CONFIG_USB_OHCI_HCD
+       CONFIG_USB_OHCI_HCD \
+       CONFIG_USB_OHCI_AR71XX=y
+  FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
+  AUTOLOAD:=$(call AutoLoad,50,ohci-hcd,1)
+  $(call AddDepends/usb)
 endef
 
 endef
 
-define KernelPackage/usb-ohci/2.4
-#  KCONFIG:=CONFIG_USB_OHCI
-  FILES:=$(LINUX_DIR)/drivers/usb/host/usb-ohci.o
-  AUTOLOAD:=$(call AutoLoad,50,usb-ohci)
+define KernelPackage/usb-ohci/description
+ Kernel support for USB OHCI controllers
 endef
 
 endef
 
-define KernelPackage/usb-ohci/2.6
-#  KCONFIG:=CONFIG_USB_OHCI_HCD
-  FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
-  AUTOLOAD:=$(call AutoLoad,50,ohci-hcd)
+$(eval $(call KernelPackage,usb-ohci,1))
+
+
+define KernelPackage/usb-tahvo
+  TITLE:=Support for Tahvo (Nokia n810) USB
+  KCONFIG:= \
+       CONFIG_CBUS_TAHVO_USB \
+       CONFIG_CBUS_TAHVO_USB_HOST_BY_DEFAULT=y \
+       CONFIG_USB_OHCI_HCD_OMAP1=y \
+       CONFIG_USB_GADGET_DEBUG_FS=n
+  DEPENDS:=@TARGET_omap24xx +kmod-usb-ohci
+  FILES:=$(LINUX_DIR)/drivers/cbus/tahvo-usb.ko
+  AUTOLOAD:=$(call AutoLoad,51,tahvo-usb)
+  $(call AddDepends/usb)
 endef
 
 endef
 
-define KernelPackage/usb-ohci/description
- Kernel support for USB OHCI controllers
+define KernelPackage/usb-tahvo/description
+  Kernel support for Nokia n810 USB OHCI controller.
 endef
 
 endef
 
-$(eval $(call KernelPackage,usb-ohci))
+$(eval $(call KernelPackage,usb-tahvo))
 
 
 
 
-define KernelPackage/usb-adm5120
-  $(call usbdep,@LINUX_2_6_ADM5120||@LINUX_2_6_ADM5120EB)
-  TITLE:=Support for the ADM5120 HCD controller
-  KCONFIG:=CONFIG_USB_ADM5120_HCD
-  FILES:=$(LINUX_DIR)/drivers/usb/host/adm5120-hcd.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,50,adm5120-hcd)
+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)
+  $(call AddDepends/usb)
 endef
 
 endef
 
-define KernelPackage/usb-adm5120/description
Kernel support for the ADM5120 HCD USB controller
+define KernelPackage/usb-isp116x-hcd/description
 Kernel support for the ISP116X USB Host Controller
 endef
 
 endef
 
-$(eval $(call KernelPackage,usb-adm5120))
+$(eval $(call KernelPackage,usb-isp116x-hcd))
 
 
 define KernelPackage/usb2
 
 
 define KernelPackage/usb2
-  $(call usbdep,)
   TITLE:=Support for USB2 controllers
   TITLE:=Support for USB2 controllers
-  KCONFIG:=CONFIG_USB_EHCI_HCD
-  FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,50,ehci-hcd)
+  KCONFIG:=CONFIG_USB_EHCI_HCD \
+    CONFIG_USB_EHCI_AR71XX=y
+  FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko
+  AUTOLOAD:=$(call AutoLoad,40,ehci-hcd,1)
+  $(call AddDepends/usb)
 endef
 
 define KernelPackage/usb2/description
 endef
 
 define KernelPackage/usb2/description
@@ -151,19 +124,11 @@ $(eval $(call KernelPackage,usb2))
 
 
 define KernelPackage/usb-acm
 
 
 define KernelPackage/usb-acm
-  $(call usbdep,)
   TITLE:=Support for modems/isdn controllers
   KCONFIG:=CONFIG_USB_ACM
   TITLE:=Support for modems/isdn controllers
   KCONFIG:=CONFIG_USB_ACM
-endef
-
-define KernelPackage/usb-acm/2.4
-  FILES:=$(LINUX_DIR)/drivers/usb/acm.o
-  AUTOLOAD:=$(call AutoLoad,60,acm)
-endef
-
-define KernelPackage/usb-acm/2.6
   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
   AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
   AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
+$(call AddDepends/usb)
 endef
 
 define KernelPackage/usb-acm/description
 endef
 
 define KernelPackage/usb-acm/description
@@ -174,25 +139,23 @@ $(eval $(call KernelPackage,usb-acm))
 
 
 define KernelPackage/usb-audio
 
 
 define KernelPackage/usb-audio
-  $(call usbdep,+kmod-soundcore)
-  TITLE:=Support for audio devices
+  TITLE:=Support for USB audio devices
   KCONFIG:= \
   KCONFIG:= \
-       CONFIG_USB_AUDIO
+       CONFIG_USB_AUDIO \
        CONFIG_SND_USB_AUDIO
        CONFIG_SND_USB_AUDIO
-endef
-
-define KernelPackage/usb-audio/2.4
-#  KCONFIG:=CONFIG_USB_AUDIO
-  FILES:=$(LINUX_DIR)/drivers/usb/audio.o
-  AUTOLOAD:=$(call AutoLoad,60,audio)
-endef
-
-define KernelPackage/usb-audio/2.6
-#  KCONFIG:=CONFIG_SND_USB_AUDIO
+  $(call AddDepends/usb)
+  $(call AddDepends/sound)
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.35)),1)
+  FILES:= \
+       $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
+       $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
+  AUTOLOAD:=$(call AutoLoad,60,snd-usbmidi-lib snd-usb-audio)
+else
   FILES:= \
        $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
        $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
   AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
   FILES:= \
        $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
        $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
   AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
+endif
 endef
 
 define KernelPackage/usb-audio/description
 endef
 
 define KernelPackage/usb-audio/description
@@ -203,19 +166,11 @@ $(eval $(call KernelPackage,usb-audio))
 
 
 define KernelPackage/usb-printer
 
 
 define KernelPackage/usb-printer
-  $(call usbdep,)
   TITLE:=Support for printers
   KCONFIG:=CONFIG_USB_PRINTER
   TITLE:=Support for printers
   KCONFIG:=CONFIG_USB_PRINTER
-endef
-
-define KernelPackage/usb-printer/2.4
-  FILES:=$(LINUX_DIR)/drivers/usb/printer.o
-  AUTOLOAD:=$(call AutoLoad,60,printer)
-endef
-
-define KernelPackage/usb-printer/2.6
   FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
   AUTOLOAD:=$(call AutoLoad,60,usblp)
   FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
   AUTOLOAD:=$(call AutoLoad,60,usblp)
+  $(call AddDepends/usb)
 endef
 
 define KernelPackage/usb-printer/description
 endef
 
 define KernelPackage/usb-printer/description
@@ -226,11 +181,11 @@ $(eval $(call KernelPackage,usb-printer))
 
 
 define KernelPackage/usb-serial
 
 
 define KernelPackage/usb-serial
-  $(call usbdep,)
   TITLE:=Support for USB-to-Serial converters
   KCONFIG:=CONFIG_USB_SERIAL
   TITLE:=Support for USB-to-Serial converters
   KCONFIG:=CONFIG_USB_SERIAL
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.ko
   AUTOLOAD:=$(call AutoLoad,60,usbserial)
   AUTOLOAD:=$(call AutoLoad,60,usbserial)
+  $(call AddDepends/usb)
 endef
 
 define KernelPackage/usb-serial/description
 endef
 
 define KernelPackage/usb-serial/description
@@ -240,27 +195,33 @@ endef
 $(eval $(call KernelPackage,usb-serial))
 
 
 $(eval $(call KernelPackage,usb-serial))
 
 
+define AddDepends/usb-serial
+  SUBMENU:=$(USB_MENU)
+  DEPENDS+=kmod-usb-serial $(1)
+endef
+
+
 define KernelPackage/usb-serial-airprime
 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
   KCONFIG:=CONFIG_USB_SERIAL_AIRPRIME
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.ko
   AUTOLOAD:=$(call AutoLoad,65,airprime)
   AUTOLOAD:=$(call AutoLoad,65,airprime)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-airprime/description
 endef
 
 define KernelPackage/usb-serial-airprime/description
- Kernel support for Airprime (EVDO) 
+ Kernel support for Airprime (EVDO)
 endef
 
 $(eval $(call KernelPackage,usb-serial-airprime))
 
 
 define KernelPackage/usb-serial-belkin
 endef
 
 $(eval $(call KernelPackage,usb-serial-airprime))
 
 
 define KernelPackage/usb-serial-belkin
-  $(call usbdep,kmod-usb-serial)
   TITLE:=Support for Belkin devices
   KCONFIG:=CONFIG_USB_SERIAL_BELKIN
   TITLE:=Support for Belkin devices
   KCONFIG:=CONFIG_USB_SERIAL_BELKIN
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.ko
   AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
   AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-belkin/description
 endef
 
 define KernelPackage/usb-serial-belkin/description
@@ -270,12 +231,27 @@ endef
 $(eval $(call KernelPackage,usb-serial-belkin))
 
 
 $(eval $(call KernelPackage,usb-serial-belkin))
 
 
+define KernelPackage/usb-serial-ch341
+  TITLE:=Support for CH341 devices
+  KCONFIG:=CONFIG_USB_SERIAL_CH341
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/ch341.ko
+  AUTOLOAD:=$(call AutoLoad,65,ch341)
+  $(call AddDepends/usb-serial)
+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
 define KernelPackage/usb-serial-ftdi
-  $(call usbdep,kmod-usb-serial)
   TITLE:=Support for FTDI devices
   KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
   TITLE:=Support for FTDI devices
   KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.ko
   AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
   AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-ftdi/description
 endef
 
 define KernelPackage/usb-serial-ftdi/description
@@ -286,11 +262,11 @@ $(eval $(call KernelPackage,usb-serial-ftdi))
 
 
 define KernelPackage/usb-serial-mct
 
 
 define KernelPackage/usb-serial-mct
-  $(call usbdep,kmod-usb-serial)
   TITLE:=Support for Magic Control Tech. devices
   KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
   TITLE:=Support for Magic Control Tech. devices
   KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.ko
   AUTOLOAD:=$(call AutoLoad,65,mct_u232)
   AUTOLOAD:=$(call AutoLoad,65,mct_u232)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-mct/description
 endef
 
 define KernelPackage/usb-serial-mct/description
@@ -301,11 +277,11 @@ $(eval $(call KernelPackage,usb-serial-mct))
 
 
 define KernelPackage/usb-serial-pl2303
 
 
 define KernelPackage/usb-serial-pl2303
-  $(call usbdep,kmod-usb-serial)
   TITLE:=Support for Prolific PL2303 devices
   KCONFIG:=CONFIG_USB_SERIAL_PL2303
   TITLE:=Support for Prolific PL2303 devices
   KCONFIG:=CONFIG_USB_SERIAL_PL2303
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.ko
   AUTOLOAD:=$(call AutoLoad,65,pl2303)
   AUTOLOAD:=$(call AutoLoad,65,pl2303)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-pl2303/description
 endef
 
 define KernelPackage/usb-serial-pl2303/description
@@ -315,12 +291,57 @@ endef
 $(eval $(call KernelPackage,usb-serial-pl2303))
 
 
 $(eval $(call KernelPackage,usb-serial-pl2303))
 
 
+define KernelPackage/usb-serial-cp210x
+  TITLE:=Support for Silicon Labs cp210x devices
+  KCONFIG:=CONFIG_USB_SERIAL_CP210X
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/cp210x.ko
+  AUTOLOAD:=$(call AutoLoad,65,cp210x)
+  $(call AddDepends/usb-serial)
+endef
+
+define KernelPackage/usb-serial-cp210x/description
+ Kernel support for Silicon Labs cp210x USB-to-Serial converters
+endef
+
+$(eval $(call KernelPackage,usb-serial-cp210x))
+
+
+define KernelPackage/usb-serial-ark3116
+  TITLE:=Support for ArkMicroChips ARK3116 devices
+  KCONFIG:=CONFIG_USB_SERIAL_ARK3116
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.ko
+  AUTOLOAD:=$(call AutoLoad,65,ark3116)
+  $(call AddDepends/usb-serial)
+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
+  TITLE:=Support for Ours Technology OTI6858 devices
+  KCONFIG:=CONFIG_USB_SERIAL_OTI6858
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.ko
+  AUTOLOAD:=$(call AutoLoad,65,oti6858)
+  $(call AddDepends/usb-serial)
+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
 define KernelPackage/usb-serial-sierrawireless
-  $(call usbdep,kmod-usb-serial @LINUX_2_6)
   TITLE:=Support for Sierra Wireless devices
   KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
   TITLE:=Support for Sierra Wireless devices
   KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.ko
   AUTOLOAD:=$(call AutoLoad,65,sierra)
   AUTOLOAD:=$(call AutoLoad,65,sierra)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-sierrawireless/description
 endef
 
 define KernelPackage/usb-serial-sierrawireless/description
@@ -330,12 +351,27 @@ endef
 $(eval $(call KernelPackage,usb-serial-sierrawireless))
 
 
 $(eval $(call KernelPackage,usb-serial-sierrawireless))
 
 
+define KernelPackage/usb-serial-motorola-phone
+  TITLE:=Support for Motorola usb phone
+  KCONFIG:=CONFIG_USB_SERIAL_MOTOROLA
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/moto_modem.ko
+  AUTOLOAD:=$(call AutoLoad,65,moto_modem)
+  $(call AddDepends/usb-serial)
+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
 define KernelPackage/usb-serial-visor
-  $(call usbdep,kmod-usb-serial)
   TITLE:=Support for Handspring Visor devices
   KCONFIG:=CONFIG_USB_SERIAL_VISOR
   TITLE:=Support for Handspring Visor devices
   KCONFIG:=CONFIG_USB_SERIAL_VISOR
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.ko
   AUTOLOAD:=$(call AutoLoad,65,visor)
   AUTOLOAD:=$(call AutoLoad,65,visor)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-visor/description
 endef
 
 define KernelPackage/usb-serial-visor/description
@@ -345,8 +381,25 @@ endef
 $(eval $(call KernelPackage,usb-serial-visor))
 
 
 $(eval $(call KernelPackage,usb-serial-visor))
 
 
+define KernelPackage/usb-serial-cypress-m8
+  TITLE:=Support for CypressM8 USB-Serial
+  KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.ko
+  AUTOLOAD:=$(call AutoLoad,65,cypress_m8)
+  $(call AddDepends/usb-serial)
+endef
+
+define KernelPackage/usb-serial-cypress-m8/description
+ Kernel support for devices with Cypress M8 USB to Serial chip
+ (for example, the Delorme Earthmate LT-20 GPS)
+ Supported microcontrollers in the CY4601 family are:
+       CY7C63741 CY7C63742 CY7C63743 CY7C64013
+endef
+
+$(eval $(call KernelPackage,usb-serial-cypress-m8))
+
+
 define KernelPackage/usb-serial-keyspan
 define KernelPackage/usb-serial-keyspan
-  $(call usbdep,kmod-usb-serial)
   TITLE:=Support for Keyspan USB-to-Serial devices
   KCONFIG:= \
        CONFIG_USB_SERIAL_KEYSPAN \
   TITLE:=Support for Keyspan USB-to-Serial devices
   KCONFIG:= \
        CONFIG_USB_SERIAL_KEYSPAN \
@@ -362,8 +415,9 @@ define KernelPackage/usb-serial-keyspan
        CONFIG_USB_SERIAL_KEYSPAN_MPR \
        CONFIG_USB_SERIAL_KEYSPAN_USA49W \
        CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
        CONFIG_USB_SERIAL_KEYSPAN_MPR \
        CONFIG_USB_SERIAL_KEYSPAN_USA49W \
        CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/keyspan.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/keyspan.ko
   AUTOLOAD:=$(call AutoLoad,65,keyspan)
   AUTOLOAD:=$(call AutoLoad,65,keyspan)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-keyspan/description
 endef
 
 define KernelPackage/usb-serial-keyspan/description
@@ -374,11 +428,11 @@ $(eval $(call KernelPackage,usb-serial-keyspan))
 
 
 define KernelPackage/usb-serial-option
 
 
 define KernelPackage/usb-serial-option
-  $(call usbdep,kmod-usb-serial @LINUX_2_6)
   TITLE:=Support for Option HSDPA modems
   KCONFIG:=CONFIG_USB_SERIAL_OPTION
   TITLE:=Support for Option HSDPA modems
   KCONFIG:=CONFIG_USB_SERIAL_OPTION
-  FILES:=$(LINUX_DIR)/drivers/usb/serial/option.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
   AUTOLOAD:=$(call AutoLoad,65,option)
   AUTOLOAD:=$(call AutoLoad,65,option)
+  $(call AddDepends/usb-serial)
 endef
 
 define KernelPackage/usb-serial-option/description
 endef
 
 define KernelPackage/usb-serial-option/description
@@ -389,11 +443,12 @@ $(eval $(call KernelPackage,usb-serial-option))
 
 
 define KernelPackage/usb-storage
 
 
 define KernelPackage/usb-storage
-  $(call usbdep,+kmod-scsi-core)
   TITLE:=USB Storage support
   TITLE:=USB Storage support
+  DEPENDS:= +!TARGET_x86:kmod-scsi-core
   KCONFIG:=CONFIG_USB_STORAGE
   KCONFIG:=CONFIG_USB_STORAGE
-  FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,60,scsi_mod sd_mod usb-storage)
+  FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.ko
+  AUTOLOAD:=$(call AutoLoad,60,usb-storage,1)
+  $(call AddDepends/usb)
 endef
 
 define KernelPackage/usb-storage/description
 endef
 
 define KernelPackage/usb-storage/description
@@ -403,12 +458,67 @@ endef
 $(eval $(call KernelPackage,usb-storage))
 
 
 $(eval $(call KernelPackage,usb-storage))
 
 
+define KernelPackage/usb-storage-extras
+  SUBMENU:=$(USB_MENU)
+  TITLE:=Extra drivers for usb-storage
+  DEPENDS:=+kmod-usb-storage
+  KCONFIG:= \
+       CONFIG_USB_STORAGE_ALAUDA \
+       CONFIG_USB_STORAGE_CYPRESS_ATACB \
+       CONFIG_USB_STORAGE_DATAFAB \
+       CONFIG_USB_STORAGE_FREECOM \
+       CONFIG_USB_STORAGE_ISD200 \
+       CONFIG_USB_STORAGE_JUMPSHOT \
+       CONFIG_USB_STORAGE_KARMA \
+       CONFIG_USB_STORAGE_SDDR09 \
+       CONFIG_USB_STORAGE_SDDR55 \
+       CONFIG_USB_STORAGE_USBAT
+  FILES:= \
+       $(LINUX_DIR)/drivers/usb/storage/ums-alauda.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-cypress.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-datafab.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-freecom.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-isd200.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-karma.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.ko \
+       $(LINUX_DIR)/drivers/usb/storage/ums-usbat.ko
+  AUTOLOAD:=$(call AutoLoad,60,ums-alauda ums-cypress ums-datafab \
+                               ums-freecom ums-isd200 ums-jumpshot \
+                               ums-karma ums-sddr09 ums-sddr55 ums-usbat)
+endef
+
+define KernelPackage/usb-storage-extras/description
+  Say Y here if you want to have some more drivers,
+  such as for SmartMedia card readers.
+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
 define KernelPackage/usb-atm
-  $(call usbdep,@LINUX_2_6 kmod-atm)
   TITLE:=Support for ATM on USB bus
   TITLE:=Support for ATM on USB bus
+  DEPENDS:=+kmod-atm
   KCONFIG:=CONFIG_USB_ATM
   KCONFIG:=CONFIG_USB_ATM
-  FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.ko
   AUTOLOAD:=$(call AutoLoad,60,usbatm)
   AUTOLOAD:=$(call AutoLoad,60,usbatm)
+  $(call AddDepends/usb)
 endef
 
 define KernelPackage/usb-atm/description
 endef
 
 define KernelPackage/usb-atm/description
@@ -418,80 +528,63 @@ endef
 $(eval $(call KernelPackage,usb-atm))
 
 
 $(eval $(call KernelPackage,usb-atm))
 
 
-define KernelPackage/usb-speedtouch
-  $(call usbdep,@LINUX_2_6 kmod-atm)
-  TITLE:=Support for SpeedTouch ADSL modems
+define AddDepends/usb-atm
+  SUBMENU:=$(USB_MENU)
+  DEPENDS+=kmod-usb-atm $(1)
+endef
+
+
+define KernelPackage/usb-atm-speedtouch
+  TITLE:=SpeedTouch USB ADSL modems support
   KCONFIG:=CONFIG_USB_SPEEDTOUCH
   KCONFIG:=CONFIG_USB_SPEEDTOUCH
-  FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.ko
   AUTOLOAD:=$(call AutoLoad,70,speedtch)
   AUTOLOAD:=$(call AutoLoad,70,speedtch)
+  $(call AddDepends/usb-atm)
 endef
 
 endef
 
-define KernelPackage/usb-speedtouch/description
+define KernelPackage/usb-atm-speedtouch/description
  Kernel support for SpeedTouch USB ADSL modems
 endef
 
  Kernel support for SpeedTouch USB ADSL modems
 endef
 
-$(eval $(call KernelPackage,usb-speedtouch))
+$(eval $(call KernelPackage,usb-atm-speedtouch))
 
 
 
 
-define KernelPackage/ueagle-atm
-  $(call usbdep,@LINUX_2_6 kmod-atm)
-  TITLE:=Driver for Eagle 8051 based USB ADSL modems
-  FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.$(LINUX_KMOD_SUFFIX)
+define KernelPackage/usb-atm-ueagle
+  TITLE:=Eagle 8051 based USB ADSL modems support
+  FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.ko
   KCONFIG:=CONFIG_USB_UEAGLEATM
   AUTOLOAD:=$(call AutoLoad,70,ueagle-atm)
   KCONFIG:=CONFIG_USB_UEAGLEATM
   AUTOLOAD:=$(call AutoLoad,70,ueagle-atm)
+  $(call AddDepends/usb-atm)
 endef
 
 endef
 
-define KernelPackage/ueagle-atm/description
+define KernelPackage/usb-atm-ueagle/description
  Kernel support for Eagle 8051 based USB ADSL modems
 endef
 
  Kernel support for Eagle 8051 based USB ADSL modems
 endef
 
-$(eval $(call KernelPackage,ueagle-atm))
+$(eval $(call KernelPackage,usb-atm-ueagle))
 
 
 
 
-define KernelPackage/usb-pwc
-  $(call usbdep,+kmod-videodev @LINUX_2_6)
-  TITLE:=Philips WebCam driver
-  KCONFIG:=CONFIG_USB_PWC CONFIG_VIDEO_V4L1=y CONFIG_VIDEO_CAPTURE_DRIVERS=y CONFIG_V4L_USB_DRIVERS=y CONFIG_USB_PWC_DEBUG=n
-  FILES:=$(LINUX_DIR)/drivers/media/video/pwc/pwc.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,70,pwc)
+define KernelPackage/usb-atm-cxacru
+  TITLE:=cxacru
+  FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.ko
+  KCONFIG:=CONFIG_USB_CXACRU
+  AUTOLOAD:=$(call AutoLoad,70,cxacru)
+  $(call AddDepends/usb-atm)
 endef
 
 endef
 
-
-define KernelPackage/usb-pwc/description
- Kernel modules for supporting Philips WebCam USB devices
-endef
-
-$(eval $(call KernelPackage,usb-pwc))
-
-
-define KernelPackage/cpia2
-  $(call usbdep,+kmod-videodev @LINUX_2_6)
-  TITLE:=CPIA2 video driver
-  KCONFIG:=CONFIG_VIDEO_CPIA2
-  FILES:=$(LINUX_DIR)/drivers/media/video/cpia2/cpia2.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,70,cpia2)
+define KernelPackage/usb-atm-cxacru/description
+ Kernel support for cxacru based USB ADSL modems
 endef
 
 endef
 
-define KernelPackage/cpia2/description
- Kernel modules for CPIA2 WebCam devices
-endef
-
-$(eval $(call KernelPackage,cpia2))
+$(eval $(call KernelPackage,usb-atm-cxacru))
 
 
 define KernelPackage/usb-net
 
 
 define KernelPackage/usb-net
-  $(call usbdep,)
   TITLE:=Kernel modules for USB-to-Ethernet convertors
   KCONFIG:=CONFIG_USB_USBNET
   TITLE:=Kernel modules for USB-to-Ethernet convertors
   KCONFIG:=CONFIG_USB_USBNET
-  AUTOLOAD:=$(call Autoload,60, usbnet)
-endef
-
-define KernelPackage/usb-net/2.4
-  FILES:=$(LINUX_DIR)/drivers/usb/usbnet.$(LINUX_KMOD_SUFFIX)
-endef
-
-define KernelPackage/usb-net/2.6
-  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,60,usbnet)
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
+  $(call AddDepends/usb)
 endef
 
 define KernelPackage/usb-net/description
 endef
 
 define KernelPackage/usb-net/description
@@ -501,12 +594,18 @@ endef
 $(eval $(call KernelPackage,usb-net))
 
 
 $(eval $(call KernelPackage,usb-net))
 
 
+define AddDepends/usb-net
+  SUBMENU:=$(USB_MENU)
+  DEPENDS+=kmod-usb-net $(1)
+endef
+
+
 define KernelPackage/usb-net-asix
 define KernelPackage/usb-net-asix
-  $(call usbdep,kmod-usb-net @LINUX_2_6)
   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
   KCONFIG:=CONFIG_USB_NET_AX8817X
   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
   KCONFIG:=CONFIG_USB_NET_AX8817X
-  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call Autoload,61,asix)
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
+  AUTOLOAD:=$(call AutoLoad,61,asix)
+  $(call AddDepends/usb-net)
 endef
 
 define KernelPackage/usb-net-asix/description
 endef
 
 define KernelPackage/usb-net-asix/description
@@ -516,12 +615,29 @@ endef
 $(eval $(call KernelPackage,usb-net-asix))
 
 
 $(eval $(call KernelPackage,usb-net-asix))
 
 
+define KernelPackage/usb-net-hso
+  TITLE:=Kernel module for Option USB High Speed Mobile Devices
+  KCONFIG:=CONFIG_USB_HSO
+  FILES:= \
+       $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.ko
+  AUTOLOAD:=$(call AutoLoad,61,hso)
+  $(call AddDepends/usb-net)
+  $(call AddDepends/rfkill)
+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
 define KernelPackage/usb-net-kaweth
-  $(call usbdep,kmod-usb-net @LINUX_2_6)
   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
   KCONFIG:=CONFIG_USB_KAWETH
   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
   KCONFIG:=CONFIG_USB_KAWETH
-  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call Autoload,61,kaweth)
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.ko
+  AUTOLOAD:=$(call AutoLoad,61,kaweth)
+  $(call AddDepends/usb-net)
 endef
 
 define KernelPackage/usb-net-kaweth/description
 endef
 
 define KernelPackage/usb-net-kaweth/description
@@ -532,11 +648,11 @@ $(eval $(call KernelPackage,usb-net-kaweth))
 
 
 define KernelPackage/usb-net-pegasus
 
 
 define KernelPackage/usb-net-pegasus
-  $(call usbdep,kmod-usb-net @LINUX_2_6)
   TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
   KCONFIG:=CONFIG_USB_PEGASUS
   TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
   KCONFIG:=CONFIG_USB_PEGASUS
-  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call Autoload,61,pegasus)
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.ko
+  AUTOLOAD:=$(call AutoLoad,61,pegasus)
+  $(call AddDepends/usb-net)
 endef
 
 define KernelPackage/usb-net-pegasus/description
 endef
 
 define KernelPackage/usb-net-pegasus/description
@@ -546,12 +662,73 @@ endef
 $(eval $(call KernelPackage,usb-net-pegasus))
 
 
 $(eval $(call KernelPackage,usb-net-pegasus))
 
 
+define KernelPackage/usb-net-mcs7830
+  TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
+  KCONFIG:=CONFIG_USB_NET_MCS7830
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.ko
+  AUTOLOAD:=$(call AutoLoad,61,mcs7830)
+  $(call AddDepends/usb-net)
+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
+  TITLE:=Support for DM9601 ethernet connections
+  KCONFIG:=CONFIG_USB_NET_DM9601
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.ko
+  AUTOLOAD:=$(call AutoLoad,61,dm9601)
+  $(call AddDepends/usb-net)
+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
+  TITLE:=Support for cdc ethernet connections
+  KCONFIG:=CONFIG_USB_NET_CDCETHER
+  FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ether.ko
+  AUTOLOAD:=$(call AutoLoad,61,cdc_ether)
+  $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-cdc-ether/description
+ Kernel support for USB CDC Ethernet devices
+endef
+
+$(eval $(call KernelPackage,usb-net-cdc-ether))
+
+
+define KernelPackage/usb-net-rndis
+  TITLE:=Support for RNDIS connections
+  KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
+  FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.ko
+  AUTOLOAD:=$(call AutoLoad,62,rndis_host)
+  $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
+endef
+
+define KernelPackage/usb-net-rndis/description
+ Kernel support for RNDIS connections
+endef
+
+$(eval $(call KernelPackage,usb-net-rndis))
+
+
 define KernelPackage/usb-hid
 define KernelPackage/usb-hid
-  $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
   TITLE:=Support for USB Human Input Devices
   TITLE:=Support for USB Human Input Devices
-  KCONFIG:=CONFIG_USB_HID
+  KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
   AUTOLOAD:=$(call AutoLoad,70,usbhid)
   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
   AUTOLOAD:=$(call AutoLoad,70,usbhid)
+  $(call AddDepends/usb)
+  $(call AddDepends/hid)
+  $(call AddDepends/input,+kmod-input-evdev)
 endef
 
 
 endef
 
 
@@ -563,11 +740,12 @@ $(eval $(call KernelPackage,usb-hid))
 
 
 define KernelPackage/usb-yealink
 
 
 define KernelPackage/usb-yealink
-  $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
   TITLE:=USB Yealink VOIP phone
   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
   AUTOLOAD:=$(call AutoLoad,70,yealink)
   TITLE:=USB Yealink VOIP phone
   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
   AUTOLOAD:=$(call AutoLoad,70,yealink)
+  $(call AddDepends/usb)
+  $(call AddDepends/input,+kmod-input-evdev)
 endef
 
 define KernelPackage/usb-yealink/description
 endef
 
 define KernelPackage/usb-yealink/description
@@ -575,3 +753,49 @@ define KernelPackage/usb-yealink/description
 endef
 
 $(eval $(call KernelPackage,usb-yealink))
 endef
 
 $(eval $(call KernelPackage,usb-yealink))
+
+
+define KernelPackage/usb-cm109
+  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)
+  $(call AddDepends/usb)
+  $(call AddDepends/input,+kmod-input-evdev)
+endef
+
+define KernelPackage/usb-cm109/description
+ Kernel support for CM109 VOIP phone
+endef
+
+$(eval $(call KernelPackage,usb-cm109))
+
+
+define KernelPackage/usb-test
+  TITLE:=USB Testing Driver
+  DEPENDS:=@DEVEL
+  KCONFIG:=CONFIG_USB_TEST
+  FILES:=$(LINUX_DIR)/drivers/usb/misc/usbtest.ko
+  $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb-test/description
+ Kernel support for testing USB Host Controller software.
+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))
+
This page took 0.044524 seconds and 4 git commands to generate.