usb.mk 40 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487
  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/usb2-oxnas
  383. TITLE:=OXNAS USB controller driver
  384. DEPENDS:=@TARGET_oxnas +kmod-usb2
  385. KCONFIG:=CONFIG_USB_EHCI_OXNAS
  386. FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-oxnas.ko
  387. AUTOLOAD:=$(call AutoLoad,55,ehci-oxnas,1)
  388. $(call AddDepends/usb)
  389. endef
  390. define KernelPackage/usb2-oxnas/description
  391. This driver provides USB Device Controller support for the
  392. EHCI USB host built-in to the PLXTECH NAS782x SoC
  393. endef
  394. $(eval $(call KernelPackage,usb2-oxnas))
  395. define KernelPackage/usb-acm
  396. TITLE:=Support for modems/isdn controllers
  397. KCONFIG:=CONFIG_USB_ACM
  398. FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
  399. AUTOLOAD:=$(call AutoProbe,cdc-acm)
  400. $(call AddDepends/usb)
  401. endef
  402. define KernelPackage/usb-acm/description
  403. Kernel support for USB ACM devices (modems/isdn controllers)
  404. endef
  405. $(eval $(call KernelPackage,usb-acm))
  406. define KernelPackage/usb-wdm
  407. TITLE:=USB Wireless Device Management
  408. KCONFIG:=CONFIG_USB_WDM
  409. FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-wdm.ko
  410. AUTOLOAD:=$(call AutoProbe,cdc-wdm)
  411. $(call AddDepends/usb)
  412. $(call AddDepends/usb-net)
  413. endef
  414. define KernelPackage/usb-wdm/description
  415. USB Wireless Device Management support
  416. endef
  417. $(eval $(call KernelPackage,usb-wdm))
  418. define KernelPackage/usb-audio
  419. TITLE:=Support for USB audio devices
  420. KCONFIG:= \
  421. CONFIG_USB_AUDIO \
  422. CONFIG_SND_USB_AUDIO
  423. $(call AddDepends/usb)
  424. $(call AddDepends/sound)
  425. # For Linux 2.6.35+
  426. ifneq ($(wildcard $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko),)
  427. FILES:= \
  428. $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
  429. $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
  430. AUTOLOAD:=$(call AutoProbe,snd-usbmidi-lib snd-usb-audio)
  431. else
  432. FILES:= \
  433. $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
  434. $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
  435. AUTOLOAD:=$(call AutoProbe,snd-usb-lib snd-usb-audio)
  436. endif
  437. endef
  438. define KernelPackage/usb-audio/description
  439. Kernel support for USB audio devices
  440. endef
  441. $(eval $(call KernelPackage,usb-audio))
  442. define KernelPackage/usb-printer
  443. TITLE:=Support for printers
  444. KCONFIG:=CONFIG_USB_PRINTER
  445. FILES:=$(LINUX_DIR)/drivers/usb/class/usblp.ko
  446. AUTOLOAD:=$(call AutoProbe,usblp)
  447. $(call AddDepends/usb)
  448. endef
  449. define KernelPackage/usb-printer/description
  450. Kernel support for USB printers
  451. endef
  452. $(eval $(call KernelPackage,usb-printer))
  453. define KernelPackage/usb-serial
  454. TITLE:=Support for USB-to-Serial converters
  455. KCONFIG:=CONFIG_USB_SERIAL
  456. FILES:=$(LINUX_DIR)/drivers/usb/serial/usbserial.ko
  457. AUTOLOAD:=$(call AutoProbe,usbserial)
  458. $(call AddDepends/usb)
  459. endef
  460. define KernelPackage/usb-serial/description
  461. Kernel support for USB-to-Serial converters
  462. endef
  463. $(eval $(call KernelPackage,usb-serial))
  464. define AddDepends/usb-serial
  465. SUBMENU:=$(USB_MENU)
  466. DEPENDS+=kmod-usb-serial $(1)
  467. endef
  468. define KernelPackage/usb-serial-belkin
  469. TITLE:=Support for Belkin devices
  470. KCONFIG:=CONFIG_USB_SERIAL_BELKIN
  471. FILES:=$(LINUX_DIR)/drivers/usb/serial/belkin_sa.ko
  472. AUTOLOAD:=$(call AutoProbe,belkin_sa)
  473. $(call AddDepends/usb-serial)
  474. endef
  475. define KernelPackage/usb-serial-belkin/description
  476. Kernel support for Belkin USB-to-Serial converters
  477. endef
  478. $(eval $(call KernelPackage,usb-serial-belkin))
  479. define KernelPackage/usb-serial-ch341
  480. TITLE:=Support for CH341 devices
  481. KCONFIG:=CONFIG_USB_SERIAL_CH341
  482. FILES:=$(LINUX_DIR)/drivers/usb/serial/ch341.ko
  483. AUTOLOAD:=$(call AutoProbe,ch341)
  484. $(call AddDepends/usb-serial)
  485. endef
  486. define KernelPackage/usb-serial-ch341/description
  487. Kernel support for Winchiphead CH341 USB-to-Serial converters
  488. endef
  489. $(eval $(call KernelPackage,usb-serial-ch341))
  490. define KernelPackage/usb-serial-ftdi
  491. TITLE:=Support for FTDI devices
  492. KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
  493. FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.ko
  494. AUTOLOAD:=$(call AutoProbe,ftdi_sio)
  495. $(call AddDepends/usb-serial)
  496. endef
  497. define KernelPackage/usb-serial-ftdi/description
  498. Kernel support for FTDI USB-to-Serial converters
  499. endef
  500. $(eval $(call KernelPackage,usb-serial-ftdi))
  501. define KernelPackage/usb-serial-ti-usb
  502. TITLE:=Support for TI USB 3410/5052
  503. KCONFIG:=CONFIG_USB_SERIAL_TI
  504. FILES:=$(LINUX_DIR)/drivers/usb/serial/ti_usb_3410_5052.ko
  505. AUTOLOAD:=$(call AutoProbe,ti_usb_3410_5052)
  506. $(call AddDepends/usb-serial)
  507. endef
  508. define KernelPackage/usb-serial-ti-usb/description
  509. Kernel support for TI USB 3410/5052 devices
  510. endef
  511. $(eval $(call KernelPackage,usb-serial-ti-usb))
  512. define KernelPackage/usb-serial-ipw
  513. TITLE:=Support for IPWireless 3G devices
  514. KCONFIG:=CONFIG_USB_SERIAL_IPW
  515. FILES:=$(LINUX_DIR)/drivers/usb/serial/ipw.ko
  516. AUTOLOAD:=$(call AutoProbe,ipw)
  517. $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
  518. endef
  519. $(eval $(call KernelPackage,usb-serial-ipw))
  520. define KernelPackage/usb-serial-mct
  521. TITLE:=Support for Magic Control Tech. devices
  522. KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
  523. FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.ko
  524. AUTOLOAD:=$(call AutoProbe,mct_u232)
  525. $(call AddDepends/usb-serial)
  526. endef
  527. define KernelPackage/usb-serial-mct/description
  528. Kernel support for Magic Control Technology USB-to-Serial converters
  529. endef
  530. $(eval $(call KernelPackage,usb-serial-mct))
  531. define KernelPackage/usb-serial-mos7720
  532. TITLE:=Support for Moschip MOS7720 devices
  533. KCONFIG:=CONFIG_USB_SERIAL_MOS7720
  534. FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7720.ko
  535. AUTOLOAD:=$(call AutoProbe,mos7720)
  536. $(call AddDepends/usb-serial)
  537. endef
  538. define KernelPackage/usb-serial-mos7720/description
  539. Kernel support for Moschip MOS7720 USB-to-Serial converters
  540. endef
  541. $(eval $(call KernelPackage,usb-serial-mos7720))
  542. define KernelPackage/usb-serial-pl2303
  543. TITLE:=Support for Prolific PL2303 devices
  544. KCONFIG:=CONFIG_USB_SERIAL_PL2303
  545. FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.ko
  546. AUTOLOAD:=$(call AutoProbe,pl2303)
  547. $(call AddDepends/usb-serial)
  548. endef
  549. define KernelPackage/usb-serial-pl2303/description
  550. Kernel support for Prolific PL2303 USB-to-Serial converters
  551. endef
  552. $(eval $(call KernelPackage,usb-serial-pl2303))
  553. define KernelPackage/usb-serial-cp210x
  554. TITLE:=Support for Silicon Labs cp210x devices
  555. KCONFIG:=CONFIG_USB_SERIAL_CP210X
  556. FILES:=$(LINUX_DIR)/drivers/usb/serial/cp210x.ko
  557. AUTOLOAD:=$(call AutoProbe,cp210x)
  558. $(call AddDepends/usb-serial)
  559. endef
  560. define KernelPackage/usb-serial-cp210x/description
  561. Kernel support for Silicon Labs cp210x USB-to-Serial converters
  562. endef
  563. $(eval $(call KernelPackage,usb-serial-cp210x))
  564. define KernelPackage/usb-serial-ark3116
  565. TITLE:=Support for ArkMicroChips ARK3116 devices
  566. KCONFIG:=CONFIG_USB_SERIAL_ARK3116
  567. FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.ko
  568. AUTOLOAD:=$(call AutoProbe,ark3116)
  569. $(call AddDepends/usb-serial)
  570. endef
  571. define KernelPackage/usb-serial-ark3116/description
  572. Kernel support for ArkMicroChips ARK3116 USB-to-Serial converters
  573. endef
  574. $(eval $(call KernelPackage,usb-serial-ark3116))
  575. define KernelPackage/usb-serial-oti6858
  576. TITLE:=Support for Ours Technology OTI6858 devices
  577. KCONFIG:=CONFIG_USB_SERIAL_OTI6858
  578. FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.ko
  579. AUTOLOAD:=$(call AutoProbe,oti6858)
  580. $(call AddDepends/usb-serial)
  581. endef
  582. define KernelPackage/usb-serial-oti6858/description
  583. Kernel support for Ours Technology OTI6858 USB-to-Serial converters
  584. endef
  585. $(eval $(call KernelPackage,usb-serial-oti6858))
  586. define KernelPackage/usb-serial-sierrawireless
  587. TITLE:=Support for Sierra Wireless devices
  588. KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
  589. FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.ko
  590. AUTOLOAD:=$(call AutoProbe,sierra)
  591. $(call AddDepends/usb-serial)
  592. endef
  593. define KernelPackage/usb-serial-sierrawireless/description
  594. Kernel support for Sierra Wireless devices
  595. endef
  596. $(eval $(call KernelPackage,usb-serial-sierrawireless))
  597. define KernelPackage/usb-serial-motorola-phone
  598. TITLE:=Support for Motorola usb phone
  599. KCONFIG:=CONFIG_USB_SERIAL_MOTOROLA
  600. FILES:=$(LINUX_DIR)/drivers/usb/serial/moto_modem.ko
  601. AUTOLOAD:=$(call AutoProbe,moto_modem)
  602. $(call AddDepends/usb-serial)
  603. endef
  604. define KernelPackage/usb-serial-motorola-phone/description
  605. Kernel support for Motorola usb phone
  606. endef
  607. $(eval $(call KernelPackage,usb-serial-motorola-phone))
  608. define KernelPackage/usb-serial-visor
  609. TITLE:=Support for Handspring Visor devices
  610. KCONFIG:=CONFIG_USB_SERIAL_VISOR
  611. FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.ko
  612. AUTOLOAD:=$(call AutoProbe,visor)
  613. $(call AddDepends/usb-serial)
  614. endef
  615. define KernelPackage/usb-serial-visor/description
  616. Kernel support for Handspring Visor PDAs
  617. endef
  618. $(eval $(call KernelPackage,usb-serial-visor))
  619. define KernelPackage/usb-serial-cypress-m8
  620. TITLE:=Support for CypressM8 USB-Serial
  621. KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
  622. FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.ko
  623. AUTOLOAD:=$(call AutoProbe,cypress_m8)
  624. $(call AddDepends/usb-serial)
  625. endef
  626. define KernelPackage/usb-serial-cypress-m8/description
  627. Kernel support for devices with Cypress M8 USB to Serial chip
  628. (for example, the Delorme Earthmate LT-20 GPS)
  629. Supported microcontrollers in the CY4601 family are:
  630. CY7C63741 CY7C63742 CY7C63743 CY7C64013
  631. endef
  632. $(eval $(call KernelPackage,usb-serial-cypress-m8))
  633. define KernelPackage/usb-serial-keyspan
  634. TITLE:=Support for Keyspan USB-to-Serial devices
  635. KCONFIG:= \
  636. CONFIG_USB_SERIAL_KEYSPAN \
  637. CONFIG_USB_SERIAL_KEYSPAN_USA28 \
  638. CONFIG_USB_SERIAL_KEYSPAN_USA28X \
  639. CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
  640. CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
  641. CONFIG_USB_SERIAL_KEYSPAN_USA19 \
  642. CONFIG_USB_SERIAL_KEYSPAN_USA18X \
  643. CONFIG_USB_SERIAL_KEYSPAN_USA19W \
  644. CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
  645. CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
  646. CONFIG_USB_SERIAL_KEYSPAN_MPR \
  647. CONFIG_USB_SERIAL_KEYSPAN_USA49W \
  648. CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
  649. FILES:= \
  650. $(LINUX_DIR)/drivers/usb/serial/keyspan.ko \
  651. $(wildcard $(LINUX_DIR)/drivers/usb/misc/ezusb.ko)
  652. AUTOLOAD:=$(call AutoProbe,ezusb keyspan)
  653. $(call AddDepends/usb-serial)
  654. endef
  655. define KernelPackage/usb-serial-keyspan/description
  656. Kernel support for Keyspan USB-to-Serial devices
  657. endef
  658. $(eval $(call KernelPackage,usb-serial-keyspan))
  659. define KernelPackage/usb-serial-wwan
  660. TITLE:=Support for GSM and CDMA modems
  661. KCONFIG:=CONFIG_USB_SERIAL_WWAN
  662. FILES:=$(LINUX_DIR)/drivers/usb/serial/usb_wwan.ko
  663. AUTOLOAD:=$(call AutoProbe,usb_wwan)
  664. $(call AddDepends/usb-serial)
  665. endef
  666. define KernelPackage/usb-serial-wwan/description
  667. Kernel support for USB GSM and CDMA modems
  668. endef
  669. $(eval $(call KernelPackage,usb-serial-wwan))
  670. define KernelPackage/usb-serial-option
  671. TITLE:=Support for Option HSDPA modems
  672. DEPENDS:=+kmod-usb-serial-wwan
  673. KCONFIG:=CONFIG_USB_SERIAL_OPTION
  674. FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
  675. AUTOLOAD:=$(call AutoProbe,option)
  676. $(call AddDepends/usb-serial)
  677. endef
  678. define KernelPackage/usb-serial-option/description
  679. Kernel support for Option HSDPA modems
  680. endef
  681. $(eval $(call KernelPackage,usb-serial-option))
  682. define KernelPackage/usb-serial-qualcomm
  683. TITLE:=Support for Qualcomm USB serial
  684. KCONFIG:=CONFIG_USB_SERIAL_QUALCOMM
  685. FILES:=$(LINUX_DIR)/drivers/usb/serial/qcserial.ko
  686. AUTOLOAD:=$(call AutoProbe,qcserial)
  687. $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
  688. endef
  689. define KernelPackage/usb-serial-qualcomm/description
  690. Kernel support for Qualcomm USB Serial devices (Gobi)
  691. endef
  692. $(eval $(call KernelPackage,usb-serial-qualcomm))
  693. define KernelPackage/usb-storage
  694. TITLE:=USB Storage support
  695. DEPENDS:= +kmod-scsi-core
  696. KCONFIG:=CONFIG_USB_STORAGE
  697. FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.ko
  698. AUTOLOAD:=$(call AutoProbe,usb-storage,1)
  699. $(call AddDepends/usb)
  700. endef
  701. define KernelPackage/usb-storage/description
  702. Kernel support for USB Mass Storage devices
  703. endef
  704. $(eval $(call KernelPackage,usb-storage))
  705. define KernelPackage/usb-storage-extras
  706. SUBMENU:=$(USB_MENU)
  707. TITLE:=Extra drivers for usb-storage
  708. DEPENDS:=+kmod-usb-storage
  709. KCONFIG:= \
  710. CONFIG_USB_STORAGE_ALAUDA \
  711. CONFIG_USB_STORAGE_CYPRESS_ATACB \
  712. CONFIG_USB_STORAGE_DATAFAB \
  713. CONFIG_USB_STORAGE_FREECOM \
  714. CONFIG_USB_STORAGE_ISD200 \
  715. CONFIG_USB_STORAGE_JUMPSHOT \
  716. CONFIG_USB_STORAGE_KARMA \
  717. CONFIG_USB_STORAGE_SDDR09 \
  718. CONFIG_USB_STORAGE_SDDR55 \
  719. CONFIG_USB_STORAGE_USBAT
  720. FILES:= \
  721. $(LINUX_DIR)/drivers/usb/storage/ums-alauda.ko \
  722. $(LINUX_DIR)/drivers/usb/storage/ums-cypress.ko \
  723. $(LINUX_DIR)/drivers/usb/storage/ums-datafab.ko \
  724. $(LINUX_DIR)/drivers/usb/storage/ums-freecom.ko \
  725. $(LINUX_DIR)/drivers/usb/storage/ums-isd200.ko \
  726. $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.ko \
  727. $(LINUX_DIR)/drivers/usb/storage/ums-karma.ko \
  728. $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.ko \
  729. $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.ko \
  730. $(LINUX_DIR)/drivers/usb/storage/ums-usbat.ko
  731. AUTOLOAD:=$(call AutoProbe,ums-alauda ums-cypress ums-datafab \
  732. ums-freecom ums-isd200 ums-jumpshot \
  733. ums-karma ums-sddr09 ums-sddr55 ums-usbat)
  734. endef
  735. define KernelPackage/usb-storage-extras/description
  736. Say Y here if you want to have some more drivers,
  737. such as for SmartMedia card readers
  738. endef
  739. $(eval $(call KernelPackage,usb-storage-extras))
  740. define KernelPackage/usb-atm
  741. TITLE:=Support for ATM on USB bus
  742. DEPENDS:=+kmod-atm
  743. KCONFIG:=CONFIG_USB_ATM
  744. FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.ko
  745. AUTOLOAD:=$(call AutoProbe,usbatm)
  746. $(call AddDepends/usb)
  747. endef
  748. define KernelPackage/usb-atm/description
  749. Kernel support for USB DSL modems
  750. endef
  751. $(eval $(call KernelPackage,usb-atm))
  752. define AddDepends/usb-atm
  753. SUBMENU:=$(USB_MENU)
  754. DEPENDS+=kmod-usb-atm $(1)
  755. endef
  756. define KernelPackage/usb-atm-speedtouch
  757. TITLE:=SpeedTouch USB ADSL modems support
  758. KCONFIG:=CONFIG_USB_SPEEDTOUCH
  759. FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.ko
  760. AUTOLOAD:=$(call AutoProbe,speedtch)
  761. $(call AddDepends/usb-atm)
  762. endef
  763. define KernelPackage/usb-atm-speedtouch/description
  764. Kernel support for SpeedTouch USB ADSL modems
  765. endef
  766. $(eval $(call KernelPackage,usb-atm-speedtouch))
  767. define KernelPackage/usb-atm-ueagle
  768. TITLE:=Eagle 8051 based USB ADSL modems support
  769. FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.ko
  770. KCONFIG:=CONFIG_USB_UEAGLEATM
  771. AUTOLOAD:=$(call AutoProbe,ueagle-atm)
  772. $(call AddDepends/usb-atm)
  773. endef
  774. define KernelPackage/usb-atm-ueagle/description
  775. Kernel support for Eagle 8051 based USB ADSL modems
  776. endef
  777. $(eval $(call KernelPackage,usb-atm-ueagle))
  778. define KernelPackage/usb-atm-cxacru
  779. TITLE:=cxacru
  780. FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.ko
  781. KCONFIG:=CONFIG_USB_CXACRU
  782. AUTOLOAD:=$(call AutoProbe,cxacru)
  783. $(call AddDepends/usb-atm)
  784. endef
  785. define KernelPackage/usb-atm-cxacru/description
  786. Kernel support for cxacru based USB ADSL modems
  787. endef
  788. $(eval $(call KernelPackage,usb-atm-cxacru))
  789. define KernelPackage/usb-net
  790. TITLE:=Kernel modules for USB-to-Ethernet convertors
  791. DEPENDS:=+kmod-mii
  792. KCONFIG:=CONFIG_USB_USBNET
  793. AUTOLOAD:=$(call AutoProbe,usbnet)
  794. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
  795. $(call AddDepends/usb)
  796. endef
  797. define KernelPackage/usb-net/description
  798. Kernel modules for USB-to-Ethernet convertors
  799. endef
  800. $(eval $(call KernelPackage,usb-net))
  801. define AddDepends/usb-net
  802. SUBMENU:=$(USB_MENU)
  803. DEPENDS+=kmod-usb-net $(1)
  804. endef
  805. define KernelPackage/usb-net-asix
  806. TITLE:=Kernel module for USB-to-Ethernet Asix convertors
  807. DEPENDS:=+!LINUX_3_3:kmod-libphy
  808. KCONFIG:=CONFIG_USB_NET_AX8817X
  809. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
  810. AUTOLOAD:=$(call AutoProbe,asix)
  811. $(call AddDepends/usb-net)
  812. endef
  813. define KernelPackage/usb-net-asix/description
  814. Kernel module for USB-to-Ethernet Asix convertors
  815. endef
  816. $(eval $(call KernelPackage,usb-net-asix))
  817. define KernelPackage/usb-net-hso
  818. TITLE:=Kernel module for Option USB High Speed Mobile Devices
  819. KCONFIG:=CONFIG_USB_HSO
  820. FILES:= \
  821. $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.ko
  822. AUTOLOAD:=$(call AutoProbe,hso)
  823. $(call AddDepends/usb-net)
  824. $(call AddDepends/rfkill)
  825. endef
  826. define KernelPackage/usb-net-hso/description
  827. Kernel module for Option USB High Speed Mobile Devices
  828. endef
  829. $(eval $(call KernelPackage,usb-net-hso))
  830. define KernelPackage/usb-net-kaweth
  831. TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
  832. KCONFIG:=CONFIG_USB_KAWETH
  833. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.ko
  834. AUTOLOAD:=$(call AutoProbe,kaweth)
  835. $(call AddDepends/usb-net)
  836. endef
  837. define KernelPackage/usb-net-kaweth/description
  838. Kernel module for USB-to-Ethernet Kaweth convertors
  839. endef
  840. $(eval $(call KernelPackage,usb-net-kaweth))
  841. define KernelPackage/usb-net-pegasus
  842. TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
  843. KCONFIG:=CONFIG_USB_PEGASUS
  844. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.ko
  845. AUTOLOAD:=$(call AutoProbe,pegasus)
  846. $(call AddDepends/usb-net)
  847. endef
  848. define KernelPackage/usb-net-pegasus/description
  849. Kernel module for USB-to-Ethernet Pegasus convertors
  850. endef
  851. $(eval $(call KernelPackage,usb-net-pegasus))
  852. define KernelPackage/usb-net-mcs7830
  853. TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
  854. KCONFIG:=CONFIG_USB_NET_MCS7830
  855. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.ko
  856. AUTOLOAD:=$(call AutoProbe,mcs7830)
  857. $(call AddDepends/usb-net)
  858. endef
  859. define KernelPackage/usb-net-mcs7830/description
  860. Kernel module for USB-to-Ethernet MCS7830 convertors
  861. endef
  862. $(eval $(call KernelPackage,usb-net-mcs7830))
  863. define KernelPackage/usb-net-smsc95xx
  864. TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices
  865. KCONFIG:=CONFIG_USB_NET_SMSC95XX
  866. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
  867. AUTOLOAD:=$(call AutoProbe,smsc95xx)
  868. $(call AddDepends/usb-net, +(!LINUX_3_3&&!LINUX_3_6):kmod-lib-crc16)
  869. endef
  870. define KernelPackage/usb-net-smsc95xx/description
  871. Kernel module for SMSC LAN95XX based devices
  872. endef
  873. $(eval $(call KernelPackage,usb-net-smsc95xx))
  874. define KernelPackage/usb-net-dm9601-ether
  875. TITLE:=Support for DM9601 ethernet connections
  876. KCONFIG:=CONFIG_USB_NET_DM9601
  877. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.ko
  878. AUTOLOAD:=$(call AutoProbe,dm9601)
  879. $(call AddDepends/usb-net)
  880. endef
  881. define KernelPackage/usb-net-dm9601-ether/description
  882. Kernel support for USB DM9601 devices
  883. endef
  884. $(eval $(call KernelPackage,usb-net-dm9601-ether))
  885. define KernelPackage/usb-net-cdc-ether
  886. TITLE:=Support for cdc ethernet connections
  887. KCONFIG:=CONFIG_USB_NET_CDCETHER
  888. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ether.ko
  889. AUTOLOAD:=$(call AutoProbe,cdc_ether)
  890. $(call AddDepends/usb-net)
  891. endef
  892. define KernelPackage/usb-net-cdc-ether/description
  893. Kernel support for USB CDC Ethernet devices
  894. endef
  895. $(eval $(call KernelPackage,usb-net-cdc-ether))
  896. define KernelPackage/usb-net-cdc-eem
  897. TITLE:=Support for CDC EEM connections
  898. KCONFIG:=CONFIG_USB_NET_CDC_EEM
  899. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_eem.ko
  900. AUTOLOAD:=$(call AutoProbe,cdc_eem)
  901. $(call AddDepends/usb-net)
  902. endef
  903. define KernelPackage/usb-net-cdc-eem/description
  904. Kernel support for USB CDC EEM
  905. endef
  906. $(eval $(call KernelPackage,usb-net-cdc-eem))
  907. define KernelPackage/usb-net-cdc-subset
  908. TITLE:=Support for CDC Ethernet subset connections
  909. KCONFIG:= \
  910. CONFIG_USB_NET_CDC_SUBSET \
  911. CONFIG_USB_ARMLINUX
  912. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_subset.ko
  913. AUTOLOAD:=$(call AutoProbe,cdc_subset)
  914. $(call AddDepends/usb-net)
  915. endef
  916. define KernelPackage/usb-net-cdc-subset/description
  917. Kernel support for Simple USB Network Links (CDC Ethernet subset)
  918. endef
  919. $(eval $(call KernelPackage,usb-net-cdc-subset))
  920. define KernelPackage/usb-net-qmi-wwan
  921. TITLE:=QMI WWAN driver
  922. KCONFIG:=CONFIG_USB_NET_QMI_WWAN
  923. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/qmi_wwan.ko
  924. AUTOLOAD:=$(call AutoProbe,qmi_wwan)
  925. $(call AddDepends/usb-net,+kmod-usb-wdm)
  926. endef
  927. define KernelPackage/usb-net-qmi-wwan/description
  928. QMI WWAN driver for Qualcomm MSM based 3G and LTE modems
  929. endef
  930. $(eval $(call KernelPackage,usb-net-qmi-wwan))
  931. define KernelPackage/usb-net-rndis
  932. TITLE:=Support for RNDIS connections
  933. KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
  934. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.ko
  935. AUTOLOAD:=$(call AutoProbe,rndis_host)
  936. $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
  937. endef
  938. define KernelPackage/usb-net-rndis/description
  939. Kernel support for RNDIS connections
  940. endef
  941. $(eval $(call KernelPackage,usb-net-rndis))
  942. define KernelPackage/usb-net-cdc-mbim
  943. SUBMENU:=$(USB_MENU)
  944. TITLE:=Kernel module for MBIM Devices
  945. KCONFIG:=CONFIG_USB_NET_CDC_MBIM
  946. FILES:= \
  947. $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_mbim.ko
  948. AUTOLOAD:=$(call AutoProbe,cdc_mbim)
  949. $(call AddDepends/usb-net,+kmod-usb-wdm +kmod-usb-net-cdc-ncm)
  950. endef
  951. define KernelPackage/usb-net-cdc-mbim/description
  952. Kernel module for Option USB High Speed Mobile Devices
  953. endef
  954. $(eval $(call KernelPackage,usb-net-cdc-mbim))
  955. define KernelPackage/usb-net-cdc-ncm
  956. TITLE:=Support for CDC NCM connections
  957. KCONFIG:=CONFIG_USB_NET_CDC_NCM
  958. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
  959. AUTOLOAD:=$(call AutoProbe,cdc_ncm)
  960. $(call AddDepends/usb-net)
  961. endef
  962. define KernelPackage/usb-net-cdc-ncm/description
  963. Kernel support for CDC NCM connections
  964. endef
  965. $(eval $(call KernelPackage,usb-net-cdc-ncm))
  966. define KernelPackage/usb-net-huawei-cdc-ncm
  967. TITLE:=Support for Huawei CDC NCM connections
  968. KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM
  969. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko
  970. AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm)
  971. $(call AddDepends/usb-net,+kmod-usb-wdm @!LINUX_3_3 @!LINUX_3_8 @!LINUX_3_10)
  972. endef
  973. define KernelPackage/usb-net-huawei-cdc-ncm/description
  974. Kernel support for Huawei CDC NCM connections
  975. endef
  976. $(eval $(call KernelPackage,usb-net-huawei-cdc-ncm))
  977. define KernelPackage/usb-net-sierrawireless
  978. TITLE:=Support for Sierra Wireless devices
  979. KCONFIG:=CONFIG_USB_SIERRA_NET
  980. FILES:=$(LINUX_DIR)/drivers/net/usb/sierra_net.ko
  981. AUTOLOAD:=$(call AutoProbe,sierra_net)
  982. $(call AddDepends/usb-net)
  983. endef
  984. define KernelPackage/usb-net-sierrawireless/description
  985. Kernel support for Sierra Wireless devices
  986. endef
  987. $(eval $(call KernelPackage,usb-net-sierrawireless))
  988. define KernelPackage/usb-net-ipheth
  989. TITLE:=Apple iPhone USB Ethernet driver
  990. KCONFIG:=CONFIG_USB_IPHETH
  991. FILES:=$(LINUX_DIR)/drivers/net/usb/ipheth.ko
  992. AUTOLOAD:=$(call AutoProbe,ipheth)
  993. $(call AddDepends/usb-net)
  994. endef
  995. define KernelPackage/usb-net-ipheth/description
  996. Kernel support for Apple iPhone USB Ethernet driver
  997. endef
  998. $(eval $(call KernelPackage,usb-net-ipheth))
  999. define KernelPackage/usb-net-kalmia
  1000. TITLE:=Samsung Kalmia based LTE USB modem
  1001. KCONFIG:=CONFIG_USB_NET_KALMIA
  1002. FILES:=$(LINUX_DIR)/drivers/net/usb/kalmia.ko
  1003. AUTOLOAD:=$(call AutoProbe,kalmia)
  1004. $(call AddDepends/usb-net)
  1005. endef
  1006. define KernelPackage/usb-net-kalmia/description
  1007. Kernel support for Samsung Kalmia based LTE USB modem
  1008. endef
  1009. $(eval $(call KernelPackage,usb-net-kalmia))
  1010. define KernelPackage/usb-hid
  1011. TITLE:=Support for USB Human Input Devices
  1012. KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
  1013. FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
  1014. AUTOLOAD:=$(call AutoProbe,usbhid)
  1015. $(call AddDepends/usb)
  1016. $(call AddDepends/hid,+kmod-hid-generic)
  1017. $(call AddDepends/input,+kmod-input-evdev)
  1018. endef
  1019. define KernelPackage/usb-hid/description
  1020. Kernel support for USB HID devices such as keyboards and mice
  1021. endef
  1022. $(eval $(call KernelPackage,usb-hid))
  1023. define KernelPackage/usb-yealink
  1024. TITLE:=USB Yealink VOIP phone
  1025. KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
  1026. FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
  1027. AUTOLOAD:=$(call AutoProbe,yealink)
  1028. $(call AddDepends/usb)
  1029. $(call AddDepends/input,+kmod-input-evdev)
  1030. endef
  1031. define KernelPackage/usb-yealink/description
  1032. Kernel support for Yealink VOIP phone
  1033. endef
  1034. $(eval $(call KernelPackage,usb-yealink))
  1035. define KernelPackage/usb-cm109
  1036. TITLE:=Support for CM109 device
  1037. KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
  1038. FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
  1039. AUTOLOAD:=$(call AutoProbe,cm109)
  1040. $(call AddDepends/usb)
  1041. $(call AddDepends/input,+kmod-input-evdev)
  1042. endef
  1043. define KernelPackage/usb-cm109/description
  1044. Kernel support for CM109 VOIP phone
  1045. endef
  1046. $(eval $(call KernelPackage,usb-cm109))
  1047. define KernelPackage/usb-test
  1048. TITLE:=USB Testing Driver
  1049. DEPENDS:=@DEVEL
  1050. KCONFIG:=CONFIG_USB_TEST
  1051. FILES:=$(LINUX_DIR)/drivers/usb/misc/usbtest.ko
  1052. $(call AddDepends/usb)
  1053. endef
  1054. define KernelPackage/usb-test/description
  1055. Kernel support for testing USB Host Controller software
  1056. endef
  1057. $(eval $(call KernelPackage,usb-test))
  1058. define KernelPackage/usbip
  1059. TITLE := USB-over-IP kernel support
  1060. KCONFIG:= \
  1061. CONFIG_USBIP_CORE \
  1062. CONFIG_USBIP_DEBUG=n
  1063. FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip-core.ko
  1064. AUTOLOAD:=$(call AutoProbe,usbip-core)
  1065. $(call AddDepends/usb)
  1066. endef
  1067. $(eval $(call KernelPackage,usbip))
  1068. define KernelPackage/usbip-client
  1069. TITLE := USB-over-IP client driver
  1070. DEPENDS := +kmod-usbip
  1071. KCONFIG := CONFIG_USBIP_VHCI_HCD
  1072. FILES := $(LINUX_DIR)/drivers/staging/usbip/vhci-hcd.$(LINUX_KMOD_SUFFIX)
  1073. AUTOLOAD := $(call AutoProbe,vhci-hcd)
  1074. $(call AddDepends/usb)
  1075. endef
  1076. $(eval $(call KernelPackage,usbip-client))
  1077. define KernelPackage/usbip-server
  1078. $(call KernelPackage/usbip/Default)
  1079. TITLE := USB-over-IP host driver
  1080. DEPENDS := +kmod-usbip
  1081. KCONFIG := CONFIG_USBIP_HOST
  1082. FILES := $(LINUX_DIR)/drivers/staging/usbip/usbip-host.ko
  1083. AUTOLOAD := $(call AutoProbe,usbip-host)
  1084. $(call AddDepends/usb)
  1085. endef
  1086. $(eval $(call KernelPackage,usbip-server))
  1087. define KernelPackage/usb-chipidea-imx
  1088. TITLE:=Support for ChipIdea controllers
  1089. DEPENDS:=@TARGET_imx6||TARGET_mxs +kmod-usb2 +USB_GADGET_SUPPORT:kmod-usb-gadget
  1090. KCONFIG:=\
  1091. CONFIG_USB_CHIPIDEA \
  1092. CONFIG_USB_CHIPIDEA_HOST=y \
  1093. CONFIG_USB_CHIPIDEA_UDC=y \
  1094. CONFIG_USB_CHIPIDEA_DEBUG=y
  1095. ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.11.0)),1)
  1096. FILES:=\
  1097. $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
  1098. $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/ci13xxx_imx.ko) \
  1099. $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q).ko)
  1100. AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF_DEVICE),ci13xxx_imx usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q)),1)
  1101. else
  1102. FILES:=\
  1103. $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
  1104. $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc_imx.ko) \
  1105. $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx.ko)
  1106. AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF),ci_hdrc_imx usbmisc_imx),1)
  1107. endif
  1108. $(call AddDepends/usb)
  1109. endef
  1110. define KernelPackage/usb-chipidea-imx/description
  1111. Kernel support for USB ChipIdea controllers
  1112. endef
  1113. $(eval $(call KernelPackage,usb-chipidea-imx,1))
  1114. define KernelPackage/usb-mxs-phy
  1115. TITLE:=Support for Freescale MXS USB PHY
  1116. DEPENDS:=@TARGET_imx6||TARGET_mxs +TARGET_mxs:kmod-usb-chipidea-imx
  1117. KCONFIG:=CONFIG_USB_MXS_PHY
  1118. FILES:=\
  1119. $(LINUX_DIR)/drivers/usb/phy/phy-mxs-usb.ko
  1120. AUTOLOAD:=$(call AutoLoad,52,phy-mxs-usb,1)
  1121. $(call AddDepends/usb)
  1122. endef
  1123. define KernelPackage/usb-mxs-phy/description
  1124. Kernel support for Freescale MXS USB PHY
  1125. endef
  1126. $(eval $(call KernelPackage,usb-mxs-phy,1))
  1127. define KernelPackage/usbmon
  1128. TITLE:=USB traffic monitor
  1129. KCONFIG:=CONFIG_USB_MON
  1130. $(call AddDepends/usb)
  1131. FILES:=$(LINUX_DIR)/drivers/usb/mon/usbmon.ko
  1132. AUTOLOAD:=$(call AutoProbe,usbmon)
  1133. endef
  1134. define KernelPackage/usbmon/description
  1135. Kernel support for USB traffic monitoring
  1136. endef
  1137. $(eval $(call KernelPackage,usbmon))
  1138. XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,xhci-hcd xhci-pci xhci-plat))
  1139. XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES))
  1140. define KernelPackage/usb3
  1141. TITLE:=Support for USB3 controllers
  1142. DEPENDS:=+TARGET_omap:kmod-usb-phy-omap-usb3
  1143. KCONFIG:= \
  1144. CONFIG_USB_XHCI_HCD \
  1145. CONFIG_USB_XHCI_PCI \
  1146. CONFIG_USB_XHCI_PLATFORM \
  1147. CONFIG_USB_XHCI_HCD_DEBUGGING=n
  1148. FILES:= \
  1149. $(XHCI_FILES)
  1150. AUTOLOAD:=$(call AutoLoad,54,$(XHCI_AUTOLOAD),1)
  1151. $(call AddDepends/usb)
  1152. endef
  1153. define KernelPackage/usb3/description
  1154. Kernel support for USB3 (XHCI) controllers
  1155. endef
  1156. $(eval $(call KernelPackage,usb3))