move package description to a separate definition, remove it when DESCRIPTION=TITLE
[openwrt.git] / package / kernel / modules / usb.mk
1
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 USBMENU:=USB Support
10
11 ifeq ($(KERNEL),2.4)
12   USBNET_DIR:=usb/net
13 endif
14
15 ifeq ($(KERNEL_PATCHVER),2.6.21)
16   USBNET_DIR:=usb/net
17   USBHID_DIR:=usb/input
18   USBINPUT_DIR:=usb/input
19 endif
20
21 USBNET_DIR?=net/usb
22 USBHID_DIR?=hid/usbhid
23 USBINPUT_DIR?=input/misc
24
25 define usbdep
26   SUBMENU:=$(USBMENU)
27   DEPENDS:=kmod-usb-core $(1)
28 endef
29
30
31 define KernelPackage/usb-core
32   SUBMENU:=$(USBMENU)
33   TITLE:=Support for USB
34   DEPENDS:=@USB_SUPPORT
35   KCONFIG:=CONFIG_USB
36   AUTOLOAD:=$(call AutoLoad,20,usbcore)
37 endef
38
39 define KernelPackage/usb-core/2.4
40   FILES:=$(LINUX_DIR)/drivers/usb/usbcore.$(LINUX_KMOD_SUFFIX)
41 endef
42
43 define KernelPackage/usb-core/2.6
44   FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.$(LINUX_KMOD_SUFFIX)
45 endef
46
47 define KernelPackage/usb-core/description
48  Kernel support for USB
49 endef
50
51 $(eval $(call KernelPackage,usb-core))
52
53
54 define KernelPackage/usb-uhci
55   $(call usbdep,)
56   TITLE:=Support for UHCI controllers
57 endef
58
59 define KernelPackage/usb-uhci/2.4
60   KCONFIG:=CONFIG_USB_UHCI_ALT
61   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci.o
62   AUTOLOAD:=$(call AutoLoad,50,uhci)
63 endef
64
65 define KernelPackage/usb-uhci/2.6
66   KCONFIG:=CONFIG_USB_UHCI_HCD
67   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
68   AUTOLOAD:=$(call AutoLoad,50,uhci-hcd)
69 endef
70
71 define KernelPackage/usb-uhci/description
72  Kernel support for USB UHCI controllers
73 endef
74
75 $(eval $(call KernelPackage,usb-uhci))
76
77
78 define KernelPackage/usb-uhci-iv
79   $(call usbdep,@LINUX_2_4)
80   TITLE:=Support for Intel/VIA UHCI controllers 
81   KCONFIG:=CONFIG_USB_UHCI
82   FILES:=$(LINUX_DIR)/drivers/usb/host/usb-uhci.$(LINUX_KMOD_SUFFIX)
83   AUTOLOAD:=$(call AutoLoad,50,usb-uhci) 
84 endef 
85
86 define KernelPackage/usb-uhci-iv/description
87  Kernel support for Intel/VIA USB UHCI controllers
88 endef
89
90 $(eval $(call KernelPackage,usb-uhci-iv)) 
91
92
93 define KernelPackage/usb-ohci
94   $(call usbdep,)
95   TITLE:=Support for OHCI controllers
96 endef
97
98 define KernelPackage/usb-ohci/2.4
99   KCONFIG:=CONFIG_USB_OHCI
100   FILES:=$(LINUX_DIR)/drivers/usb/host/usb-ohci.o
101   AUTOLOAD:=$(call AutoLoad,50,usb-ohci)
102 endef
103
104 define KernelPackage/usb-ohci/2.6
105   KCONFIG:=CONFIG_USB_OHCI_HCD
106   FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
107   AUTOLOAD:=$(call AutoLoad,50,ohci-hcd)
108 endef
109
110 define KernelPackage/usb-ohci/description
111  Kernel support for USB OHCI controllers
112 endef
113
114 $(eval $(call KernelPackage,usb-ohci))
115
116
117 define KernelPackage/usb-adm5120
118   $(call usbdep,@LINUX_2_6_ADM5120||@LINUX_2_6_ADM5120EB)
119   TITLE:=Support for the ADM5120 HCD controller
120   KCONFIG:=CONFIG_USB_ADM5120_HCD
121   FILES:=$(LINUX_DIR)/drivers/usb/host/adm5120-hcd.$(LINUX_KMOD_SUFFIX)
122   AUTOLOAD:=$(call AutoLoad,50,adm5120-hcd)
123 endef
124
125 define KernelPackage/usb-adm5120/description
126  Kernel support for the ADM5120 HCD USB controller
127 endef
128
129 $(eval $(call KernelPackage,usb-adm5120))
130
131
132 define KernelPackage/usb2
133   $(call usbdep,)
134   TITLE:=Support for USB2 controllers
135   KCONFIG:=CONFIG_USB_EHCI_HCD
136   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.$(LINUX_KMOD_SUFFIX)
137   AUTOLOAD:=$(call AutoLoad,50,ehci-hcd)
138 endef
139
140 define KernelPackage/usb2/description
141  Kernel support for USB2 (EHCI) controllers
142 endef
143
144 $(eval $(call KernelPackage,usb2))
145
146
147 define KernelPackage/usb-acm
148   $(call usbdep,)
149   TITLE:=Support for modems/isdn controllers
150   KCONFIG:=CONFIG_USB_ACM
151 endef
152
153 define KernelPackage/usb-acm/2.4
154   FILES:=$(LINUX_DIR)/drivers/usb/acm.o
155   AUTOLOAD:=$(call AutoLoad,60,acm)
156 endef
157
158 define KernelPackage/usb-acm/2.6
159   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
160   AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
161 endef
162
163 define KernelPackage/usb-acm/description
164  Kernel support for USB ACM devices (modems/isdn controllers)
165 endef
166
167 $(eval $(call KernelPackage,usb-acm))
168
169
170 define KernelPackage/usb-audio
171   $(call usbdep,+kmod-soundcore)
172   TITLE:=Support for audio devices
173 endef
174
175 define KernelPackage/usb-audio/2.4
176   KCONFIG:=CONFIG_USB_AUDIO
177   FILES:=$(LINUX_DIR)/drivers/usb/audio.o
178   AUTOLOAD:=$(call AutoLoad,60,audio)
179 endef
180
181 define KernelPackage/usb-audio/2.6
182   KCONFIG:=CONFIG_SND_USB_AUDIO
183   FILES:= \
184         $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
185         $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
186   AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
187 endef
188
189 define KernelPackage/usb-audio/description
190  Kernel support for USB audio devices
191 endef
192
193 $(eval $(call KernelPackage,usb-audio))
194
195
196 define KernelPackage/usb-printer
197   $(call usbdep,)
198   TITLE:=Support for printers
199   KCONFIG:=CONFIG_USB_PRINTER
200 endef
201
202 define KernelPackage/usb-printer/2.4
203   FILES:=$(LINUX_DIR)/drivers/usb/printer.o
204   AUTOLOAD:=$(call AutoLoad,60,printer)
205 endef
206
207 define KernelPackage/usb-printer/2.6
208   FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
209   AUTOLOAD:=$(call AutoLoad,60,usblp)
210 endef
211
212 define KernelPackage/usb-printer/description
213  Kernel support for USB printers
214 endef
215
216 $(eval $(call KernelPackage,usb-printer))
217
218
219 define KernelPackage/usb-serial
220   $(call usbdep,)
221   TITLE:=Support for USB-to-Serial converters
222   KCONFIG:=CONFIG_USB_SERIAL
223   FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.$(LINUX_KMOD_SUFFIX)
224   AUTOLOAD:=$(call AutoLoad,60,usbserial)
225 endef
226
227 define KernelPackage/usb-serial/description
228  Kernel support for USB-to-Serial converters
229 endef
230
231 $(eval $(call KernelPackage,usb-serial))
232
233
234 define KernelPackage/usb-serial-airprime
235   $(call usbdep,kmod-usb-serial @LINUX_2_6)
236   TITLE:=Support for Airprime (EVDO) 
237   KCONFIG:=CONFIG_USB_SERIAL_AIRPRIME
238   FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.$(LINUX_KMOD_SUFFIX)
239   AUTOLOAD:=$(call AutoLoad,65,airprime)
240 endef
241
242 define KernelPackage/usb-serial-airprime/description
243  Kernel support for Airprime (EVDO) 
244 endef
245
246 $(eval $(call KernelPackage,usb-serial-airprime))
247
248
249 define KernelPackage/usb-serial-belkin
250   $(call usbdep,kmod-usb-serial)
251   TITLE:=Support for Belkin devices
252   KCONFIG:=CONFIG_USB_SERIAL_BELKIN
253   FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.$(LINUX_KMOD_SUFFIX)
254   AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
255 endef
256
257 define KernelPackage/usb-serial-belkin/description
258  Kernel support for Belkin USB-to-Serial converters
259 endef
260
261 $(eval $(call KernelPackage,usb-serial-belkin))
262
263
264 define KernelPackage/usb-serial-ftdi
265   $(call usbdep,kmod-usb-serial)
266   TITLE:=Support for FTDI devices
267   KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
268   FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.$(LINUX_KMOD_SUFFIX)
269   AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
270 endef
271
272 define KernelPackage/usb-serial-ftdi/description
273  Kernel support for FTDI USB-to-Serial converters
274 endef
275
276 $(eval $(call KernelPackage,usb-serial-ftdi))
277
278
279 define KernelPackage/usb-serial-mct
280   $(call usbdep,kmod-usb-serial)
281   TITLE:=Support for Magic Control Tech. devices
282   KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
283   FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.$(LINUX_KMOD_SUFFIX)
284   AUTOLOAD:=$(call AutoLoad,65,mct_u232)
285 endef
286
287 define KernelPackage/usb-serial-mct/description
288  Kernel support for Magic Control Technology USB-to-Serial converters
289 endef
290
291 $(eval $(call KernelPackage,usb-serial-mct))
292
293
294 define KernelPackage/usb-serial-pl2303
295   $(call usbdep,kmod-usb-serial)
296   TITLE:=Support for Prolific PL2303 devices
297   KCONFIG:=CONFIG_USB_SERIAL_PL2303
298   FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.$(LINUX_KMOD_SUFFIX)
299   AUTOLOAD:=$(call AutoLoad,65,pl2303)
300 endef
301
302 define KernelPackage/usb-serial-pl2303/description
303  Kernel support for Prolific PL2303 USB-to-Serial converters
304 endef
305
306 $(eval $(call KernelPackage,usb-serial-pl2303))
307
308
309 define KernelPackage/usb-serial-sierrawireless
310   $(call usbdep,kmod-usb-serial @LINUX_2_6)
311   TITLE:=Support for Sierra Wireless devices
312   KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
313   FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.$(LINUX_KMOD_SUFFIX)
314   AUTOLOAD:=$(call AutoLoad,65,sierra)
315 endef
316
317 define KernelPackage/usb-serial-sierrawireless/description
318  Kernel support for Sierra Wireless devices
319 endef
320
321 $(eval $(call KernelPackage,usb-serial-sierrawireless))
322
323
324 define KernelPackage/usb-serial-visor
325   $(call usbdep,kmod-usb-serial)
326   TITLE:=Support for Handspring Visor devices
327   KCONFIG:=CONFIG_USB_SERIAL_VISOR
328   FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.$(LINUX_KMOD_SUFFIX)
329   AUTOLOAD:=$(call AutoLoad,65,visor)
330 endef
331
332 define KernelPackage/usb-serial-visor/description
333  Kernel support for Handspring Visor PDAs
334 endef
335
336 $(eval $(call KernelPackage,usb-serial-visor))
337
338
339 define KernelPackage/usb-serial-keyspan
340   $(call usbdep,kmod-usb-serial)
341   TITLE:=Support for Keyspan USB-to-Serial devices
342   KCONFIG:= \
343         CONFIG_USB_SERIAL_KEYSPAN \
344         CONFIG_USB_SERIAL_KEYSPAN_USA28 \
345         CONFIG_USB_SERIAL_KEYSPAN_USA28X \
346         CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
347         CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
348         CONFIG_USB_SERIAL_KEYSPAN_USA19 \
349         CONFIG_USB_SERIAL_KEYSPAN_USA18X \
350         CONFIG_USB_SERIAL_KEYSPAN_USA19W \
351         CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
352         CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
353         CONFIG_USB_SERIAL_KEYSPAN_MPR \
354         CONFIG_USB_SERIAL_KEYSPAN_USA49W \
355         CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
356   FILES:=$(LINUX_DIR)/drivers/usb/serial/keyspan.$(LINUX_KMOD_SUFFIX)
357   AUTOLOAD:=$(call AutoLoad,65,keyspan)
358 endef
359
360 define KernelPackage/usb-serial-keyspan/description
361  Kernel support for Keyspan USB-to-Serial devices
362 endef
363
364 $(eval $(call KernelPackage,usb-serial-keyspan))
365
366
367 define KernelPackage/usb-serial-option
368   $(call usbdep,kmod-usb-serial @LINUX_2_6)
369   TITLE:=Support for Option HSDPA modems
370   KCONFIG:=CONFIG_USB_SERIAL_OPTION
371   FILES:=$(LINUX_DIR)/drivers/usb/serial/option.$(LINUX_KMOD_SUFFIX)
372   AUTOLOAD:=$(call AutoLoad,65,option)
373 endef
374
375 define KernelPackage/usb-serial-option/description
376  Kernel support for Option HSDPA modems
377 endef
378
379 $(eval $(call KernelPackage,usb-serial-option))
380
381
382 define KernelPackage/usb-storage
383   $(call usbdep,+kmod-scsi-core)
384   TITLE:=USB Storage support
385   KCONFIG:=CONFIG_USB_STORAGE
386   FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.$(LINUX_KMOD_SUFFIX)
387   AUTOLOAD:=$(call AutoLoad,60,scsi_mod sd_mod usb-storage)
388 endef
389
390 define KernelPackage/usb-storage/description
391  Kernel support for USB Mass Storage devices
392 endef
393
394 $(eval $(call KernelPackage,usb-storage))
395
396
397 define KernelPackage/usb-atm
398   $(call usbdep,@LINUX_2_6 kmod-atm)
399   TITLE:=Support for ATM on USB bus
400   KCONFIG:=CONFIG_USB_ATM
401   FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.$(LINUX_KMOD_SUFFIX)
402   AUTOLOAD:=$(call AutoLoad,60,usbatm)
403 endef
404
405 define KernelPackage/usb-atm/description
406  Kernel support for USB DSL modems
407 endef
408
409 $(eval $(call KernelPackage,usb-atm))
410
411
412 define KernelPackage/usb-speedtouch
413   $(call usbdep,@LINUX_2_6 kmod-atm)
414   TITLE:=Support for SpeedTouch ADSL modems
415   KCONFIG:=CONFIG_USB_SPEEDTOUCH
416   FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.$(LINUX_KMOD_SUFFIX)
417   AUTOLOAD:=$(call AutoLoad,70,speedtch)
418 endef
419
420 define KernelPackage/usb-speedtouch/description
421  Kernel support for SpeedTouch USB ADSL modems
422 endef
423
424 $(eval $(call KernelPackage,usb-speedtouch))
425
426
427 define KernelPackage/ueagle-atm
428   $(call usbdep,@LINUX_2_6 kmod-atm)
429   TITLE:=Driver for Eagle 8051 based USB ADSL modems
430   FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.$(LINUX_KMOD_SUFFIX)
431   KCONFIG:=CONFIG_USB_UEAGLEATM
432   AUTOLOAD:=$(call AutoLoad,70,ueagle-atm)
433 endef
434
435 define KernelPackage/ueagle-atm/description
436  Kernel support for Eagle 8051 based USB ADSL modems
437 endef
438
439 $(eval $(call KernelPackage,ueagle-atm))
440
441
442 define KernelPackage/usb-pwc
443   $(call usbdep,+kmod-videodev @LINUX_2_6)
444   TITLE:=Philips WebCam driver
445   KCONFIG:=CONFIG_USB_PWC CONFIG_VIDEO_V4L1=y CONFIG_VIDEO_CAPTURE_DRIVERS=y CONFIG_V4L_USB_DRIVERS=y CONFIG_USB_PWC_DEBUG=n
446   FILES:=$(LINUX_DIR)/drivers/media/video/pwc/pwc.$(LINUX_KMOD_SUFFIX)
447   AUTOLOAD:=$(call AutoLoad,70,pwc)
448 endef
449
450
451 define KernelPackage/usb-pwc/description
452  Kernel modules for supporting Philips WebCam USB devices
453 endef
454
455 $(eval $(call KernelPackage,usb-pwc))
456
457
458 define KernelPackage/cpia2
459   $(call usbdep,+kmod-videodev @LINUX_2_6)
460   TITLE:=CPIA2 video driver
461   KCONFIG:=CONFIG_VIDEO_CPIA2
462   FILES:=$(LINUX_DIR)/drivers/media/video/cpia2/cpia2.$(LINUX_KMOD_SUFFIX)
463   AUTOLOAD:=$(call AutoLoad,70,cpia2)
464 endef
465
466 define KernelPackage/cpia2/description
467  Kernel modules for CPIA2 WebCam devices
468 endef
469
470 $(eval $(call KernelPackage,cpia2))
471
472
473 define KernelPackage/usb-net
474   $(call usbdep,)
475   TITLE:=Kernel modules for USB-to-Ethernet convertors
476   KCONFIG:=CONFIG_USB_USBNET
477   AUTOLOAD:=$(call Autoload,60, usbnet)
478 endef
479
480 define KernelPackage/usb-net/2.4
481   FILES:=$(LINUX_DIR)/drivers/usb/usbnet.$(LINUX_KMOD_SUFFIX)
482 endef
483
484 define KernelPackage/usb-net/2.6
485   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.$(LINUX_KMOD_SUFFIX)
486 endef
487
488 define KernelPackage/usb-net/description
489  Kernel modules for USB-to-Ethernet convertors
490 endef
491
492 $(eval $(call KernelPackage,usb-net))
493
494
495 define KernelPackage/usb-net-asix
496   $(call usbdep,kmod-usb-net @LINUX_2_6)
497   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
498   KCONFIG:=CONFIG_USB_NET_AX8817X
499   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.$(LINUX_KMOD_SUFFIX)
500   AUTOLOAD:=$(call Autoload,61,asix)
501 endef
502
503 define KernelPackage/usb-net-asix/description
504  Kernel module for USB-to-Ethernet Asix convertors
505 endef
506
507 $(eval $(call KernelPackage,usb-net-asix))
508
509
510 define KernelPackage/usb-net-kaweth
511   $(call usbdep,kmod-usb-net @LINUX_2_6)
512   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
513   KCONFIG:=CONFIG_USB_KAWETH
514   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.$(LINUX_KMOD_SUFFIX)
515   AUTOLOAD:=$(call Autoload,61,kaweth)
516 endef
517
518 define KernelPackage/usb-net-kaweth/description
519  Kernel module for USB-to-Ethernet Kaweth convertors
520 endef
521
522 $(eval $(call KernelPackage,usb-net-kaweth))
523
524
525 define KernelPackage/usb-net-pegasus
526   $(call usbdep,kmod-usb-net @LINUX_2_6)
527   TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
528   KCONFIG:=CONFIG_USB_PEGASUS
529   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.$(LINUX_KMOD_SUFFIX)
530   AUTOLOAD:=$(call Autoload,61,pegasus)
531 endef
532
533 define KernelPackage/usb-net-pegasus/description
534  Kernel module for USB-to-Ethernet Pegasus convertors
535 endef
536
537 $(eval $(call KernelPackage,usb-net-pegasus))
538
539
540 define KernelPackage/usb-hid
541   $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
542   TITLE:=Support for USB Human Input Devices
543   KCONFIG:=CONFIG_USB_HID
544   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
545   AUTOLOAD:=$(call AutoLoad,70,usbhid)
546 endef
547
548
549 define KernelPackage/usb-hid/description
550  Kernel support for USB HID devices such as keyboards and mice
551 endef
552
553 $(eval $(call KernelPackage,usb-hid))
554
555
556 define KernelPackage/usb-yealink
557   $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
558   TITLE:=USB Yealink VOIP phone
559   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
560   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
561   AUTOLOAD:=$(call AutoLoad,70,yealink)
562 endef
563
564 define KernelPackage/usb-yealink/description
565  Kernel support for Yealink VOIP phone
566 endef
567
568 $(eval $(call KernelPackage,usb-yealink))