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