usb.mk 41 KB

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