fix the path to the yealink module (#1944)
[oweals/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 ifeq ($(KERNEL_PATCHVER),2.6.21)
15   USBNET_DIR:=usb/net
16 endif
17 USBNET_DIR?=net/usb
18
19 ifeq ($(KERNEL_PATCHVER),2.6.21)
20   USBHID_DIR:=drivers/usb/input
21 endif
22 USBHID_DIR?=drivers/hid/usbhid
23
24 ifeq ($(KERNEL_PATCHVER),2.6.21)
25   USBINPUT_DIR:=usb/input
26 endif
27 USBINPUT_DIR?=input/misc
28
29 define usbdep
30   SUBMENU:=$(USBMENU)
31   DEPENDS:=kmod-usb-core $(1)
32 endef
33
34 define KernelPackage/usb-core
35   TITLE:=Support for USB
36   DESCRIPTION:=Kernel support for USB
37   DEPENDS:=@USB_SUPPORT
38   KCONFIG:=$(CONFIG_USB)
39   SUBMENU:=$(USBMENU)
40   AUTOLOAD:=$(call AutoLoad,20,usbcore)
41 endef
42
43 define KernelPackage/usb-core/2.4
44   FILES:=$(LINUX_DIR)/drivers/usb/usbcore.$(LINUX_KMOD_SUFFIX)
45 endef
46
47 define KernelPackage/usb-core/2.6
48   FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.$(LINUX_KMOD_SUFFIX)
49 endef
50 $(eval $(call KernelPackage,usb-core))
51
52
53 define KernelPackage/usb-uhci
54   $(call usbdep,)
55   TITLE:=Support for UHCI controllers
56   DESCRIPTION:=Kernel support for USB UHCI controllers
57 endef
58
59 define KernelPackage/usb-uhci/2.4
60   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci.o
61   KCONFIG:=$(CONFIG_USB_UHCI_ALT)
62   AUTOLOAD:=$(call AutoLoad,50,uhci)
63 endef
64
65 define KernelPackage/usb-uhci/2.6
66   FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
67   KCONFIG:=$(CONFIG_USB_UHCI_HCD)
68   AUTOLOAD:=$(call AutoLoad,50,uhci-hcd)
69 endef
70 $(eval $(call KernelPackage,usb-uhci))
71
72 define KernelPackage/usb-uhci-iv
73   $(call usbdep,@LINUX_2_4)
74   TITLE:=Support for Intel/VIA UHCI controllers 
75   DESCRIPTION:=Kernel support for Intel/VIA USB UHCI controllers
76 endef 
77
78 define KernelPackage/usb-uhci-iv/2.4
79   FILES:=$(LINUX_DIR)/drivers/usb/host/usb-uhci.$(LINUX_KMOD_SUFFIX)
80   KCONFIG:=$(CONFIG_USB_UHCI)
81   AUTOLOAD:=$(call AutoLoad,50,usb-uhci) 
82 endef 
83 $(eval $(call KernelPackage,usb-uhci-iv)) 
84
85 define KernelPackage/usb-ohci
86   $(call usbdep,)
87   TITLE:=Support for OHCI controllers
88   DESCRIPTION:=Kernel support for USB OHCI controllers
89 endef
90
91 define KernelPackage/usb-ohci/2.4
92   FILES:=$(LINUX_DIR)/drivers/usb/host/usb-ohci.o
93   KCONFIG:=$(CONFIG_USB_OHCI)
94   AUTOLOAD:=$(call AutoLoad,50,usb-ohci)
95 endef
96
97 define KernelPackage/usb-ohci/2.6
98   FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
99   KCONFIG:=$(CONFIG_USB_OHCI_HCD)
100   AUTOLOAD:=$(call AutoLoad,50,ohci-hcd)
101 endef
102 $(eval $(call KernelPackage,usb-ohci))
103
104 define KernelPackage/usb2
105   $(call usbdep,)
106   TITLE:=Support for USB2 controllers
107   DESCRIPTION:=Kernel support for USB2 (EHCI) controllers
108   FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.$(LINUX_KMOD_SUFFIX)
109   KCONFIG:=$(CONFIG_USB_EHCI_HCD)
110   AUTOLOAD:=$(call AutoLoad,50,ehci-hcd)
111 endef
112 $(eval $(call KernelPackage,usb2))
113
114
115 define KernelPackage/usb-acm
116   $(call usbdep,)
117   TITLE:=Support for modems/isdn controllers
118   DESCRIPTION:=Kernel support for USB ACM devices (modems/isdn controllers)
119   KCONFIG:=$(CONFIG_USB_ACM)
120 endef
121
122 define KernelPackage/usb-acm/2.4
123   FILES:=$(LINUX_DIR)/drivers/usb/acm.o
124   AUTOLOAD:=$(call AutoLoad,60,acm)
125 endef
126
127 define KernelPackage/usb-acm/2.6
128   FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
129   AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
130 endef
131 $(eval $(call KernelPackage,usb-acm))
132
133
134 define KernelPackage/usb-audio
135   $(call usbdep,+kmod-soundcore)
136   TITLE:=Support for audio devices
137   DESCRIPTION:=Kernel support for USB audio devices
138 endef
139
140 define KernelPackage/usb-audio/2.4
141   KCONFIG:=$(CONFIG_USB_AUDIO)
142   FILES:=$(LINUX_DIR)/drivers/usb/audio.o
143   AUTOLOAD:=$(call AutoLoad,60,audio)
144 endef
145
146 define KernelPackage/usb-audio/2.6
147   KCONFIG:=$(CONFIG_SND_USB_AUDIO)
148   FILES:= \
149         $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
150         $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
151   AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
152 endef
153 $(eval $(call KernelPackage,usb-audio))
154
155
156 define KernelPackage/usb-printer
157   $(call usbdep,)
158   TITLE:=Support for printers
159   DESCRIPTION:=Kernel support for USB printers
160   KCONFIG:=$(CONFIG_USB_PRINTER)
161 endef
162
163 define KernelPackage/usb-printer/2.4
164   FILES:=$(LINUX_DIR)/drivers/usb/printer.o
165   AUTOLOAD:=$(call AutoLoad,60,printer)
166 endef
167
168 define KernelPackage/usb-printer/2.6
169   FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
170   AUTOLOAD:=$(call AutoLoad,60,usblp)
171 endef
172 $(eval $(call KernelPackage,usb-printer))
173
174
175 define KernelPackage/usb-serial
176   $(call usbdep,)
177   TITLE:=Support for USB-to-Serial converters
178   DESCRIPTION:=Kernel support for USB-to-Serial converters
179   KCONFIG:=$(CONFIG_USB_SERIAL)
180   FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.$(LINUX_KMOD_SUFFIX)
181   AUTOLOAD:=$(call AutoLoad,60,usbserial)
182 endef
183 $(eval $(call KernelPackage,usb-serial))
184
185 define KernelPackage/usb-serial-airprime
186   $(call usbdep,kmod-usb-serial)
187   TITLE:=Support for Airprime (EVDO) 
188   DESCRIPTION:=Kernel support for Airprime (EVDO) 
189   KCONFIG:=$(CONFIG_USB_SERIAL_AIRPRIME)
190   FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.$(LINUX_KMOD_SUFFIX)
191   AUTOLOAD:=$(call AutoLoad,65,airprime)
192 endef
193 $(eval $(call KernelPackage,usb-serial-airprime))
194
195 define KernelPackage/usb-serial-belkin
196   $(call usbdep,kmod-usb-serial)
197   TITLE:=Support for Belkin devices
198   DESCRIPTION:=Kernel support for Belkin USB-to-Serial converters
199   KCONFIG:=$(CONFIG_USB_SERIAL_BELKIN)
200   FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.$(LINUX_KMOD_SUFFIX)
201   AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
202 endef
203 $(eval $(call KernelPackage,usb-serial-belkin))
204
205
206 define KernelPackage/usb-serial-ftdi
207   $(call usbdep,kmod-usb-serial)
208   TITLE:=Support for FTDI devices
209   DESCRIPTION:=Kernel support for FTDI USB-to-Serial converters
210   KCONFIG:=$(CONFIG_USB_SERIAL_FTDI_SIO)
211   FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.$(LINUX_KMOD_SUFFIX)
212   AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
213 endef
214 $(eval $(call KernelPackage,usb-serial-ftdi))
215
216
217 define KernelPackage/usb-serial-mct
218   $(call usbdep,kmod-usb-serial)
219   TITLE:=Support for Magic Control Tech. devices
220   DESCRIPTION:=Kernel support for Magic Control Technology USB-to-Serial converters
221   KCONFIG:=$(CONFIG_USB_SERIAL_MCT_U232)
222   FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.$(LINUX_KMOD_SUFFIX)
223   AUTOLOAD:=$(call AutoLoad,65,mct_u232)
224 endef
225 $(eval $(call KernelPackage,usb-serial-mct))
226
227 define KernelPackage/usb-serial-pl2303
228   $(call usbdep,kmod-usb-serial)
229   TITLE:=Support for Prolific PL2303 devices
230   DESCRIPTION:=Kernel support for Prolific PL2303 USB-to-Serial converters
231   KCONFIG:=$(CONFIG_USB_SERIAL_PL2303)
232   FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.$(LINUX_KMOD_SUFFIX)
233   AUTOLOAD:=$(call AutoLoad,65,pl2303)
234 endef
235 $(eval $(call KernelPackage,usb-serial-pl2303))
236
237
238 define KernelPackage/usb-serial-sierrawireless
239   $(call usbdep,kmod-usb-serial)
240   TITLE:=Support for Sierra Wireless devices
241   DESCRIPTION:=Kernel support for Sierra Wireless devices
242   KCONFIG:=$(CONFIG_USB_SERIAL_SIERRAWIRELESS)
243   FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.$(LINUX_KMOD_SUFFIX)
244   AUTOLOAD:=$(call AutoLoad,65,sierra)
245 endef
246 $(eval $(call KernelPackage,usb-serial-sierrawireless))
247
248
249 define KernelPackage/usb-serial-visor
250   $(call usbdep,kmod-usb-serial)
251   TITLE:=Support for Handspring Visor devices
252   DESCRIPTION:=Kernel support for Handspring Visor PDAs
253   KCONFIG:=$(CONFIG_USB_SERIAL_VISOR)
254   FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.$(LINUX_KMOD_SUFFIX)
255   AUTOLOAD:=$(call AutoLoad,65,visor)
256 endef
257 $(eval $(call KernelPackage,usb-serial-visor))
258
259 define KernelPackage/usb-serial-option
260   $(call usbdep,kmod-usb-serial)
261   TITLE:=Support for Option HSDPA modems
262   DESCRIPTION:=Kernel support for Option HSDPA modems
263   DEPENDS:=@LINUX_2_6
264   KCONFIG:=$(CONFIG_USB_SERIAL_OPTION)
265   FILES:=$(LINUX_DIR)/drivers/usb/serial/option.$(LINUX_KMOD_SUFFIX)
266   AUTOLOAD:=$(call AutoLoad,65,option)
267 endef
268 $(eval $(call KernelPackage,usb-serial-option))
269
270
271 define KernelPackage/usb-storage
272   $(call usbdep,+kmod-scsi-core)
273   TITLE:=USB Storage support
274   DESCRIPTION:=Kernel support for USB Mass Storage devices
275   KCONFIG:=$(CONFIG_USB_STORAGE)
276   FILES:= \
277         $(LINUX_DIR)/drivers/usb/storage/usb-storage.$(LINUX_KMOD_SUFFIX)
278   AUTOLOAD:=$(call AutoLoad,60,scsi_mod sd_mod usb-storage)
279 endef
280 $(eval $(call KernelPackage,usb-storage))
281
282 define KernelPackage/usb-atm
283   $(call usbdep,@LINUX_2_6 kmod-atm)
284   TITLE:=Support for ATM on USB bus
285   DESCRIPTION:=Kernel support for USB DSL modems
286   KCONFIG:=$(CONFIG_USB_ATM)
287   FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.$(LINUX_KMOD_SUFFIX)
288   AUTOLOAD:=$(call AutoLoad,60,usbatm)
289 endef
290 $(eval $(call KernelPackage,usb-atm))
291
292 define KernelPackage/usb-speedtouch
293   $(call usbdep,@LINUX_2_6 kmod-atm)
294   TITLE:=Support for SpeedTouch ADSL modems
295   DESCRIPTION:=Kernel support for SpeedTouch USB ADSL modems
296   KCONFIG:=$(CONFIG_USB_SPEEDTOUCH)
297   FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.$(LINUX_KMOD_SUFFIX)
298   AUTOLOAD:=$(call AutoLoad,70,speedtch)
299 endef
300 $(eval $(call KernelPackage,usb-speedtouch))
301
302 define KernelPackage/ueagle-atm
303   $(call usbdep,@LINUX_2_6 kmod-atm)
304   TITLE:=Driver for Eagle 8051 based USB ADSL modems
305   DESCRIPTION:=Kernel support for Eagle 8051 based USB ADSL modems
306   FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.$(LINUX_KMOD_SUFFIX)
307   KCONFIG:=$(CONFIG_USB_UEAGLEATM)
308   AUTOLOAD:=$(call AutoLoad,70,ueagle-atm)
309 endef
310 $(eval $(call KernelPackage,ueagle-atm))
311
312 define KernelPackage/usb-pwc
313   $(call usbdep,+kmod-videodev)
314   TITLE:=Philips WebCam driver
315   DESCRIPTION:=Kernel modules for supporting Philips WebCam USB devices
316   KCONFIG:=$(CONFIG_USB_PWC)
317   AUTOLOAD:=$(call AutoLoad,70,pwc)
318 endef
319
320 define KernelPackage/usb-pwc/2.4
321   FILES:=$(LINUX_DIR)/drivers/usb/pwc.$(LINUX_KMOD_SUFFIX)
322 endef
323
324 define KernelPackage/usb-pwc/2.6
325   FILES:=$(LINUX_DIR)/drivers/media/video/pwc/pwc.$(LINUX_KMOD_SUFFIX)
326 endef
327 $(eval $(call KernelPackage,usb-pwc))
328
329 define KernelPackage/cpia2
330   $(call usbdep,+kmod-videodev)
331   TITLE:=CPIA2 video driver
332   DESCRIPTION:=Kernel modules for CPIA2 WebCam devices
333   KCONFIG:=$(CONFIG_VIDEO_CPIA2)
334   AUTOLOAD:=$(call AutoLoad,70,cpia2)
335 endef
336
337 define KernelPackage/cpia2/2.4
338   FILES:=$(LINUX_DIR)/drivers/usb/cpia2.$(LINUX_KMOD_SUFFIX)
339 endef
340
341 define KernelPackage/cpia2/2.6
342   FILES:=$(LINUX_DIR)/drivers/media/video/cpia2/cpia2.$(LINUX_KMOD_SUFFIX)
343 endef
344 $(eval $(call KernelPackage,cpia2))
345
346 define KernelPackage/usb-net
347   $(call usbdep,)
348   TITLE:=Kernel modules for USB-to-Ethernet convertors
349   DESCRIPTION:=Kernel modules for USB-to-Ethernet convertors
350   KCONFIG:=$(CONFIG_USB_USBNET)
351   AUTOLOAD:=$(call Autoload,60, usbnet)
352 endef
353
354 define KernelPackage/usb-net/2.4
355   FILES:=$(LINUX_DIR)/drivers/usb/usbnet.$(LINUX_KMOD_SUFFIX)
356 endef
357
358 define KernelPackage/usb-net/2.6
359   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.$(LINUX_KMOD_SUFFIX)
360 endef
361
362 $(eval $(call KernelPackage,usb-net))
363
364 define KernelPackage/usb-net-asix
365   $(call usbdep,kmod-usbnet)
366   TITLE:=Kernel module for USB-to-Ethernet Asix convertors
367   DESCRIPTION:=Kernel module for USB-to-Ethernet Asix convertors
368   KCONFIG:=$(CONFIG_USB_NET_AX8817X)
369 endef
370
371 define KernelPackage/usb-net-asix/2.4
372   FILES:=$(LINUX_DIR)/drivers/usb/ax8817x.$(LINUX_KMOD_SUFFIX)
373   AUTOLOAD:=$(call Autoload,61,ax8817x)
374 endef
375
376 define KernelPackage/usb-net-asix/2.6
377   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.$(LINUX_KMOD_SUFFIX)
378   AUTOLOAD:=$(call Autoload,61,asix)
379 endef
380
381 $(eval $(call KernelPackage,usb-net-asix))
382
383 define KernelPackage/usb-net-kaweth
384   $(call usbdep,kmod-usbnet)
385   TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
386   DESCRIPTION:=Kernel module for USB-to-Ethernet Kaweth convertors
387   KCONFIG:=$(CONFIG_USB_KAWETH)
388   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.$(LINUX_KMOD_SUFFIX)
389   AUTOLOAD:=$(call Autoload,61,kaweth)
390 endef
391
392 $(eval $(call KernelPackage,usb-net-kaweth))
393
394 define KernelPackage/usb-net-pegasus
395   $(call usbdep,kmod-usbnet)
396   TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
397   DESCRIPTION:=Kernel module for USB-to-Ethernet Pegasus convertors
398   KCONFIG:=$(CONFIG_USB_PEGASUS)
399   FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.$(LINUX_KMOD_SUFFIX)
400   AUTOLOAD:=$(call Autoload,61,pegasus)
401 endef
402
403 $(eval $(call KernelPackage,usb-net-pegasus))
404
405 define KernelPackage/usb-hid
406   $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
407   TITLE:=Support for USB Human Input Devices
408   DESCRIPTION:=Kernel support for USB HID devices such as keyboards and mice
409   KCONFIG:=$(CONFIG_USB_HID)
410   AUTOLOAD:=$(call AutoLoad,70,usbhid)
411 endef
412
413 define KernelPackage/usb-hid/2.6
414   FILES:=$(LINUX_DIR)/$(USBHID_DIR)/usbhid.ko
415 endef
416 $(eval $(call KernelPackage,usb-hid))
417
418 define KernelPackage/usb-yealink
419   $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
420   TITLE:=USB Yealink VOIP phone
421   DESCRIPTION:=Kernel support for Yealink VOIP phone
422   KCONFIG:=$(CONFIG_USB_YEALINK)
423   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
424   AUTOLOAD:=$(call AutoLoad,70,yealink)
425 endef
426 $(eval $(call KernelPackage,usb-yealink))
427
428