usb.mk 39 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466
  1. #
  2. # Copyright (C) 2006-2014 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. USB_MENU:=USB Support
  8. USBNET_DIR:=net/usb
  9. USBHID_DIR?=hid/usbhid
  10. USBINPUT_DIR?=input/misc
  11. define KernelPackage/usb-core
  12. SUBMENU:=$(USB_MENU)
  13. TITLE:=Support for USB
  14. DEPENDS:=@USB_SUPPORT
  15. KCONFIG:=CONFIG_USB CONFIG_XPS_USB_HCD_XILINX=n CONFIG_USB_FHCI_HCD=n
  16. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.16.0)),1)
  17. FILES:= \
  18. $(LINUX_DIR)/drivers/usb/core/usbcore.ko \
  19. $(LINUX_DIR)/drivers/usb/common/usb-common.ko
  20. else
  21. FILES:= \
  22. $(LINUX_DIR)/drivers/usb/core/usbcore.ko \
  23. $(LINUX_DIR)/drivers/usb/usb-common.ko
  24. endif
  25. AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1)
  26. $(call AddDepends/nls)
  27. endef
  28. define KernelPackage/usb-core/description
  29. Kernel support for USB
  30. endef
  31. $(eval $(call KernelPackage,usb-core))
  32. define AddDepends/usb
  33. SUBMENU:=$(USB_MENU)
  34. DEPENDS+=+kmod-usb-core $(1)
  35. endef
  36. define KernelPackage/usb-musb-hdrc
  37. TITLE:=Support for Mentor Graphics silicon dual role USB
  38. KCONFIG:= \
  39. CONFIG_USB_MUSB_HDRC \
  40. CONFIG_USB_INVENTRA_DMA=n \
  41. CONFIG_USB_TI_CPPI41_DMA=n \
  42. CONFIG_MUSB_PIO_ONLY=y \
  43. CONFIG_USB_MUSB_DUAL_ROLE=y \
  44. CONFIG_USB_MUSB_GADGET=n \
  45. CONFIG_USB_MUSB_HOST=n \
  46. CONFIG_USB_MUSB_DEBUG=y
  47. DEPENDS:= \
  48. @(TARGET_omap||TARGET_omap24xx) +kmod-usb-gadget \
  49. +TARGET_omap24xx:kmod-usb-musb-tusb6010
  50. FILES:=$(LINUX_DIR)/drivers/usb/musb/musb_hdrc.ko
  51. AUTOLOAD:=$(call AutoLoad,46,musb_hdrc)
  52. $(call AddDepends/usb)
  53. endef
  54. define KernelPackage/usb-musb-hdrc/description
  55. Kernel support for Mentor Graphics silicon dual role USB device.
  56. endef
  57. $(eval $(call KernelPackage,usb-musb-hdrc))
  58. define KernelPackage/usb-musb-platformglue
  59. TITLE:=MUSB platform glue layer
  60. KCONFIG:= \
  61. CONFIG_USB_MUSB_TUSB6010=n \
  62. CONFIG_USB_MUSB_OMAP2PLUS=n \
  63. CONFIG_USB_MUSB_AM35X=n \
  64. CONFIG_USB_MUSB_DSPS \
  65. CONFIG_USB_MUSB_UX500=n
  66. DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-musb-hdrc +kmod-usb-phy-am335x
  67. FILES:= \
  68. $(LINUX_DIR)/drivers/usb/musb/musb_dsps.ko \
  69. $(LINUX_DIR)/drivers/usb/musb/musb_am335x.ko
  70. AUTOLOAD:=$(call AutoLoad,45,phy-omap-control musb_dsps musb_am335x)
  71. $(call AddDepends/usb)
  72. endef
  73. define KernelPackage/usb-musb-platformglue/description
  74. MUSB platform glue modules
  75. endef
  76. $(eval $(call KernelPackage,usb-musb-platformglue))
  77. define KernelPackage/usb-musb-tusb6010
  78. TITLE:=Support for TUSB 6010
  79. KCONFIG:=CONFIG_USB_MUSB_TUSB6010
  80. DEPENDS:=@TARGET_omap24xx
  81. $(call AddDepends/usb)
  82. endef
  83. define KernelPackage/usb-musb-tusb6010/description
  84. TUSB6010 support
  85. endef
  86. $(eval $(call KernelPackage,usb-musb-tusb6010))
  87. define KernelPackage/usb-phy-nop
  88. TITLE:=Support for USB NOP transceiver
  89. KCONFIG:=CONFIG_NOP_USB_XCEIV
  90. HIDDEN:=1
  91. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/phy/phy-generic.ko),)
  92. FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-generic.ko
  93. AUTOLOAD:=$(call AutoLoad,43,phy-generic)
  94. else
  95. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/phy/phy-nop.ko),)
  96. FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-nop.ko
  97. AUTOLOAD:=$(call AutoLoad,43,phy-nop)
  98. else
  99. FILES:=$(LINUX_DIR)/drivers/usb/otg/nop-usb-xceiv.ko
  100. AUTOLOAD:=$(call AutoLoad,43,nop-usb-xceiv)
  101. endif
  102. endif
  103. $(call AddDepends/usb)
  104. endef
  105. define KernelPackage/usb-phy-nop/description
  106. Support for USB NOP transceiver
  107. endef
  108. $(eval $(call KernelPackage,usb-phy-nop))
  109. define KernelPackage/usb-phy-am335x
  110. TITLE:=Support for AM335x USB PHY
  111. KCONFIG:= \
  112. CONFIG_AM335X_PHY_USB \
  113. CONFIG_AM335X_CONTROL_USB
  114. DEPENDS:=@TARGET_omap +kmod-usb-phy-nop
  115. FILES:= \
  116. $(LINUX_DIR)/drivers/usb/phy/phy-am335x.ko \
  117. $(LINUX_DIR)/drivers/usb/phy/phy-am335x-control.ko
  118. AUTOLOAD:=$(call AutoLoad,44,phy-am335x)
  119. $(call AddDepends/usb)
  120. endef
  121. define KernelPackage/usb-phy-am335x/description
  122. Support for AM335x USB PHY
  123. endef
  124. $(eval $(call KernelPackage,usb-phy-am335x))
  125. define KernelPackage/usb-phy-omap-usb2
  126. TITLE:=Support for OMAP2 USB PHY
  127. KCONFIG:= \
  128. CONFIG_OMAP_USB2 \
  129. CONFIG_OMAP_CONTROL_USB
  130. DEPENDS:=@TARGET_omap
  131. FILES:= \
  132. $(LINUX_DIR)/drivers/phy/phy-omap-usb2.ko \
  133. $(LINUX_DIR)/drivers/usb/phy/phy-omap-control.ko
  134. AUTOLOAD:=$(call AutoLoad,45,phy-omap-control phy-omap-usb2)
  135. $(call AddDepends/usb)
  136. endef
  137. define KernelPackage/usb-phy-omap-usb2/description
  138. Support for AM335x USB PHY
  139. endef
  140. $(eval $(call KernelPackage,usb-phy-omap-usb2))
  141. define KernelPackage/usb-phy-omap-usb3
  142. TITLE:=Support for OMAP USB3 PHY
  143. KCONFIG:=CONFIG_OMAP_USB3
  144. DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2
  145. FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-omap-usb3.ko
  146. AUTOLOAD:=$(call AutoLoad,45,phy-omap-usb3)
  147. $(call AddDepends/usb)
  148. endef
  149. define KernelPackage/usb-phy-omap-usb3/description
  150. Support for OMAP USB3 PHY
  151. endef
  152. $(eval $(call KernelPackage,usb-phy-omap-usb3))
  153. define KernelPackage/usb-phy-twl4030
  154. TITLE:=Support for TWL4030 OTG PHY
  155. KCONFIG:=CONFIG_TWL4030_USB
  156. DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2 +kmod-usb-musb-hdrc
  157. FILES:=$(LINUX_DIR)/drivers/phy/phy-twl4030-usb.ko
  158. AUTOLOAD:=$(call AutoLoad,45,phy-twl4030-usb)
  159. $(call AddDepends/usb)
  160. endef
  161. define KernelPackage/usb-phy-twl4030/description
  162. Support for TWL4030/TWL5030/TPS659x0 OTG PHY
  163. endef
  164. $(eval $(call KernelPackage,usb-phy-twl4030))
  165. define KernelPackage/usb-phy-twl6030
  166. TITLE:=Support for TWL6030 OTG PHY
  167. KCONFIG:=CONFIG_TWL6030_USB
  168. DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2 +kmod-usb-musb-hdrc
  169. FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-twl6030-usb.ko
  170. AUTOLOAD:=$(call AutoLoad,45,phy-twl6030-usb)
  171. $(call AddDepends/usb)
  172. endef
  173. define KernelPackage/usb-phy-twl6030/description
  174. Support for TWL6030 OTG PHY
  175. endef
  176. $(eval $(call KernelPackage,usb-phy-twl6030))
  177. define KernelPackage/usb-gadget
  178. TITLE:=USB Gadget support
  179. KCONFIG:=CONFIG_USB_GADGET
  180. FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc-core.ko
  181. AUTOLOAD:=$(call AutoLoad,45,udc-core)
  182. DEPENDS:=@USB_GADGET_SUPPORT
  183. $(call AddDepends/usb)
  184. endef
  185. define KernelPackage/usb-gadget/description
  186. Kernel support for USB Gadget mode
  187. endef
  188. $(eval $(call KernelPackage,usb-gadget))
  189. define KernelPackage/usb-lib-composite
  190. TITLE:=USB lib composite
  191. KCONFIG:=CONFIG_USB_LIBCOMPOSITE
  192. DEPENDS:=+kmod-usb-gadget +kmod-fs-configfs @!LINUX_3_3 @!LINUX_3_6
  193. FILES:=$(LINUX_DIR)/drivers/usb/gadget/libcomposite.ko
  194. AUTOLOAD:=$(call AutoLoad,50,libcomposite)
  195. $(call AddDepends/usb)
  196. endef
  197. define KernelPackage/usb-lib-composite/description
  198. Lib Composite
  199. endef
  200. $(eval $(call KernelPackage,usb-lib-composite))
  201. define KernelPackage/usb-eth-gadget
  202. TITLE:=USB Ethernet Gadget support
  203. KCONFIG:= \
  204. CONFIG_USB_ETH \
  205. CONFIG_USB_ETH_RNDIS=y \
  206. CONFIG_USB_ETH_EEM=n
  207. DEPENDS:=+kmod-usb-gadget +(!LINUX_3_3&&!LINUX_3_6):kmod-usb-lib-composite
  208. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko),)
  209. FILES:= \
  210. $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko \
  211. $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm.ko \
  212. $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm_subset.ko \
  213. $(LINUX_DIR)/drivers/usb/gadget/usb_f_rndis.ko \
  214. $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko
  215. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko),)
  216. FILES+=$(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko
  217. endif
  218. AUTOLOAD:=$(call AutoLoad,52,usb_f_ecm g_ether)
  219. else
  220. FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_ether.ko
  221. AUTOLOAD:=$(call AutoLoad,52,g_ether)
  222. endif
  223. $(call AddDepends/usb)
  224. endef
  225. define KernelPackage/usb-eth-gadget/description
  226. Kernel support for USB Ethernet Gadget
  227. endef
  228. $(eval $(call KernelPackage,usb-eth-gadget))
  229. define KernelPackage/usb-serial-gadget
  230. TITLE:=USB Serial Gadget support
  231. KCONFIG:=CONFIG_USB_G_SERIAL
  232. DEPENDS:=+kmod-usb-gadget +(!LINUX_3_3&&!LINUX_3_6):kmod-usb-lib-composite
  233. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko),)
  234. FILES:= \
  235. $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko \
  236. $(LINUX_DIR)/drivers/usb/gadget/usb_f_acm.ko \
  237. $(LINUX_DIR)/drivers/usb/gadget/usb_f_obex.ko \
  238. $(LINUX_DIR)/drivers/usb/gadget/usb_f_serial.ko \
  239. $(LINUX_DIR)/drivers/usb/gadget/g_serial.ko
  240. AUTOLOAD:=$(call AutoLoad,52,usb_f_acm g_serial)
  241. else
  242. FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_serial.ko
  243. AUTOLOAD:=$(call AutoLoad,52,g_serial)
  244. endif
  245. $(call AddDepends/usb)
  246. endef
  247. define KernelPackage/usb-serial-gadget/description
  248. Kernel support for USB Serial Gadget.
  249. endef
  250. $(eval $(call KernelPackage,usb-serial-gadget))
  251. define KernelPackage/usb-uhci
  252. TITLE:=Support for UHCI controllers
  253. KCONFIG:= \
  254. CONFIG_USB_UHCI_ALT \
  255. CONFIG_USB_UHCI_HCD
  256. FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
  257. AUTOLOAD:=$(call AutoLoad,50,uhci-hcd,1)
  258. $(call AddDepends/usb)
  259. endef
  260. define KernelPackage/usb-uhci/description
  261. Kernel support for USB UHCI controllers
  262. endef
  263. $(eval $(call KernelPackage,usb-uhci,1))
  264. define KernelPackage/usb-ohci
  265. TITLE:=Support for OHCI controllers
  266. DEPENDS:=+TARGET_brcm47xx:kmod-usb-brcm47xx
  267. KCONFIG:= \
  268. CONFIG_USB_OHCI \
  269. CONFIG_USB_OHCI_HCD \
  270. CONFIG_USB_OHCI_ATH79=y \
  271. CONFIG_USB_OHCI_HCD_AT91=y \
  272. CONFIG_USB_OHCI_BCM63XX=y \
  273. CONFIG_USB_OCTEON_OHCI=y \
  274. CONFIG_USB_OHCI_HCD_OMAP3=y \
  275. CONFIG_USB_OHCI_HCD_PLATFORM=y
  276. FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
  277. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.11.0)),1)
  278. FILES+=$(LINUX_DIR)/drivers/usb/host/ohci-platform.ko
  279. endif
  280. AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform,1)
  281. $(call AddDepends/usb)
  282. endef
  283. define KernelPackage/usb-ohci/description
  284. Kernel support for USB OHCI controllers
  285. endef
  286. $(eval $(call KernelPackage,usb-ohci,1))
  287. define KernelPackage/usb2-fsl
  288. TITLE:=Support for Freescale USB2 controllers
  289. DEPENDS:=@TARGET_mpc85xx
  290. KCONFIG:=\
  291. CONFIG_USB_FSL_MPH_DR_OF \
  292. CONFIG_USB_EHCI_FSL=y
  293. FILES:=$(LINUX_DIR)/drivers/usb/host/fsl-mph-dr-of.ko
  294. AUTOLOAD:=$(call AutoLoad,39,fsl-mph-dr-of,1)
  295. $(call AddDepends/usb)
  296. endef
  297. define KernelPackage/usb2-fsl/description
  298. Kernel support for Freescale USB2 (EHCI) controllers
  299. endef
  300. $(eval $(call KernelPackage,usb2-fsl))
  301. define KernelPackage/usb2-omap
  302. TITLE:=Support for USB2 for OMAP
  303. DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-phy-am335x +kmod-usb2
  304. KCONFIG:=CONFIG_USB_EHCI_HCD_OMAP
  305. FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-omap.ko
  306. AUTOLOAD:=$(call AutoLoad,39,ehci-omap)
  307. $(call AddDepends/usb)
  308. endef
  309. define KernelPackage/usb2-omap/description
  310. Kernel support for OMAP USB2 (EHCI) controllers
  311. endef
  312. $(eval $(call KernelPackage,usb2-omap))
  313. define KernelPackage/usb2
  314. TITLE:=Support for USB2 controllers
  315. DEPENDS:=\
  316. +TARGET_brcm47xx:kmod-usb-brcm47xx \
  317. +TARGET_mpc85xx:kmod-usb2-fsl
  318. KCONFIG:=\
  319. CONFIG_USB_EHCI_HCD \
  320. CONFIG_USB_EHCI_ATH79=y \
  321. CONFIG_USB_EHCI_BCM63XX=y \
  322. CONFIG_USB_IMX21_HCD=y \
  323. CONFIG_USB_EHCI_MXC=y \
  324. CONFIG_USB_OCTEON_EHCI=y \
  325. CONFIG_USB_EHCI_HCD_ORION=y \
  326. CONFIG_USB_EHCI_HCD_PLATFORM=y
  327. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.8.0)),1)
  328. FILES:= \
  329. $(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko \
  330. $(LINUX_DIR)/drivers/usb/host/ehci-platform.ko
  331. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-orion.ko),)
  332. FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-orion.ko
  333. endif
  334. AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion,1)
  335. else
  336. FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko
  337. AUTOLOAD:=$(call AutoLoad,40,ehci-hcd,1)
  338. endif
  339. $(call AddDepends/usb)
  340. endef
  341. define KernelPackage/usb2/description
  342. Kernel support for USB2 (EHCI) controllers
  343. endef
  344. $(eval $(call KernelPackage,usb2))
  345. define KernelPackage/usb2-pci
  346. TITLE:=Support for PCI USB2 controllers
  347. DEPENDS:=@PCI_SUPPORT @(!LINUX_3_3&&!LINUX_3_6) +kmod-usb2
  348. KCONFIG:=CONFIG_USB_EHCI_PCI
  349. FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko
  350. AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1)
  351. $(call AddDepends/usb)
  352. endef
  353. define KernelPackage/usb2-pci/description
  354. Kernel support for PCI USB2 (EHCI) controllers
  355. endef
  356. $(eval $(call KernelPackage,usb2-pci))
  357. define KernelPackage/usb-dwc2
  358. TITLE:=DWC2 USB controller driver
  359. DEPENDS:=@(!LINUX_3_3&&!LINUX_3_6&&!LINUX_3_8&&!LINUX_3_9)
  360. KCONFIG:= \
  361. CONFIG_USB_DWC2 \
  362. CONFIG_USB_DWC2_DEBUG=n \
  363. CONFIG_USB_DWC2_VERBOSE=n \
  364. CONFIG_USB_DWC2_TRACK_MISSED_SOFS=n
  365. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.14.0)),1)
  366. FILES:= \
  367. $(LINUX_DIR)/drivers/usb/dwc2/dwc2.ko \
  368. $(LINUX_DIR)/drivers/usb/dwc2/dwc2_platform.ko
  369. else
  370. FILES:= \
  371. $(LINUX_DIR)/drivers/staging/dwc2/dwc2.ko \
  372. $(LINUX_DIR)/drivers/staging/dwc2/dwc2_platform.ko
  373. endif
  374. AUTOLOAD:=$(call AutoLoad,54,dwc2 dwc2_platform,1)
  375. $(call AddDepends/usb)
  376. endef
  377. define KernelPackage/usb-dwc2/description
  378. This driver provides USB Device Controller support for the
  379. Synopsys DesignWare USB OTG Core
  380. endef
  381. $(eval $(call KernelPackage,usb-dwc2))
  382. define KernelPackage/usb-acm
  383. TITLE:=Support for modems/isdn controllers
  384. KCONFIG:=CONFIG_USB_ACM
  385. FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
  386. AUTOLOAD:=$(call AutoProbe,cdc-acm)
  387. $(call AddDepends/usb)
  388. endef
  389. define KernelPackage/usb-acm/description
  390. Kernel support for USB ACM devices (modems/isdn controllers)
  391. endef
  392. $(eval $(call KernelPackage,usb-acm))
  393. define KernelPackage/usb-wdm
  394. TITLE:=USB Wireless Device Management
  395. KCONFIG:=CONFIG_USB_WDM
  396. FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-wdm.ko
  397. AUTOLOAD:=$(call AutoProbe,cdc-wdm)
  398. $(call AddDepends/usb)
  399. $(call AddDepends/usb-net)
  400. endef
  401. define KernelPackage/usb-wdm/description
  402. USB Wireless Device Management support
  403. endef
  404. $(eval $(call KernelPackage,usb-wdm))
  405. define KernelPackage/usb-audio
  406. TITLE:=Support for USB audio devices
  407. KCONFIG:= \
  408. CONFIG_USB_AUDIO \
  409. CONFIG_SND_USB_AUDIO
  410. $(call AddDepends/usb)
  411. $(call AddDepends/sound)
  412. # For Linux 2.6.35+
  413. ifneq ($(wildcard $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko),)
  414. FILES:= \
  415. $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
  416. $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
  417. AUTOLOAD:=$(call AutoProbe,snd-usbmidi-lib snd-usb-audio)
  418. else
  419. FILES:= \
  420. $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
  421. $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
  422. AUTOLOAD:=$(call AutoProbe,snd-usb-lib snd-usb-audio)
  423. endif
  424. endef
  425. define KernelPackage/usb-audio/description
  426. Kernel support for USB audio devices
  427. endef
  428. $(eval $(call KernelPackage,usb-audio))
  429. define KernelPackage/usb-printer
  430. TITLE:=Support for printers
  431. KCONFIG:=CONFIG_USB_PRINTER
  432. FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
  433. AUTOLOAD:=$(call AutoProbe,usblp)
  434. $(call AddDepends/usb)
  435. endef
  436. define KernelPackage/usb-printer/description
  437. Kernel support for USB printers
  438. endef
  439. $(eval $(call KernelPackage,usb-printer))
  440. define KernelPackage/usb-serial
  441. TITLE:=Support for USB-to-Serial converters
  442. KCONFIG:=CONFIG_USB_SERIAL
  443. FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.ko
  444. AUTOLOAD:=$(call AutoProbe,usbserial)
  445. $(call AddDepends/usb)
  446. endef
  447. define KernelPackage/usb-serial/description
  448. Kernel support for USB-to-Serial converters
  449. endef
  450. $(eval $(call KernelPackage,usb-serial))
  451. define AddDepends/usb-serial
  452. SUBMENU:=$(USB_MENU)
  453. DEPENDS+=kmod-usb-serial $(1)
  454. endef
  455. define KernelPackage/usb-serial-belkin
  456. TITLE:=Support for Belkin devices
  457. KCONFIG:=CONFIG_USB_SERIAL_BELKIN
  458. FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.ko
  459. AUTOLOAD:=$(call AutoProbe,belkin_sa)
  460. $(call AddDepends/usb-serial)
  461. endef
  462. define KernelPackage/usb-serial-belkin/description
  463. Kernel support for Belkin USB-to-Serial converters
  464. endef
  465. $(eval $(call KernelPackage,usb-serial-belkin))
  466. define KernelPackage/usb-serial-ch341
  467. TITLE:=Support for CH341 devices
  468. KCONFIG:=CONFIG_USB_SERIAL_CH341
  469. FILES:=$(LINUX_DIR)/drivers/usb/serial/ch341.ko
  470. AUTOLOAD:=$(call AutoProbe,ch341)
  471. $(call AddDepends/usb-serial)
  472. endef
  473. define KernelPackage/usb-serial-ch341/description
  474. Kernel support for Winchiphead CH341 USB-to-Serial converters
  475. endef
  476. $(eval $(call KernelPackage,usb-serial-ch341))
  477. define KernelPackage/usb-serial-ftdi
  478. TITLE:=Support for FTDI devices
  479. KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
  480. FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.ko
  481. AUTOLOAD:=$(call AutoProbe,ftdi_sio)
  482. $(call AddDepends/usb-serial)
  483. endef
  484. define KernelPackage/usb-serial-ftdi/description
  485. Kernel support for FTDI USB-to-Serial converters
  486. endef
  487. $(eval $(call KernelPackage,usb-serial-ftdi))
  488. define KernelPackage/usb-serial-ti-usb
  489. TITLE:=Support for TI USB 3410/5052
  490. KCONFIG:=CONFIG_USB_SERIAL_TI
  491. FILES:=$(LINUX_DIR)/drivers/usb/serial/ti_usb_3410_5052.ko
  492. AUTOLOAD:=$(call AutoProbe,ti_usb_3410_5052)
  493. $(call AddDepends/usb-serial)
  494. endef
  495. define KernelPackage/usb-serial-ti-usb/description
  496. Kernel support for TI USB 3410/5052 devices
  497. endef
  498. $(eval $(call KernelPackage,usb-serial-ti-usb))
  499. define KernelPackage/usb-serial-ipw
  500. TITLE:=Support for IPWireless 3G devices
  501. KCONFIG:=CONFIG_USB_SERIAL_IPW
  502. FILES:=$(LINUX_DIR)/drivers/usb/serial/ipw.ko
  503. AUTOLOAD:=$(call AutoProbe,ipw)
  504. $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
  505. endef
  506. $(eval $(call KernelPackage,usb-serial-ipw))
  507. define KernelPackage/usb-serial-mct
  508. TITLE:=Support for Magic Control Tech. devices
  509. KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
  510. FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.ko
  511. AUTOLOAD:=$(call AutoProbe,mct_u232)
  512. $(call AddDepends/usb-serial)
  513. endef
  514. define KernelPackage/usb-serial-mct/description
  515. Kernel support for Magic Control Technology USB-to-Serial converters
  516. endef
  517. $(eval $(call KernelPackage,usb-serial-mct))
  518. define KernelPackage/usb-serial-mos7720
  519. TITLE:=Support for Moschip MOS7720 devices
  520. KCONFIG:=CONFIG_USB_SERIAL_MOS7720
  521. FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7720.ko
  522. AUTOLOAD:=$(call AutoProbe,mos7720)
  523. $(call AddDepends/usb-serial)
  524. endef
  525. define KernelPackage/usb-serial-mos7720/description
  526. Kernel support for Moschip MOS7720 USB-to-Serial converters
  527. endef
  528. $(eval $(call KernelPackage,usb-serial-mos7720))
  529. define KernelPackage/usb-serial-pl2303
  530. TITLE:=Support for Prolific PL2303 devices
  531. KCONFIG:=CONFIG_USB_SERIAL_PL2303
  532. FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.ko
  533. AUTOLOAD:=$(call AutoProbe,pl2303)
  534. $(call AddDepends/usb-serial)
  535. endef
  536. define KernelPackage/usb-serial-pl2303/description
  537. Kernel support for Prolific PL2303 USB-to-Serial converters
  538. endef
  539. $(eval $(call KernelPackage,usb-serial-pl2303))
  540. define KernelPackage/usb-serial-cp210x
  541. TITLE:=Support for Silicon Labs cp210x devices
  542. KCONFIG:=CONFIG_USB_SERIAL_CP210X
  543. FILES:=$(LINUX_DIR)/drivers/usb/serial/cp210x.ko
  544. AUTOLOAD:=$(call AutoProbe,cp210x)
  545. $(call AddDepends/usb-serial)
  546. endef
  547. define KernelPackage/usb-serial-cp210x/description
  548. Kernel support for Silicon Labs cp210x USB-to-Serial converters
  549. endef
  550. $(eval $(call KernelPackage,usb-serial-cp210x))
  551. define KernelPackage/usb-serial-ark3116
  552. TITLE:=Support for ArkMicroChips ARK3116 devices
  553. KCONFIG:=CONFIG_USB_SERIAL_ARK3116
  554. FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.ko
  555. AUTOLOAD:=$(call AutoProbe,ark3116)
  556. $(call AddDepends/usb-serial)
  557. endef
  558. define KernelPackage/usb-serial-ark3116/description
  559. Kernel support for ArkMicroChips ARK3116 USB-to-Serial converters
  560. endef
  561. $(eval $(call KernelPackage,usb-serial-ark3116))
  562. define KernelPackage/usb-serial-oti6858
  563. TITLE:=Support for Ours Technology OTI6858 devices
  564. KCONFIG:=CONFIG_USB_SERIAL_OTI6858
  565. FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.ko
  566. AUTOLOAD:=$(call AutoProbe,oti6858)
  567. $(call AddDepends/usb-serial)
  568. endef
  569. define KernelPackage/usb-serial-oti6858/description
  570. Kernel support for Ours Technology OTI6858 USB-to-Serial converters
  571. endef
  572. $(eval $(call KernelPackage,usb-serial-oti6858))
  573. define KernelPackage/usb-serial-sierrawireless
  574. TITLE:=Support for Sierra Wireless devices
  575. KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
  576. FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.ko
  577. AUTOLOAD:=$(call AutoProbe,sierra)
  578. $(call AddDepends/usb-serial)
  579. endef
  580. define KernelPackage/usb-serial-sierrawireless/description
  581. Kernel support for Sierra Wireless devices
  582. endef
  583. $(eval $(call KernelPackage,usb-serial-sierrawireless))
  584. define KernelPackage/usb-serial-motorola-phone
  585. TITLE:=Support for Motorola usb phone
  586. KCONFIG:=CONFIG_USB_SERIAL_MOTOROLA
  587. FILES:=$(LINUX_DIR)/drivers/usb/serial/moto_modem.ko
  588. AUTOLOAD:=$(call AutoProbe,moto_modem)
  589. $(call AddDepends/usb-serial)
  590. endef
  591. define KernelPackage/usb-serial-motorola-phone/description
  592. Kernel support for Motorola usb phone
  593. endef
  594. $(eval $(call KernelPackage,usb-serial-motorola-phone))
  595. define KernelPackage/usb-serial-visor
  596. TITLE:=Support for Handspring Visor devices
  597. KCONFIG:=CONFIG_USB_SERIAL_VISOR
  598. FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.ko
  599. AUTOLOAD:=$(call AutoProbe,visor)
  600. $(call AddDepends/usb-serial)
  601. endef
  602. define KernelPackage/usb-serial-visor/description
  603. Kernel support for Handspring Visor PDAs
  604. endef
  605. $(eval $(call KernelPackage,usb-serial-visor))
  606. define KernelPackage/usb-serial-cypress-m8
  607. TITLE:=Support for CypressM8 USB-Serial
  608. KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
  609. FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.ko
  610. AUTOLOAD:=$(call AutoProbe,cypress_m8)
  611. $(call AddDepends/usb-serial)
  612. endef
  613. define KernelPackage/usb-serial-cypress-m8/description
  614. Kernel support for devices with Cypress M8 USB to Serial chip
  615. (for example, the Delorme Earthmate LT-20 GPS)
  616. Supported microcontrollers in the CY4601 family are:
  617. CY7C63741 CY7C63742 CY7C63743 CY7C64013
  618. endef
  619. $(eval $(call KernelPackage,usb-serial-cypress-m8))
  620. define KernelPackage/usb-serial-keyspan
  621. TITLE:=Support for Keyspan USB-to-Serial devices
  622. KCONFIG:= \
  623. CONFIG_USB_SERIAL_KEYSPAN \
  624. CONFIG_USB_SERIAL_KEYSPAN_USA28 \
  625. CONFIG_USB_SERIAL_KEYSPAN_USA28X \
  626. CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
  627. CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
  628. CONFIG_USB_SERIAL_KEYSPAN_USA19 \
  629. CONFIG_USB_SERIAL_KEYSPAN_USA18X \
  630. CONFIG_USB_SERIAL_KEYSPAN_USA19W \
  631. CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
  632. CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
  633. CONFIG_USB_SERIAL_KEYSPAN_MPR \
  634. CONFIG_USB_SERIAL_KEYSPAN_USA49W \
  635. CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
  636. FILES:= \
  637. $(LINUX_DIR)/drivers/usb/serial/keyspan.ko \
  638. $(wildcard $(LINUX_DIR)/drivers/usb/misc/ezusb.ko)
  639. AUTOLOAD:=$(call AutoProbe,ezusb keyspan)
  640. $(call AddDepends/usb-serial)
  641. endef
  642. define KernelPackage/usb-serial-keyspan/description
  643. Kernel support for Keyspan USB-to-Serial devices
  644. endef
  645. $(eval $(call KernelPackage,usb-serial-keyspan))
  646. define KernelPackage/usb-serial-wwan
  647. TITLE:=Support for GSM and CDMA modems
  648. KCONFIG:=CONFIG_USB_SERIAL_WWAN
  649. FILES:=$(LINUX_DIR)/drivers/usb/serial/usb_wwan.ko
  650. AUTOLOAD:=$(call AutoProbe,usb_wwan)
  651. $(call AddDepends/usb-serial)
  652. endef
  653. define KernelPackage/usb-serial-wwan/description
  654. Kernel support for USB GSM and CDMA modems
  655. endef
  656. $(eval $(call KernelPackage,usb-serial-wwan))
  657. define KernelPackage/usb-serial-option
  658. TITLE:=Support for Option HSDPA modems
  659. DEPENDS:=+kmod-usb-serial-wwan
  660. KCONFIG:=CONFIG_USB_SERIAL_OPTION
  661. FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
  662. AUTOLOAD:=$(call AutoProbe,option)
  663. $(call AddDepends/usb-serial)
  664. endef
  665. define KernelPackage/usb-serial-option/description
  666. Kernel support for Option HSDPA modems
  667. endef
  668. $(eval $(call KernelPackage,usb-serial-option))
  669. define KernelPackage/usb-serial-qualcomm
  670. TITLE:=Support for Qualcomm USB serial
  671. KCONFIG:=CONFIG_USB_SERIAL_QUALCOMM
  672. FILES:=$(LINUX_DIR)/drivers/usb/serial/qcserial.ko
  673. AUTOLOAD:=$(call AutoProbe,qcserial)
  674. $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
  675. endef
  676. define KernelPackage/usb-serial-qualcomm/description
  677. Kernel support for Qualcomm USB Serial devices (Gobi)
  678. endef
  679. $(eval $(call KernelPackage,usb-serial-qualcomm))
  680. define KernelPackage/usb-storage
  681. TITLE:=USB Storage support
  682. DEPENDS:= +kmod-scsi-core
  683. KCONFIG:=CONFIG_USB_STORAGE
  684. FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.ko
  685. AUTOLOAD:=$(call AutoProbe,usb-storage,1)
  686. $(call AddDepends/usb)
  687. endef
  688. define KernelPackage/usb-storage/description
  689. Kernel support for USB Mass Storage devices
  690. endef
  691. $(eval $(call KernelPackage,usb-storage))
  692. define KernelPackage/usb-storage-extras
  693. SUBMENU:=$(USB_MENU)
  694. TITLE:=Extra drivers for usb-storage
  695. DEPENDS:=+kmod-usb-storage
  696. KCONFIG:= \
  697. CONFIG_USB_STORAGE_ALAUDA \
  698. CONFIG_USB_STORAGE_CYPRESS_ATACB \
  699. CONFIG_USB_STORAGE_DATAFAB \
  700. CONFIG_USB_STORAGE_FREECOM \
  701. CONFIG_USB_STORAGE_ISD200 \
  702. CONFIG_USB_STORAGE_JUMPSHOT \
  703. CONFIG_USB_STORAGE_KARMA \
  704. CONFIG_USB_STORAGE_SDDR09 \
  705. CONFIG_USB_STORAGE_SDDR55 \
  706. CONFIG_USB_STORAGE_USBAT
  707. FILES:= \
  708. $(LINUX_DIR)/drivers/usb/storage/ums-alauda.ko \
  709. $(LINUX_DIR)/drivers/usb/storage/ums-cypress.ko \
  710. $(LINUX_DIR)/drivers/usb/storage/ums-datafab.ko \
  711. $(LINUX_DIR)/drivers/usb/storage/ums-freecom.ko \
  712. $(LINUX_DIR)/drivers/usb/storage/ums-isd200.ko \
  713. $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.ko \
  714. $(LINUX_DIR)/drivers/usb/storage/ums-karma.ko \
  715. $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.ko \
  716. $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.ko \
  717. $(LINUX_DIR)/drivers/usb/storage/ums-usbat.ko
  718. AUTOLOAD:=$(call AutoProbe,ums-alauda ums-cypress ums-datafab \
  719. ums-freecom ums-isd200 ums-jumpshot \
  720. ums-karma ums-sddr09 ums-sddr55 ums-usbat)
  721. endef
  722. define KernelPackage/usb-storage-extras/description
  723. Say Y here if you want to have some more drivers,
  724. such as for SmartMedia card readers
  725. endef
  726. $(eval $(call KernelPackage,usb-storage-extras))
  727. define KernelPackage/usb-atm
  728. TITLE:=Support for ATM on USB bus
  729. DEPENDS:=+kmod-atm
  730. KCONFIG:=CONFIG_USB_ATM
  731. FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.ko
  732. AUTOLOAD:=$(call AutoProbe,usbatm)
  733. $(call AddDepends/usb)
  734. endef
  735. define KernelPackage/usb-atm/description
  736. Kernel support for USB DSL modems
  737. endef
  738. $(eval $(call KernelPackage,usb-atm))
  739. define AddDepends/usb-atm
  740. SUBMENU:=$(USB_MENU)
  741. DEPENDS+=kmod-usb-atm $(1)
  742. endef
  743. define KernelPackage/usb-atm-speedtouch
  744. TITLE:=SpeedTouch USB ADSL modems support
  745. KCONFIG:=CONFIG_USB_SPEEDTOUCH
  746. FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.ko
  747. AUTOLOAD:=$(call AutoProbe,speedtch)
  748. $(call AddDepends/usb-atm)
  749. endef
  750. define KernelPackage/usb-atm-speedtouch/description
  751. Kernel support for SpeedTouch USB ADSL modems
  752. endef
  753. $(eval $(call KernelPackage,usb-atm-speedtouch))
  754. define KernelPackage/usb-atm-ueagle
  755. TITLE:=Eagle 8051 based USB ADSL modems support
  756. FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.ko
  757. KCONFIG:=CONFIG_USB_UEAGLEATM
  758. AUTOLOAD:=$(call AutoProbe,ueagle-atm)
  759. $(call AddDepends/usb-atm)
  760. endef
  761. define KernelPackage/usb-atm-ueagle/description
  762. Kernel support for Eagle 8051 based USB ADSL modems
  763. endef
  764. $(eval $(call KernelPackage,usb-atm-ueagle))
  765. define KernelPackage/usb-atm-cxacru
  766. TITLE:=cxacru
  767. FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.ko
  768. KCONFIG:=CONFIG_USB_CXACRU
  769. AUTOLOAD:=$(call AutoProbe,cxacru)
  770. $(call AddDepends/usb-atm)
  771. endef
  772. define KernelPackage/usb-atm-cxacru/description
  773. Kernel support for cxacru based USB ADSL modems
  774. endef
  775. $(eval $(call KernelPackage,usb-atm-cxacru))
  776. define KernelPackage/usb-net
  777. TITLE:=Kernel modules for USB-to-Ethernet convertors
  778. DEPENDS:=+kmod-mii
  779. KCONFIG:=CONFIG_USB_USBNET
  780. AUTOLOAD:=$(call AutoProbe,usbnet)
  781. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
  782. $(call AddDepends/usb)
  783. endef
  784. define KernelPackage/usb-net/description
  785. Kernel modules for USB-to-Ethernet convertors
  786. endef
  787. $(eval $(call KernelPackage,usb-net))
  788. define AddDepends/usb-net
  789. SUBMENU:=$(USB_MENU)
  790. DEPENDS+=kmod-usb-net $(1)
  791. endef
  792. define KernelPackage/usb-net-asix
  793. TITLE:=Kernel module for USB-to-Ethernet Asix convertors
  794. DEPENDS:=+!LINUX_3_3:kmod-libphy
  795. KCONFIG:=CONFIG_USB_NET_AX8817X
  796. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
  797. AUTOLOAD:=$(call AutoProbe,asix)
  798. $(call AddDepends/usb-net)
  799. endef
  800. define KernelPackage/usb-net-asix/description
  801. Kernel module for USB-to-Ethernet Asix convertors
  802. endef
  803. $(eval $(call KernelPackage,usb-net-asix))
  804. define KernelPackage/usb-net-hso
  805. TITLE:=Kernel module for Option USB High Speed Mobile Devices
  806. KCONFIG:=CONFIG_USB_HSO
  807. FILES:= \
  808. $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.ko
  809. AUTOLOAD:=$(call AutoProbe,hso)
  810. $(call AddDepends/usb-net)
  811. $(call AddDepends/rfkill)
  812. endef
  813. define KernelPackage/usb-net-hso/description
  814. Kernel module for Option USB High Speed Mobile Devices
  815. endef
  816. $(eval $(call KernelPackage,usb-net-hso))
  817. define KernelPackage/usb-net-kaweth
  818. TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
  819. KCONFIG:=CONFIG_USB_KAWETH
  820. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.ko
  821. AUTOLOAD:=$(call AutoProbe,kaweth)
  822. $(call AddDepends/usb-net)
  823. endef
  824. define KernelPackage/usb-net-kaweth/description
  825. Kernel module for USB-to-Ethernet Kaweth convertors
  826. endef
  827. $(eval $(call KernelPackage,usb-net-kaweth))
  828. define KernelPackage/usb-net-pegasus
  829. TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
  830. KCONFIG:=CONFIG_USB_PEGASUS
  831. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.ko
  832. AUTOLOAD:=$(call AutoProbe,pegasus)
  833. $(call AddDepends/usb-net)
  834. endef
  835. define KernelPackage/usb-net-pegasus/description
  836. Kernel module for USB-to-Ethernet Pegasus convertors
  837. endef
  838. $(eval $(call KernelPackage,usb-net-pegasus))
  839. define KernelPackage/usb-net-mcs7830
  840. TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
  841. KCONFIG:=CONFIG_USB_NET_MCS7830
  842. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.ko
  843. AUTOLOAD:=$(call AutoProbe,mcs7830)
  844. $(call AddDepends/usb-net)
  845. endef
  846. define KernelPackage/usb-net-mcs7830/description
  847. Kernel module for USB-to-Ethernet MCS7830 convertors
  848. endef
  849. $(eval $(call KernelPackage,usb-net-mcs7830))
  850. define KernelPackage/usb-net-smsc95xx
  851. TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices
  852. KCONFIG:=CONFIG_USB_NET_SMSC95XX
  853. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
  854. AUTOLOAD:=$(call AutoProbe,smsc95xx)
  855. $(call AddDepends/usb-net, +(!LINUX_3_3&&!LINUX_3_6):kmod-lib-crc16)
  856. endef
  857. define KernelPackage/usb-net-smsc95xx/description
  858. Kernel module for SMSC LAN95XX based devices
  859. endef
  860. $(eval $(call KernelPackage,usb-net-smsc95xx))
  861. define KernelPackage/usb-net-dm9601-ether
  862. TITLE:=Support for DM9601 ethernet connections
  863. KCONFIG:=CONFIG_USB_NET_DM9601
  864. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.ko
  865. AUTOLOAD:=$(call AutoProbe,dm9601)
  866. $(call AddDepends/usb-net)
  867. endef
  868. define KernelPackage/usb-net-dm9601-ether/description
  869. Kernel support for USB DM9601 devices
  870. endef
  871. $(eval $(call KernelPackage,usb-net-dm9601-ether))
  872. define KernelPackage/usb-net-cdc-ether
  873. TITLE:=Support for cdc ethernet connections
  874. KCONFIG:=CONFIG_USB_NET_CDCETHER
  875. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ether.ko
  876. AUTOLOAD:=$(call AutoProbe,cdc_ether)
  877. $(call AddDepends/usb-net)
  878. endef
  879. define KernelPackage/usb-net-cdc-ether/description
  880. Kernel support for USB CDC Ethernet devices
  881. endef
  882. $(eval $(call KernelPackage,usb-net-cdc-ether))
  883. define KernelPackage/usb-net-cdc-eem
  884. TITLE:=Support for CDC EEM connections
  885. KCONFIG:=CONFIG_USB_NET_CDC_EEM
  886. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_eem.ko
  887. AUTOLOAD:=$(call AutoProbe,cdc_eem)
  888. $(call AddDepends/usb-net)
  889. endef
  890. define KernelPackage/usb-net-cdc-eem/description
  891. Kernel support for USB CDC EEM
  892. endef
  893. $(eval $(call KernelPackage,usb-net-cdc-eem))
  894. define KernelPackage/usb-net-cdc-subset
  895. TITLE:=Support for CDC Ethernet subset connections
  896. KCONFIG:= \
  897. CONFIG_USB_NET_CDC_SUBSET \
  898. CONFIG_USB_ARMLINUX
  899. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_subset.ko
  900. AUTOLOAD:=$(call AutoProbe,cdc_subset)
  901. $(call AddDepends/usb-net)
  902. endef
  903. define KernelPackage/usb-net-cdc-subset/description
  904. Kernel support for Simple USB Network Links (CDC Ethernet subset)
  905. endef
  906. $(eval $(call KernelPackage,usb-net-cdc-subset))
  907. define KernelPackage/usb-net-qmi-wwan
  908. TITLE:=QMI WWAN driver
  909. KCONFIG:=CONFIG_USB_NET_QMI_WWAN
  910. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/qmi_wwan.ko
  911. AUTOLOAD:=$(call AutoProbe,qmi_wwan)
  912. $(call AddDepends/usb-net,+kmod-usb-wdm)
  913. endef
  914. define KernelPackage/usb-net-qmi-wwan/description
  915. QMI WWAN driver for Qualcomm MSM based 3G and LTE modems
  916. endef
  917. $(eval $(call KernelPackage,usb-net-qmi-wwan))
  918. define KernelPackage/usb-net-rndis
  919. TITLE:=Support for RNDIS connections
  920. KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
  921. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.ko
  922. AUTOLOAD:=$(call AutoProbe,rndis_host)
  923. $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
  924. endef
  925. define KernelPackage/usb-net-rndis/description
  926. Kernel support for RNDIS connections
  927. endef
  928. $(eval $(call KernelPackage,usb-net-rndis))
  929. define KernelPackage/usb-net-cdc-mbim
  930. SUBMENU:=$(USB_MENU)
  931. TITLE:=Kernel module for MBIM Devices
  932. KCONFIG:=CONFIG_USB_NET_CDC_MBIM
  933. FILES:= \
  934. $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_mbim.ko
  935. AUTOLOAD:=$(call AutoProbe,cdc_mbim)
  936. $(call AddDepends/usb-net,+kmod-usb-wdm +kmod-usb-net-cdc-ncm)
  937. endef
  938. define KernelPackage/usb-net-cdc-mbim/description
  939. Kernel module for Option USB High Speed Mobile Devices
  940. endef
  941. $(eval $(call KernelPackage,usb-net-cdc-mbim))
  942. define KernelPackage/usb-net-cdc-ncm
  943. TITLE:=Support for CDC NCM connections
  944. KCONFIG:=CONFIG_USB_NET_CDC_NCM
  945. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
  946. AUTOLOAD:=$(call AutoProbe,cdc_ncm)
  947. $(call AddDepends/usb-net)
  948. endef
  949. define KernelPackage/usb-net-cdc-ncm/description
  950. Kernel support for CDC NCM connections
  951. endef
  952. $(eval $(call KernelPackage,usb-net-cdc-ncm))
  953. define KernelPackage/usb-net-huawei-cdc-ncm
  954. TITLE:=Support for Huawei CDC NCM connections
  955. KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM
  956. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko
  957. AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm)
  958. $(call AddDepends/usb-net,+kmod-usb-wdm @!LINUX_3_3 @!LINUX_3_8 @!LINUX_3_10)
  959. endef
  960. define KernelPackage/usb-net-huawei-cdc-ncm/description
  961. Kernel support for Huawei CDC NCM connections
  962. endef
  963. $(eval $(call KernelPackage,usb-net-huawei-cdc-ncm))
  964. define KernelPackage/usb-net-sierrawireless
  965. TITLE:=Support for Sierra Wireless devices
  966. KCONFIG:=CONFIG_USB_SIERRA_NET
  967. FILES:=$(LINUX_DIR)/drivers/net/usb/sierra_net.ko
  968. AUTOLOAD:=$(call AutoProbe,sierra_net)
  969. $(call AddDepends/usb-net)
  970. endef
  971. define KernelPackage/usb-net-sierrawireless/description
  972. Kernel support for Sierra Wireless devices
  973. endef
  974. $(eval $(call KernelPackage,usb-net-sierrawireless))
  975. define KernelPackage/usb-net-ipheth
  976. TITLE:=Apple iPhone USB Ethernet driver
  977. KCONFIG:=CONFIG_USB_IPHETH
  978. FILES:=$(LINUX_DIR)/drivers/net/usb/ipheth.ko
  979. AUTOLOAD:=$(call AutoProbe,ipheth)
  980. $(call AddDepends/usb-net)
  981. endef
  982. define KernelPackage/usb-net-ipheth/description
  983. Kernel support for Apple iPhone USB Ethernet driver
  984. endef
  985. $(eval $(call KernelPackage,usb-net-ipheth))
  986. define KernelPackage/usb-net-kalmia
  987. TITLE:=Samsung Kalmia based LTE USB modem
  988. KCONFIG:=CONFIG_USB_NET_KALMIA
  989. FILES:=$(LINUX_DIR)/drivers/net/usb/kalmia.ko
  990. AUTOLOAD:=$(call AutoProbe,kalmia)
  991. $(call AddDepends/usb-net)
  992. endef
  993. define KernelPackage/usb-net-kalmia/description
  994. Kernel support for Samsung Kalmia based LTE USB modem
  995. endef
  996. $(eval $(call KernelPackage,usb-net-kalmia))
  997. define KernelPackage/usb-hid
  998. TITLE:=Support for USB Human Input Devices
  999. KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
  1000. FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
  1001. AUTOLOAD:=$(call AutoProbe,usbhid)
  1002. $(call AddDepends/usb)
  1003. $(call AddDepends/hid,+kmod-hid-generic)
  1004. $(call AddDepends/input,+kmod-input-evdev)
  1005. endef
  1006. define KernelPackage/usb-hid/description
  1007. Kernel support for USB HID devices such as keyboards and mice
  1008. endef
  1009. $(eval $(call KernelPackage,usb-hid))
  1010. define KernelPackage/usb-yealink
  1011. TITLE:=USB Yealink VOIP phone
  1012. KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
  1013. FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
  1014. AUTOLOAD:=$(call AutoProbe,yealink)
  1015. $(call AddDepends/usb)
  1016. $(call AddDepends/input,+kmod-input-evdev)
  1017. endef
  1018. define KernelPackage/usb-yealink/description
  1019. Kernel support for Yealink VOIP phone
  1020. endef
  1021. $(eval $(call KernelPackage,usb-yealink))
  1022. define KernelPackage/usb-cm109
  1023. TITLE:=Support for CM109 device
  1024. KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
  1025. FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
  1026. AUTOLOAD:=$(call AutoProbe,cm109)
  1027. $(call AddDepends/usb)
  1028. $(call AddDepends/input,+kmod-input-evdev)
  1029. endef
  1030. define KernelPackage/usb-cm109/description
  1031. Kernel support for CM109 VOIP phone
  1032. endef
  1033. $(eval $(call KernelPackage,usb-cm109))
  1034. define KernelPackage/usb-test
  1035. TITLE:=USB Testing Driver
  1036. DEPENDS:=@DEVEL
  1037. KCONFIG:=CONFIG_USB_TEST
  1038. FILES:=$(LINUX_DIR)/drivers/usb/misc/usbtest.ko
  1039. $(call AddDepends/usb)
  1040. endef
  1041. define KernelPackage/usb-test/description
  1042. Kernel support for testing USB Host Controller software
  1043. endef
  1044. $(eval $(call KernelPackage,usb-test))
  1045. define KernelPackage/usbip
  1046. TITLE := USB-over-IP kernel support
  1047. KCONFIG:= \
  1048. CONFIG_USBIP_CORE \
  1049. CONFIG_USBIP_DEBUG=n
  1050. FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip-core.ko
  1051. AUTOLOAD:=$(call AutoProbe,usbip-core)
  1052. $(call AddDepends/usb)
  1053. endef
  1054. $(eval $(call KernelPackage,usbip))
  1055. define KernelPackage/usbip-client
  1056. TITLE := USB-over-IP client driver
  1057. DEPENDS := +kmod-usbip
  1058. KCONFIG := CONFIG_USBIP_VHCI_HCD
  1059. FILES := $(LINUX_DIR)/drivers/staging/usbip/vhci-hcd.$(LINUX_KMOD_SUFFIX)
  1060. AUTOLOAD := $(call AutoProbe,vhci-hcd)
  1061. $(call AddDepends/usb)
  1062. endef
  1063. $(eval $(call KernelPackage,usbip-client))
  1064. define KernelPackage/usbip-server
  1065. $(call KernelPackage/usbip/Default)
  1066. TITLE := USB-over-IP host driver
  1067. DEPENDS := +kmod-usbip
  1068. KCONFIG := CONFIG_USBIP_HOST
  1069. FILES := $(LINUX_DIR)/drivers/staging/usbip/usbip-host.ko
  1070. AUTOLOAD := $(call AutoProbe,usbip-host)
  1071. $(call AddDepends/usb)
  1072. endef
  1073. $(eval $(call KernelPackage,usbip-server))
  1074. define KernelPackage/usb-chipidea
  1075. TITLE:=Support for ChipIdea controllers
  1076. DEPENDS:=+kmod-usb2 +USB_GADGET_SUPPORT:kmod-usb-gadget
  1077. KCONFIG:=\
  1078. CONFIG_USB_CHIPIDEA \
  1079. CONFIG_USB_CHIPIDEA_HOST=y \
  1080. CONFIG_USB_CHIPIDEA_UDC=y \
  1081. CONFIG_USB_CHIPIDEA_DEBUG=y
  1082. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.11.0)),1)
  1083. FILES:=\
  1084. $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
  1085. $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/ci13xxx_imx.ko) \
  1086. $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q).ko)
  1087. AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF_DEVICE),ci13xxx_imx usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q)),1)
  1088. else
  1089. FILES:=\
  1090. $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
  1091. $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc_imx.ko) \
  1092. $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx.ko)
  1093. AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF),ci_hdrc_imx usbmisc_imx),1)
  1094. endif
  1095. $(call AddDepends/usb)
  1096. endef
  1097. define KernelPackage/usb-chipidea/description
  1098. Kernel support for USB ChipIdea controllers
  1099. endef
  1100. $(eval $(call KernelPackage,usb-chipidea,1))
  1101. define KernelPackage/usb-mxs-phy
  1102. TITLE:=Support for Freescale MXS USB PHY
  1103. DEPENDS:=@TARGET_imx6||TARGET_mxs +TARGET_mxs:kmod-usb-chipidea-imx
  1104. KCONFIG:=CONFIG_USB_MXS_PHY
  1105. FILES:=\
  1106. $(LINUX_DIR)/drivers/usb/phy/phy-mxs-usb.ko
  1107. AUTOLOAD:=$(call AutoLoad,52,phy-mxs-usb,1)
  1108. $(call AddDepends/usb)
  1109. endef
  1110. define KernelPackage/usb-mxs-phy/description
  1111. Kernel support for Freescale MXS USB PHY
  1112. endef
  1113. $(eval $(call KernelPackage,usb-mxs-phy,1))
  1114. define KernelPackage/usbmon
  1115. TITLE:=USB traffic monitor
  1116. KCONFIG:=CONFIG_USB_MON
  1117. $(call AddDepends/usb)
  1118. FILES:=$(LINUX_DIR)/drivers/usb/mon/usbmon.ko
  1119. AUTOLOAD:=$(call AutoProbe,usbmon)
  1120. endef
  1121. define KernelPackage/usbmon/description
  1122. Kernel support for USB traffic monitoring
  1123. endef
  1124. $(eval $(call KernelPackage,usbmon))
  1125. define KernelPackage/usb3
  1126. TITLE:=Support for USB3 controllers
  1127. DEPENDS:=+TARGET_omap:kmod-usb-phy-omap-usb3
  1128. KCONFIG:= \
  1129. CONFIG_USB_XHCI_HCD \
  1130. CONFIG_USB_XHCI_HCD_DEBUGGING=n
  1131. FILES:= \
  1132. $(LINUX_DIR)/drivers/usb/host/xhci-hcd.ko
  1133. AUTOLOAD:=$(call AutoLoad,54,xhci-hcd,1)
  1134. $(call AddDepends/usb)
  1135. endef
  1136. define KernelPackage/usb3/description
  1137. Kernel support for USB3 (XHCI) controllers
  1138. endef
  1139. $(eval $(call KernelPackage,usb3))