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