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