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