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