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