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