kernel: Make kmod-mpls depend on iptunnel in kernel 4.19
[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-mos7840
742   TITLE:=Support for Moschip MOS7840 devices
743   KCONFIG:=CONFIG_USB_SERIAL_MOS7840
744   FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7840.ko
745   AUTOLOAD:=$(call AutoProbe,mos7840)
746   $(call AddDepends/usb-serial)
747 endef
748
749 define KernelPackage/usb-serial-mos7840/description
750  Kernel support for Moschip MOS7840 USB-to-Serial converters
751 endef
752
753 $(eval $(call KernelPackage,usb-serial-mos7840))
754
755
756 define KernelPackage/usb-serial-pl2303
757   TITLE:=Support for Prolific PL2303 devices
758   KCONFIG:=CONFIG_USB_SERIAL_PL2303
759   FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.ko
760   AUTOLOAD:=$(call AutoProbe,pl2303)
761   $(call AddDepends/usb-serial)
762 endef
763
764 define KernelPackage/usb-serial-pl2303/description
765  Kernel support for Prolific PL2303 USB-to-Serial converters
766 endef
767
768 $(eval $(call KernelPackage,usb-serial-pl2303))
769
770
771 define KernelPackage/usb-serial-cp210x
772   TITLE:=Support for Silicon Labs cp210x devices
773   KCONFIG:=CONFIG_USB_SERIAL_CP210X
774   FILES:=$(LINUX_DIR)/drivers/usb/serial/cp210x.ko
775   AUTOLOAD:=$(call AutoProbe,cp210x)
776   $(call AddDepends/usb-serial)
777 endef
778
779 define KernelPackage/usb-serial-cp210x/description
780  Kernel support for Silicon Labs cp210x USB-to-Serial converters
781 endef
782
783 $(eval $(call KernelPackage,usb-serial-cp210x))
784
785
786 define KernelPackage/usb-serial-ark3116
787   TITLE:=Support for ArkMicroChips ARK3116 devices
788   KCONFIG:=CONFIG_USB_SERIAL_ARK3116
789   FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.ko
790   AUTOLOAD:=$(call AutoProbe,ark3116)
791   $(call AddDepends/usb-serial)
792 endef
793
794 define KernelPackage/usb-serial-ark3116/description
795  Kernel support for ArkMicroChips ARK3116 USB-to-Serial converters
796 endef
797
798 $(eval $(call KernelPackage,usb-serial-ark3116))
799
800
801 define KernelPackage/usb-serial-oti6858
802   TITLE:=Support for Ours Technology OTI6858 devices
803   KCONFIG:=CONFIG_USB_SERIAL_OTI6858
804   FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.ko
805   AUTOLOAD:=$(call AutoProbe,oti6858)
806   $(call AddDepends/usb-serial)
807 endef
808
809 define KernelPackage/usb-serial-oti6858/description
810  Kernel support for Ours Technology OTI6858 USB-to-Serial converters
811 endef
812
813 $(eval $(call KernelPackage,usb-serial-oti6858))
814
815
816 define KernelPackage/usb-serial-sierrawireless
817   TITLE:=Support for Sierra Wireless devices
818   KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
819   FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.ko
820   AUTOLOAD:=$(call AutoProbe,sierra)
821   $(call AddDepends/usb-serial)
822 endef
823
824 define KernelPackage/usb-serial-sierrawireless/description
825  Kernel support for Sierra Wireless devices
826 endef
827
828 $(eval $(call KernelPackage,usb-serial-sierrawireless))
829
830
831 define KernelPackage/usb-serial-visor
832   TITLE:=Support for Handspring Visor devices
833   KCONFIG:=CONFIG_USB_SERIAL_VISOR
834   FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.ko
835   AUTOLOAD:=$(call AutoProbe,visor)
836   $(call AddDepends/usb-serial)
837 endef
838
839 define KernelPackage/usb-serial-visor/description
840  Kernel support for Handspring Visor PDAs
841 endef
842
843 $(eval $(call KernelPackage,usb-serial-visor))
844
845
846 define KernelPackage/usb-serial-cypress-m8
847   TITLE:=Support for CypressM8 USB-Serial
848   KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
849   FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.ko
850   AUTOLOAD:=$(call AutoProbe,cypress_m8)
851   $(call AddDepends/usb-serial)
852 endef
853
854 define KernelPackage/usb-serial-cypress-m8/description
855  Kernel support for devices with Cypress M8 USB to Serial chip
856  (for example, the Delorme Earthmate LT-20 GPS)
857  Supported microcontrollers in the CY4601 family are:
858  CY7C63741 CY7C63742 CY7C63743 CY7C64013
859 endef
860
861 $(eval $(call KernelPackage,usb-serial-cypress-m8))
862
863
864 define KernelPackage/usb-serial-keyspan
865   TITLE:=Support for Keyspan USB-to-Serial devices
866   KCONFIG:= \
867         CONFIG_USB_SERIAL_KEYSPAN \
868         CONFIG_USB_SERIAL_KEYSPAN_USA28 \
869         CONFIG_USB_SERIAL_KEYSPAN_USA28X \
870         CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
871         CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
872         CONFIG_USB_SERIAL_KEYSPAN_USA19 \
873         CONFIG_USB_SERIAL_KEYSPAN_USA18X \
874         CONFIG_USB_SERIAL_KEYSPAN_USA19W \
875         CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
876         CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
877         CONFIG_USB_SERIAL_KEYSPAN_MPR \
878         CONFIG_USB_SERIAL_KEYSPAN_USA49W \
879         CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
880   FILES:= \
881         $(LINUX_DIR)/drivers/usb/serial/keyspan.ko \
882         $(wildcard $(LINUX_DIR)/drivers/usb/misc/ezusb.ko)
883   AUTOLOAD:=$(call AutoProbe,ezusb keyspan)
884   $(call AddDepends/usb-serial)
885 endef
886
887 define KernelPackage/usb-serial-keyspan/description
888  Kernel support for Keyspan USB-to-Serial devices
889 endef
890
891 $(eval $(call KernelPackage,usb-serial-keyspan))
892
893
894 define KernelPackage/usb-serial-wwan
895   TITLE:=Support for GSM and CDMA modems
896   KCONFIG:=CONFIG_USB_SERIAL_WWAN
897   FILES:=$(LINUX_DIR)/drivers/usb/serial/usb_wwan.ko
898   AUTOLOAD:=$(call AutoProbe,usb_wwan)
899   $(call AddDepends/usb-serial)
900 endef
901
902 define KernelPackage/usb-serial-wwan/description
903  Kernel support for USB GSM and CDMA modems
904 endef
905
906 $(eval $(call KernelPackage,usb-serial-wwan))
907
908
909 define KernelPackage/usb-serial-option
910   TITLE:=Support for Option HSDPA modems
911   DEPENDS:=+kmod-usb-serial-wwan
912   KCONFIG:=CONFIG_USB_SERIAL_OPTION
913   FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
914   AUTOLOAD:=$(call AutoProbe,option)
915   $(call AddDepends/usb-serial)
916 endef
917
918 define KernelPackage/usb-serial-option/description
919  Kernel support for Option HSDPA modems
920 endef
921
922 $(eval $(call KernelPackage,usb-serial-option))
923
924
925 define KernelPackage/usb-serial-qualcomm
926   TITLE:=Support for Qualcomm USB serial
927   KCONFIG:=CONFIG_USB_SERIAL_QUALCOMM
928   FILES:=$(LINUX_DIR)/drivers/usb/serial/qcserial.ko
929   AUTOLOAD:=$(call AutoProbe,qcserial)
930   $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
931 endef
932
933 define KernelPackage/usb-serial-qualcomm/description
934  Kernel support for Qualcomm USB Serial devices (Gobi)
935 endef
936
937 $(eval $(call KernelPackage,usb-serial-qualcomm))
938
939
940 define KernelPackage/usb-storage
941   TITLE:=USB Storage support
942   DEPENDS:= +kmod-scsi-core
943   KCONFIG:=CONFIG_USB_STORAGE
944   FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.ko
945   AUTOLOAD:=$(call AutoProbe,usb-storage,1)
946   $(call AddDepends/usb)
947 endef
948
949 define KernelPackage/usb-storage/description
950  Kernel support for USB Mass Storage devices
951 endef
952
953 $(eval $(call KernelPackage,usb-storage))
954
955
956 define KernelPackage/usb-storage-extras
957   SUBMENU:=$(USB_MENU)
958   TITLE:=Extra drivers for usb-storage
959   DEPENDS:=+kmod-usb-storage
960   KCONFIG:= \
961         CONFIG_USB_STORAGE_ALAUDA \
962         CONFIG_USB_STORAGE_CYPRESS_ATACB \
963         CONFIG_USB_STORAGE_DATAFAB \
964         CONFIG_USB_STORAGE_FREECOM \
965         CONFIG_USB_STORAGE_ISD200 \
966         CONFIG_USB_STORAGE_JUMPSHOT \
967         CONFIG_USB_STORAGE_KARMA \
968         CONFIG_USB_STORAGE_SDDR09 \
969         CONFIG_USB_STORAGE_SDDR55 \
970         CONFIG_USB_STORAGE_USBAT
971   FILES:= \
972         $(LINUX_DIR)/drivers/usb/storage/ums-alauda.ko \
973         $(LINUX_DIR)/drivers/usb/storage/ums-cypress.ko \
974         $(LINUX_DIR)/drivers/usb/storage/ums-datafab.ko \
975         $(LINUX_DIR)/drivers/usb/storage/ums-freecom.ko \
976         $(LINUX_DIR)/drivers/usb/storage/ums-isd200.ko \
977         $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.ko \
978         $(LINUX_DIR)/drivers/usb/storage/ums-karma.ko \
979         $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.ko \
980         $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.ko \
981         $(LINUX_DIR)/drivers/usb/storage/ums-usbat.ko
982   AUTOLOAD:=$(call AutoProbe,ums-alauda ums-cypress ums-datafab \
983                                 ums-freecom ums-isd200 ums-jumpshot \
984                                 ums-karma ums-sddr09 ums-sddr55 ums-usbat)
985 endef
986
987 define KernelPackage/usb-storage-extras/description
988  Say Y here if you want to have some more drivers,
989  such as for SmartMedia card readers
990 endef
991
992 $(eval $(call KernelPackage,usb-storage-extras))
993
994
995 define KernelPackage/usb-storage-uas
996   SUBMENU:=$(USB_MENU)
997   TITLE:=USB Attached SCSI (UASP) support
998   DEPENDS:=+kmod-usb-storage
999   KCONFIG:=CONFIG_USB_UAS
1000   FILES:=$(LINUX_DIR)/drivers/usb/storage/uas.ko
1001   AUTOLOAD:=$(call AutoProbe,uas,1)
1002 endef
1003
1004 define KernelPackage/usb-storage-uas/description
1005  Say Y here if you want to include support for
1006  USB Attached SCSI (UAS/UASP), a higher
1007  performance protocol available on many
1008  newer USB 3.0 storage devices
1009 endef
1010
1011 $(eval $(call KernelPackage,usb-storage-uas))
1012
1013
1014 define KernelPackage/usb-atm
1015   TITLE:=Support for ATM on USB bus
1016   DEPENDS:=+kmod-atm
1017   KCONFIG:=CONFIG_USB_ATM
1018   FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.ko
1019   AUTOLOAD:=$(call AutoProbe,usbatm)
1020   $(call AddDepends/usb)
1021 endef
1022
1023 define KernelPackage/usb-atm/description
1024  Kernel support for USB DSL modems
1025 endef
1026
1027 $(eval $(call KernelPackage,usb-atm))
1028
1029
1030 define AddDepends/usb-atm
1031   SUBMENU:=$(USB_MENU)
1032   DEPENDS+=kmod-usb-atm $(1)
1033 endef
1034
1035
1036 define KernelPackage/usb-atm-speedtouch
1037   TITLE:=SpeedTouch USB ADSL modems support
1038   KCONFIG:=CONFIG_USB_SPEEDTOUCH
1039   FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.ko
1040   AUTOLOAD:=$(call AutoProbe,speedtch)
1041   $(call AddDepends/usb-atm)
1042 endef
1043
1044 define KernelPackage/usb-atm-speedtouch/description
1045  Kernel support for SpeedTouch USB ADSL modems
1046 endef
1047
1048 $(eval $(call KernelPackage,usb-atm-speedtouch))
1049
1050
1051 define KernelPackage/usb-atm-ueagle
1052   TITLE:=Eagle 8051 based USB ADSL modems support
1053   FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.ko
1054   KCONFIG:=CONFIG_USB_UEAGLEATM
1055   AUTOLOAD:=$(call AutoProbe,ueagle-atm)
1056   $(call AddDepends/usb-atm)
1057 endef
1058
1059 define KernelPackage/usb-atm-ueagle/description
1060  Kernel support for Eagle 8051 based USB ADSL modems
1061 endef
1062
1063 $(eval $(call KernelPackage,usb-atm-ueagle))
1064
1065
1066 define KernelPackage/usb-atm-cxacru
1067   TITLE:=cxacru
1068   FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.ko
1069   KCONFIG:=CONFIG_USB_CXACRU
1070   AUTOLOAD:=$(call AutoProbe,cxacru)
1071   $(call AddDepends/usb-atm)
1072 endef
1073
1074 define KernelPackage/usb-atm-cxacru/description
1075  Kernel support for cxacru based USB ADSL modems
1076 endef
1077
1078 $(eval $(call KernelPackage,usb-atm-cxacru))
1079
1080
1081 define KernelPackage/usb-net
1082   TITLE:=Kernel modules for USB-to-Ethernet convertors
1083   DEPENDS:=+kmod-mii
1084   KCONFIG:=CONFIG_USB_USBNET \
1085         CONFIG_USB_NET_DRIVERS
1086   AUTOLOAD:=$(call AutoProbe,usbnet)
1087   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
1088   $(call AddDepends/usb)
1089 endef
1090
1091 define KernelPackage/usb-net/description
1092  Kernel modules for USB-to-Ethernet convertors
1093 endef
1094
1095 $(eval $(call KernelPackage,usb-net))
1096
1097
1098 define AddDepends/usb-net
1099   SUBMENU:=$(USB_MENU)
1100   DEPENDS+=kmod-usb-net $(1)
1101 endef
1102
1103
1104 define KernelPackage/usb-net-asix
1105   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
1106   DEPENDS:=+kmod-libphy
1107   KCONFIG:=CONFIG_USB_NET_AX8817X
1108   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
1109   AUTOLOAD:=$(call AutoProbe,asix)
1110   $(call AddDepends/usb-net)
1111 endef
1112
1113 define KernelPackage/usb-net-asix/description
1114  Kernel module for USB-to-Ethernet Asix convertors
1115 endef
1116
1117 $(eval $(call KernelPackage,usb-net-asix))
1118
1119
1120 define KernelPackage/usb-net-asix-ax88179
1121   TITLE:=Kernel module for USB-to-Gigabit-Ethernet Asix convertors
1122   DEPENDS:=+kmod-libphy
1123   KCONFIG:=CONFIG_USB_NET_AX88179_178A
1124   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/ax88179_178a.ko
1125   AUTOLOAD:=$(call AutoProbe,ax88179_178a)
1126   $(call AddDepends/usb-net)
1127 endef
1128
1129 define KernelPackage/usb-net-asix-ax88179/description
1130  Kernel module for USB-to-Ethernet ASIX AX88179 based USB 3.0/2.0
1131  to Gigabit Ethernet adapters.
1132 endef
1133
1134 $(eval $(call KernelPackage,usb-net-asix-ax88179))
1135
1136
1137 define KernelPackage/usb-net-hso
1138   TITLE:=Kernel module for Option USB High Speed Mobile Devices
1139   KCONFIG:=CONFIG_USB_HSO
1140   FILES:= \
1141         $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.ko
1142   AUTOLOAD:=$(call AutoProbe,hso)
1143   $(call AddDepends/usb-net)
1144   $(call AddDepends/rfkill)
1145 endef
1146
1147 define KernelPackage/usb-net-hso/description
1148  Kernel module for Option USB High Speed Mobile Devices
1149 endef
1150
1151 $(eval $(call KernelPackage,usb-net-hso))
1152
1153
1154 define KernelPackage/usb-net-kaweth
1155   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
1156   KCONFIG:=CONFIG_USB_KAWETH
1157   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.ko
1158   AUTOLOAD:=$(call AutoProbe,kaweth)
1159   $(call AddDepends/usb-net)
1160 endef
1161
1162 define KernelPackage/usb-net-kaweth/description
1163  Kernel module for USB-to-Ethernet Kaweth convertors
1164 endef
1165
1166 $(eval $(call KernelPackage,usb-net-kaweth))
1167
1168
1169 define KernelPackage/usb-net-pegasus
1170   TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
1171   KCONFIG:=CONFIG_USB_PEGASUS
1172   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.ko
1173   AUTOLOAD:=$(call AutoProbe,pegasus)
1174   $(call AddDepends/usb-net)
1175 endef
1176
1177 define KernelPackage/usb-net-pegasus/description
1178  Kernel module for USB-to-Ethernet Pegasus convertors
1179 endef
1180
1181 $(eval $(call KernelPackage,usb-net-pegasus))
1182
1183
1184 define KernelPackage/usb-net-mcs7830
1185   TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
1186   KCONFIG:=CONFIG_USB_NET_MCS7830
1187   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.ko
1188   AUTOLOAD:=$(call AutoProbe,mcs7830)
1189   $(call AddDepends/usb-net)
1190 endef
1191
1192 define KernelPackage/usb-net-mcs7830/description
1193  Kernel module for USB-to-Ethernet MCS7830 convertors
1194 endef
1195
1196 $(eval $(call KernelPackage,usb-net-mcs7830))
1197
1198
1199 define KernelPackage/usb-net-smsc95xx
1200   TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices
1201   KCONFIG:=CONFIG_USB_NET_SMSC95XX
1202   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
1203   AUTOLOAD:=$(call AutoProbe,smsc95xx)
1204   $(call AddDepends/usb-net, +kmod-lib-crc16)
1205 endef
1206
1207 define KernelPackage/usb-net-smsc95xx/description
1208  Kernel module for SMSC LAN95XX based devices
1209 endef
1210
1211 $(eval $(call KernelPackage,usb-net-smsc95xx))
1212
1213
1214 define KernelPackage/usb-net-dm9601-ether
1215   TITLE:=Support for DM9601 ethernet connections
1216   KCONFIG:=CONFIG_USB_NET_DM9601
1217   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.ko
1218   AUTOLOAD:=$(call AutoProbe,dm9601)
1219   $(call AddDepends/usb-net)
1220 endef
1221
1222 define KernelPackage/usb-net-dm9601-ether/description
1223  Kernel support for USB DM9601 devices
1224 endef
1225
1226 $(eval $(call KernelPackage,usb-net-dm9601-ether))
1227
1228 define KernelPackage/usb-net-cdc-ether
1229   TITLE:=Support for cdc ethernet connections
1230   KCONFIG:=CONFIG_USB_NET_CDCETHER
1231   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ether.ko
1232   AUTOLOAD:=$(call AutoProbe,cdc_ether)
1233   $(call AddDepends/usb-net)
1234 endef
1235
1236 define KernelPackage/usb-net-cdc-ether/description
1237  Kernel support for USB CDC Ethernet devices
1238 endef
1239
1240 $(eval $(call KernelPackage,usb-net-cdc-ether))
1241
1242
1243 define KernelPackage/usb-net-cdc-eem
1244   TITLE:=Support for CDC EEM connections
1245   KCONFIG:=CONFIG_USB_NET_CDC_EEM
1246   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_eem.ko
1247   AUTOLOAD:=$(call AutoProbe,cdc_eem)
1248   $(call AddDepends/usb-net)
1249 endef
1250
1251 define KernelPackage/usb-net-cdc-eem/description
1252  Kernel support for USB CDC EEM
1253 endef
1254
1255 $(eval $(call KernelPackage,usb-net-cdc-eem))
1256
1257
1258 define KernelPackage/usb-net-cdc-subset
1259   TITLE:=Support for CDC Ethernet subset connections
1260   KCONFIG:= \
1261         CONFIG_USB_NET_CDC_SUBSET \
1262         CONFIG_USB_ARMLINUX
1263   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_subset.ko
1264   AUTOLOAD:=$(call AutoProbe,cdc_subset)
1265   $(call AddDepends/usb-net)
1266 endef
1267
1268 define KernelPackage/usb-net-cdc-subset/description
1269  Kernel support for Simple USB Network Links (CDC Ethernet subset)
1270 endef
1271
1272 $(eval $(call KernelPackage,usb-net-cdc-subset))
1273
1274
1275 define KernelPackage/usb-net-qmi-wwan
1276   TITLE:=QMI WWAN driver
1277   KCONFIG:=CONFIG_USB_NET_QMI_WWAN
1278   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/qmi_wwan.ko
1279   AUTOLOAD:=$(call AutoProbe,qmi_wwan)
1280   $(call AddDepends/usb-net,+kmod-usb-wdm)
1281 endef
1282
1283 define KernelPackage/usb-net-qmi-wwan/description
1284  QMI WWAN driver for Qualcomm MSM based 3G and LTE modems
1285 endef
1286
1287 $(eval $(call KernelPackage,usb-net-qmi-wwan))
1288
1289
1290 define KernelPackage/usb-net-rtl8150
1291   TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
1292   KCONFIG:=CONFIG_USB_RTL8150
1293   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/rtl8150.ko
1294   AUTOLOAD:=$(call AutoProbe,rtl8150)
1295   $(call AddDepends/usb-net)
1296 endef
1297
1298 define KernelPackage/usb-net-rtl8150/description
1299  Kernel module for USB-to-Ethernet Realtek 8150 convertors
1300 endef
1301
1302 $(eval $(call KernelPackage,usb-net-rtl8150))
1303
1304
1305 define KernelPackage/usb-net-rtl8152
1306   TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
1307   KCONFIG:=CONFIG_USB_RTL8152
1308   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko
1309   AUTOLOAD:=$(call AutoProbe,r8152)
1310   $(call AddDepends/usb-net)
1311 endef
1312
1313 define KernelPackage/usb-net-rtl8152/description
1314  Kernel module for USB-to-Ethernet Realtek 8152 USB2.0/3.0 convertors
1315 endef
1316
1317 $(eval $(call KernelPackage,usb-net-rtl8152))
1318
1319
1320 define KernelPackage/usb-net-sr9700
1321   TITLE:=Support for CoreChip SR9700 ethernet devices
1322   KCONFIG:=CONFIG_USB_NET_SR9700
1323   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/sr9700.ko
1324   AUTOLOAD:=$(call AutoProbe,sr9700)
1325   $(call AddDepends/usb-net)
1326 endef
1327
1328 define KernelPackage/usb-net-sr9700/description
1329  Kernel module for CoreChip-sz SR9700 based USB 1.1 10/100 ethernet devices
1330 endef
1331
1332 $(eval $(call KernelPackage,usb-net-sr9700))
1333
1334
1335 define KernelPackage/usb-net-rndis
1336   TITLE:=Support for RNDIS connections
1337   KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
1338   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.ko
1339   AUTOLOAD:=$(call AutoProbe,rndis_host)
1340   $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
1341 endef
1342
1343 define KernelPackage/usb-net-rndis/description
1344  Kernel support for RNDIS connections
1345 endef
1346
1347 $(eval $(call KernelPackage,usb-net-rndis))
1348
1349
1350 define KernelPackage/usb-net-cdc-mbim
1351   SUBMENU:=$(USB_MENU)
1352   TITLE:=Kernel module for MBIM Devices
1353   KCONFIG:=CONFIG_USB_NET_CDC_MBIM
1354   FILES:= \
1355    $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_mbim.ko
1356   AUTOLOAD:=$(call AutoProbe,cdc_mbim)
1357   $(call AddDepends/usb-net,+kmod-usb-wdm +kmod-usb-net-cdc-ncm)
1358 endef
1359
1360 define KernelPackage/usb-net-cdc-mbim/description
1361  Kernel module for Option USB High Speed Mobile Devices
1362 endef
1363
1364 $(eval $(call KernelPackage,usb-net-cdc-mbim))
1365
1366
1367 define KernelPackage/usb-net-cdc-ncm
1368   TITLE:=Support for CDC NCM connections
1369   KCONFIG:=CONFIG_USB_NET_CDC_NCM
1370   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
1371   AUTOLOAD:=$(call AutoProbe,cdc_ncm)
1372   $(call AddDepends/usb-net)
1373 endef
1374
1375 define KernelPackage/usb-net-cdc-ncm/description
1376  Kernel support for CDC NCM connections
1377 endef
1378
1379 $(eval $(call KernelPackage,usb-net-cdc-ncm))
1380
1381
1382 define KernelPackage/usb-net-huawei-cdc-ncm
1383   TITLE:=Support for Huawei CDC NCM connections
1384   KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM
1385   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko
1386   AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm)
1387   $(call AddDepends/usb-net,+kmod-usb-net-cdc-ncm +kmod-usb-wdm)
1388 endef
1389
1390 define KernelPackage/usb-net-huawei-cdc-ncm/description
1391  Kernel support for Huawei CDC NCM connections
1392 endef
1393
1394 $(eval $(call KernelPackage,usb-net-huawei-cdc-ncm))
1395
1396
1397 define KernelPackage/usb-net-sierrawireless
1398   TITLE:=Support for Sierra Wireless devices
1399   KCONFIG:=CONFIG_USB_SIERRA_NET
1400   FILES:=$(LINUX_DIR)/drivers/net/usb/sierra_net.ko
1401   AUTOLOAD:=$(call AutoProbe,sierra_net)
1402   $(call AddDepends/usb-net)
1403 endef
1404
1405 define KernelPackage/usb-net-sierrawireless/description
1406  Kernel support for Sierra Wireless devices
1407 endef
1408
1409 $(eval $(call KernelPackage,usb-net-sierrawireless))
1410
1411
1412 define KernelPackage/usb-net-ipheth
1413   TITLE:=Apple iPhone USB Ethernet driver
1414   KCONFIG:=CONFIG_USB_IPHETH
1415   FILES:=$(LINUX_DIR)/drivers/net/usb/ipheth.ko
1416   AUTOLOAD:=$(call AutoProbe,ipheth)
1417   $(call AddDepends/usb-net)
1418 endef
1419
1420 define KernelPackage/usb-net-ipheth/description
1421  Kernel support for Apple iPhone USB Ethernet driver
1422 endef
1423
1424 $(eval $(call KernelPackage,usb-net-ipheth))
1425
1426
1427 define KernelPackage/usb-net-kalmia
1428   TITLE:=Samsung Kalmia based LTE USB modem
1429   KCONFIG:=CONFIG_USB_NET_KALMIA
1430   FILES:=$(LINUX_DIR)/drivers/net/usb/kalmia.ko
1431   AUTOLOAD:=$(call AutoProbe,kalmia)
1432   $(call AddDepends/usb-net)
1433 endef
1434
1435 define KernelPackage/usb-net-kalmia/description
1436  Kernel support for Samsung Kalmia based LTE USB modem
1437 endef
1438
1439 $(eval $(call KernelPackage,usb-net-kalmia))
1440
1441 define KernelPackage/usb-net-pl
1442   TITLE:=Prolific PL-2301/2302/25A1 based cables
1443   KCONFIG:=CONFIG_USB_NET_PLUSB
1444   FILES:=$(LINUX_DIR)/drivers/net/usb/plusb.ko
1445   AUTOLOAD:=$(call AutoProbe,plusb)
1446   $(call AddDepends/usb-net)
1447 endef
1448
1449 define KernelPackage/usb-net-pl/description
1450  Kernel support for Prolific PL-2301/2302/25A1 based cables
1451 endef
1452
1453 $(eval $(call KernelPackage,usb-net-pl))
1454
1455 define KernelPackage/usb-hid
1456   TITLE:=Support for USB Human Input Devices
1457   KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
1458   DEPENDS:=+kmod-hid +kmod-hid-generic +kmod-input-evdev
1459   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
1460   AUTOLOAD:=$(call AutoProbe,usbhid)
1461   $(call AddDepends/usb)
1462 endef
1463
1464 define KernelPackage/usb-hid/description
1465  Kernel support for USB HID devices such as keyboards and mice
1466 endef
1467
1468 $(eval $(call KernelPackage,usb-hid))
1469
1470
1471 define KernelPackage/usb-yealink
1472   TITLE:=USB Yealink VOIP phone
1473   DEPENDS:=+kmod-input-evdev
1474   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
1475   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
1476   AUTOLOAD:=$(call AutoProbe,yealink)
1477   $(call AddDepends/usb)
1478 endef
1479
1480 define KernelPackage/usb-yealink/description
1481  Kernel support for Yealink VOIP phone
1482 endef
1483
1484 $(eval $(call KernelPackage,usb-yealink))
1485
1486
1487 define KernelPackage/usb-cm109
1488   TITLE:=Support for CM109 device
1489   DEPENDS:=+kmod-input-evdev
1490   KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
1491   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
1492   AUTOLOAD:=$(call AutoProbe,cm109)
1493   $(call AddDepends/usb)
1494 endef
1495
1496 define KernelPackage/usb-cm109/description
1497  Kernel support for CM109 VOIP phone
1498 endef
1499
1500 $(eval $(call KernelPackage,usb-cm109))
1501
1502
1503 define KernelPackage/usb-test
1504   TITLE:=USB Testing Driver
1505   DEPENDS:=@DEVEL
1506   KCONFIG:=CONFIG_USB_TEST
1507   FILES:=$(LINUX_DIR)/drivers/usb/misc/usbtest.ko
1508   $(call AddDepends/usb)
1509 endef
1510
1511 define KernelPackage/usb-test/description
1512  Kernel support for testing USB Host Controller software
1513 endef
1514
1515 $(eval $(call KernelPackage,usb-test))
1516
1517
1518 define KernelPackage/usbip
1519   TITLE := USB-over-IP kernel support
1520   KCONFIG:= \
1521         CONFIG_USBIP_CORE \
1522         CONFIG_USBIP_DEBUG=n
1523   FILES:=$(LINUX_DIR)/drivers/usb/usbip/usbip-core.ko
1524   AUTOLOAD:=$(call AutoProbe,usbip-core)
1525   $(call AddDepends/usb)
1526 endef
1527
1528 $(eval $(call KernelPackage,usbip))
1529
1530
1531 define KernelPackage/usbip-client
1532   TITLE := USB-over-IP client driver
1533   DEPENDS := +kmod-usbip
1534   KCONFIG := CONFIG_USBIP_VHCI_HCD
1535   FILES :=$(LINUX_DIR)/drivers/usb/usbip/vhci-hcd.ko
1536   AUTOLOAD := $(call AutoProbe,vhci-hcd)
1537   $(call AddDepends/usb)
1538 endef
1539
1540 $(eval $(call KernelPackage,usbip-client))
1541
1542
1543 define KernelPackage/usbip-server
1544 $(call KernelPackage/usbip/Default)
1545   TITLE := USB-over-IP host driver
1546   DEPENDS := +kmod-usbip
1547   KCONFIG := CONFIG_USBIP_HOST
1548   FILES :=$(LINUX_DIR)/drivers/usb/usbip/usbip-host.ko
1549   AUTOLOAD := $(call AutoProbe,usbip-host)
1550   $(call AddDepends/usb)
1551 endef
1552
1553 $(eval $(call KernelPackage,usbip-server))
1554
1555
1556 define KernelPackage/usb-chipidea
1557   TITLE:=Host and device support for Chipidea controllers
1558   DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget @TARGET_ar71xx||TARGET_ath79 +kmod-usb-ehci +kmod-usb-phy-nop
1559   KCONFIG:= \
1560         CONFIG_EXTCON \
1561         CONFIG_USB_CHIPIDEA \
1562         CONFIG_USB_CHIPIDEA_HOST=y \
1563         CONFIG_USB_CHIPIDEA_UDC=y \
1564         CONFIG_USB_CHIPIDEA_DEBUG=y
1565   FILES:= \
1566         $(LINUX_DIR)/drivers/extcon/extcon.ko@lt4.9 \
1567         $(LINUX_DIR)/drivers/extcon/extcon-core.ko@ge4.9 \
1568         $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko
1569   AUTOLOAD:=$(call AutoLoad,39,ci_hdrc,1)
1570   $(call AddDepends/usb)
1571 endef
1572
1573 define KernelPackage/usb-chipidea/description
1574  Kernel support for USB Chipidea controllers
1575 endef
1576
1577 $(eval $(call KernelPackage,usb-chipidea))
1578
1579
1580 define KernelPackage/usb-chipidea2
1581   TITLE:=Host and device support for Chipidea2 controllers
1582   DEPENDS:=+kmod-usb-chipidea
1583   KCONFIG:= \
1584         CONFIG_EXTCON \
1585         CONFIG_USB_CHIPIDEA \
1586         CONFIG_USB_CHIPIDEA_HOST=y \
1587         CONFIG_USB_CHIPIDEA_UDC=y \
1588         CONFIG_USB_CHIPIDEA_DEBUG=y
1589   FILES:= \
1590         $(LINUX_DIR)/drivers/extcon/extcon.ko@lt4.9 \
1591         $(LINUX_DIR)/drivers/extcon/extcon-core.ko@ge4.9 \
1592         $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc_usb2.ko
1593   AUTOLOAD:=$(call AutoLoad,39,ci_hdrc_usb2,1)
1594   $(call AddDepends/usb)
1595 endef
1596
1597 define KernelPackage/usb-chipidea2/description
1598  Kernel support for USB Chipidea controllers
1599 endef
1600
1601 $(eval $(call KernelPackage,usb-chipidea2))
1602
1603
1604 define KernelPackage/usbmon
1605   TITLE:=USB traffic monitor
1606   KCONFIG:=CONFIG_USB_MON
1607   $(call AddDepends/usb)
1608   FILES:=$(LINUX_DIR)/drivers/usb/mon/usbmon.ko
1609   AUTOLOAD:=$(call AutoProbe,usbmon)
1610 endef
1611
1612 define KernelPackage/usbmon/description
1613  Kernel support for USB traffic monitoring
1614 endef
1615
1616 $(eval $(call KernelPackage,usbmon))
1617
1618 XHCI_MODULES := xhci-hcd xhci-pci xhci-plat-hcd
1619 ifdef CONFIG_TARGET_ramips_mt7621
1620   XHCI_MODULES += xhci-mtk
1621 endif
1622 XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,$(XHCI_MODULES)))
1623 XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES))
1624
1625 define KernelPackage/usb3
1626   TITLE:=Support for USB3 controllers
1627   DEPENDS:= \
1628         +TARGET_bcm53xx:kmod-usb-bcma \
1629         +TARGET_bcm53xx:kmod-phy-bcm-ns-usb3
1630   KCONFIG:= \
1631         CONFIG_USB_PCI=y \
1632         CONFIG_USB_XHCI_HCD \
1633         CONFIG_USB_XHCI_PCI \
1634         CONFIG_USB_XHCI_PLATFORM \
1635         CONFIG_USB_XHCI_MVEBU=y \
1636         CONFIG_USB_XHCI_MTK \
1637         CONFIG_USB_XHCI_HCD_DEBUGGING=n
1638   FILES:= \
1639         $(XHCI_FILES)
1640   AUTOLOAD:=$(call AutoLoad,54,$(XHCI_AUTOLOAD),1)
1641   $(call AddDepends/usb)
1642 endef
1643
1644 define KernelPackage/usb3/description
1645  Kernel support for USB3 (XHCI) controllers
1646 endef
1647
1648 $(eval $(call KernelPackage,usb3))
1649
1650
1651 define KernelPackage/usb-net2280
1652   TITLE:=Support for NetChip 228x PCI USB peripheral controller
1653   KCONFIG:= \
1654         CONFIG_USB_PCI=y \
1655         CONFIG_USB_NET2280
1656   DEPENDS:=@PCI_SUPPORT +kmod-usb-gadget
1657   FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/net2280.ko
1658   AUTOLOAD:=$(call AutoLoad,46,net2280)
1659   $(call AddDepends/usb)
1660 endef
1661
1662 define KernelPackage/usb-net2280/description
1663   Kernel support for NetChip 228x / PLX USB338x PCI USB peripheral controller.
1664 endef
1665
1666 $(eval $(call KernelPackage,usb-net2280))
1667
1668 define KernelPackage/chaoskey
1669   SUBMENU:=$(USB_MENU)
1670   TITLE:=Chaoskey hardware RNG support
1671   DEPENDS:=+kmod-random-core
1672   KCONFIG:=CONFIG_USB_CHAOSKEY
1673   FILES:=$(LINUX_DIR)/drivers/usb/misc/chaoskey.ko
1674   AUTOLOAD:=$(call AutoProbe,chaoskey)
1675   $(call AddDepends/usb)
1676 endef
1677
1678 define KernelPackage/chaoskey/description
1679   Kernel module for chaoskey, USB attached true random number generator
1680 endef
1681
1682 $(eval $(call KernelPackage,chaoskey))
1683