Load MUSB before gadget and host drivers are loaded
[openwrt.git] / package / kernel / modules / usb.mk
1 #
2 # Copyright (C) 2006-2010 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 USB_MENU:=USB Support
9
10 USBNET_DIR:=net/usb
11 USBHID_DIR?=hid/usbhid
12 USBINPUT_DIR?=input/misc
13
14 define KernelPackage/usb-core
15   SUBMENU:=$(USB_MENU)
16   TITLE:=Support for USB
17   DEPENDS:=@USB_SUPPORT +kmod-nls-base
18   KCONFIG:=CONFIG_USB CONFIG_XPS_USB_HCD_XILINX=n CONFIG_USB_FHCI_HCD=n
19   FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.ko
20   AUTOLOAD:=$(call AutoLoad,20,usbcore,1)
21 endef
22
23 define KernelPackage/usb-core/description
24  Kernel support for USB
25 endef
26
27 $(eval $(call KernelPackage,usb-core))
28
29
30 define AddDepends/usb
31   SUBMENU:=$(USB_MENU)
32   DEPENDS+=+!TARGET_etrax:kmod-usb-core $(1)
33 endef
34
35
36 define KernelPackage/usb-gadget
37   TITLE:=USB Gadget support
38   KCONFIG:=CONFIG_USB_GADGET
39   FILES:=
40   AUTOLOAD:=
41   DEPENDS:=@USB_GADGET_SUPPORT
42   $(call AddDepends/usb)
43 endef
44
45 define KernelPackage/usb-gadget/description
46   Kernel support for USB Gadget mode.
47 endef
48
49 $(eval $(call KernelPackage,usb-gadget))
50
51
52 define KernelPackage/usb-eth-gadget
53   TITLE:=USB Ethernet Gadget support
54   KCONFIG:= \
55         CONFIG_USB_ETH \
56         CONFIG_USB_ETH_RNDIS=y \
57         CONFIG_USB_ETH_EEM=y
58   DEPENDS:=+kmod-usb-gadget
59   FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_ether.ko
60   AUTOLOAD:=$(call AutoLoad,52,usb-eth-gadget)
61   $(call AddDepends/usb)
62 endef
63
64 define KernelPackage/usb-eth-gadget/description
65   Kernel support for USB Ethernet Gadget.
66 endef
67
68 $(eval $(call KernelPackage,usb-eth-gadget))
69
70
71 define KernelPackage/usb-uhci
72   TITLE:=Support for UHCI controllers
73   KCONFIG:= \
74         CONFIG_USB_UHCI_ALT \
75         CONFIG_USB_UHCI_HCD
76   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
77   AUTOLOAD:=$(call AutoLoad,50,uhci-hcd,1)
78   $(call AddDepends/usb)
79 endef
80
81 define KernelPackage/usb-uhci/description
82  Kernel support for USB UHCI controllers
83 endef
84
85 $(eval $(call KernelPackage,usb-uhci,1))
86
87
88 define KernelPackage/usb-ohci
89   TITLE:=Support for OHCI controllers
90   KCONFIG:= \
91         CONFIG_USB_OHCI \
92         CONFIG_USB_OHCI_HCD \
93         CONFIG_USB_OHCI_AR71XX=y
94   FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
95   AUTOLOAD:=$(call AutoLoad,50,ohci-hcd,1)
96   $(call AddDepends/usb)
97 endef
98
99 define KernelPackage/usb-ohci/description
100  Kernel support for USB OHCI controllers
101 endef
102
103 $(eval $(call KernelPackage,usb-ohci,1))
104
105
106 define KernelPackage/musb-hdrc
107   TITLE:=Support for Mentor Graphics silicon dual role USB
108   KCONFIG:= \
109         CONFIG_USB_MUSB_HDRC \
110         CONFIG_MUSB_PIO_ONLY=n \
111         CONFIG_USB_MUSB_OTG=y \
112         CONFIG_USB_MUSB_DEBUG=y
113   DEPENDS:=@TARGET_omap24xx
114   FILES:=$(LINUX_DIR)/drivers/usb/musb/musb_hdrc.ko
115   AUTOLOAD:=$(call AutoLoad,46,musb_hdrc)
116   $(call AddDepends/usb)
117 endef
118
119 define KernelPackage/musb-hdrc/description
120   Kernel support for Mentor Graphics silicon dual role USB device.
121 endef
122
123 $(eval $(call KernelPackage,musb-hdrc))
124
125
126 define KernelPackage/nop-usb-xceiv
127   TITLE:=Support for USB OTG NOP transceiver
128   KCONFIG:= \
129         CONFIG_NOP_USB_XCEIV
130   DEPENDS:=@TARGET_omap24xx
131   FILES:=$(LINUX_DIR)/drivers/usb/otg/nop-usb-xceiv.ko
132   AUTOLOAD:=$(call AutoLoad,45,nop-usb-xceiv)
133   $(call AddDepends/usb)
134 endef
135
136 define KernelPackage/nop-usb-xceiv/description
137   Support for USB OTG NOP transceiver
138 endef
139
140 $(eval $(call KernelPackage,nop-usb-xceiv))
141
142
143 define KernelPackage/tusb6010
144   TITLE:=Support for TUSB 6010
145   KCONFIG:= \
146         CONFIG_USB_TUSB6010=y
147   DEPENDS:=+kmod-musb-hdrc +kmod-nop-usb-xceiv
148   $(call AddDepends/usb)
149 endef
150
151 define KernelPackage/tusb6010/description
152   TUSB6010 support
153 endef
154
155 $(eval $(call KernelPackage,tusb6010))
156
157
158 define KernelPackage/usb-tahvo
159   TITLE:=Support for Tahvo (Nokia n810) USB
160   KCONFIG:= \
161         CONFIG_CBUS_TAHVO_USB \
162         CONFIG_CBUS_TAHVO_USB_HOST_BY_DEFAULT=n \
163         CONFIG_USB_OHCI_HCD_OMAP1=y \
164         CONFIG_USB_GADGET_DEBUG_FS=n
165   DEPENDS:=@TARGET_omap24xx +kmod-tusb6010 +kmod-usb-gadget
166   FILES:=$(LINUX_DIR)/drivers/cbus/tahvo-usb.ko
167   AUTOLOAD:=$(call AutoLoad,45,tahvo-usb)
168   $(call AddDepends/usb)
169 endef
170
171 define KernelPackage/usb-tahvo/description
172   Kernel support for Nokia n810 USB OHCI controller.
173 endef
174
175 $(eval $(call KernelPackage,usb-tahvo))
176
177
178 define KernelPackage/usb-isp116x-hcd
179   TITLE:=Support for the ISP116x USB Host Controller
180   DEPENDS:=@TARGET_ppc40x
181   KCONFIG:= \
182         CONFIG_USB_ISP116X_HCD \
183         CONFIG_USB_ISP116X_HCD_OF=y \
184         CONFIG_USB_ISP116X_HCD_PLATFORM=n
185   FILES:=$(LINUX_DIR)/drivers/usb/host/isp116x-hcd.ko
186   AUTOLOAD:=$(call AutoLoad,50,isp116x-hcd)
187   $(call AddDepends/usb)
188 endef
189
190 define KernelPackage/usb-isp116x-hcd/description
191   Kernel support for the ISP116X USB Host Controller
192 endef
193
194 $(eval $(call KernelPackage,usb-isp116x-hcd))
195
196
197 define KernelPackage/usb2
198   TITLE:=Support for USB2 controllers
199   KCONFIG:=CONFIG_USB_EHCI_HCD \
200     CONFIG_USB_EHCI_AR71XX=y \
201     CONFIG_USB_EHCI_FSL=n
202   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko
203   AUTOLOAD:=$(call AutoLoad,40,ehci-hcd,1)
204   $(call AddDepends/usb)
205 endef
206
207 define KernelPackage/usb2/description
208  Kernel support for USB2 (EHCI) controllers
209 endef
210
211 $(eval $(call KernelPackage,usb2))
212
213
214 define KernelPackage/usb-acm
215   TITLE:=Support for modems/isdn controllers
216   KCONFIG:=CONFIG_USB_ACM
217   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
218   AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
219 $(call AddDepends/usb)
220 endef
221
222 define KernelPackage/usb-acm/description
223  Kernel support for USB ACM devices (modems/isdn controllers)
224 endef
225
226 $(eval $(call KernelPackage,usb-acm))
227
228
229 define KernelPackage/usb-audio
230   TITLE:=Support for USB audio devices
231   KCONFIG:= \
232         CONFIG_USB_AUDIO \
233         CONFIG_SND_USB_AUDIO
234   $(call AddDepends/usb)
235   $(call AddDepends/sound)
236 # For Linux 2.6.35+
237 ifneq ($(wildcard $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko),)
238   FILES:= \
239         $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
240         $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
241   AUTOLOAD:=$(call AutoLoad,60,snd-usbmidi-lib snd-usb-audio)
242 else
243   FILES:= \
244         $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
245         $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
246   AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
247 endif
248 endef
249
250 define KernelPackage/usb-audio/description
251  Kernel support for USB audio devices
252 endef
253
254 $(eval $(call KernelPackage,usb-audio))
255
256
257 define KernelPackage/usb-printer
258   TITLE:=Support for printers
259   KCONFIG:=CONFIG_USB_PRINTER
260   FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
261   AUTOLOAD:=$(call AutoLoad,60,usblp)
262   $(call AddDepends/usb)
263 endef
264
265 define KernelPackage/usb-printer/description
266  Kernel support for USB printers
267 endef
268
269 $(eval $(call KernelPackage,usb-printer))
270
271
272 define KernelPackage/usb-serial
273   TITLE:=Support for USB-to-Serial converters
274   KCONFIG:=CONFIG_USB_SERIAL
275   FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.ko
276   AUTOLOAD:=$(call AutoLoad,60,usbserial)
277   $(call AddDepends/usb)
278 endef
279
280 define KernelPackage/usb-serial/description
281  Kernel support for USB-to-Serial converters
282 endef
283
284 $(eval $(call KernelPackage,usb-serial))
285
286
287 define AddDepends/usb-serial
288   SUBMENU:=$(USB_MENU)
289   DEPENDS+=kmod-usb-serial $(1)
290 endef
291
292
293 define KernelPackage/usb-serial-airprime
294   TITLE:=Support for Airprime (EVDO)
295   KCONFIG:=CONFIG_USB_SERIAL_AIRPRIME
296   FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.ko
297   AUTOLOAD:=$(call AutoLoad,65,airprime)
298   $(call AddDepends/usb-serial)
299 endef
300
301 define KernelPackage/usb-serial-airprime/description
302  Kernel support for Airprime (EVDO)
303 endef
304
305 $(eval $(call KernelPackage,usb-serial-airprime))
306
307
308 define KernelPackage/usb-serial-belkin
309   TITLE:=Support for Belkin devices
310   KCONFIG:=CONFIG_USB_SERIAL_BELKIN
311   FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.ko
312   AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
313   $(call AddDepends/usb-serial)
314 endef
315
316 define KernelPackage/usb-serial-belkin/description
317  Kernel support for Belkin USB-to-Serial converters
318 endef
319
320 $(eval $(call KernelPackage,usb-serial-belkin))
321
322
323 define KernelPackage/usb-serial-ch341
324   TITLE:=Support for CH341 devices
325   KCONFIG:=CONFIG_USB_SERIAL_CH341
326   FILES:=$(LINUX_DIR)/drivers/usb/serial/ch341.ko
327   AUTOLOAD:=$(call AutoLoad,65,ch341)
328   $(call AddDepends/usb-serial)
329 endef
330
331 define KernelPackage/usb-serial-ch341/description
332  Kernel support for Winchiphead CH341 USB-to-Serial converters
333 endef
334
335 $(eval $(call KernelPackage,usb-serial-ch341))
336
337
338 define KernelPackage/usb-serial-ftdi
339   TITLE:=Support for FTDI devices
340   KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
341   FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.ko
342   AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
343   $(call AddDepends/usb-serial)
344 endef
345
346 define KernelPackage/usb-serial-ftdi/description
347  Kernel support for FTDI USB-to-Serial converters
348 endef
349
350 $(eval $(call KernelPackage,usb-serial-ftdi))
351
352
353 define KernelPackage/usb-serial-ipw
354   TITLE:=Support for IPWireless 3G devices
355   KCONFIG:=CONFIG_USB_SERIAL_IPW
356   FILES:=$(LINUX_DIR)/drivers/usb/serial/ipw.$(LINUX_KMOD_SUFFIX)
357   AUTOLOAD:=$(call AutoLoad,65,ipw)
358   $(call AddDepends/usb-serial)
359 endef
360
361 $(eval $(call KernelPackage,usb-serial-ipw))
362
363
364 define KernelPackage/usb-serial-mct
365   TITLE:=Support for Magic Control Tech. devices
366   KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
367   FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.ko
368   AUTOLOAD:=$(call AutoLoad,65,mct_u232)
369   $(call AddDepends/usb-serial)
370 endef
371
372 define KernelPackage/usb-serial-mct/description
373  Kernel support for Magic Control Technology USB-to-Serial converters
374 endef
375
376 $(eval $(call KernelPackage,usb-serial-mct))
377
378
379 define KernelPackage/usb-serial-mos7720
380   TITLE:=Support for Moschip MOS7720 devices
381   KCONFIG:=CONFIG_USB_SERIAL_MOS7720
382   FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7720.ko
383   AUTOLOAD:=$(call AutoLoad,65,mos7720)
384   $(call AddDepends/usb-serial)
385 endef
386
387 define KernelPackage/usb-serial-mos7720/description
388  Kernel support for Moschip MOS7720 USB-to-Serial converters
389 endef
390
391 $(eval $(call KernelPackage,usb-serial-mos7720))
392
393
394 define KernelPackage/usb-serial-pl2303
395   TITLE:=Support for Prolific PL2303 devices
396   KCONFIG:=CONFIG_USB_SERIAL_PL2303
397   FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.ko
398   AUTOLOAD:=$(call AutoLoad,65,pl2303)
399   $(call AddDepends/usb-serial)
400 endef
401
402 define KernelPackage/usb-serial-pl2303/description
403  Kernel support for Prolific PL2303 USB-to-Serial converters
404 endef
405
406 $(eval $(call KernelPackage,usb-serial-pl2303))
407
408
409 define KernelPackage/usb-serial-cp210x
410   TITLE:=Support for Silicon Labs cp210x devices
411   KCONFIG:=CONFIG_USB_SERIAL_CP210X
412   FILES:=$(LINUX_DIR)/drivers/usb/serial/cp210x.ko
413   AUTOLOAD:=$(call AutoLoad,65,cp210x)
414   $(call AddDepends/usb-serial)
415 endef
416
417 define KernelPackage/usb-serial-cp210x/description
418  Kernel support for Silicon Labs cp210x USB-to-Serial converters
419 endef
420
421 $(eval $(call KernelPackage,usb-serial-cp210x))
422
423
424 define KernelPackage/usb-serial-ark3116
425   TITLE:=Support for ArkMicroChips ARK3116 devices
426   KCONFIG:=CONFIG_USB_SERIAL_ARK3116
427   FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.ko
428   AUTOLOAD:=$(call AutoLoad,65,ark3116)
429   $(call AddDepends/usb-serial)
430 endef
431
432 define KernelPackage/usb-serial-ark3116/description
433  Kernel support for ArkMicroChips ARK3116 USB-to-Serial converters
434 endef
435
436 $(eval $(call KernelPackage,usb-serial-ark3116))
437
438
439 define KernelPackage/usb-serial-oti6858
440   TITLE:=Support for Ours Technology OTI6858 devices
441   KCONFIG:=CONFIG_USB_SERIAL_OTI6858
442   FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.ko
443   AUTOLOAD:=$(call AutoLoad,65,oti6858)
444   $(call AddDepends/usb-serial)
445 endef
446
447 define KernelPackage/usb-serial-oti6858/description
448  Kernel support for Ours Technology OTI6858 USB-to-Serial converters
449 endef
450
451 $(eval $(call KernelPackage,usb-serial-oti6858))
452
453
454 define KernelPackage/usb-serial-sierrawireless
455   TITLE:=Support for Sierra Wireless devices
456   KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
457   FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.ko
458   AUTOLOAD:=$(call AutoLoad,65,sierra)
459   $(call AddDepends/usb-serial)
460 endef
461
462 define KernelPackage/usb-serial-sierrawireless/description
463  Kernel support for Sierra Wireless devices
464 endef
465
466 $(eval $(call KernelPackage,usb-serial-sierrawireless))
467
468
469 define KernelPackage/usb-serial-motorola-phone
470   TITLE:=Support for Motorola usb phone
471   KCONFIG:=CONFIG_USB_SERIAL_MOTOROLA
472   FILES:=$(LINUX_DIR)/drivers/usb/serial/moto_modem.ko
473   AUTOLOAD:=$(call AutoLoad,65,moto_modem)
474   $(call AddDepends/usb-serial)
475 endef
476
477 define KernelPackage/usb-serial-motorola-phone/description
478  Kernel support for Motorola usb phone
479 endef
480
481 $(eval $(call KernelPackage,usb-serial-motorola-phone))
482
483
484 define KernelPackage/usb-serial-visor
485   TITLE:=Support for Handspring Visor devices
486   KCONFIG:=CONFIG_USB_SERIAL_VISOR
487   FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.ko
488   AUTOLOAD:=$(call AutoLoad,65,visor)
489   $(call AddDepends/usb-serial)
490 endef
491
492 define KernelPackage/usb-serial-visor/description
493  Kernel support for Handspring Visor PDAs
494 endef
495
496 $(eval $(call KernelPackage,usb-serial-visor))
497
498
499 define KernelPackage/usb-serial-cypress-m8
500   TITLE:=Support for CypressM8 USB-Serial
501   KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
502   FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.ko
503   AUTOLOAD:=$(call AutoLoad,65,cypress_m8)
504   $(call AddDepends/usb-serial)
505 endef
506
507 define KernelPackage/usb-serial-cypress-m8/description
508  Kernel support for devices with Cypress M8 USB to Serial chip
509  (for example, the Delorme Earthmate LT-20 GPS)
510  Supported microcontrollers in the CY4601 family are:
511        CY7C63741 CY7C63742 CY7C63743 CY7C64013
512 endef
513
514 $(eval $(call KernelPackage,usb-serial-cypress-m8))
515
516
517 define KernelPackage/usb-serial-keyspan
518   TITLE:=Support for Keyspan USB-to-Serial devices
519   KCONFIG:= \
520         CONFIG_USB_SERIAL_KEYSPAN \
521         CONFIG_USB_SERIAL_KEYSPAN_USA28 \
522         CONFIG_USB_SERIAL_KEYSPAN_USA28X \
523         CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
524         CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
525         CONFIG_USB_SERIAL_KEYSPAN_USA19 \
526         CONFIG_USB_SERIAL_KEYSPAN_USA18X \
527         CONFIG_USB_SERIAL_KEYSPAN_USA19W \
528         CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
529         CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
530         CONFIG_USB_SERIAL_KEYSPAN_MPR \
531         CONFIG_USB_SERIAL_KEYSPAN_USA49W \
532         CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
533   FILES:=$(LINUX_DIR)/drivers/usb/serial/keyspan.ko
534   AUTOLOAD:=$(call AutoLoad,65,keyspan)
535   $(call AddDepends/usb-serial)
536 endef
537
538 define KernelPackage/usb-serial-keyspan/description
539  Kernel support for Keyspan USB-to-Serial devices
540 endef
541
542 $(eval $(call KernelPackage,usb-serial-keyspan))
543
544
545 define KernelPackage/usb-serial-wwan
546   TITLE:=Support for GSM and CDMA modems
547   DEPENDS:= @LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37
548   KCONFIG:=CONFIG_USB_SERIAL_WWAN
549   FILES:=$(LINUX_DIR)/drivers/usb/serial/usb_wwan.ko
550   AUTOLOAD:=$(call AutoLoad,61,usb_wwan)
551   $(call AddDepends/usb-serial)
552 endef
553
554 define KernelPackage/usb-serial-wwan/description
555  Kernel support for USB GSM and CDMA modems
556 endef
557
558 $(eval $(call KernelPackage,usb-serial-wwan))
559
560
561 define KernelPackage/usb-serial-option
562   TITLE:=Support for Option HSDPA modems
563   DEPENDS:=+LINUX_2_6_35||LINUX_2_6_36||LINUX_2_6_37:kmod-usb-serial-wwan
564   KCONFIG:=CONFIG_USB_SERIAL_OPTION
565   FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
566   AUTOLOAD:=$(call AutoLoad,65,option)
567   $(call AddDepends/usb-serial)
568 endef
569
570 define KernelPackage/usb-serial-option/description
571  Kernel support for Option HSDPA modems
572 endef
573
574 $(eval $(call KernelPackage,usb-serial-option))
575
576
577 define KernelPackage/usb-storage
578   TITLE:=USB Storage support
579   DEPENDS:= +!TARGET_x86:kmod-scsi-core
580   KCONFIG:=CONFIG_USB_STORAGE
581   FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.ko
582   AUTOLOAD:=$(call AutoLoad,60,usb-storage,1)
583   $(call AddDepends/usb)
584 endef
585
586 define KernelPackage/usb-storage/description
587  Kernel support for USB Mass Storage devices
588 endef
589
590 $(eval $(call KernelPackage,usb-storage))
591
592
593 define KernelPackage/usb-storage-extras
594   SUBMENU:=$(USB_MENU)
595   TITLE:=Extra drivers for usb-storage
596   DEPENDS:=+kmod-usb-storage
597   KCONFIG:= \
598         CONFIG_USB_STORAGE_ALAUDA \
599         CONFIG_USB_STORAGE_CYPRESS_ATACB \
600         CONFIG_USB_STORAGE_DATAFAB \
601         CONFIG_USB_STORAGE_FREECOM \
602         CONFIG_USB_STORAGE_ISD200 \
603         CONFIG_USB_STORAGE_JUMPSHOT \
604         CONFIG_USB_STORAGE_KARMA \
605         CONFIG_USB_STORAGE_SDDR09 \
606         CONFIG_USB_STORAGE_SDDR55 \
607         CONFIG_USB_STORAGE_USBAT
608   FILES:= \
609         $(LINUX_DIR)/drivers/usb/storage/ums-alauda.ko \
610         $(LINUX_DIR)/drivers/usb/storage/ums-cypress.ko \
611         $(LINUX_DIR)/drivers/usb/storage/ums-datafab.ko \
612         $(LINUX_DIR)/drivers/usb/storage/ums-freecom.ko \
613         $(LINUX_DIR)/drivers/usb/storage/ums-isd200.ko \
614         $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.ko \
615         $(LINUX_DIR)/drivers/usb/storage/ums-karma.ko \
616         $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.ko \
617         $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.ko \
618         $(LINUX_DIR)/drivers/usb/storage/ums-usbat.ko
619   AUTOLOAD:=$(call AutoLoad,60,ums-alauda ums-cypress ums-datafab \
620                                 ums-freecom ums-isd200 ums-jumpshot \
621                                 ums-karma ums-sddr09 ums-sddr55 ums-usbat)
622 endef
623
624 define KernelPackage/usb-storage-extras/description
625   Say Y here if you want to have some more drivers,
626   such as for SmartMedia card readers.
627 endef
628
629 $(eval $(call KernelPackage,usb-storage-extras))
630
631
632 define KernelPackage/usb-video
633   TITLE:=Support for USB video devices
634   KCONFIG:=CONFIG_VIDEO_USBVIDEO
635   FILES:=$(LINUX_DIR)/drivers/media/video/usbvideo/usbvideo.ko
636   AUTOLOAD:=$(call AutoLoad,61,usbvideo)
637   $(call AddDepends/usb)
638 endef
639
640 define KernelPackage/usb-video/description
641  Kernel support for USB video devices
642 endef
643
644 $(eval $(call KernelPackage,usb-video))
645
646
647 define KernelPackage/usb-atm
648   TITLE:=Support for ATM on USB bus
649   DEPENDS:=+kmod-atm
650   KCONFIG:=CONFIG_USB_ATM
651   FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.ko
652   AUTOLOAD:=$(call AutoLoad,60,usbatm)
653   $(call AddDepends/usb)
654 endef
655
656 define KernelPackage/usb-atm/description
657  Kernel support for USB DSL modems
658 endef
659
660 $(eval $(call KernelPackage,usb-atm))
661
662
663 define AddDepends/usb-atm
664   SUBMENU:=$(USB_MENU)
665   DEPENDS+=kmod-usb-atm $(1)
666 endef
667
668
669 define KernelPackage/usb-atm-speedtouch
670   TITLE:=SpeedTouch USB ADSL modems support
671   KCONFIG:=CONFIG_USB_SPEEDTOUCH
672   FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.ko
673   AUTOLOAD:=$(call AutoLoad,70,speedtch)
674   $(call AddDepends/usb-atm)
675 endef
676
677 define KernelPackage/usb-atm-speedtouch/description
678  Kernel support for SpeedTouch USB ADSL modems
679 endef
680
681 $(eval $(call KernelPackage,usb-atm-speedtouch))
682
683
684 define KernelPackage/usb-atm-ueagle
685   TITLE:=Eagle 8051 based USB ADSL modems support
686   FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.ko
687   KCONFIG:=CONFIG_USB_UEAGLEATM
688   AUTOLOAD:=$(call AutoLoad,70,ueagle-atm)
689   $(call AddDepends/usb-atm)
690 endef
691
692 define KernelPackage/usb-atm-ueagle/description
693  Kernel support for Eagle 8051 based USB ADSL modems
694 endef
695
696 $(eval $(call KernelPackage,usb-atm-ueagle))
697
698
699 define KernelPackage/usb-atm-cxacru
700   TITLE:=cxacru
701   FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.ko
702   KCONFIG:=CONFIG_USB_CXACRU
703   AUTOLOAD:=$(call AutoLoad,70,cxacru)
704   $(call AddDepends/usb-atm)
705 endef
706
707 define KernelPackage/usb-atm-cxacru/description
708  Kernel support for cxacru based USB ADSL modems
709 endef
710
711 $(eval $(call KernelPackage,usb-atm-cxacru))
712
713
714 define KernelPackage/usb-net
715   TITLE:=Kernel modules for USB-to-Ethernet convertors
716   KCONFIG:=CONFIG_USB_USBNET
717   AUTOLOAD:=$(call AutoLoad,60,usbnet)
718   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
719   $(call AddDepends/usb)
720 endef
721
722 define KernelPackage/usb-net/description
723  Kernel modules for USB-to-Ethernet convertors
724 endef
725
726 $(eval $(call KernelPackage,usb-net))
727
728
729 define AddDepends/usb-net
730   SUBMENU:=$(USB_MENU)
731   DEPENDS+=kmod-usb-net $(1)
732 endef
733
734
735 define KernelPackage/usb-net-asix
736   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
737   KCONFIG:=CONFIG_USB_NET_AX8817X
738   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
739   AUTOLOAD:=$(call AutoLoad,61,asix)
740   $(call AddDepends/usb-net)
741 endef
742
743 define KernelPackage/usb-net-asix/description
744  Kernel module for USB-to-Ethernet Asix convertors
745 endef
746
747 $(eval $(call KernelPackage,usb-net-asix))
748
749
750 define KernelPackage/usb-net-hso
751   TITLE:=Kernel module for Option USB High Speed Mobile Devices
752   KCONFIG:=CONFIG_USB_HSO
753   FILES:= \
754         $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.ko
755   AUTOLOAD:=$(call AutoLoad,61,hso)
756   $(call AddDepends/usb-net)
757   $(call AddDepends/rfkill)
758 endef
759
760 define KernelPackage/usb-net-hso/description
761  Kernel module for Option USB High Speed Mobile Devices
762 endef
763
764 $(eval $(call KernelPackage,usb-net-hso))
765
766
767 define KernelPackage/usb-net-kaweth
768   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
769   KCONFIG:=CONFIG_USB_KAWETH
770   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.ko
771   AUTOLOAD:=$(call AutoLoad,61,kaweth)
772   $(call AddDepends/usb-net)
773 endef
774
775 define KernelPackage/usb-net-kaweth/description
776  Kernel module for USB-to-Ethernet Kaweth convertors
777 endef
778
779 $(eval $(call KernelPackage,usb-net-kaweth))
780
781
782 define KernelPackage/usb-net-pegasus
783   TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
784   KCONFIG:=CONFIG_USB_PEGASUS
785   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.ko
786   AUTOLOAD:=$(call AutoLoad,61,pegasus)
787   $(call AddDepends/usb-net)
788 endef
789
790 define KernelPackage/usb-net-pegasus/description
791  Kernel module for USB-to-Ethernet Pegasus convertors
792 endef
793
794 $(eval $(call KernelPackage,usb-net-pegasus))
795
796
797 define KernelPackage/usb-net-mcs7830
798   TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
799   KCONFIG:=CONFIG_USB_NET_MCS7830
800   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.ko
801   AUTOLOAD:=$(call AutoLoad,61,mcs7830)
802   $(call AddDepends/usb-net)
803 endef
804
805 define KernelPackage/usb-net-mcs7830/description
806  Kernel module for USB-to-Ethernet MCS7830 convertors
807 endef
808
809 $(eval $(call KernelPackage,usb-net-mcs7830))
810
811
812 define KernelPackage/usb-net-dm9601-ether
813   TITLE:=Support for DM9601 ethernet connections
814   KCONFIG:=CONFIG_USB_NET_DM9601
815   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.ko
816   AUTOLOAD:=$(call AutoLoad,61,dm9601)
817   $(call AddDepends/usb-net)
818 endef
819
820 define KernelPackage/usb-net-dm9601-ether/description
821   Kernel support for USB DM9601 devices
822 endef
823
824 $(eval $(call KernelPackage,usb-net-dm9601-ether))
825
826 define KernelPackage/usb-net-cdc-ether
827   TITLE:=Support for cdc ethernet connections
828   KCONFIG:=CONFIG_USB_NET_CDCETHER
829   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ether.ko
830   AUTOLOAD:=$(call AutoLoad,61,cdc_ether)
831   $(call AddDepends/usb-net)
832 endef
833
834 define KernelPackage/usb-net-cdc-ether/description
835  Kernel support for USB CDC Ethernet devices
836 endef
837
838 $(eval $(call KernelPackage,usb-net-cdc-ether))
839
840
841 define KernelPackage/usb-net-rndis
842   TITLE:=Support for RNDIS connections
843   KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
844   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.ko
845   AUTOLOAD:=$(call AutoLoad,62,rndis_host)
846   $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
847 endef
848
849 define KernelPackage/usb-net-rndis/description
850  Kernel support for RNDIS connections
851 endef
852
853 $(eval $(call KernelPackage,usb-net-rndis))
854
855
856 define KernelPackage/usb-hid
857   TITLE:=Support for USB Human Input Devices
858   KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
859   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
860   AUTOLOAD:=$(call AutoLoad,70,usbhid)
861   $(call AddDepends/usb)
862   $(call AddDepends/hid)
863   $(call AddDepends/input,+kmod-input-evdev)
864 endef
865
866
867 define KernelPackage/usb-hid/description
868  Kernel support for USB HID devices such as keyboards and mice
869 endef
870
871 $(eval $(call KernelPackage,usb-hid))
872
873
874 define KernelPackage/usb-yealink
875   TITLE:=USB Yealink VOIP phone
876   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
877   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
878   AUTOLOAD:=$(call AutoLoad,70,yealink)
879   $(call AddDepends/usb)
880   $(call AddDepends/input,+kmod-input-evdev)
881 endef
882
883 define KernelPackage/usb-yealink/description
884  Kernel support for Yealink VOIP phone
885 endef
886
887 $(eval $(call KernelPackage,usb-yealink))
888
889
890 define KernelPackage/usb-cm109
891   TITLE:=Support for CM109 device
892   KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
893   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
894   AUTOLOAD:=$(call AutoLoad,70,cm109)
895   $(call AddDepends/usb)
896   $(call AddDepends/input,+kmod-input-evdev)
897 endef
898
899 define KernelPackage/usb-cm109/description
900  Kernel support for CM109 VOIP phone
901 endef
902
903 $(eval $(call KernelPackage,usb-cm109))
904
905
906 define KernelPackage/usb-test
907   TITLE:=USB Testing Driver
908   DEPENDS:=@DEVEL
909   KCONFIG:=CONFIG_USB_TEST
910   FILES:=$(LINUX_DIR)/drivers/usb/misc/usbtest.ko
911   $(call AddDepends/usb)
912 endef
913
914 define KernelPackage/usb-test/description
915  Kernel support for testing USB Host Controller software.
916 endef
917
918 $(eval $(call KernelPackage,usb-test))
919
920
921 define KernelPackage/usb-phidget
922   TITLE:=USB Phidget Driver
923   KCONFIG:=CONFIG_USB_PHIDGET CONFIG_USB_PHIDGETKIT CONFIG_USB_PHIDGETMOTORCONTROL CONFIG_USB_PHIDGETSERVO
924   FILES:=$(LINUX_DIR)/drivers/usb/misc/phidget*.ko
925 $(call AddDepends/usb)
926 endef
927
928 define KernelPackage/usb-phidget/description
929  Kernel support for USB Phidget devices.
930 endef
931
932 $(eval $(call KernelPackage,usb-phidget))
933