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
55 KCONFIG:=CONFIG_USB_UHCI_ALT CONFIG_USB_UHCI_HCD
58 define KernelPackage/usb-uhci/2.4
59 FILES:=$(LINUX_DIR)/drivers/usb/host/uhci.o
60 AUTOLOAD:=$(call AutoLoad,50,uhci)
63 define KernelPackage/usb-uhci/2.6
64 FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
65 AUTOLOAD:=$(call AutoLoad,50,uhci-hcd)
68 $(eval $(call KernelPackage,usb-uhci))
71 define KernelPackage/usb-uhci-iv
72 $(call usbdep,@LINUX_2_4)
73 TITLE:=Support for Intel/VIA UHCI controllers
74 DESCRIPTION:=Kernel support for Intel/VIA USB UHCI controllers
75 KCONFIG:=CONFIG_USB_UHCI
76 FILES:=$(LINUX_DIR)/drivers/usb/host/usb-uhci.$(LINUX_KMOD_SUFFIX)
77 AUTOLOAD:=$(call AutoLoad,50,usb-uhci)
80 $(eval $(call KernelPackage,usb-uhci-iv))
83 define KernelPackage/usb-ohci
85 TITLE:=Support for OHCI controllers
86 DESCRIPTION:=Kernel support for USB OHCI controllers
87 KCONFIG:=CONFIG_USB_OHCI CONFIG_USB_OHCI_HCD
90 define KernelPackage/usb-ohci/2.4
91 FILES:=$(LINUX_DIR)/drivers/usb/host/usb-ohci.o
92 AUTOLOAD:=$(call AutoLoad,50,usb-ohci)
95 define KernelPackage/usb-ohci/2.6
96 FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
97 AUTOLOAD:=$(call AutoLoad,50,ohci-hcd)
100 $(eval $(call KernelPackage,usb-ohci))
103 define KernelPackage/usb-adm5120
104 $(call usbdep,@LINUX_2_6_ADM5120||@LINUX_2_6_ADM5120EB)
105 TITLE:=Support for the ADM5120 HCD controller
106 DESCRIPTION:=Kernel support for the ADM5120 HCD USB controller
107 KCONFIG:=CONFIG_USB_ADM5120_HCD
108 FILES:=$(LINUX_DIR)/drivers/usb/host/adm5120-hcd.$(LINUX_KMOD_SUFFIX)
109 AUTOLOAD:=$(call AutoLoad,50,adm5120-hcd)
112 $(eval $(call KernelPackage,usb-adm5120))
115 define KernelPackage/usb2
117 TITLE:=Support for USB2 controllers
118 DESCRIPTION:=Kernel support for USB2 (EHCI) controllers
119 KCONFIG:=CONFIG_USB_EHCI_HCD
120 FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.$(LINUX_KMOD_SUFFIX)
121 AUTOLOAD:=$(call AutoLoad,50,ehci-hcd)
124 $(eval $(call KernelPackage,usb2))
127 define KernelPackage/usb-acm
129 TITLE:=Support for modems/isdn controllers
130 DESCRIPTION:=Kernel support for USB ACM devices (modems/isdn controllers)
131 KCONFIG:=CONFIG_USB_ACM
134 define KernelPackage/usb-acm/2.4
135 FILES:=$(LINUX_DIR)/drivers/usb/acm.o
136 AUTOLOAD:=$(call AutoLoad,60,acm)
139 define KernelPackage/usb-acm/2.6
140 FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
141 AUTOLOAD:=$(call AutoLoad,60,cdc-acm)
144 $(eval $(call KernelPackage,usb-acm))
147 define KernelPackage/usb-audio
148 $(call usbdep,+kmod-soundcore)
149 TITLE:=Support for audio devices
150 DESCRIPTION:=Kernel support for USB audio devices
151 KCONFIG:=CONFIG_USB_AUDIO CONFIG_SND_USB_AUDIO
154 define KernelPackage/usb-audio/2.4
155 FILES:=$(LINUX_DIR)/drivers/usb/audio.o
156 AUTOLOAD:=$(call AutoLoad,60,audio)
159 define KernelPackage/usb-audio/2.6
161 $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
162 $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
163 AUTOLOAD:=$(call AutoLoad,60,snd-usb-lib snd-usb-audio)
166 $(eval $(call KernelPackage,usb-audio))
169 define KernelPackage/usb-printer
171 TITLE:=Support for printers
172 DESCRIPTION:=Kernel support for USB printers
173 KCONFIG:=CONFIG_USB_PRINTER
176 define KernelPackage/usb-printer/2.4
177 FILES:=$(LINUX_DIR)/drivers/usb/printer.o
178 AUTOLOAD:=$(call AutoLoad,60,printer)
181 define KernelPackage/usb-printer/2.6
182 FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
183 AUTOLOAD:=$(call AutoLoad,60,usblp)
186 $(eval $(call KernelPackage,usb-printer))
189 define KernelPackage/usb-serial
191 TITLE:=Support for USB-to-Serial converters
192 DESCRIPTION:=Kernel support for USB-to-Serial converters
193 KCONFIG:=CONFIG_USB_SERIAL
194 FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.$(LINUX_KMOD_SUFFIX)
195 AUTOLOAD:=$(call AutoLoad,60,usbserial)
198 $(eval $(call KernelPackage,usb-serial))
201 define KernelPackage/usb-serial-airprime
202 $(call usbdep,kmod-usb-serial @LINUX_2_6)
203 TITLE:=Support for Airprime (EVDO)
204 DESCRIPTION:=Kernel support for Airprime (EVDO)
205 KCONFIG:=CONFIG_USB_SERIAL_AIRPRIME
206 FILES:=$(LINUX_DIR)/drivers/usb/serial/airprime.$(LINUX_KMOD_SUFFIX)
207 AUTOLOAD:=$(call AutoLoad,65,airprime)
210 $(eval $(call KernelPackage,usb-serial-airprime))
213 define KernelPackage/usb-serial-belkin
214 $(call usbdep,kmod-usb-serial)
215 TITLE:=Support for Belkin devices
216 DESCRIPTION:=Kernel support for Belkin USB-to-Serial converters
217 KCONFIG:=CONFIG_USB_SERIAL_BELKIN
218 FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.$(LINUX_KMOD_SUFFIX)
219 AUTOLOAD:=$(call AutoLoad,65,belkin_sa)
222 $(eval $(call KernelPackage,usb-serial-belkin))
225 define KernelPackage/usb-serial-ftdi
226 $(call usbdep,kmod-usb-serial)
227 TITLE:=Support for FTDI devices
228 DESCRIPTION:=Kernel support for FTDI USB-to-Serial converters
229 KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
230 FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.$(LINUX_KMOD_SUFFIX)
231 AUTOLOAD:=$(call AutoLoad,65,ftdi_sio)
234 $(eval $(call KernelPackage,usb-serial-ftdi))
237 define KernelPackage/usb-serial-mct
238 $(call usbdep,kmod-usb-serial)
239 TITLE:=Support for Magic Control Tech. devices
240 DESCRIPTION:=Kernel support for Magic Control Technology USB-to-Serial converters
241 KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
242 FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.$(LINUX_KMOD_SUFFIX)
243 AUTOLOAD:=$(call AutoLoad,65,mct_u232)
246 $(eval $(call KernelPackage,usb-serial-mct))
249 define KernelPackage/usb-serial-pl2303
250 $(call usbdep,kmod-usb-serial)
251 TITLE:=Support for Prolific PL2303 devices
252 DESCRIPTION:=Kernel support for Prolific PL2303 USB-to-Serial converters
253 KCONFIG:=CONFIG_USB_SERIAL_PL2303
254 FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.$(LINUX_KMOD_SUFFIX)
255 AUTOLOAD:=$(call AutoLoad,65,pl2303)
258 $(eval $(call KernelPackage,usb-serial-pl2303))
261 define KernelPackage/usb-serial-sierrawireless
262 $(call usbdep,kmod-usb-serial @LINUX_2_6)
263 TITLE:=Support for Sierra Wireless devices
264 DESCRIPTION:=Kernel support for Sierra Wireless devices
265 KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
266 FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.$(LINUX_KMOD_SUFFIX)
267 AUTOLOAD:=$(call AutoLoad,65,sierra)
270 $(eval $(call KernelPackage,usb-serial-sierrawireless))
273 define KernelPackage/usb-serial-visor
274 $(call usbdep,kmod-usb-serial)
275 TITLE:=Support for Handspring Visor devices
276 DESCRIPTION:=Kernel support for Handspring Visor PDAs
277 KCONFIG:=CONFIG_USB_SERIAL_VISOR
278 FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.$(LINUX_KMOD_SUFFIX)
279 AUTOLOAD:=$(call AutoLoad,65,visor)
282 $(eval $(call KernelPackage,usb-serial-visor))
285 define KernelPackage/usb-serial-keyspan
286 $(call usbdep,kmod-usb-serial)
287 TITLE:=Support for Keyspan USB-to-Serial devices
288 DESCRIPTION:=Kernel support for Keyspan USB-to-Serial devices
290 $(CONFIG_USB_SERIAL_KEYSPAN) \
291 $(CONFIG_USB_SERIAL_KEYSPAN_USA28) \
292 $(CONFIG_USB_SERIAL_KEYSPAN_USA28X) \
293 $(CONFIG_USB_SERIAL_KEYSPAN_USA28XA) \
294 $(CONFIG_USB_SERIAL_KEYSPAN_USA28XB) \
295 $(CONFIG_USB_SERIAL_KEYSPAN_USA19) \
296 $(CONFIG_USB_SERIAL_KEYSPAN_USA18X) \
297 $(CONFIG_USB_SERIAL_KEYSPAN_USA19W) \
298 $(CONFIG_USB_SERIAL_KEYSPAN_USA19QW) \
299 $(CONFIG_USB_SERIAL_KEYSPAN_USA19QI) \
300 $(CONFIG_USB_SERIAL_KEYSPAN_MPR) \
301 $(CONFIG_USB_SERIAL_KEYSPAN_USA49W) \
302 $(CONFIG_USB_SERIAL_KEYSPAN_USA49WLC)
303 FILES:=$(LINUX_DIR)/drivers/usb/serial/keyspan.$(LINUX_KMOD_SUFFIX)
304 AUTOLOAD:=$(call AutoLoad,65,keyspan)
307 $(eval $(call KernelPackage,usb-serial-keyspan))
310 define KernelPackage/usb-serial-option
311 $(call usbdep,kmod-usb-serial @LINUX_2_6)
312 TITLE:=Support for Option HSDPA modems
313 DESCRIPTION:=Kernel support for Option HSDPA modems
314 KCONFIG:=CONFIG_USB_SERIAL_OPTION
315 FILES:=$(LINUX_DIR)/drivers/usb/serial/option.$(LINUX_KMOD_SUFFIX)
316 AUTOLOAD:=$(call AutoLoad,65,option)
319 $(eval $(call KernelPackage,usb-serial-option))
322 define KernelPackage/usb-storage
323 $(call usbdep,+kmod-scsi-core)
324 TITLE:=USB Storage support
325 DESCRIPTION:=Kernel support for USB Mass Storage devices
326 KCONFIG:=CONFIG_USB_STORAGE
327 FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.$(LINUX_KMOD_SUFFIX)
328 AUTOLOAD:=$(call AutoLoad,60,scsi_mod sd_mod usb-storage)
331 $(eval $(call KernelPackage,usb-storage))
334 define KernelPackage/usb-atm
335 $(call usbdep,@LINUX_2_6 kmod-atm)
336 TITLE:=Support for ATM on USB bus
337 DESCRIPTION:=Kernel support for USB DSL modems
338 KCONFIG:=CONFIG_USB_ATM
339 FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.$(LINUX_KMOD_SUFFIX)
340 AUTOLOAD:=$(call AutoLoad,60,usbatm)
343 $(eval $(call KernelPackage,usb-atm))
346 define KernelPackage/usb-speedtouch
347 $(call usbdep,@LINUX_2_6 kmod-atm)
348 TITLE:=Support for SpeedTouch ADSL modems
349 DESCRIPTION:=Kernel support for SpeedTouch USB ADSL modems
350 KCONFIG:=CONFIG_USB_SPEEDTOUCH
351 FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.$(LINUX_KMOD_SUFFIX)
352 AUTOLOAD:=$(call AutoLoad,70,speedtch)
355 $(eval $(call KernelPackage,usb-speedtouch))
358 define KernelPackage/ueagle-atm
359 $(call usbdep,@LINUX_2_6 kmod-atm)
360 TITLE:=Driver for Eagle 8051 based USB ADSL modems
361 DESCRIPTION:=Kernel support for Eagle 8051 based USB ADSL modems
362 FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.$(LINUX_KMOD_SUFFIX)
363 KCONFIG:=CONFIG_USB_UEAGLEATM
364 AUTOLOAD:=$(call AutoLoad,70,ueagle-atm)
367 $(eval $(call KernelPackage,ueagle-atm))
370 define KernelPackage/usb-pwc
371 $(call usbdep,+kmod-videodev @LINUX_2_6)
372 TITLE:=Philips WebCam driver
373 DESCRIPTION:=Kernel modules for supporting Philips WebCam USB devices
374 KCONFIG:=CONFIG_USB_PWC CONFIG_VIDEO_V4L1=y CONFIG_VIDEO_CAPTURE_DRIVERS=y CONFIG_V4L_USB_DRIVERS=y CONFIG_USB_PWC_DEBUG=n
375 FILES:=$(LINUX_DIR)/drivers/media/video/pwc/pwc.$(LINUX_KMOD_SUFFIX)
376 AUTOLOAD:=$(call AutoLoad,70,pwc)
379 $(eval $(call KernelPackage,usb-pwc))
382 define KernelPackage/cpia2
383 $(call usbdep,+kmod-videodev @LINUX_2_6)
384 TITLE:=CPIA2 video driver
385 DESCRIPTION:=Kernel modules for CPIA2 WebCam devices
386 KCONFIG:=CONFIG_VIDEO_CPIA2
387 FILES:=$(LINUX_DIR)/drivers/media/video/cpia2/cpia2.$(LINUX_KMOD_SUFFIX)
388 AUTOLOAD:=$(call AutoLoad,70,cpia2)
391 $(eval $(call KernelPackage,cpia2))
394 define KernelPackage/usb-net
396 TITLE:=Kernel modules for USB-to-Ethernet convertors
397 DESCRIPTION:=Kernel modules for USB-to-Ethernet convertors
398 KCONFIG:=CONFIG_USB_USBNET
399 AUTOLOAD:=$(call Autoload,60, usbnet)
402 define KernelPackage/usb-net/2.4
403 FILES:=$(LINUX_DIR)/drivers/usb/usbnet.$(LINUX_KMOD_SUFFIX)
406 define KernelPackage/usb-net/2.6
407 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.$(LINUX_KMOD_SUFFIX)
410 $(eval $(call KernelPackage,usb-net))
413 define KernelPackage/usb-net-asix
414 $(call usbdep,kmod-usb-net @LINUX_2_6)
415 TITLE:=Kernel module for USB-to-Ethernet Asix convertors
416 DESCRIPTION:=Kernel module for USB-to-Ethernet Asix convertors
417 KCONFIG:=CONFIG_USB_NET_AX8817X
418 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.$(LINUX_KMOD_SUFFIX)
419 AUTOLOAD:=$(call Autoload,61,asix)
422 $(eval $(call KernelPackage,usb-net-asix))
425 define KernelPackage/usb-net-kaweth
426 $(call usbdep,kmod-usb-net @LINUX_2_6)
427 TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
428 DESCRIPTION:=Kernel module for USB-to-Ethernet Kaweth convertors
429 KCONFIG:=CONFIG_USB_KAWETH
430 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.$(LINUX_KMOD_SUFFIX)
431 AUTOLOAD:=$(call Autoload,61,kaweth)
434 $(eval $(call KernelPackage,usb-net-kaweth))
437 define KernelPackage/usb-net-pegasus
438 $(call usbdep,kmod-usb-net @LINUX_2_6)
439 TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
440 DESCRIPTION:=Kernel module for USB-to-Ethernet Pegasus convertors
441 KCONFIG:=CONFIG_USB_PEGASUS
442 FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.$(LINUX_KMOD_SUFFIX)
443 AUTOLOAD:=$(call Autoload,61,pegasus)
446 $(eval $(call KernelPackage,usb-net-pegasus))
449 define KernelPackage/usb-hid
450 $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
451 TITLE:=Support for USB Human Input Devices
452 DESCRIPTION:=Kernel support for USB HID devices such as keyboards and mice
453 KCONFIG:=CONFIG_USB_HID
454 FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
455 AUTOLOAD:=$(call AutoLoad,70,usbhid)
458 $(eval $(call KernelPackage,usb-hid))
461 define KernelPackage/usb-yealink
462 $(call usbdep,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
463 TITLE:=USB Yealink VOIP phone
464 DESCRIPTION:=Kernel support for Yealink VOIP phone
465 KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
466 FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
467 AUTOLOAD:=$(call AutoLoad,70,yealink)
470 $(eval $(call KernelPackage,usb-yealink))