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