package/om-watchdog: add OpenMesh MR1750 support
[openwrt.git] / package / kernel / linux / modules / usb.mk
1 #
2 # Copyright (C) 2006-2014 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
18   KCONFIG:=CONFIG_USB CONFIG_XPS_USB_HCD_XILINX=n CONFIG_USB_FHCI_HCD=n
19   FILES:= \
20         $(LINUX_DIR)/drivers/usb/core/usbcore.ko \
21         $(LINUX_DIR)/drivers/usb/common/usb-common.ko
22   AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1)
23   $(call AddDepends/nls)
24 endef
25
26 define KernelPackage/usb-core/description
27  Kernel support for USB
28 endef
29
30 $(eval $(call KernelPackage,usb-core))
31
32
33 define AddDepends/usb
34   SUBMENU:=$(USB_MENU)
35   DEPENDS+=+kmod-usb-core $(1)
36 endef
37
38
39 define KernelPackage/usb-musb-hdrc
40   TITLE:=Support for Mentor Graphics silicon dual role USB
41   KCONFIG:= \
42         CONFIG_USB_MUSB_HDRC \
43         CONFIG_USB_INVENTRA_DMA=n \
44         CONFIG_USB_TI_CPPI41_DMA=n \
45         CONFIG_MUSB_PIO_ONLY=y \
46         CONFIG_USB_MUSB_DUAL_ROLE=y \
47         CONFIG_USB_MUSB_GADGET=n \
48         CONFIG_USB_MUSB_HOST=n \
49         CONFIG_USB_MUSB_DEBUG=y
50   DEPENDS:= \
51         @(TARGET_omap||TARGET_omap24xx) +kmod-usb-gadget \
52         +TARGET_omap24xx:kmod-usb-musb-tusb6010
53   FILES:=$(LINUX_DIR)/drivers/usb/musb/musb_hdrc.ko
54   AUTOLOAD:=$(call AutoLoad,46,musb_hdrc)
55   $(call AddDepends/usb)
56 endef
57
58 define KernelPackage/usb-musb-hdrc/description
59   Kernel support for Mentor Graphics silicon dual role USB device.
60 endef
61
62 $(eval $(call KernelPackage,usb-musb-hdrc))
63
64
65 define KernelPackage/usb-musb-platformglue
66   TITLE:=MUSB platform glue layer
67   KCONFIG:= \
68         CONFIG_USB_MUSB_TUSB6010=n \
69         CONFIG_USB_MUSB_OMAP2PLUS=n \
70         CONFIG_USB_MUSB_AM35X=n \
71         CONFIG_USB_MUSB_DSPS \
72         CONFIG_USB_MUSB_UX500=n
73   DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-musb-hdrc +kmod-usb-phy-am335x
74   FILES:= \
75         $(LINUX_DIR)/drivers/usb/musb/musb_dsps.ko \
76         $(LINUX_DIR)/drivers/usb/musb/musb_am335x.ko
77   AUTOLOAD:=$(call AutoLoad,45,phy-omap-control musb_dsps musb_am335x)
78   $(call AddDepends/usb)
79 endef
80
81 define KernelPackage/usb-musb-platformglue/description
82   MUSB platform glue modules
83 endef
84
85 $(eval $(call KernelPackage,usb-musb-platformglue))
86
87
88 define KernelPackage/usb-musb-tusb6010
89   TITLE:=Support for TUSB 6010
90   KCONFIG:=CONFIG_USB_MUSB_TUSB6010
91   DEPENDS:=@TARGET_omap24xx
92   $(call AddDepends/usb)
93 endef
94
95 define KernelPackage/usb-musb-tusb6010/description
96   TUSB6010 support
97 endef
98
99 $(eval $(call KernelPackage,usb-musb-tusb6010))
100
101
102 define KernelPackage/usb-phy-nop
103   TITLE:=Support for USB NOP transceiver
104   KCONFIG:=CONFIG_NOP_USB_XCEIV
105   HIDDEN:=1
106   FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-generic.ko
107   AUTOLOAD:=$(call AutoLoad,43,phy-generic)
108   $(call AddDepends/usb)
109 endef
110
111 define KernelPackage/usb-phy-nop/description
112   Support for USB NOP transceiver
113 endef
114
115 $(eval $(call KernelPackage,usb-phy-nop))
116
117
118 define KernelPackage/usb-phy-am335x
119   TITLE:=Support for AM335x USB PHY
120   KCONFIG:= \
121         CONFIG_AM335X_PHY_USB \
122         CONFIG_AM335X_CONTROL_USB
123   DEPENDS:=@TARGET_omap +kmod-usb-phy-nop
124   FILES:= \
125         $(LINUX_DIR)/drivers/usb/phy/phy-am335x.ko \
126         $(LINUX_DIR)/drivers/usb/phy/phy-am335x-control.ko
127   AUTOLOAD:=$(call AutoLoad,44,phy-am335x)
128   $(call AddDepends/usb)
129 endef
130
131 define KernelPackage/usb-phy-am335x/description
132   Support for AM335x USB PHY
133 endef
134
135 $(eval $(call KernelPackage,usb-phy-am335x))
136
137
138 define KernelPackage/usb-phy-omap-usb2
139   TITLE:=Support for OMAP2 USB PHY
140   KCONFIG:= \
141         CONFIG_OMAP_USB2 \
142         CONFIG_OMAP_CONTROL_PHY
143   DEPENDS:=@TARGET_omap
144   FILES:= \
145         $(LINUX_DIR)/drivers/phy/phy-omap-usb2.ko \
146         $(LINUX_DIR)/drivers/phy/phy-omap-control.ko
147   AUTOLOAD:=$(call AutoLoad,45,phy-omap-control phy-omap-usb2)
148   $(call AddDepends/usb)
149 endef
150
151 define KernelPackage/usb-phy-omap-usb2/description
152   Support for AM335x USB PHY
153 endef
154
155 $(eval $(call KernelPackage,usb-phy-omap-usb2))
156
157
158 define KernelPackage/usb-phy-omap-usb3
159   TITLE:=Support for OMAP USB3 PHY
160   KCONFIG:=CONFIG_OMAP_USB3
161   DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2
162   FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-omap-usb3.ko
163   AUTOLOAD:=$(call AutoLoad,45,phy-omap-usb3)
164   $(call AddDepends/usb)
165 endef
166
167 define KernelPackage/usb-phy-omap-usb3/description
168   Support for OMAP USB3 PHY
169 endef
170
171 $(eval $(call KernelPackage,usb-phy-omap-usb3))
172
173
174 define KernelPackage/usb-phy-twl4030
175   TITLE:=Support for TWL4030 OTG PHY
176   KCONFIG:=CONFIG_TWL4030_USB
177   DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2 +kmod-usb-musb-hdrc
178   FILES:=$(LINUX_DIR)/drivers/phy/phy-twl4030-usb.ko
179   AUTOLOAD:=$(call AutoLoad,45,phy-twl4030-usb)
180   $(call AddDepends/usb)
181 endef
182
183 define KernelPackage/usb-phy-twl4030/description
184   Support for TWL4030/TWL5030/TPS659x0 OTG PHY
185 endef
186
187 $(eval $(call KernelPackage,usb-phy-twl4030))
188
189
190 define KernelPackage/usb-phy-twl6030
191   TITLE:=Support for TWL6030 OTG PHY
192   KCONFIG:=CONFIG_TWL6030_USB
193   DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2 +kmod-usb-musb-hdrc
194   FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-twl6030-usb.ko
195   AUTOLOAD:=$(call AutoLoad,45,phy-twl6030-usb)
196   $(call AddDepends/usb)
197 endef
198
199 define KernelPackage/usb-phy-twl6030/description
200   Support for TWL6030 OTG PHY
201 endef
202
203 $(eval $(call KernelPackage,usb-phy-twl6030))
204
205
206 define KernelPackage/usb-gadget
207   TITLE:=USB Gadget support
208   KCONFIG:=CONFIG_USB_GADGET
209   FILES:=\
210         $(LINUX_DIR)/drivers/usb/gadget/udc/udc-core.ko
211   AUTOLOAD:=$(call AutoLoad,45,udc-core)
212   DEPENDS:=@USB_GADGET_SUPPORT
213   $(call AddDepends/usb)
214 endef
215
216 define KernelPackage/usb-gadget/description
217  Kernel support for USB Gadget mode
218 endef
219
220 $(eval $(call KernelPackage,usb-gadget))
221
222 define KernelPackage/usb-lib-composite
223   TITLE:=USB lib composite
224   KCONFIG:=CONFIG_USB_LIBCOMPOSITE
225   DEPENDS:=+kmod-usb-gadget +kmod-fs-configfs
226   FILES:=$(LINUX_DIR)/drivers/usb/gadget/libcomposite.ko
227   AUTOLOAD:=$(call AutoLoad,50,libcomposite)
228   $(call AddDepends/usb)
229 endef
230
231 define KernelPackage/usb-lib-composite/description
232  Lib Composite
233 endef
234
235 $(eval $(call KernelPackage,usb-lib-composite))
236
237
238 define KernelPackage/usb-eth-gadget
239   TITLE:=USB Ethernet Gadget support
240   KCONFIG:= \
241         CONFIG_USB_ETH \
242         CONFIG_USB_ETH_RNDIS=y \
243         CONFIG_USB_ETH_EEM=n
244   DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
245   FILES:= \
246         $(LINUX_DIR)/drivers/usb/gadget/function/u_ether.ko \
247         $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm.ko \
248         $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm_subset.ko \
249         $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_rndis.ko \
250         $(LINUX_DIR)/drivers/usb/gadget/legacy/g_ether.ko
251   AUTOLOAD:=$(call AutoLoad,52,usb_f_ecm g_ether)
252   $(call AddDepends/usb)
253 endef
254
255 define KernelPackage/usb-eth-gadget/description
256  Kernel support for USB Ethernet Gadget
257 endef
258
259 $(eval $(call KernelPackage,usb-eth-gadget))
260
261
262 define KernelPackage/usb-serial-gadget
263   TITLE:=USB Serial Gadget support
264   KCONFIG:=CONFIG_USB_G_SERIAL
265   DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
266   FILES:= \
267         $(LINUX_DIR)/drivers/usb/gadget/function/u_serial.ko \
268         $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_acm.ko \
269         $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_obex.ko \
270         $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_serial.ko \
271         $(LINUX_DIR)/drivers/usb/gadget/legacy/g_serial.ko
272   AUTOLOAD:=$(call AutoLoad,52,usb_f_acm g_serial)
273   $(call AddDepends/usb)
274 endef
275
276 define KernelPackage/usb-serial-gadget/description
277   Kernel support for USB Serial Gadget.
278 endef
279
280 $(eval $(call KernelPackage,usb-serial-gadget))
281
282
283 define KernelPackage/usb-uhci
284   TITLE:=Support for UHCI controllers
285   KCONFIG:= \
286         CONFIG_USB_UHCI_ALT \
287         CONFIG_USB_UHCI_HCD
288   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
289   AUTOLOAD:=$(call AutoLoad,50,uhci-hcd,1)
290   $(call AddDepends/usb)
291 endef
292
293 define KernelPackage/usb-uhci/description
294  Kernel support for USB UHCI controllers
295 endef
296
297 $(eval $(call KernelPackage,usb-uhci,1))
298
299
300 define KernelPackage/usb-ohci
301   TITLE:=Support for OHCI controllers
302   DEPENDS:= \
303         +TARGET_bcm53xx:kmod-usb-bcma \
304         +TARGET_brcm47xx:kmod-usb-bcma \
305         +TARGET_brcm47xx:kmod-usb-ssb
306   KCONFIG:= \
307         CONFIG_USB_OHCI \
308         CONFIG_USB_OHCI_HCD \
309         CONFIG_USB_OHCI_ATH79=y \
310         CONFIG_USB_OHCI_HCD_AT91=y \
311         CONFIG_USB_OHCI_BCM63XX=y \
312         CONFIG_USB_OCTEON_OHCI=y \
313         CONFIG_USB_OHCI_HCD_OMAP3=y \
314         CONFIG_USB_OHCI_HCD_PLATFORM=y
315   FILES:= \
316         $(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko \
317         $(LINUX_DIR)/drivers/usb/host/ohci-platform.ko
318   ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ohci-at91.ko),)
319     FILES+=$(LINUX_DIR)/drivers/usb/host/ohci-at91.ko
320   endif
321   AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform ohci-at91,1)
322   $(call AddDepends/usb)
323 endef
324
325 define KernelPackage/usb-ohci/description
326  Kernel support for USB OHCI controllers
327 endef
328
329 $(eval $(call KernelPackage,usb-ohci,1))
330
331
332 define KernelPackage/usb-ohci-pci
333   TITLE:=Support for PCI OHCI controllers
334   DEPENDS:=@PCI_SUPPORT +kmod-usb-ohci
335   KCONFIG:=CONFIG_USB_OHCI_HCD_PCI
336   FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-pci.ko
337   AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1)
338   $(call AddDepends/usb)
339 endef
340
341 define KernelPackage/usb-ohci-pci/description
342  Kernel support for PCI OHCI controllers
343 endef
344
345 $(eval $(call KernelPackage,usb-ohci-pci))
346
347
348 define KernelPackage/usb2-fsl
349   TITLE:=Support for Freescale USB2 controllers
350   DEPENDS:=@TARGET_mpc85xx
351   KCONFIG:=\
352         CONFIG_USB_FSL_MPH_DR_OF \
353         CONFIG_USB_EHCI_FSL=y
354   FILES:=$(LINUX_DIR)/drivers/usb/host/fsl-mph-dr-of.ko
355   AUTOLOAD:=$(call AutoLoad,39,fsl-mph-dr-of,1)
356   $(call AddDepends/usb)
357 endef
358
359 define KernelPackage/usb2-fsl/description
360  Kernel support for Freescale USB2 (EHCI) controllers
361 endef
362
363 $(eval $(call KernelPackage,usb2-fsl))
364
365
366 define KernelPackage/usb2-omap
367   TITLE:=Support for USB2 for OMAP
368   DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-phy-am335x +kmod-usb2
369   KCONFIG:=\
370         CONFIG_MFD_OMAP_USB_HOST=y \
371         CONFIG_USB_EHCI_HCD_OMAP
372   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-omap.ko
373   AUTOLOAD:=$(call AutoLoad,39,ehci-omap)
374   $(call AddDepends/usb)
375 endef
376
377 define KernelPackage/usb2-omap/description
378  Kernel support for OMAP USB2 (EHCI) controllers
379 endef
380
381 $(eval $(call KernelPackage,usb2-omap))
382
383 define KernelPackage/usb-bcma
384   TITLE:=Support for BCMA USB controllers
385   DEPENDS:=@USB_SUPPORT @TARGET_brcm47xx||TARGET_bcm53xx
386   HIDDEN:=1
387   KCONFIG:=CONFIG_USB_HCD_BCMA
388   FILES:= \
389         $(if $(CONFIG_USB_HCD_BCMA),$(LINUX_DIR)/drivers/usb/host/bcma-hcd.ko)
390   AUTOLOAD:=$(call AutoLoad,19,$(if $(CONFIG_USB_HCD_BCMA),bcma-hcd),1)
391   $(call AddDepends/usb)
392 endef
393 $(eval $(call KernelPackage,usb-bcma))
394
395 define KernelPackage/usb-ssb
396   TITLE:=Support for SSB USB controllers
397   DEPENDS:=@USB_SUPPORT @TARGET_brcm47xx
398   HIDDEN:=1
399   KCONFIG:=CONFIG_USB_HCD_SSB
400   FILES:= \
401         $(if $(CONFIG_USB_HCD_SSB),$(LINUX_DIR)/drivers/usb/host/ssb-hcd.ko)
402   AUTOLOAD:=$(call AutoLoad,19,$(if $(CONFIG_USB_HCD_SSB),ssb-hcd),1)
403   $(call AddDepends/usb)
404 endef
405 $(eval $(call KernelPackage,usb-ssb))
406
407 define KernelPackage/usb2
408   TITLE:=Support for USB2 controllers
409   DEPENDS:=\
410         +TARGET_brcm47xx:kmod-usb-bcma \
411         +TARGET_brcm47xx:kmod-usb-ssb \
412         +TARGET_bcm53xx:kmod-usb-bcma \
413         +TARGET_mpc85xx:kmod-usb2-fsl
414   KCONFIG:=\
415         CONFIG_USB_EHCI_HCD \
416         CONFIG_USB_EHCI_ATH79=y \
417         CONFIG_USB_EHCI_BCM63XX=y \
418         CONFIG_USB_IMX21_HCD=y \
419         CONFIG_USB_EHCI_MXC=y \
420         CONFIG_USB_OCTEON_EHCI=y \
421         CONFIG_USB_EHCI_HCD_ORION=y \
422         CONFIG_USB_EHCI_HCD_PLATFORM=y \
423         CONFIG_USB_EHCI_HCD_AT91=y
424   FILES:= \
425         $(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko \
426         $(LINUX_DIR)/drivers/usb/host/ehci-platform.ko
427   ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-orion.ko),)
428     FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-orion.ko
429   endif
430   ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko),)
431     FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko
432   endif
433   AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion ehci-atmel,1)
434   $(call AddDepends/usb)
435 endef
436
437 define KernelPackage/usb2/description
438  Kernel support for USB2 (EHCI) controllers
439 endef
440
441 $(eval $(call KernelPackage,usb2))
442
443
444 define KernelPackage/usb2-pci
445   TITLE:=Support for PCI USB2 controllers
446   DEPENDS:=@PCI_SUPPORT +kmod-usb2
447   KCONFIG:=CONFIG_USB_EHCI_PCI
448   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko
449   AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1)
450   $(call AddDepends/usb)
451 endef
452
453 define KernelPackage/usb2-pci/description
454  Kernel support for PCI USB2 (EHCI) controllers
455 endef
456
457 $(eval $(call KernelPackage,usb2-pci))
458
459
460 define KernelPackage/usb-dwc2
461   TITLE:=DWC2 USB controller driver
462   DEPENDS:=+(TARGET_brcm2708||TARGET_at91||TARGET_brcm63xx||TARGET_mxs||TARGET_imx6):kmod-usb-gadget
463   KCONFIG:= \
464         CONFIG_USB_DWC2 \
465         CONFIG_USB_DWC2_PCI \
466         CONFIG_USB_DWC2_PLATFORM \
467         CONFIG_USB_DWC2_DEBUG=n \
468         CONFIG_USB_DWC2_VERBOSE=n \
469         CONFIG_USB_DWC2_TRACK_MISSED_SOFS=n \
470         CONFIG_USB_DWC2_DEBUG_PERIODIC=n
471   FILES:= \
472         $(LINUX_DIR)/drivers/usb/dwc2/dwc2.ko \
473         $(LINUX_DIR)/drivers/usb/dwc2/dwc2_platform.ko
474   AUTOLOAD:=$(call AutoLoad,54,dwc2 dwc2_platform,1)
475   $(call AddDepends/usb)
476 endef
477
478 define KernelPackage/usb-dwc2/description
479  This driver provides USB Device Controller support for the
480  Synopsys DesignWare USB OTG Core
481 endef
482
483 $(eval $(call KernelPackage,usb-dwc2))
484
485
486 define KernelPackage/usb2-oxnas
487   TITLE:=OXNAS USB controller driver
488   DEPENDS:=@TARGET_oxnas +kmod-usb2
489   KCONFIG:=CONFIG_USB_EHCI_OXNAS
490   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-oxnas.ko
491   AUTOLOAD:=$(call AutoLoad,55,ehci-oxnas,1)
492   $(call AddDepends/usb)
493 endef
494
495 define KernelPackage/usb2-oxnas/description
496  This driver provides USB Device Controller support for the
497  EHCI USB host built-in to the PLXTECH NAS782x SoC
498 endef
499
500 $(eval $(call KernelPackage,usb2-oxnas))
501
502
503 define KernelPackage/usb-dwc3
504   TITLE:=DWC3 USB controller driver
505   KCONFIG:= \
506         CONFIG_USB_DWC3 \
507         CONFIG_USB_DWC3_HOST=y \
508         CONFIG_USB_DWC3_GADGET=n \
509         CONFIG_USB_DWC3_DUAL_ROLE=n \
510         CONFIG_USB_DWC3_DEBUG=n \
511         CONFIG_USB_DWC3_VERBOSE=n
512   FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3.ko
513   AUTOLOAD:=$(call AutoLoad,54,dwc3,1)
514   $(call AddDepends/usb)
515 endef
516
517 define KernelPackage/usb-dwc3/description
518  This driver provides support for the Dual Role SuperSpeed
519  USB Controller based on the Synopsys DesignWare USB3 IP Core
520 endef
521
522 $(eval $(call KernelPackage,usb-dwc3))
523
524
525 define KernelPackage/usb-acm
526   TITLE:=Support for modems/isdn controllers
527   KCONFIG:=CONFIG_USB_ACM
528   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
529   AUTOLOAD:=$(call AutoProbe,cdc-acm)
530 $(call AddDepends/usb)
531 endef
532
533 define KernelPackage/usb-acm/description
534  Kernel support for USB ACM devices (modems/isdn controllers)
535 endef
536
537 $(eval $(call KernelPackage,usb-acm))
538
539
540 define KernelPackage/usb-wdm
541   TITLE:=USB Wireless Device Management
542   KCONFIG:=CONFIG_USB_WDM
543   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-wdm.ko
544   AUTOLOAD:=$(call AutoProbe,cdc-wdm)
545 $(call AddDepends/usb)
546 $(call AddDepends/usb-net)
547 endef
548
549 define KernelPackage/usb-wdm/description
550  USB Wireless Device Management support
551 endef
552
553 $(eval $(call KernelPackage,usb-wdm))
554
555
556 define KernelPackage/usb-audio
557   TITLE:=Support for USB audio devices
558   KCONFIG:= \
559         CONFIG_USB_AUDIO \
560         CONFIG_SND_USB_AUDIO
561   $(call AddDepends/usb)
562   $(call AddDepends/sound)
563   FILES:= \
564         $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
565         $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
566   AUTOLOAD:=$(call AutoProbe,snd-usbmidi-lib snd-usb-audio)
567 endef
568
569 define KernelPackage/usb-audio/description
570  Kernel support for USB audio devices
571 endef
572
573 $(eval $(call KernelPackage,usb-audio))
574
575
576 define KernelPackage/usb-printer
577   TITLE:=Support for printers
578   KCONFIG:=CONFIG_USB_PRINTER
579   FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
580   AUTOLOAD:=$(call AutoProbe,usblp)
581   $(call AddDepends/usb)
582 endef
583
584 define KernelPackage/usb-printer/description
585  Kernel support for USB printers
586 endef
587
588 $(eval $(call KernelPackage,usb-printer))
589
590
591 define KernelPackage/usb-serial
592   TITLE:=Support for USB-to-Serial converters
593   KCONFIG:=CONFIG_USB_SERIAL
594   FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.ko
595   AUTOLOAD:=$(call AutoProbe,usbserial)
596   $(call AddDepends/usb)
597 endef
598
599 define KernelPackage/usb-serial/description
600  Kernel support for USB-to-Serial converters
601 endef
602
603 $(eval $(call KernelPackage,usb-serial))
604
605
606 define AddDepends/usb-serial
607   SUBMENU:=$(USB_MENU)
608   DEPENDS+=kmod-usb-serial $(1)
609 endef
610
611
612 define KernelPackage/usb-serial-belkin
613   TITLE:=Support for Belkin devices
614   KCONFIG:=CONFIG_USB_SERIAL_BELKIN
615   FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.ko
616   AUTOLOAD:=$(call AutoProbe,belkin_sa)
617   $(call AddDepends/usb-serial)
618 endef
619
620 define KernelPackage/usb-serial-belkin/description
621  Kernel support for Belkin USB-to-Serial converters
622 endef
623
624 $(eval $(call KernelPackage,usb-serial-belkin))
625
626
627 define KernelPackage/usb-serial-ch341
628   TITLE:=Support for CH341 devices
629   KCONFIG:=CONFIG_USB_SERIAL_CH341
630   FILES:=$(LINUX_DIR)/drivers/usb/serial/ch341.ko
631   AUTOLOAD:=$(call AutoProbe,ch341)
632   $(call AddDepends/usb-serial)
633 endef
634
635 define KernelPackage/usb-serial-ch341/description
636  Kernel support for Winchiphead CH341 USB-to-Serial converters
637 endef
638
639 $(eval $(call KernelPackage,usb-serial-ch341))
640
641
642 define KernelPackage/usb-serial-ftdi
643   TITLE:=Support for FTDI devices
644   KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
645   FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.ko
646   AUTOLOAD:=$(call AutoProbe,ftdi_sio)
647   $(call AddDepends/usb-serial)
648 endef
649
650 define KernelPackage/usb-serial-ftdi/description
651  Kernel support for FTDI USB-to-Serial converters
652 endef
653
654 $(eval $(call KernelPackage,usb-serial-ftdi))
655
656
657 define KernelPackage/usb-serial-garmin
658   TITLE:=Support for Garmin GPS devices
659   KCONFIG:=CONFIG_USB_SERIAL_GARMIN
660   FILES:=$(LINUX_DIR)/drivers/usb/serial/garmin_gps.ko
661   AUTOLOAD:=$(call AutoProbe,garmin_gps)
662   $(call AddDepends/usb-serial)
663 endef
664
665 define KernelPackage/usb-serial-garmin/description
666  Should work with most Garmin GPS devices which have a native USB port.
667 endef
668
669 $(eval $(call KernelPackage,usb-serial-garmin))
670
671
672 define KernelPackage/usb-serial-simple
673   TITLE:=USB Serial Simple (Motorola phone)
674   KCONFIG:=CONFIG_USB_SERIAL_SIMPLE
675   FILES:=$(LINUX_DIR)/drivers/usb/serial/usb-serial-simple.ko
676   AUTOLOAD:=$(call AutoProbe,usb-serial-simple)
677   $(call AddDepends/usb-serial)
678 endef
679
680 define KernelPackage/usb-serial-simple/description
681   Kernel support for "very simple devices".
682
683 Specifically, it supports:
684         - Suunto ANT+ USB device.
685         - Medtronic CareLink USB device (3.18)
686         - Fundamental Software dongle.
687         - Google USB serial devices (3.19)
688         - HP4x calculators
689         - a number of Motorola phones
690         - Novatel Wireless GPS receivers (3.18)
691         - Siemens USB/MPI adapter.
692         - ViVOtech ViVOpay USB device.
693         - Infineon Modem Flashloader USB interface
694         - ZIO Motherboard USB serial interface
695 endef
696
697 $(eval $(call KernelPackage,usb-serial-simple))
698
699
700 define KernelPackage/usb-serial-ti-usb
701   TITLE:=Support for TI USB 3410/5052
702   KCONFIG:=CONFIG_USB_SERIAL_TI
703   FILES:=$(LINUX_DIR)/drivers/usb/serial/ti_usb_3410_5052.ko
704   AUTOLOAD:=$(call AutoProbe,ti_usb_3410_5052)
705   $(call AddDepends/usb-serial)
706 endef
707
708 define KernelPackage/usb-serial-ti-usb/description
709  Kernel support for TI USB 3410/5052 devices
710 endef
711
712 $(eval $(call KernelPackage,usb-serial-ti-usb))
713
714
715 define KernelPackage/usb-serial-ipw
716   TITLE:=Support for IPWireless 3G devices
717   KCONFIG:=CONFIG_USB_SERIAL_IPW
718   FILES:=$(LINUX_DIR)/drivers/usb/serial/ipw.ko
719   AUTOLOAD:=$(call AutoProbe,ipw)
720   $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
721 endef
722
723 $(eval $(call KernelPackage,usb-serial-ipw))
724
725
726 define KernelPackage/usb-serial-mct
727   TITLE:=Support for Magic Control Tech. devices
728   KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
729   FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.ko
730   AUTOLOAD:=$(call AutoProbe,mct_u232)
731   $(call AddDepends/usb-serial)
732 endef
733
734 define KernelPackage/usb-serial-mct/description
735  Kernel support for Magic Control Technology USB-to-Serial converters
736 endef
737
738 $(eval $(call KernelPackage,usb-serial-mct))
739
740
741 define KernelPackage/usb-serial-mos7720
742   TITLE:=Support for Moschip MOS7720 devices
743   KCONFIG:=CONFIG_USB_SERIAL_MOS7720
744   FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7720.ko
745   AUTOLOAD:=$(call AutoProbe,mos7720)
746   $(call AddDepends/usb-serial)
747 endef
748
749 define KernelPackage/usb-serial-mos7720/description
750  Kernel support for Moschip MOS7720 USB-to-Serial converters
751 endef
752
753 $(eval $(call KernelPackage,usb-serial-mos7720))
754
755
756 define KernelPackage/usb-serial-pl2303
757   TITLE:=Support for Prolific PL2303 devices
758   KCONFIG:=CONFIG_USB_SERIAL_PL2303
759   FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.ko
760   AUTOLOAD:=$(call AutoProbe,pl2303)
761   $(call AddDepends/usb-serial)
762 endef
763
764 define KernelPackage/usb-serial-pl2303/description
765  Kernel support for Prolific PL2303 USB-to-Serial converters
766 endef
767
768 $(eval $(call KernelPackage,usb-serial-pl2303))
769
770
771 define KernelPackage/usb-serial-cp210x
772   TITLE:=Support for Silicon Labs cp210x devices
773   KCONFIG:=CONFIG_USB_SERIAL_CP210X
774   FILES:=$(LINUX_DIR)/drivers/usb/serial/cp210x.ko
775   AUTOLOAD:=$(call AutoProbe,cp210x)
776   $(call AddDepends/usb-serial)
777 endef
778
779 define KernelPackage/usb-serial-cp210x/description
780  Kernel support for Silicon Labs cp210x USB-to-Serial converters
781 endef
782
783 $(eval $(call KernelPackage,usb-serial-cp210x))
784
785
786 define KernelPackage/usb-serial-ark3116
787   TITLE:=Support for ArkMicroChips ARK3116 devices
788   KCONFIG:=CONFIG_USB_SERIAL_ARK3116
789   FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.ko
790   AUTOLOAD:=$(call AutoProbe,ark3116)
791   $(call AddDepends/usb-serial)
792 endef
793
794 define KernelPackage/usb-serial-ark3116/description
795  Kernel support for ArkMicroChips ARK3116 USB-to-Serial converters
796 endef
797
798 $(eval $(call KernelPackage,usb-serial-ark3116))
799
800
801 define KernelPackage/usb-serial-oti6858
802   TITLE:=Support for Ours Technology OTI6858 devices
803   KCONFIG:=CONFIG_USB_SERIAL_OTI6858
804   FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.ko
805   AUTOLOAD:=$(call AutoProbe,oti6858)
806   $(call AddDepends/usb-serial)
807 endef
808
809 define KernelPackage/usb-serial-oti6858/description
810  Kernel support for Ours Technology OTI6858 USB-to-Serial converters
811 endef
812
813 $(eval $(call KernelPackage,usb-serial-oti6858))
814
815
816 define KernelPackage/usb-serial-sierrawireless
817   TITLE:=Support for Sierra Wireless devices
818   KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
819   FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.ko
820   AUTOLOAD:=$(call AutoProbe,sierra)
821   $(call AddDepends/usb-serial)
822 endef
823
824 define KernelPackage/usb-serial-sierrawireless/description
825  Kernel support for Sierra Wireless devices
826 endef
827
828 $(eval $(call KernelPackage,usb-serial-sierrawireless))
829
830
831 define KernelPackage/usb-serial-visor
832   TITLE:=Support for Handspring Visor devices
833   KCONFIG:=CONFIG_USB_SERIAL_VISOR
834   FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.ko
835   AUTOLOAD:=$(call AutoProbe,visor)
836   $(call AddDepends/usb-serial)
837 endef
838
839 define KernelPackage/usb-serial-visor/description
840  Kernel support for Handspring Visor PDAs
841 endef
842
843 $(eval $(call KernelPackage,usb-serial-visor))
844
845
846 define KernelPackage/usb-serial-cypress-m8
847   TITLE:=Support for CypressM8 USB-Serial
848   KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
849   FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.ko
850   AUTOLOAD:=$(call AutoProbe,cypress_m8)
851   $(call AddDepends/usb-serial)
852 endef
853
854 define KernelPackage/usb-serial-cypress-m8/description
855  Kernel support for devices with Cypress M8 USB to Serial chip
856  (for example, the Delorme Earthmate LT-20 GPS)
857  Supported microcontrollers in the CY4601 family are:
858  CY7C63741 CY7C63742 CY7C63743 CY7C64013
859 endef
860
861 $(eval $(call KernelPackage,usb-serial-cypress-m8))
862
863
864 define KernelPackage/usb-serial-keyspan
865   TITLE:=Support for Keyspan USB-to-Serial devices
866   KCONFIG:= \
867         CONFIG_USB_SERIAL_KEYSPAN \
868         CONFIG_USB_SERIAL_KEYSPAN_USA28 \
869         CONFIG_USB_SERIAL_KEYSPAN_USA28X \
870         CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
871         CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
872         CONFIG_USB_SERIAL_KEYSPAN_USA19 \
873         CONFIG_USB_SERIAL_KEYSPAN_USA18X \
874         CONFIG_USB_SERIAL_KEYSPAN_USA19W \
875         CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
876         CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
877         CONFIG_USB_SERIAL_KEYSPAN_MPR \
878         CONFIG_USB_SERIAL_KEYSPAN_USA49W \
879         CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
880   FILES:= \
881         $(LINUX_DIR)/drivers/usb/serial/keyspan.ko \
882         $(wildcard $(LINUX_DIR)/drivers/usb/misc/ezusb.ko)
883   AUTOLOAD:=$(call AutoProbe,ezusb keyspan)
884   $(call AddDepends/usb-serial)
885 endef
886
887 define KernelPackage/usb-serial-keyspan/description
888  Kernel support for Keyspan USB-to-Serial devices
889 endef
890
891 $(eval $(call KernelPackage,usb-serial-keyspan))
892
893
894 define KernelPackage/usb-serial-wwan
895   TITLE:=Support for GSM and CDMA modems
896   KCONFIG:=CONFIG_USB_SERIAL_WWAN
897   FILES:=$(LINUX_DIR)/drivers/usb/serial/usb_wwan.ko
898   AUTOLOAD:=$(call AutoProbe,usb_wwan)
899   $(call AddDepends/usb-serial)
900 endef
901
902 define KernelPackage/usb-serial-wwan/description
903  Kernel support for USB GSM and CDMA modems
904 endef
905
906 $(eval $(call KernelPackage,usb-serial-wwan))
907
908
909 define KernelPackage/usb-serial-option
910   TITLE:=Support for Option HSDPA modems
911   DEPENDS:=+kmod-usb-serial-wwan
912   KCONFIG:=CONFIG_USB_SERIAL_OPTION
913   FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
914   AUTOLOAD:=$(call AutoProbe,option)
915   $(call AddDepends/usb-serial)
916 endef
917
918 define KernelPackage/usb-serial-option/description
919  Kernel support for Option HSDPA modems
920 endef
921
922 $(eval $(call KernelPackage,usb-serial-option))
923
924
925 define KernelPackage/usb-serial-qualcomm
926   TITLE:=Support for Qualcomm USB serial
927   KCONFIG:=CONFIG_USB_SERIAL_QUALCOMM
928   FILES:=$(LINUX_DIR)/drivers/usb/serial/qcserial.ko
929   AUTOLOAD:=$(call AutoProbe,qcserial)
930   $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
931 endef
932
933 define KernelPackage/usb-serial-qualcomm/description
934  Kernel support for Qualcomm USB Serial devices (Gobi)
935 endef
936
937 $(eval $(call KernelPackage,usb-serial-qualcomm))
938
939
940 define KernelPackage/usb-storage
941   TITLE:=USB Storage support
942   DEPENDS:= +kmod-scsi-core
943   KCONFIG:=CONFIG_USB_STORAGE
944   FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.ko
945   AUTOLOAD:=$(call AutoProbe,usb-storage,1)
946   $(call AddDepends/usb)
947 endef
948
949 define KernelPackage/usb-storage/description
950  Kernel support for USB Mass Storage devices
951 endef
952
953 $(eval $(call KernelPackage,usb-storage))
954
955
956 define KernelPackage/usb-storage-extras
957   SUBMENU:=$(USB_MENU)
958   TITLE:=Extra drivers for usb-storage
959   DEPENDS:=+kmod-usb-storage
960   KCONFIG:= \
961         CONFIG_USB_STORAGE_ALAUDA \
962         CONFIG_USB_STORAGE_CYPRESS_ATACB \
963         CONFIG_USB_STORAGE_DATAFAB \
964         CONFIG_USB_STORAGE_FREECOM \
965         CONFIG_USB_STORAGE_ISD200 \
966         CONFIG_USB_STORAGE_JUMPSHOT \
967         CONFIG_USB_STORAGE_KARMA \
968         CONFIG_USB_STORAGE_SDDR09 \
969         CONFIG_USB_STORAGE_SDDR55 \
970         CONFIG_USB_STORAGE_USBAT
971   FILES:= \
972         $(LINUX_DIR)/drivers/usb/storage/ums-alauda.ko \
973         $(LINUX_DIR)/drivers/usb/storage/ums-cypress.ko \
974         $(LINUX_DIR)/drivers/usb/storage/ums-datafab.ko \
975         $(LINUX_DIR)/drivers/usb/storage/ums-freecom.ko \
976         $(LINUX_DIR)/drivers/usb/storage/ums-isd200.ko \
977         $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.ko \
978         $(LINUX_DIR)/drivers/usb/storage/ums-karma.ko \
979         $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.ko \
980         $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.ko \
981         $(LINUX_DIR)/drivers/usb/storage/ums-usbat.ko
982   AUTOLOAD:=$(call AutoProbe,ums-alauda ums-cypress ums-datafab \
983                                 ums-freecom ums-isd200 ums-jumpshot \
984                                 ums-karma ums-sddr09 ums-sddr55 ums-usbat)
985 endef
986
987 define KernelPackage/usb-storage-extras/description
988  Say Y here if you want to have some more drivers,
989  such as for SmartMedia card readers
990 endef
991
992 $(eval $(call KernelPackage,usb-storage-extras))
993
994
995 define KernelPackage/usb-atm
996   TITLE:=Support for ATM on USB bus
997   DEPENDS:=+kmod-atm
998   KCONFIG:=CONFIG_USB_ATM
999   FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.ko
1000   AUTOLOAD:=$(call AutoProbe,usbatm)
1001   $(call AddDepends/usb)
1002 endef
1003
1004 define KernelPackage/usb-atm/description
1005  Kernel support for USB DSL modems
1006 endef
1007
1008 $(eval $(call KernelPackage,usb-atm))
1009
1010
1011 define AddDepends/usb-atm
1012   SUBMENU:=$(USB_MENU)
1013   DEPENDS+=kmod-usb-atm $(1)
1014 endef
1015
1016
1017 define KernelPackage/usb-atm-speedtouch
1018   TITLE:=SpeedTouch USB ADSL modems support
1019   KCONFIG:=CONFIG_USB_SPEEDTOUCH
1020   FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.ko
1021   AUTOLOAD:=$(call AutoProbe,speedtch)
1022   $(call AddDepends/usb-atm)
1023 endef
1024
1025 define KernelPackage/usb-atm-speedtouch/description
1026  Kernel support for SpeedTouch USB ADSL modems
1027 endef
1028
1029 $(eval $(call KernelPackage,usb-atm-speedtouch))
1030
1031
1032 define KernelPackage/usb-atm-ueagle
1033   TITLE:=Eagle 8051 based USB ADSL modems support
1034   FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.ko
1035   KCONFIG:=CONFIG_USB_UEAGLEATM
1036   AUTOLOAD:=$(call AutoProbe,ueagle-atm)
1037   $(call AddDepends/usb-atm)
1038 endef
1039
1040 define KernelPackage/usb-atm-ueagle/description
1041  Kernel support for Eagle 8051 based USB ADSL modems
1042 endef
1043
1044 $(eval $(call KernelPackage,usb-atm-ueagle))
1045
1046
1047 define KernelPackage/usb-atm-cxacru
1048   TITLE:=cxacru
1049   FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.ko
1050   KCONFIG:=CONFIG_USB_CXACRU
1051   AUTOLOAD:=$(call AutoProbe,cxacru)
1052   $(call AddDepends/usb-atm)
1053 endef
1054
1055 define KernelPackage/usb-atm-cxacru/description
1056  Kernel support for cxacru based USB ADSL modems
1057 endef
1058
1059 $(eval $(call KernelPackage,usb-atm-cxacru))
1060
1061
1062 define KernelPackage/usb-net
1063   TITLE:=Kernel modules for USB-to-Ethernet convertors
1064   DEPENDS:=+kmod-mii
1065   KCONFIG:=CONFIG_USB_USBNET \
1066         CONFIG_USB_NET_DRIVERS
1067   AUTOLOAD:=$(call AutoProbe,usbnet)
1068   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
1069   $(call AddDepends/usb)
1070 endef
1071
1072 define KernelPackage/usb-net/description
1073  Kernel modules for USB-to-Ethernet convertors
1074 endef
1075
1076 $(eval $(call KernelPackage,usb-net))
1077
1078
1079 define AddDepends/usb-net
1080   SUBMENU:=$(USB_MENU)
1081   DEPENDS+=kmod-usb-net $(1)
1082 endef
1083
1084
1085 define KernelPackage/usb-net-asix
1086   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
1087   DEPENDS:=+kmod-libphy
1088   KCONFIG:=CONFIG_USB_NET_AX8817X
1089   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
1090   AUTOLOAD:=$(call AutoProbe,asix)
1091   $(call AddDepends/usb-net)
1092 endef
1093
1094 define KernelPackage/usb-net-asix/description
1095  Kernel module for USB-to-Ethernet Asix convertors
1096 endef
1097
1098 $(eval $(call KernelPackage,usb-net-asix))
1099
1100
1101 define KernelPackage/usb-net-asix-ax88179
1102   TITLE:=Kernel module for USB-to-Gigabit-Ethernet Asix convertors
1103   DEPENDS:=+kmod-libphy
1104   KCONFIG:=CONFIG_USB_NET_AX88179_178A
1105   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/ax88179_178a.ko
1106   AUTOLOAD:=$(call AutoProbe,ax88179_178a)
1107   $(call AddDepends/usb-net)
1108 endef
1109
1110 define KernelPackage/usb-net-asix-ax88179/description
1111  Kernel module for USB-to-Ethernet ASIX AX88179 based USB 3.0/2.0
1112  to Gigabit Ethernet adapters.
1113 endef
1114
1115 $(eval $(call KernelPackage,usb-net-asix-ax88179))
1116
1117
1118 define KernelPackage/usb-net-hso
1119   TITLE:=Kernel module for Option USB High Speed Mobile Devices
1120   KCONFIG:=CONFIG_USB_HSO
1121   FILES:= \
1122         $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.ko
1123   AUTOLOAD:=$(call AutoProbe,hso)
1124   $(call AddDepends/usb-net)
1125   $(call AddDepends/rfkill)
1126 endef
1127
1128 define KernelPackage/usb-net-hso/description
1129  Kernel module for Option USB High Speed Mobile Devices
1130 endef
1131
1132 $(eval $(call KernelPackage,usb-net-hso))
1133
1134
1135 define KernelPackage/usb-net-kaweth
1136   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
1137   KCONFIG:=CONFIG_USB_KAWETH
1138   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.ko
1139   AUTOLOAD:=$(call AutoProbe,kaweth)
1140   $(call AddDepends/usb-net)
1141 endef
1142
1143 define KernelPackage/usb-net-kaweth/description
1144  Kernel module for USB-to-Ethernet Kaweth convertors
1145 endef
1146
1147 $(eval $(call KernelPackage,usb-net-kaweth))
1148
1149
1150 define KernelPackage/usb-net-pegasus
1151   TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
1152   KCONFIG:=CONFIG_USB_PEGASUS
1153   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.ko
1154   AUTOLOAD:=$(call AutoProbe,pegasus)
1155   $(call AddDepends/usb-net)
1156 endef
1157
1158 define KernelPackage/usb-net-pegasus/description
1159  Kernel module for USB-to-Ethernet Pegasus convertors
1160 endef
1161
1162 $(eval $(call KernelPackage,usb-net-pegasus))
1163
1164
1165 define KernelPackage/usb-net-mcs7830
1166   TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
1167   KCONFIG:=CONFIG_USB_NET_MCS7830
1168   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.ko
1169   AUTOLOAD:=$(call AutoProbe,mcs7830)
1170   $(call AddDepends/usb-net)
1171 endef
1172
1173 define KernelPackage/usb-net-mcs7830/description
1174  Kernel module for USB-to-Ethernet MCS7830 convertors
1175 endef
1176
1177 $(eval $(call KernelPackage,usb-net-mcs7830))
1178
1179
1180 define KernelPackage/usb-net-smsc95xx
1181   TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices
1182   KCONFIG:=CONFIG_USB_NET_SMSC95XX
1183   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
1184   AUTOLOAD:=$(call AutoProbe,smsc95xx)
1185   $(call AddDepends/usb-net, +kmod-lib-crc16)
1186 endef
1187
1188 define KernelPackage/usb-net-smsc95xx/description
1189  Kernel module for SMSC LAN95XX based devices
1190 endef
1191
1192 $(eval $(call KernelPackage,usb-net-smsc95xx))
1193
1194
1195 define KernelPackage/usb-net-dm9601-ether
1196   TITLE:=Support for DM9601 ethernet connections
1197   KCONFIG:=CONFIG_USB_NET_DM9601
1198   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.ko
1199   AUTOLOAD:=$(call AutoProbe,dm9601)
1200   $(call AddDepends/usb-net)
1201 endef
1202
1203 define KernelPackage/usb-net-dm9601-ether/description
1204  Kernel support for USB DM9601 devices
1205 endef
1206
1207 $(eval $(call KernelPackage,usb-net-dm9601-ether))
1208
1209 define KernelPackage/usb-net-cdc-ether
1210   TITLE:=Support for cdc ethernet connections
1211   KCONFIG:=CONFIG_USB_NET_CDCETHER
1212   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ether.ko
1213   AUTOLOAD:=$(call AutoProbe,cdc_ether)
1214   $(call AddDepends/usb-net)
1215 endef
1216
1217 define KernelPackage/usb-net-cdc-ether/description
1218  Kernel support for USB CDC Ethernet devices
1219 endef
1220
1221 $(eval $(call KernelPackage,usb-net-cdc-ether))
1222
1223
1224 define KernelPackage/usb-net-cdc-eem
1225   TITLE:=Support for CDC EEM connections
1226   KCONFIG:=CONFIG_USB_NET_CDC_EEM
1227   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_eem.ko
1228   AUTOLOAD:=$(call AutoProbe,cdc_eem)
1229   $(call AddDepends/usb-net)
1230 endef
1231
1232 define KernelPackage/usb-net-cdc-eem/description
1233  Kernel support for USB CDC EEM
1234 endef
1235
1236 $(eval $(call KernelPackage,usb-net-cdc-eem))
1237
1238
1239 define KernelPackage/usb-net-cdc-subset
1240   TITLE:=Support for CDC Ethernet subset connections
1241   KCONFIG:= \
1242         CONFIG_USB_NET_CDC_SUBSET \
1243         CONFIG_USB_ARMLINUX
1244   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_subset.ko
1245   AUTOLOAD:=$(call AutoProbe,cdc_subset)
1246   $(call AddDepends/usb-net)
1247 endef
1248
1249 define KernelPackage/usb-net-cdc-subset/description
1250  Kernel support for Simple USB Network Links (CDC Ethernet subset)
1251 endef
1252
1253 $(eval $(call KernelPackage,usb-net-cdc-subset))
1254
1255
1256 define KernelPackage/usb-net-qmi-wwan
1257   TITLE:=QMI WWAN driver
1258   KCONFIG:=CONFIG_USB_NET_QMI_WWAN
1259   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/qmi_wwan.ko
1260   AUTOLOAD:=$(call AutoProbe,qmi_wwan)
1261   $(call AddDepends/usb-net,+kmod-usb-wdm)
1262 endef
1263
1264 define KernelPackage/usb-net-qmi-wwan/description
1265  QMI WWAN driver for Qualcomm MSM based 3G and LTE modems
1266 endef
1267
1268 $(eval $(call KernelPackage,usb-net-qmi-wwan))
1269
1270
1271 define KernelPackage/usb-net-rtl8150
1272   TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
1273   KCONFIG:=CONFIG_USB_RTL8150
1274   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/rtl8150.ko
1275   AUTOLOAD:=$(call AutoProbe,rtl8150)
1276   $(call AddDepends/usb-net)
1277 endef
1278
1279 define KernelPackage/usb-net-rtl8150/description
1280  Kernel module for USB-to-Ethernet Realtek 8150 convertors
1281 endef
1282
1283 $(eval $(call KernelPackage,usb-net-rtl8150))
1284
1285
1286 define KernelPackage/usb-net-rtl8152
1287   TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
1288   KCONFIG:=CONFIG_USB_RTL8152
1289   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko
1290   AUTOLOAD:=$(call AutoProbe,r8152)
1291   $(call AddDepends/usb-net)
1292 endef
1293
1294 define KernelPackage/usb-net-rtl8152/description
1295  Kernel module for USB-to-Ethernet Realtek 8152 USB2.0/3.0 convertors
1296 endef
1297
1298 $(eval $(call KernelPackage,usb-net-rtl8152))
1299
1300
1301 define KernelPackage/usb-net-rndis
1302   TITLE:=Support for RNDIS connections
1303   KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
1304   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.ko
1305   AUTOLOAD:=$(call AutoProbe,rndis_host)
1306   $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
1307 endef
1308
1309 define KernelPackage/usb-net-rndis/description
1310  Kernel support for RNDIS connections
1311 endef
1312
1313 $(eval $(call KernelPackage,usb-net-rndis))
1314
1315
1316 define KernelPackage/usb-net-cdc-mbim
1317   SUBMENU:=$(USB_MENU)
1318   TITLE:=Kernel module for MBIM Devices
1319   KCONFIG:=CONFIG_USB_NET_CDC_MBIM
1320   FILES:= \
1321    $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_mbim.ko
1322   AUTOLOAD:=$(call AutoProbe,cdc_mbim)
1323   $(call AddDepends/usb-net,+kmod-usb-wdm +kmod-usb-net-cdc-ncm)
1324 endef
1325
1326 define KernelPackage/usb-net-cdc-mbim/description
1327  Kernel module for Option USB High Speed Mobile Devices
1328 endef
1329
1330 $(eval $(call KernelPackage,usb-net-cdc-mbim))
1331
1332
1333 define KernelPackage/usb-net-cdc-ncm
1334   TITLE:=Support for CDC NCM connections
1335   KCONFIG:=CONFIG_USB_NET_CDC_NCM
1336   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
1337   AUTOLOAD:=$(call AutoProbe,cdc_ncm)
1338   $(call AddDepends/usb-net)
1339 endef
1340
1341 define KernelPackage/usb-net-cdc-ncm/description
1342  Kernel support for CDC NCM connections
1343 endef
1344
1345 $(eval $(call KernelPackage,usb-net-cdc-ncm))
1346
1347
1348 define KernelPackage/usb-net-huawei-cdc-ncm
1349   TITLE:=Support for Huawei CDC NCM connections
1350   KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM
1351   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko
1352   AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm)
1353   $(call AddDepends/usb-net,+kmod-usb-net-cdc-ncm +kmod-usb-wdm)
1354 endef
1355
1356 define KernelPackage/usb-net-huawei-cdc-ncm/description
1357  Kernel support for Huawei CDC NCM connections
1358 endef
1359
1360 $(eval $(call KernelPackage,usb-net-huawei-cdc-ncm))
1361
1362
1363 define KernelPackage/usb-net-sierrawireless
1364   TITLE:=Support for Sierra Wireless devices
1365   KCONFIG:=CONFIG_USB_SIERRA_NET
1366   FILES:=$(LINUX_DIR)/drivers/net/usb/sierra_net.ko
1367   AUTOLOAD:=$(call AutoProbe,sierra_net)
1368   $(call AddDepends/usb-net)
1369 endef
1370
1371 define KernelPackage/usb-net-sierrawireless/description
1372  Kernel support for Sierra Wireless devices
1373 endef
1374
1375 $(eval $(call KernelPackage,usb-net-sierrawireless))
1376
1377
1378 define KernelPackage/usb-net-ipheth
1379   TITLE:=Apple iPhone USB Ethernet driver
1380   KCONFIG:=CONFIG_USB_IPHETH
1381   FILES:=$(LINUX_DIR)/drivers/net/usb/ipheth.ko
1382   AUTOLOAD:=$(call AutoProbe,ipheth)
1383   $(call AddDepends/usb-net)
1384 endef
1385
1386 define KernelPackage/usb-net-ipheth/description
1387  Kernel support for Apple iPhone USB Ethernet driver
1388 endef
1389
1390 $(eval $(call KernelPackage,usb-net-ipheth))
1391
1392
1393 define KernelPackage/usb-net-kalmia
1394   TITLE:=Samsung Kalmia based LTE USB modem
1395   KCONFIG:=CONFIG_USB_NET_KALMIA
1396   FILES:=$(LINUX_DIR)/drivers/net/usb/kalmia.ko
1397   AUTOLOAD:=$(call AutoProbe,kalmia)
1398   $(call AddDepends/usb-net)
1399 endef
1400
1401 define KernelPackage/usb-net-kalmia/description
1402  Kernel support for Samsung Kalmia based LTE USB modem
1403 endef
1404
1405 $(eval $(call KernelPackage,usb-net-kalmia))
1406
1407
1408 define KernelPackage/usb-hid
1409   TITLE:=Support for USB Human Input Devices
1410   KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
1411   DEPENDS:=+kmod-hid +kmod-hid-generic +kmod-input-evdev
1412   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
1413   AUTOLOAD:=$(call AutoProbe,usbhid)
1414   $(call AddDepends/usb)
1415 endef
1416
1417 define KernelPackage/usb-hid/description
1418  Kernel support for USB HID devices such as keyboards and mice
1419 endef
1420
1421 $(eval $(call KernelPackage,usb-hid))
1422
1423
1424 define KernelPackage/usb-yealink
1425   TITLE:=USB Yealink VOIP phone
1426   DEPENDS:=+kmod-input-evdev
1427   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
1428   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
1429   AUTOLOAD:=$(call AutoProbe,yealink)
1430   $(call AddDepends/usb)
1431 endef
1432
1433 define KernelPackage/usb-yealink/description
1434  Kernel support for Yealink VOIP phone
1435 endef
1436
1437 $(eval $(call KernelPackage,usb-yealink))
1438
1439
1440 define KernelPackage/usb-cm109
1441   TITLE:=Support for CM109 device
1442   DEPENDS:=+kmod-input-evdev
1443   KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
1444   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
1445   AUTOLOAD:=$(call AutoProbe,cm109)
1446   $(call AddDepends/usb)
1447 endef
1448
1449 define KernelPackage/usb-cm109/description
1450  Kernel support for CM109 VOIP phone
1451 endef
1452
1453 $(eval $(call KernelPackage,usb-cm109))
1454
1455
1456 define KernelPackage/usb-test
1457   TITLE:=USB Testing Driver
1458   DEPENDS:=@DEVEL
1459   KCONFIG:=CONFIG_USB_TEST
1460   FILES:=$(LINUX_DIR)/drivers/usb/misc/usbtest.ko
1461   $(call AddDepends/usb)
1462 endef
1463
1464 define KernelPackage/usb-test/description
1465  Kernel support for testing USB Host Controller software
1466 endef
1467
1468 $(eval $(call KernelPackage,usb-test))
1469
1470
1471 define KernelPackage/usbip
1472   TITLE := USB-over-IP kernel support
1473   KCONFIG:= \
1474         CONFIG_USBIP_CORE \
1475         CONFIG_USBIP_DEBUG=n
1476   FILES:=$(LINUX_DIR)/drivers/usb/usbip/usbip-core.ko
1477   AUTOLOAD:=$(call AutoProbe,usbip-core)
1478   $(call AddDepends/usb)
1479 endef
1480
1481 $(eval $(call KernelPackage,usbip))
1482
1483
1484 define KernelPackage/usbip-client
1485   TITLE := USB-over-IP client driver
1486   DEPENDS := +kmod-usbip
1487   KCONFIG := CONFIG_USBIP_VHCI_HCD
1488   FILES :=$(LINUX_DIR)/drivers/usb/usbip/vhci-hcd.ko
1489   AUTOLOAD := $(call AutoProbe,vhci-hcd)
1490   $(call AddDepends/usb)
1491 endef
1492
1493 $(eval $(call KernelPackage,usbip-client))
1494
1495
1496 define KernelPackage/usbip-server
1497 $(call KernelPackage/usbip/Default)
1498   TITLE := USB-over-IP host driver
1499   DEPENDS := +kmod-usbip
1500   KCONFIG := CONFIG_USBIP_HOST
1501   FILES :=$(LINUX_DIR)/drivers/usb/usbip/usbip-host.ko
1502   AUTOLOAD := $(call AutoProbe,usbip-host)
1503   $(call AddDepends/usb)
1504 endef
1505
1506 $(eval $(call KernelPackage,usbip-server))
1507
1508
1509 define KernelPackage/usb-chipidea-imx
1510   TITLE:=Support for ChipIdea controllers
1511   DEPENDS:=@TARGET_imx6||TARGET_mxs +kmod-usb2 +USB_GADGET_SUPPORT:kmod-usb-gadget
1512   KCONFIG:=\
1513         CONFIG_USB_CHIPIDEA \
1514         CONFIG_USB_CHIPIDEA_HOST=y \
1515         CONFIG_USB_CHIPIDEA_UDC=y \
1516         CONFIG_USB_CHIPIDEA_DEBUG=y
1517   FILES:=\
1518         $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
1519         $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc_imx.ko) \
1520         $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx.ko)
1521   AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF),ci_hdrc_imx usbmisc_imx),1)
1522   $(call AddDepends/usb)
1523 endef
1524
1525 define KernelPackage/usb-chipidea-imx/description
1526  Kernel support for USB ChipIdea controllers
1527 endef
1528
1529 $(eval $(call KernelPackage,usb-chipidea-imx,1))
1530
1531
1532 define KernelPackage/usb-mxs-phy
1533   TITLE:=Support for Freescale MXS USB PHY
1534   DEPENDS:=@TARGET_imx6||TARGET_mxs +TARGET_mxs:kmod-usb-chipidea-imx
1535   KCONFIG:=CONFIG_USB_MXS_PHY
1536   FILES:=\
1537         $(LINUX_DIR)/drivers/usb/phy/phy-mxs-usb.ko
1538   AUTOLOAD:=$(call AutoLoad,52,phy-mxs-usb,1)
1539   $(call AddDepends/usb)
1540 endef
1541
1542 define KernelPackage/usb-mxs-phy/description
1543  Kernel support for Freescale MXS USB PHY
1544 endef
1545
1546 $(eval $(call KernelPackage,usb-mxs-phy,1))
1547
1548
1549 define KernelPackage/usbmon
1550   TITLE:=USB traffic monitor
1551   KCONFIG:=CONFIG_USB_MON
1552   $(call AddDepends/usb)
1553   FILES:=$(LINUX_DIR)/drivers/usb/mon/usbmon.ko
1554   AUTOLOAD:=$(call AutoProbe,usbmon)
1555 endef
1556
1557 define KernelPackage/usbmon/description
1558  Kernel support for USB traffic monitoring
1559 endef
1560
1561 $(eval $(call KernelPackage,usbmon))
1562
1563 XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,xhci-hcd xhci-pci xhci-plat-hcd))
1564 XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES))
1565
1566 define KernelPackage/usb3
1567   TITLE:=Support for USB3 controllers
1568   DEPENDS:= \
1569         +TARGET_bcm53xx:kmod-usb-bcma \
1570         +TARGET_omap:kmod-usb-phy-omap-usb3
1571   KCONFIG:= \
1572         CONFIG_USB_XHCI_HCD \
1573         CONFIG_USB_XHCI_PCI \
1574         CONFIG_USB_XHCI_PLATFORM \
1575         CONFIG_USB_XHCI_MVEBU=y \
1576         CONFIG_USB_XHCI_HCD_DEBUGGING=n
1577   FILES:= \
1578         $(XHCI_FILES)
1579   AUTOLOAD:=$(call AutoLoad,54,$(XHCI_AUTOLOAD),1)
1580   $(call AddDepends/usb)
1581 endef
1582
1583 define KernelPackage/usb3/description
1584  Kernel support for USB3 (XHCI) controllers
1585 endef
1586
1587 $(eval $(call KernelPackage,usb3))