usb.mk 12 KB

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