2 # Copyright (C) 2006 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
15 ifeq ($(KERNEL_PATCHVER),2.6.21)
18 USBINPUT_DIR:=usb/input
22 USBHID_DIR?=hid/usbhid
23 USBINPUT_DIR?=input/misc
27 DEPENDS:=kmod-usb-core $(1)
31 define KernelPackage/usb-core
33 TITLE:=Support for USB
34 DESCRIPTION:=Kernel support for USB
37 AUTOLOAD:=$(call AutoLoad,20,usbcore)
40 define KernelPackage/usb-core/2.4
41 FILES:=$(LINUX_DIR)/drivers/usb/usbcore.$(LINUX_KMOD_SUFFIX)
44 define KernelPackage/usb-core/2.6
45 FILES:=$(LINUX_DIR)/drivers/usb/core/usbcore.$(LINUX_KMOD_SUFFIX)
48 $(eval $(call KernelPackage,usb-core))
51 define KernelPackage/usb-uhci
53 TITLE:=Support for UHCI controllers
54 DESCRIPTION:=Kernel support for USB UHCI controllers
57 define KernelPackage/usb-uhci/2.4
58 KCONFIG:=CONFIG_USB_UHCI_ALT
59 FILES:=$(LINUX_DIR)/drivers/usb/host/uhci.o
60 AUTOLOAD:=$(call AutoLoad,50,uhci)
63 define KernelPackage/usb-uhci/2.6
64 KCONFIG:=CONFIG_USB_UHCI_HCD
65 FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
66 AUTOLOAD:=$(call AutoLoad,50,uhci-hcd)
69 $(eval $(call KernelPackage,usb-uhci))
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 KCONFIG:=CONFIG_USB_UHCI
77 FILES:=$(LINUX_DIR)/drivers/usb/host/usb-uhci.$(LINUX_KMOD_SUFFIX)
78 AUTOLOAD:=$(call AutoLoad,50,usb-uhci)
81 $(eval $(call KernelPackage,usb-uhci-iv))
84 define KernelPackage/usb-ohci
86 TITLE:=Support for OHCI controllers
87 DESCRIPTION:=Kernel support for USB OHCI controllers
90 define KernelPackage/usb-ohci/2.4
91 KCONFIG:=CONFIG_USB_OHCI
92 FILES:=$(LINUX_DIR)/drivers/usb/host/usb-ohci.o
93 AUTOLOAD:=$(call AutoLoad,50,usb-ohci)
96 define KernelPackage/usb-ohci/2.6
97 KCONFIG:=CONFIG_USB_OHCI_HCD
98 FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
99 AUTOLOAD:=$(call AutoLoad,50,ohci-hcd)
102 $(eval $(call KernelPackage,usb-ohci))
105 define KernelPackage/usb-adm5120
106 $(call usbdep,@LINUX_2_6_ADM5120||@LINUX_2_6_ADM5120EB)
107 TITLE:=Support for the ADM5120 HCD controller
108 DESCRIPTION:=Kernel support for the ADM5120 HCD USB controller
109 KCONFIG:=CONFIG_USB_ADM5120_HCD
110 FILES:=$(LINUX_DIR)/drivers/usb/host/adm5120-hcd.$(LINUX_KMOD_SUFFIX)
111 AUTOLOAD:=$(call AutoLoad,50,adm5120-hcd)
114 $(eval $(call KernelPackage,usb-adm5120))
117 define KernelPackage/usb2
119 TITLE:=Support for USB2 controllers
120 DESCRIPTION:=Kernel support for USB2 (EHCI) controllers
121 KCONFIG:=CONFIG_USB_EHCI_HCD
122 FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.$(LINUX_KMOD_SUFFIX)
123 AUTOLOAD:=$(call AutoLoad,50,ehci-hcd)
126 $(eval $(call KernelPackage,usb2))
129 define KernelPackage/usb-acm
131 TITLE:=Support for modems/isdn controllers
132 DESCRIPTION:=Kernel support for USB ACM devices (modems/isdn controllers)
133 KCONFIG:=CONFIG_USB_ACM
136 define KernelPackage/usb-acm/2.4
137 FILES:=$(LINUX_DIR)/drivers/usb/acm.o
138 AUTOLOAD:=$(call AutoLoad,60,acm)
141 define KernelPackage/usb-acm/2.6
142 FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
143 AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
146 $(eval $(call KernelPackage,usb-acm))
149 define KernelPackage/usb-audio
150 $(call usbdep,+kmod-soundcore)
151 TITLE:=Support for audio devices
152 DESCRIPTION:=Kernel support for USB audio devices
155 define KernelPackage/usb-audio/2.4
156 KCONFIG:=CONFIG_USB_AUDIO
157 FILES:=$(LINUX_DIR)/drivers/usb/audio.o
158 AUTOLOAD:=$(call AutoLoad,60,audio)
161 define KernelPackage/usb-audio/2.6
162 KCONFIG:=CONFIG_SND_USB_AUDIO
164 $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
165 $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
166 AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
169 $(eval $(call KernelPackage,usb-audio))
172 define KernelPackage/usb-printer
174 TITLE:=Support for printers
175 DESCRIPTION:=Kernel support for USB printers
176 KCONFIG:=CONFIG_USB_PRINTER
179 define KernelPackage/usb-printer/2.4
180 FILES:=$(LINUX_DIR)/drivers/usb/printer.o
181 AUTOLOAD:=$(call AutoLoad,60,printer)
184 define KernelPackage/usb-printer/2.6
185 FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
186 AUTOLOAD:=$(call AutoLoad,60,usblp)
189 $(eval $(call KernelPackage,usb-printer))
192 define KernelPackage/usb-serial
194 TITLE:=Support for USB-to-Serial converters
195 DESCRIPTION:=Kernel support for USB-to-Serial converters
196 KCONFIG:=CONFIG_USB_SERIAL
197 FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.$(LINUX_KMOD_SUFFIX)
198 AUTOLOAD:=$(call AutoLoad,60,usbserial)
201 $(eval $(call KernelPackage,usb-serial))
204 define KernelPackage/usb-serial-airprime
205 $(call usbdep,kmod-usb-serial @LINUX_2_6)
206 TITLE:=Support for Airprime (EVDO)
207 DESCRIPTION:=Kernel support for Airprime (EVDO)
208 KCONFIG:=CONFIG_USB_SERIAL_AIRPRIME
209 FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.$(LINUX_KMOD_SUFFIX)
210 AUTOLOAD:=$(call AutoLoad,65,airprime)
213 $(eval $(call KernelPackage,usb-serial-airprime))
216 define KernelPackage/usb-serial-belkin
217 $(call usbdep,kmod-usb-serial)
218 TITLE:=Support for Belkin devices
219 DESCRIPTION:=Kernel support for Belkin USB-to-Serial converters
220 KCONFIG:=CONFIG_USB_SERIAL_BELKIN
221 FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.$(LINUX_KMOD_SUFFIX)
222 AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
225 $(eval $(call KernelPackage,usb-serial-belkin))
228 define KernelPackage/usb-serial-ftdi
229 $(call usbdep,kmod-usb-serial)
230 TITLE:=Support for FTDI devices
231 DESCRIPTION:=Kernel support for FTDI USB-to-Serial converters
232 KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
233 FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.$(LINUX_KMOD_SUFFIX)
234 AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
237 $(eval $(call KernelPackage,usb-serial-ftdi))
240 define KernelPackage/usb-serial-mct
241 $(call usbdep,kmod-usb-serial)
242 TITLE:=Support for Magic Control Tech. devices
243 DESCRIPTION:=Kernel support for Magic Control Technology USB-to-Serial converters
244 KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
245 FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.$(LINUX_KMOD_SUFFIX)
246 AUTOLOAD:=$(call AutoLoad,65,mct_u232)
249 $(eval $(call KernelPackage,usb-serial-mct))
252 define KernelPackage/usb-serial-pl2303
253 $(call usbdep,kmod-usb-serial)
254 TITLE:=Support for Prolific PL2303 devices
255 DESCRIPTION:=Kernel support for Prolific PL2303 USB-to-Serial converters
256 KCONFIG:=CONFIG_USB_SERIAL_PL2303
257 FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.$(LINUX_KMOD_SUFFIX)
258 AUTOLOAD:=$(call AutoLoad,65,pl2303)
261 $(eval $(call KernelPackage,usb-serial-pl2303))
264 define KernelPackage/usb-serial-sierrawireless
265 $(call usbdep,kmod-usb-serial @LINUX_2_6)
266 TITLE:=Support for Sierra Wireless devices
267 DESCRIPTION:=Kernel support for Sierra Wireless devices
268 KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
269 FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.$(LINUX_KMOD_SUFFIX)
270 AUTOLOAD:=$(call AutoLoad,65,sierra)
273 $(eval $(call KernelPackage,usb-serial-sierrawireless))
276 define KernelPackage/usb-serial-visor
277 $(call usbdep,kmod-usb-serial)
278 TITLE:=Support for Handspring Visor devices
279 DESCRIPTION:=Kernel support for Handspring Visor PDAs
280 KCONFIG:=CONFIG_USB_SERIAL_VISOR
281 FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.$(LINUX_KMOD_SUFFIX)
282 AUTOLOAD:=$(call AutoLoad,65,visor)
285 $(eval $(call KernelPackage,usb-serial-visor))
288 define KernelPackage/usb-serial-keyspan
289 $(call usbdep,kmod-usb-serial)
290 TITLE:=Support for Keyspan USB-to-Serial devices
291 DESCRIPTION:=Kernel support for Keyspan USB-to-Serial devices
293 CONFIG_USB_SERIAL_KEYSPAN \
294 CONFIG_USB_SERIAL_KEYSPAN_USA28 \
295 CONFIG_USB_SERIAL_KEYSPAN_USA28X \
296 CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
297 CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
298 CONFIG_USB_SERIAL_KEYSPAN_USA19 \
299 CONFIG_USB_SERIAL_KEYSPAN_USA18X \
300 CONFIG_USB_SERIAL_KEYSPAN_USA19W \
301 CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
302 CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
303 CONFIG_USB_SERIAL_KEYSPAN_MPR \
304 CONFIG_USB_SERIAL_KEYSPAN_USA49W \
305 CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
306 FILES:=$(LINUX_DIR)/drivers/usb/serial/keyspan.$(LINUX_KMOD_SUFFIX)
307 AUTOLOAD:=$(call AutoLoad,65,keyspan)
310 $(eval $(call KernelPackage,usb-serial-keyspan))
313 define KernelPackage/usb-serial-option
314 $(call usbdep,kmod-usb-serial @LINUX_2_6)
315 TITLE:=Support for Option HSDPA modems
316 DESCRIPTION:=Kernel support for Option HSDPA modems
317 KCONFIG:=CONFIG_USB_SERIAL_OPTION
318 FILES:=$(LINUX_DIR)/drivers/usb/serial/option.$(LINUX_KMOD_SUFFIX)
319 AUTOLOAD:=$(call AutoLoad,65,option)
322 $(eval $(call KernelPackage,usb-serial-option))
325 define KernelPackage/usb-storage
326 $(call usbdep,+kmod-scsi-core)
327 TITLE:=USB Storage support
328 DESCRIPTION:=Kernel support for USB Mass Storage devices
329 KCONFIG:=CONFIG_USB_STORAGE
330 FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.$(LINUX_KMOD_SUFFIX)
331 AUTOLOAD:=$(call AutoLoad,60,scsi_mod sd_mod usb-storage)
334 $(eval $(call KernelPackage,usb-storage))
337 define KernelPackage/usb-atm
338 $(call usbdep,@LINUX_2_6 kmod-atm)
339 TITLE:=Support for ATM on USB bus
340 DESCRIPTION:=Kernel support for USB DSL modems
341 KCONFIG:=CONFIG_USB_ATM
342 FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.$(LINUX_KMOD_SUFFIX)
343 AUTOLOAD:=$(call AutoLoad,60,usbatm)
346 $(eval $(call KernelPackage,usb-atm))
349 define KernelPackage/usb-speedtouch
350 $(call usbdep,@LINUX_2_6 kmod-atm)
351 TITLE:=Support for SpeedTouch ADSL modems
352 DESCRIPTION:=Kernel support for SpeedTouch USB ADSL modems
353 KCONFIG:=CONFIG_USB_SPEEDTOUCH
354 FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.$(LINUX_KMOD_SUFFIX)
355 AUTOLOAD:=$(call AutoLoad,70,speedtch)
358 $(eval $(call KernelPackage,usb-speedtouch))
361 define KernelPackage/ueagle-atm
362 $(call usbdep,@LINUX_2_6 kmod-atm)
363 TITLE:=Driver for Eagle 8051 based USB ADSL modems
364 DESCRIPTION:=Kernel support for Eagle 8051 based USB ADSL modems
365 FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.$(LINUX_KMOD_SUFFIX)
366 KCONFIG:=CONFIG_USB_UEAGLEATM
367 AUTOLOAD:=$(call AutoLoad,70,ueagle-atm)
370 $(eval $(call KernelPackage,ueagle-atm))
373 define KernelPackage/usb-pwc
374 $(call usbdep,+kmod-videodev @LINUX_2_6)
375 TITLE:=Philips WebCam driver
376 DESCRIPTION:=Kernel modules for supporting Philips WebCam USB devices
377 KCONFIG:=CONFIG_USB_PWC CONFIG_VIDEO_V4L1=y CONFIG_VIDEO_CAPTURE_DRIVERS=y CONFIG_V4L_USB_DRIVERS=y CONFIG_USB_PWC_DEBUG=n
378 FILES:=$(LINUX_DIR)/drivers/media/video/pwc/pwc.$(LINUX_KMOD_SUFFIX)
379 AUTOLOAD:=$(call AutoLoad,70,pwc)
382 $(eval $(call KernelPackage,usb-pwc))
385 define KernelPackage/cpia2
386 $(call usbdep,+kmod-videodev @LINUX_2_6)
387 TITLE:=CPIA2 video driver
388 DESCRIPTION:=Kernel modules for CPIA2 WebCam devices
389 KCONFIG:=CONFIG_VIDEO_CPIA2
390 FILES:=$(LINUX_DIR)/drivers/media/video/cpia2/cpia2.$(LINUX_KMOD_SUFFIX)
391 AUTOLOAD:=$(call AutoLoad,70,cpia2)
394 $(eval $(call KernelPackage,cpia2))
397 define KernelPackage/usb-net
399 TITLE:=Kernel modules for USB-to-Ethernet convertors
400 DESCRIPTION:=Kernel modules for USB-to-Ethernet convertors
401 KCONFIG:=CONFIG_USB_USBNET
402 AUTOLOAD:=$(call Autoload,60, usbnet)
405 define KernelPackage/usb-net/2.4
406 FILES:=$(LINUX_DIR)/drivers/usb/usbnet.$(LINUX_KMOD_SUFFIX)
409 define KernelPackage/usb-net/2.6
410 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.$(LINUX_KMOD_SUFFIX)
413 $(eval $(call KernelPackage,usb-net))
416 define KernelPackage/usb-net-asix
417 $(call usbdep,kmod-usb-net @LINUX_2_6)
418 TITLE:=Kernel module for USB-to-Ethernet Asix convertors
419 DESCRIPTION:=Kernel module for USB-to-Ethernet Asix convertors
420 KCONFIG:=CONFIG_USB_NET_AX8817X
421 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.$(LINUX_KMOD_SUFFIX)
422 AUTOLOAD:=$(call Autoload,61,asix)
425 $(eval $(call KernelPackage,usb-net-asix))
428 define KernelPackage/usb-net-kaweth
429 $(call usbdep,kmod-usb-net @LINUX_2_6)
430 TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
431 DESCRIPTION:=Kernel module for USB-to-Ethernet Kaweth convertors
432 KCONFIG:=CONFIG_USB_KAWETH
433 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.$(LINUX_KMOD_SUFFIX)
434 AUTOLOAD:=$(call Autoload,61,kaweth)
437 $(eval $(call KernelPackage,usb-net-kaweth))
440 define KernelPackage/usb-net-pegasus
441 $(call usbdep,kmod-usb-net @LINUX_2_6)
442 TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
443 DESCRIPTION:=Kernel module for USB-to-Ethernet Pegasus convertors
444 KCONFIG:=CONFIG_USB_PEGASUS
445 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.$(LINUX_KMOD_SUFFIX)
446 AUTOLOAD:=$(call Autoload,61,pegasus)
449 $(eval $(call KernelPackage,usb-net-pegasus))
452 define KernelPackage/usb-hid
453 $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
454 TITLE:=Support for USB Human Input Devices
455 DESCRIPTION:=Kernel support for USB HID devices such as keyboards and mice
456 KCONFIG:=CONFIG_USB_HID
457 FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
458 AUTOLOAD:=$(call AutoLoad,70,usbhid)
461 $(eval $(call KernelPackage,usb-hid))
464 define KernelPackage/usb-yealink
465 $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
466 TITLE:=USB Yealink VOIP phone
467 DESCRIPTION:=Kernel support for Yealink VOIP phone
468 KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
469 FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
470 AUTOLOAD:=$(call AutoLoad,70,yealink)
473 $(eval $(call KernelPackage,usb-yealink))