usb.mk 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704
  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/common/usb-common.ko
  19. AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1)
  20. $(call AddDepends/nls)
  21. endef
  22. define KernelPackage/usb-core/description
  23. Kernel support for USB
  24. endef
  25. $(eval $(call KernelPackage,usb-core))
  26. define AddDepends/usb
  27. SUBMENU:=$(USB_MENU)
  28. DEPENDS+=+kmod-usb-core $(1)
  29. endef
  30. define KernelPackage/usb-ledtrig-usbport
  31. TITLE:=LED trigger for USB ports
  32. KCONFIG:=CONFIG_USB_LEDS_TRIGGER_USBPORT
  33. DEPENDS:=@!LINUX_3_18
  34. FILES:=$(LINUX_DIR)/drivers/usb/core/ledtrig-usbport.ko
  35. AUTOLOAD:=$(call AutoLoad,50,ledtrig-usbport)
  36. $(call AddDepends/usb)
  37. endef
  38. define KernelPackage/usb-ledtrig-usbport/description
  39. This driver allows LEDs to be controlled by USB events. Enabling this
  40. trigger allows specifying list of USB ports that should turn on LED
  41. when some USB device gets connected.
  42. If possible it should be prefered over similar ledtrig-usbdev.
  43. endef
  44. $(eval $(call KernelPackage,usb-ledtrig-usbport))
  45. define KernelPackage/usb-phy-nop
  46. TITLE:=Support for USB NOP transceiver
  47. KCONFIG:=CONFIG_NOP_USB_XCEIV
  48. HIDDEN:=1
  49. FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-generic.ko
  50. AUTOLOAD:=$(call AutoLoad,21,phy-generic,1)
  51. $(call AddDepends/usb)
  52. endef
  53. define KernelPackage/usb-phy-nop/description
  54. Support for USB NOP transceiver
  55. endef
  56. $(eval $(call KernelPackage,usb-phy-nop))
  57. define KernelPackage/usb-phy-qcom-dwc3
  58. TITLE:=DWC3 USB QCOM PHY driver
  59. DEPENDS:=@TARGET_ipq40xx||@TARGET_ipq806x +kmod-usb-dwc3-of-simple
  60. KCONFIG:= CONFIG_PHY_QCOM_DWC3
  61. FILES:= \
  62. $(LINUX_DIR)/drivers/phy/[email protected] \
  63. $(LINUX_DIR)/drivers/phy/qualcomm/[email protected]
  64. AUTOLOAD:=$(call AutoLoad,45,phy-qcom-dwc3,1)
  65. $(call AddDepends/usb)
  66. endef
  67. define KernelPackage/usb-phy-qcom-dwc3/description
  68. This driver provides support for the integrated DesignWare
  69. USB3 IP Core within the QCOM SoCs.
  70. endef
  71. $(eval $(call KernelPackage,usb-phy-qcom-dwc3))
  72. define KernelPackage/phy-ath79-usb
  73. TITLE:=Support for ATH79 USB PHY
  74. KCONFIG:=CONFIG_PHY_AR7100_USB \
  75. CONFIG_PHY_AR7200_USB
  76. DEPENDS:=@TARGET_ath79
  77. HIDDEN:=1
  78. FILES:=$(LINUX_DIR)/drivers/phy/phy-ar7100-usb.ko \
  79. $(LINUX_DIR)/drivers/phy/phy-ar7200-usb.ko
  80. AUTOLOAD:=$(call AutoLoad,21,phy-ar7100-usb phy-ar7200-usb,1)
  81. $(call AddDepends/usb)
  82. endef
  83. define KernelPackage/phy-ath79-usb/description
  84. Support for ATH79 USB transceiver
  85. endef
  86. $(eval $(call KernelPackage,phy-ath79-usb))
  87. define KernelPackage/usb-gadget
  88. TITLE:=USB Gadget support
  89. KCONFIG:=CONFIG_USB_GADGET
  90. HIDDEN:=1
  91. FILES:=\
  92. $(LINUX_DIR)/drivers/usb/gadget/udc/udc-core.ko
  93. AUTOLOAD:=$(call AutoLoad,21,udc-core,1)
  94. DEPENDS:=@USB_GADGET_SUPPORT
  95. $(call AddDepends/usb)
  96. endef
  97. define KernelPackage/usb-gadget/description
  98. Kernel support for USB Gadget mode
  99. endef
  100. $(eval $(call KernelPackage,usb-gadget))
  101. define KernelPackage/usb-lib-composite
  102. TITLE:=USB lib composite
  103. KCONFIG:=CONFIG_USB_LIBCOMPOSITE
  104. DEPENDS:=+kmod-usb-gadget +kmod-fs-configfs
  105. HIDDEN:=1
  106. FILES:=$(LINUX_DIR)/drivers/usb/gadget/libcomposite.ko
  107. AUTOLOAD:=$(call AutoLoad,50,libcomposite)
  108. $(call AddDepends/usb)
  109. endef
  110. define KernelPackage/usb-lib-composite/description
  111. Lib Composite
  112. endef
  113. $(eval $(call KernelPackage,usb-lib-composite))
  114. define KernelPackage/usb-gadget-hid
  115. TITLE:=USB HID Gadget Support
  116. KCONFIG:=CONFIG_USB_G_HID
  117. DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
  118. FILES:= \
  119. $(LINUX_DIR)/drivers/usb/gadget/legacy/g_hid.ko \
  120. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_hid.ko
  121. AUTOLOAD:=$(call AutoLoad,52,usb_f_hid)
  122. $(call AddDepends/usb)
  123. endef
  124. define KernelPackage/usb-gadget-hid/description
  125. Kernel support for USB HID Gadget.
  126. endef
  127. $(eval $(call KernelPackage,usb-gadget-hid))
  128. define KernelPackage/usb-gadget-ehci-debug
  129. TITLE:=USB EHCI debug port Gadget support
  130. KCONFIG:=\
  131. CONFIG_USB_G_DBGP \
  132. CONFIG_USB_G_DBGP_SERIAL=y \
  133. CONFIG_USB_G_DBGP_PRINTK=n
  134. DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite +kmod-usb-gadget-serial
  135. FILES:=$(LINUX_DIR)/drivers/usb/gadget/legacy/g_dbgp.ko
  136. $(call AddDepends/usb)
  137. endef
  138. define KernelPackage/usb-gadget-ehci-debug/description
  139. Kernel support for USB EHCI debug port Gadget.
  140. endef
  141. $(eval $(call KernelPackage,usb-gadget-ehci-debug))
  142. define KernelPackage/usb-gadget-eth
  143. TITLE:=USB Ethernet Gadget support
  144. KCONFIG:= \
  145. CONFIG_USB_ETH \
  146. CONFIG_USB_ETH_RNDIS=y \
  147. CONFIG_USB_ETH_EEM=n
  148. DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
  149. FILES:= \
  150. $(LINUX_DIR)/drivers/usb/gadget/function/u_ether.ko \
  151. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm.ko \
  152. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm_subset.ko \
  153. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_rndis.ko \
  154. $(LINUX_DIR)/drivers/usb/gadget/legacy/g_ether.ko
  155. AUTOLOAD:=$(call AutoLoad,52,usb_f_ecm)
  156. $(call AddDepends/usb)
  157. endef
  158. define KernelPackage/usb-gadget-eth/description
  159. Kernel support for USB Ethernet Gadget
  160. endef
  161. $(eval $(call KernelPackage,usb-gadget-eth))
  162. define KernelPackage/usb-gadget-serial
  163. TITLE:=USB Serial Gadget support
  164. KCONFIG:=CONFIG_USB_G_SERIAL
  165. DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
  166. FILES:= \
  167. $(LINUX_DIR)/drivers/usb/gadget/function/u_serial.ko \
  168. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_acm.ko \
  169. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_obex.ko \
  170. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_serial.ko \
  171. $(LINUX_DIR)/drivers/usb/gadget/legacy/g_serial.ko
  172. AUTOLOAD:=$(call AutoLoad,52,usb_f_acm)
  173. $(call AddDepends/usb)
  174. endef
  175. define KernelPackage/usb-gadget-serial/description
  176. Kernel support for USB Serial Gadget.
  177. endef
  178. $(eval $(call KernelPackage,usb-gadget-serial))
  179. define KernelPackage/usb-gadget-mass-storage
  180. TITLE:=USB Mass Storage support
  181. KCONFIG:=CONFIG_USB_MASS_STORAGE
  182. DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
  183. FILES:= \
  184. $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_mass_storage.ko \
  185. $(LINUX_DIR)/drivers/usb/gadget/legacy/g_mass_storage.ko
  186. AUTOLOAD:=$(call AutoLoad,52,usb_f_mass_storage)
  187. $(call AddDepends/usb)
  188. endef
  189. define KernelPackage/usb-gadget-mass-storage/description
  190. Kernel support for USB Gadget Mass Storage
  191. endef
  192. $(eval $(call KernelPackage,usb-gadget-mass-storage))
  193. define KernelPackage/usb-uhci
  194. TITLE:=Support for UHCI controllers
  195. KCONFIG:= \
  196. CONFIG_USB_PCI=y \
  197. CONFIG_USB_UHCI_ALT \
  198. CONFIG_USB_UHCI_HCD
  199. FILES:=$(LINUX_DIR)/drivers/usb/host/uhci-hcd.ko
  200. AUTOLOAD:=$(call AutoLoad,50,uhci-hcd,1)
  201. $(call AddDepends/usb)
  202. endef
  203. define KernelPackage/usb-uhci/description
  204. Kernel support for USB UHCI controllers
  205. endef
  206. $(eval $(call KernelPackage,usb-uhci,1))
  207. define KernelPackage/usb-ohci
  208. TITLE:=Support for OHCI controllers
  209. DEPENDS:= \
  210. +TARGET_bcm53xx:kmod-usb-bcma \
  211. +TARGET_brcm47xx:kmod-usb-bcma \
  212. +TARGET_brcm47xx:kmod-usb-ssb
  213. KCONFIG:= \
  214. CONFIG_USB_OHCI \
  215. CONFIG_USB_OHCI_HCD \
  216. CONFIG_USB_OHCI_ATH79=y \
  217. CONFIG_USB_OHCI_HCD_AT91=y \
  218. CONFIG_USB_OHCI_BCM63XX=y \
  219. CONFIG_USB_OCTEON_OHCI=y \
  220. CONFIG_USB_OHCI_HCD_OMAP3=y \
  221. CONFIG_USB_OHCI_HCD_PLATFORM=y
  222. FILES:= \
  223. $(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko \
  224. $(LINUX_DIR)/drivers/usb/host/ohci-platform.ko
  225. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ohci-at91.ko),)
  226. FILES+=$(LINUX_DIR)/drivers/usb/host/ohci-at91.ko
  227. endif
  228. AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform ohci-at91,1)
  229. $(call AddDepends/usb)
  230. endef
  231. define KernelPackage/usb-ohci/description
  232. Kernel support for USB OHCI controllers
  233. endef
  234. $(eval $(call KernelPackage,usb-ohci,1))
  235. define KernelPackage/usb-ohci-pci
  236. TITLE:=Support for PCI OHCI controllers
  237. DEPENDS:=@PCI_SUPPORT +kmod-usb-ohci
  238. KCONFIG:= \
  239. CONFIG_USB_PCI=y \
  240. CONFIG_USB_OHCI_HCD_PCI
  241. FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-pci.ko
  242. AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1)
  243. $(call AddDepends/usb)
  244. endef
  245. define KernelPackage/usb-ohci-pci/description
  246. Kernel support for PCI OHCI controllers
  247. endef
  248. $(eval $(call KernelPackage,usb-ohci-pci))
  249. define KernelPackage/usb-bcma
  250. TITLE:=Support for BCMA USB controllers
  251. DEPENDS:=@USB_SUPPORT @TARGET_brcm47xx||TARGET_bcm53xx
  252. HIDDEN:=1
  253. KCONFIG:=CONFIG_USB_HCD_BCMA
  254. FILES:= \
  255. $(if $(CONFIG_USB_HCD_BCMA),$(LINUX_DIR)/drivers/usb/host/bcma-hcd.ko)
  256. AUTOLOAD:=$(call AutoLoad,19,$(if $(CONFIG_USB_HCD_BCMA),bcma-hcd),1)
  257. $(call AddDepends/usb)
  258. endef
  259. $(eval $(call KernelPackage,usb-bcma))
  260. define KernelPackage/usb-fotg210
  261. TITLE:=Support for FOTG210 USB host controllers
  262. DEPENDS:=@USB_SUPPORT @TARGET_gemini
  263. KCONFIG:=CONFIG_USB_FOTG210_HCD
  264. FILES:= \
  265. $(if $(CONFIG_USB_FOTG210_HCD),$(LINUX_DIR)/drivers/usb/host/fotg210-hcd.ko)
  266. AUTOLOAD:=$(call AutoLoad,50,fotg210-hcd,1)
  267. $(call AddDepends/usb)
  268. endef
  269. $(eval $(call KernelPackage,usb-fotg210))
  270. define KernelPackage/usb-ssb
  271. TITLE:=Support for SSB USB controllers
  272. DEPENDS:=@USB_SUPPORT @TARGET_brcm47xx
  273. HIDDEN:=1
  274. KCONFIG:=CONFIG_USB_HCD_SSB
  275. FILES:= \
  276. $(if $(CONFIG_USB_HCD_SSB),$(LINUX_DIR)/drivers/usb/host/ssb-hcd.ko)
  277. AUTOLOAD:=$(call AutoLoad,19,$(if $(CONFIG_USB_HCD_SSB),ssb-hcd),1)
  278. $(call AddDepends/usb)
  279. endef
  280. $(eval $(call KernelPackage,usb-ssb))
  281. define KernelPackage/usb-ehci
  282. TITLE:=EHCI controller support
  283. HIDDEN:=1
  284. KCONFIG:= \
  285. CONFIG_USB_EHCI_HCD
  286. FILES:= \
  287. $(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko
  288. AUTOLOAD:=$(call AutoLoad,35,ehci-hcd,1)
  289. $(call AddDepends/usb)
  290. endef
  291. $(eval $(call KernelPackage,usb-ehci))
  292. define KernelPackage/usb2
  293. TITLE:=Support for USB2 controllers
  294. DEPENDS:=\
  295. +TARGET_brcm47xx:kmod-usb-bcma \
  296. +TARGET_brcm47xx:kmod-usb-ssb \
  297. +TARGET_bcm53xx:kmod-usb-bcma \
  298. +TARGET_bcm53xx:kmod-phy-bcm-ns-usb2 \
  299. +TARGET_ath79:kmod-phy-ath79-usb \
  300. +kmod-usb-ehci
  301. KCONFIG:=\
  302. CONFIG_USB_EHCI_HCD_PLATFORM \
  303. CONFIG_USB_EHCI_BCM63XX=y \
  304. CONFIG_USB_IMX21_HCD=y \
  305. CONFIG_USB_EHCI_MXC=y \
  306. CONFIG_USB_OCTEON_EHCI=y \
  307. CONFIG_USB_EHCI_HCD_ORION=y \
  308. CONFIG_USB_EHCI_HCD_AT91=y \
  309. CONFIG_USB_EHCI_FSL
  310. FILES:= \
  311. $(LINUX_DIR)/drivers/usb/host/ehci-platform.ko
  312. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-orion.ko),)
  313. FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-orion.ko
  314. endif
  315. ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko),)
  316. FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko
  317. endif
  318. AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion ehci-atmel,1)
  319. $(call AddDepends/usb)
  320. endef
  321. define KernelPackage/usb2/description
  322. Kernel support for USB2 (EHCI) controllers
  323. endef
  324. $(eval $(call KernelPackage,usb2))
  325. define KernelPackage/usb2-pci
  326. TITLE:=Support for PCI USB2 controllers
  327. DEPENDS:=@PCI_SUPPORT +kmod-usb2
  328. KCONFIG:= \
  329. CONFIG_USB_PCI=y \
  330. CONFIG_USB_EHCI_PCI
  331. FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko
  332. AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1)
  333. $(call AddDepends/usb)
  334. endef
  335. define KernelPackage/usb2-pci/description
  336. Kernel support for PCI USB2 (EHCI) controllers
  337. endef
  338. $(eval $(call KernelPackage,usb2-pci))
  339. define KernelPackage/usb-dwc2
  340. TITLE:=DWC2 USB controller driver
  341. DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget
  342. KCONFIG:= \
  343. CONFIG_USB_PCI=y \
  344. CONFIG_USB_DWC2 \
  345. CONFIG_USB_DWC2_PCI \
  346. CONFIG_USB_DWC2_PLATFORM \
  347. CONFIG_USB_DWC2_DEBUG=n \
  348. CONFIG_USB_DWC2_VERBOSE=n \
  349. CONFIG_USB_DWC2_TRACK_MISSED_SOFS=n \
  350. CONFIG_USB_DWC2_DEBUG_PERIODIC=n
  351. FILES:= \
  352. $(LINUX_DIR)/drivers/usb/dwc2/dwc2.ko \
  353. $(LINUX_DIR)/drivers/usb/dwc2/[email protected]
  354. AUTOLOAD:=$(call AutoLoad,54,dwc2 [email protected],1)
  355. $(call AddDepends/usb)
  356. endef
  357. define KernelPackage/usb-dwc2/description
  358. This driver provides USB Device Controller support for the
  359. Synopsys DesignWare USB OTG Core
  360. endef
  361. $(eval $(call KernelPackage,usb-dwc2))
  362. define KernelPackage/usb-dwc3
  363. TITLE:=DWC3 USB controller driver
  364. KCONFIG:= \
  365. CONFIG_USB_DWC3 \
  366. CONFIG_USB_DWC3_HOST=y \
  367. CONFIG_USB_DWC3_GADGET=n \
  368. CONFIG_USB_DWC3_DUAL_ROLE=n \
  369. CONFIG_USB_DWC3_DEBUG=n \
  370. CONFIG_USB_DWC3_VERBOSE=n
  371. FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3.ko
  372. AUTOLOAD:=$(call AutoLoad,54,dwc3,1)
  373. $(call AddDepends/usb)
  374. endef
  375. define KernelPackage/usb-dwc3/description
  376. This driver provides support for the Dual Role SuperSpeed
  377. USB Controller based on the Synopsys DesignWare USB3 IP Core
  378. endef
  379. $(eval $(call KernelPackage,usb-dwc3))
  380. define KernelPackage/usb-dwc3-of-simple
  381. TITLE:=DWC3 USB simple OF driver
  382. DEPENDS:=@!LINUX_4_19 @TARGET_ipq40xx||@TARGET_ipq806x +kmod-usb-dwc3
  383. KCONFIG:= CONFIG_USB_DWC3_OF_SIMPLE
  384. FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-of-simple.ko
  385. AUTOLOAD:=$(call AutoLoad,53,dwc3-of-simple,1)
  386. $(call AddDepends/usb)
  387. endef
  388. define KernelPackage/usb-dwc3-of-simple/description
  389. This driver provides generic platform glue for the integrated DesignWare
  390. USB3 IP Core.
  391. endef
  392. $(eval $(call KernelPackage,usb-dwc3-of-simple))
  393. define KernelPackage/usb-dwc3-qcom
  394. TITLE:=DWC3 Qualcomm USB driver
  395. DEPENDS:=@LINUX_4_19 @TARGET_ipq40xx||@TARGET_ipq806x +kmod-usb-dwc3
  396. KCONFIG:= CONFIG_USB_DWC3_QCOM
  397. FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3-qcom.ko
  398. AUTOLOAD:=$(call AutoLoad,53,dwc3-qcom,1)
  399. $(call AddDepends/usb)
  400. endef
  401. define KernelPackage/usb-dwc3-qcom/description
  402. Some Qualcomm SoCs use DesignWare Core IP for USB2/3 functionality.
  403. This driver also handles Qscratch wrapper which is needed for
  404. peripheral mode support.
  405. endef
  406. $(eval $(call KernelPackage,usb-dwc3-qcom))
  407. define KernelPackage/usb-acm
  408. TITLE:=Support for modems/isdn controllers
  409. KCONFIG:=CONFIG_USB_ACM
  410. FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-acm.ko
  411. AUTOLOAD:=$(call AutoProbe,cdc-acm)
  412. $(call AddDepends/usb)
  413. endef
  414. define KernelPackage/usb-acm/description
  415. Kernel support for USB ACM devices (modems/isdn controllers)
  416. endef
  417. $(eval $(call KernelPackage,usb-acm))
  418. define KernelPackage/usb-wdm
  419. TITLE:=USB Wireless Device Management
  420. KCONFIG:=CONFIG_USB_WDM
  421. FILES:=$(LINUX_DIR)/drivers/usb/class/cdc-wdm.ko
  422. AUTOLOAD:=$(call AutoProbe,cdc-wdm)
  423. $(call AddDepends/usb)
  424. $(call AddDepends/usb-net)
  425. endef
  426. define KernelPackage/usb-wdm/description
  427. USB Wireless Device Management support
  428. endef
  429. $(eval $(call KernelPackage,usb-wdm))
  430. define KernelPackage/usb-audio
  431. TITLE:=Support for USB audio devices
  432. KCONFIG:= \
  433. CONFIG_USB_AUDIO \
  434. CONFIG_SND_USB=y \
  435. CONFIG_SND_USB_AUDIO
  436. $(call AddDepends/usb)
  437. $(call AddDepends/sound)
  438. FILES:= \
  439. $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
  440. $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
  441. AUTOLOAD:=$(call AutoProbe,snd-usbmidi-lib snd-usb-audio)
  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-edgeport
  496. TITLE:=Support for Digi Edgeport devices
  497. KCONFIG:=CONFIG_USB_SERIAL_EDGEPORT
  498. FILES:=$(LINUX_DIR)/drivers/usb/serial/io_edgeport.ko
  499. AUTOLOAD:=$(call AutoProbe,io_edgeport)
  500. $(call AddDepends/usb-serial)
  501. DEPENDS+=+edgeport-firmware
  502. endef
  503. define KernelPackage/usb-serial-edgeport/description
  504. Kernel support for Inside Out Networks (Digi)
  505. Edgeport/4
  506. Rapidport/4
  507. Edgeport/4t
  508. Edgeport/2
  509. Edgeport/4i
  510. Edgeport/2i
  511. Edgeport/421
  512. Edgeport/21
  513. Edgeport/8
  514. Edgeport/8 Dual
  515. Edgeport/2D8
  516. Edgeport/4D8
  517. Edgeport/8i
  518. Edgeport/2 DIN
  519. Edgeport/4 DIN
  520. Edgeport/16 Dual
  521. endef
  522. $(eval $(call KernelPackage,usb-serial-edgeport))
  523. define KernelPackage/usb-serial-ftdi
  524. TITLE:=Support for FTDI devices
  525. KCONFIG:=CONFIG_USB_SERIAL_FTDI_SIO
  526. FILES:=$(LINUX_DIR)/drivers/usb/serial/ftdi_sio.ko
  527. AUTOLOAD:=$(call AutoProbe,ftdi_sio)
  528. $(call AddDepends/usb-serial)
  529. endef
  530. define KernelPackage/usb-serial-ftdi/description
  531. Kernel support for FTDI USB-to-Serial converters
  532. endef
  533. $(eval $(call KernelPackage,usb-serial-ftdi))
  534. define KernelPackage/usb-serial-garmin
  535. TITLE:=Support for Garmin GPS devices
  536. KCONFIG:=CONFIG_USB_SERIAL_GARMIN
  537. FILES:=$(LINUX_DIR)/drivers/usb/serial/garmin_gps.ko
  538. AUTOLOAD:=$(call AutoProbe,garmin_gps)
  539. $(call AddDepends/usb-serial)
  540. endef
  541. define KernelPackage/usb-serial-garmin/description
  542. Should work with most Garmin GPS devices which have a native USB port.
  543. endef
  544. $(eval $(call KernelPackage,usb-serial-garmin))
  545. define KernelPackage/usb-serial-simple
  546. TITLE:=USB Serial Simple (Motorola phone)
  547. KCONFIG:=CONFIG_USB_SERIAL_SIMPLE
  548. FILES:=$(LINUX_DIR)/drivers/usb/serial/usb-serial-simple.ko
  549. AUTOLOAD:=$(call AutoProbe,usb-serial-simple)
  550. $(call AddDepends/usb-serial)
  551. endef
  552. define KernelPackage/usb-serial-simple/description
  553. Kernel support for "very simple devices".
  554. Specifically, it supports:
  555. - Suunto ANT+ USB device.
  556. - Medtronic CareLink USB device (3.18)
  557. - Fundamental Software dongle.
  558. - Google USB serial devices (3.19)
  559. - HP4x calculators
  560. - a number of Motorola phones
  561. - Novatel Wireless GPS receivers (3.18)
  562. - Siemens USB/MPI adapter.
  563. - ViVOtech ViVOpay USB device.
  564. - Infineon Modem Flashloader USB interface
  565. - ZIO Motherboard USB serial interface
  566. endef
  567. $(eval $(call KernelPackage,usb-serial-simple))
  568. define KernelPackage/usb-serial-ti-usb
  569. TITLE:=Support for TI USB 3410/5052
  570. KCONFIG:=CONFIG_USB_SERIAL_TI
  571. FILES:=$(LINUX_DIR)/drivers/usb/serial/ti_usb_3410_5052.ko
  572. AUTOLOAD:=$(call AutoProbe,ti_usb_3410_5052)
  573. $(call AddDepends/usb-serial)
  574. endef
  575. define KernelPackage/usb-serial-ti-usb/description
  576. Kernel support for TI USB 3410/5052 devices
  577. endef
  578. $(eval $(call KernelPackage,usb-serial-ti-usb))
  579. define KernelPackage/usb-serial-ipw
  580. TITLE:=Support for IPWireless 3G devices
  581. KCONFIG:=CONFIG_USB_SERIAL_IPW
  582. FILES:=$(LINUX_DIR)/drivers/usb/serial/ipw.ko
  583. AUTOLOAD:=$(call AutoProbe,ipw)
  584. $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
  585. endef
  586. $(eval $(call KernelPackage,usb-serial-ipw))
  587. define KernelPackage/usb-serial-mct
  588. TITLE:=Support for Magic Control Tech. devices
  589. KCONFIG:=CONFIG_USB_SERIAL_MCT_U232
  590. FILES:=$(LINUX_DIR)/drivers/usb/serial/mct_u232.ko
  591. AUTOLOAD:=$(call AutoProbe,mct_u232)
  592. $(call AddDepends/usb-serial)
  593. endef
  594. define KernelPackage/usb-serial-mct/description
  595. Kernel support for Magic Control Technology USB-to-Serial converters
  596. endef
  597. $(eval $(call KernelPackage,usb-serial-mct))
  598. define KernelPackage/usb-serial-mos7720
  599. TITLE:=Support for Moschip MOS7720 devices
  600. KCONFIG:=CONFIG_USB_SERIAL_MOS7720
  601. FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7720.ko
  602. AUTOLOAD:=$(call AutoProbe,mos7720)
  603. $(call AddDepends/usb-serial)
  604. endef
  605. define KernelPackage/usb-serial-mos7720/description
  606. Kernel support for Moschip MOS7720 USB-to-Serial converters
  607. endef
  608. $(eval $(call KernelPackage,usb-serial-mos7720))
  609. define KernelPackage/usb-serial-mos7840
  610. TITLE:=Support for Moschip MOS7840 devices
  611. KCONFIG:=CONFIG_USB_SERIAL_MOS7840
  612. FILES:=$(LINUX_DIR)/drivers/usb/serial/mos7840.ko
  613. AUTOLOAD:=$(call AutoProbe,mos7840)
  614. $(call AddDepends/usb-serial)
  615. endef
  616. define KernelPackage/usb-serial-mos7840/description
  617. Kernel support for Moschip MOS7840 USB-to-Serial converters
  618. endef
  619. $(eval $(call KernelPackage,usb-serial-mos7840))
  620. define KernelPackage/usb-serial-pl2303
  621. TITLE:=Support for Prolific PL2303 devices
  622. KCONFIG:=CONFIG_USB_SERIAL_PL2303
  623. FILES:=$(LINUX_DIR)/drivers/usb/serial/pl2303.ko
  624. AUTOLOAD:=$(call AutoProbe,pl2303)
  625. $(call AddDepends/usb-serial)
  626. endef
  627. define KernelPackage/usb-serial-pl2303/description
  628. Kernel support for Prolific PL2303 USB-to-Serial converters
  629. endef
  630. $(eval $(call KernelPackage,usb-serial-pl2303))
  631. define KernelPackage/usb-serial-cp210x
  632. TITLE:=Support for Silicon Labs cp210x devices
  633. KCONFIG:=CONFIG_USB_SERIAL_CP210X
  634. FILES:=$(LINUX_DIR)/drivers/usb/serial/cp210x.ko
  635. AUTOLOAD:=$(call AutoProbe,cp210x)
  636. $(call AddDepends/usb-serial)
  637. endef
  638. define KernelPackage/usb-serial-cp210x/description
  639. Kernel support for Silicon Labs cp210x USB-to-Serial converters
  640. endef
  641. $(eval $(call KernelPackage,usb-serial-cp210x))
  642. define KernelPackage/usb-serial-ark3116
  643. TITLE:=Support for ArkMicroChips ARK3116 devices
  644. KCONFIG:=CONFIG_USB_SERIAL_ARK3116
  645. FILES:=$(LINUX_DIR)/drivers/usb/serial/ark3116.ko
  646. AUTOLOAD:=$(call AutoProbe,ark3116)
  647. $(call AddDepends/usb-serial)
  648. endef
  649. define KernelPackage/usb-serial-ark3116/description
  650. Kernel support for ArkMicroChips ARK3116 USB-to-Serial converters
  651. endef
  652. $(eval $(call KernelPackage,usb-serial-ark3116))
  653. define KernelPackage/usb-serial-oti6858
  654. TITLE:=Support for Ours Technology OTI6858 devices
  655. KCONFIG:=CONFIG_USB_SERIAL_OTI6858
  656. FILES:=$(LINUX_DIR)/drivers/usb/serial/oti6858.ko
  657. AUTOLOAD:=$(call AutoProbe,oti6858)
  658. $(call AddDepends/usb-serial)
  659. endef
  660. define KernelPackage/usb-serial-oti6858/description
  661. Kernel support for Ours Technology OTI6858 USB-to-Serial converters
  662. endef
  663. $(eval $(call KernelPackage,usb-serial-oti6858))
  664. define KernelPackage/usb-serial-sierrawireless
  665. TITLE:=Support for Sierra Wireless devices
  666. KCONFIG:=CONFIG_USB_SERIAL_SIERRAWIRELESS
  667. FILES:=$(LINUX_DIR)/drivers/usb/serial/sierra.ko
  668. AUTOLOAD:=$(call AutoProbe,sierra)
  669. $(call AddDepends/usb-serial)
  670. endef
  671. define KernelPackage/usb-serial-sierrawireless/description
  672. Kernel support for Sierra Wireless devices
  673. endef
  674. $(eval $(call KernelPackage,usb-serial-sierrawireless))
  675. define KernelPackage/usb-serial-visor
  676. TITLE:=Support for Handspring Visor devices
  677. KCONFIG:=CONFIG_USB_SERIAL_VISOR
  678. FILES:=$(LINUX_DIR)/drivers/usb/serial/visor.ko
  679. AUTOLOAD:=$(call AutoProbe,visor)
  680. $(call AddDepends/usb-serial)
  681. endef
  682. define KernelPackage/usb-serial-visor/description
  683. Kernel support for Handspring Visor PDAs
  684. endef
  685. $(eval $(call KernelPackage,usb-serial-visor))
  686. define KernelPackage/usb-serial-cypress-m8
  687. TITLE:=Support for CypressM8 USB-Serial
  688. KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
  689. FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.ko
  690. AUTOLOAD:=$(call AutoProbe,cypress_m8)
  691. $(call AddDepends/usb-serial)
  692. endef
  693. define KernelPackage/usb-serial-cypress-m8/description
  694. Kernel support for devices with Cypress M8 USB to Serial chip
  695. (for example, the Delorme Earthmate LT-20 GPS)
  696. Supported microcontrollers in the CY4601 family are:
  697. CY7C63741 CY7C63742 CY7C63743 CY7C64013
  698. endef
  699. $(eval $(call KernelPackage,usb-serial-cypress-m8))
  700. define KernelPackage/usb-serial-keyspan
  701. TITLE:=Support for Keyspan USB-to-Serial devices
  702. KCONFIG:= \
  703. CONFIG_USB_SERIAL_KEYSPAN \
  704. CONFIG_USB_SERIAL_KEYSPAN_USA28 \
  705. CONFIG_USB_SERIAL_KEYSPAN_USA28X \
  706. CONFIG_USB_SERIAL_KEYSPAN_USA28XA \
  707. CONFIG_USB_SERIAL_KEYSPAN_USA28XB \
  708. CONFIG_USB_SERIAL_KEYSPAN_USA19 \
  709. CONFIG_USB_SERIAL_KEYSPAN_USA18X \
  710. CONFIG_USB_SERIAL_KEYSPAN_USA19W \
  711. CONFIG_USB_SERIAL_KEYSPAN_USA19QW \
  712. CONFIG_USB_SERIAL_KEYSPAN_USA19QI \
  713. CONFIG_USB_SERIAL_KEYSPAN_MPR \
  714. CONFIG_USB_SERIAL_KEYSPAN_USA49W \
  715. CONFIG_USB_SERIAL_KEYSPAN_USA49WLC
  716. FILES:= \
  717. $(LINUX_DIR)/drivers/usb/serial/keyspan.ko \
  718. $(wildcard $(LINUX_DIR)/drivers/usb/misc/ezusb.ko)
  719. AUTOLOAD:=$(call AutoProbe,ezusb keyspan)
  720. $(call AddDepends/usb-serial)
  721. endef
  722. define KernelPackage/usb-serial-keyspan/description
  723. Kernel support for Keyspan USB-to-Serial devices
  724. endef
  725. $(eval $(call KernelPackage,usb-serial-keyspan))
  726. define KernelPackage/usb-serial-wwan
  727. TITLE:=Support for GSM and CDMA modems
  728. KCONFIG:=CONFIG_USB_SERIAL_WWAN
  729. FILES:=$(LINUX_DIR)/drivers/usb/serial/usb_wwan.ko
  730. AUTOLOAD:=$(call AutoProbe,usb_wwan)
  731. $(call AddDepends/usb-serial)
  732. endef
  733. define KernelPackage/usb-serial-wwan/description
  734. Kernel support for USB GSM and CDMA modems
  735. endef
  736. $(eval $(call KernelPackage,usb-serial-wwan))
  737. define KernelPackage/usb-serial-option
  738. TITLE:=Support for Option HSDPA modems
  739. DEPENDS:=+kmod-usb-serial-wwan
  740. KCONFIG:=CONFIG_USB_SERIAL_OPTION
  741. FILES:=$(LINUX_DIR)/drivers/usb/serial/option.ko
  742. AUTOLOAD:=$(call AutoProbe,option)
  743. $(call AddDepends/usb-serial)
  744. endef
  745. define KernelPackage/usb-serial-option/description
  746. Kernel support for Option HSDPA modems
  747. endef
  748. $(eval $(call KernelPackage,usb-serial-option))
  749. define KernelPackage/usb-serial-qualcomm
  750. TITLE:=Support for Qualcomm USB serial
  751. KCONFIG:=CONFIG_USB_SERIAL_QUALCOMM
  752. FILES:=$(LINUX_DIR)/drivers/usb/serial/qcserial.ko
  753. AUTOLOAD:=$(call AutoProbe,qcserial)
  754. $(call AddDepends/usb-serial,+kmod-usb-serial-wwan)
  755. endef
  756. define KernelPackage/usb-serial-qualcomm/description
  757. Kernel support for Qualcomm USB Serial devices (Gobi)
  758. endef
  759. $(eval $(call KernelPackage,usb-serial-qualcomm))
  760. define KernelPackage/usb-storage
  761. TITLE:=USB Storage support
  762. DEPENDS:= +kmod-scsi-core
  763. KCONFIG:=CONFIG_USB_STORAGE
  764. FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.ko
  765. AUTOLOAD:=$(call AutoProbe,usb-storage,1)
  766. $(call AddDepends/usb)
  767. endef
  768. define KernelPackage/usb-storage/description
  769. Kernel support for USB Mass Storage devices
  770. endef
  771. $(eval $(call KernelPackage,usb-storage))
  772. define KernelPackage/usb-storage-extras
  773. SUBMENU:=$(USB_MENU)
  774. TITLE:=Extra drivers for usb-storage
  775. DEPENDS:=+kmod-usb-storage
  776. KCONFIG:= \
  777. CONFIG_USB_STORAGE_ALAUDA \
  778. CONFIG_USB_STORAGE_CYPRESS_ATACB \
  779. CONFIG_USB_STORAGE_DATAFAB \
  780. CONFIG_USB_STORAGE_FREECOM \
  781. CONFIG_USB_STORAGE_ISD200 \
  782. CONFIG_USB_STORAGE_JUMPSHOT \
  783. CONFIG_USB_STORAGE_KARMA \
  784. CONFIG_USB_STORAGE_SDDR09 \
  785. CONFIG_USB_STORAGE_SDDR55 \
  786. CONFIG_USB_STORAGE_USBAT
  787. FILES:= \
  788. $(LINUX_DIR)/drivers/usb/storage/ums-alauda.ko \
  789. $(LINUX_DIR)/drivers/usb/storage/ums-cypress.ko \
  790. $(LINUX_DIR)/drivers/usb/storage/ums-datafab.ko \
  791. $(LINUX_DIR)/drivers/usb/storage/ums-freecom.ko \
  792. $(LINUX_DIR)/drivers/usb/storage/ums-isd200.ko \
  793. $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.ko \
  794. $(LINUX_DIR)/drivers/usb/storage/ums-karma.ko \
  795. $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.ko \
  796. $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.ko \
  797. $(LINUX_DIR)/drivers/usb/storage/ums-usbat.ko
  798. AUTOLOAD:=$(call AutoProbe,ums-alauda ums-cypress ums-datafab \
  799. ums-freecom ums-isd200 ums-jumpshot \
  800. ums-karma ums-sddr09 ums-sddr55 ums-usbat)
  801. endef
  802. define KernelPackage/usb-storage-extras/description
  803. Say Y here if you want to have some more drivers,
  804. such as for SmartMedia card readers
  805. endef
  806. $(eval $(call KernelPackage,usb-storage-extras))
  807. define KernelPackage/usb-storage-uas
  808. SUBMENU:=$(USB_MENU)
  809. TITLE:=USB Attached SCSI (UASP) support
  810. DEPENDS:=+kmod-usb-storage
  811. KCONFIG:=CONFIG_USB_UAS
  812. FILES:=$(LINUX_DIR)/drivers/usb/storage/uas.ko
  813. AUTOLOAD:=$(call AutoProbe,uas,1)
  814. endef
  815. define KernelPackage/usb-storage-uas/description
  816. Say Y here if you want to include support for
  817. USB Attached SCSI (UAS/UASP), a higher
  818. performance protocol available on many
  819. newer USB 3.0 storage devices
  820. endef
  821. $(eval $(call KernelPackage,usb-storage-uas))
  822. define KernelPackage/usb-atm
  823. TITLE:=Support for ATM on USB bus
  824. DEPENDS:=+kmod-atm
  825. KCONFIG:=CONFIG_USB_ATM
  826. FILES:=$(LINUX_DIR)/drivers/usb/atm/usbatm.ko
  827. AUTOLOAD:=$(call AutoProbe,usbatm)
  828. $(call AddDepends/usb)
  829. endef
  830. define KernelPackage/usb-atm/description
  831. Kernel support for USB DSL modems
  832. endef
  833. $(eval $(call KernelPackage,usb-atm))
  834. define AddDepends/usb-atm
  835. SUBMENU:=$(USB_MENU)
  836. DEPENDS+=kmod-usb-atm $(1)
  837. endef
  838. define KernelPackage/usb-atm-speedtouch
  839. TITLE:=SpeedTouch USB ADSL modems support
  840. KCONFIG:=CONFIG_USB_SPEEDTOUCH
  841. FILES:=$(LINUX_DIR)/drivers/usb/atm/speedtch.ko
  842. AUTOLOAD:=$(call AutoProbe,speedtch)
  843. $(call AddDepends/usb-atm)
  844. endef
  845. define KernelPackage/usb-atm-speedtouch/description
  846. Kernel support for SpeedTouch USB ADSL modems
  847. endef
  848. $(eval $(call KernelPackage,usb-atm-speedtouch))
  849. define KernelPackage/usb-atm-ueagle
  850. TITLE:=Eagle 8051 based USB ADSL modems support
  851. FILES:=$(LINUX_DIR)/drivers/usb/atm/ueagle-atm.ko
  852. KCONFIG:=CONFIG_USB_UEAGLEATM
  853. AUTOLOAD:=$(call AutoProbe,ueagle-atm)
  854. $(call AddDepends/usb-atm)
  855. endef
  856. define KernelPackage/usb-atm-ueagle/description
  857. Kernel support for Eagle 8051 based USB ADSL modems
  858. endef
  859. $(eval $(call KernelPackage,usb-atm-ueagle))
  860. define KernelPackage/usb-atm-cxacru
  861. TITLE:=cxacru
  862. FILES:=$(LINUX_DIR)/drivers/usb/atm/cxacru.ko
  863. KCONFIG:=CONFIG_USB_CXACRU
  864. AUTOLOAD:=$(call AutoProbe,cxacru)
  865. $(call AddDepends/usb-atm)
  866. endef
  867. define KernelPackage/usb-atm-cxacru/description
  868. Kernel support for cxacru based USB ADSL modems
  869. endef
  870. $(eval $(call KernelPackage,usb-atm-cxacru))
  871. define KernelPackage/usb-net
  872. TITLE:=Kernel modules for USB-to-Ethernet convertors
  873. DEPENDS:=+kmod-mii
  874. KCONFIG:=CONFIG_USB_USBNET \
  875. CONFIG_USB_NET_DRIVERS
  876. AUTOLOAD:=$(call AutoProbe,usbnet)
  877. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
  878. $(call AddDepends/usb)
  879. endef
  880. define KernelPackage/usb-net/description
  881. Kernel modules for USB-to-Ethernet convertors
  882. endef
  883. $(eval $(call KernelPackage,usb-net))
  884. define AddDepends/usb-net
  885. SUBMENU:=$(USB_MENU)
  886. DEPENDS+=kmod-usb-net $(1)
  887. endef
  888. define KernelPackage/usb-net-asix
  889. TITLE:=Kernel module for USB-to-Ethernet Asix convertors
  890. DEPENDS:=+kmod-libphy
  891. KCONFIG:=CONFIG_USB_NET_AX8817X
  892. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
  893. AUTOLOAD:=$(call AutoProbe,asix)
  894. $(call AddDepends/usb-net)
  895. endef
  896. define KernelPackage/usb-net-asix/description
  897. Kernel module for USB-to-Ethernet Asix convertors
  898. endef
  899. $(eval $(call KernelPackage,usb-net-asix))
  900. define KernelPackage/usb-net-asix-ax88179
  901. TITLE:=Kernel module for USB-to-Gigabit-Ethernet Asix convertors
  902. DEPENDS:=+kmod-libphy
  903. KCONFIG:=CONFIG_USB_NET_AX88179_178A
  904. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/ax88179_178a.ko
  905. AUTOLOAD:=$(call AutoProbe,ax88179_178a)
  906. $(call AddDepends/usb-net)
  907. endef
  908. define KernelPackage/usb-net-asix-ax88179/description
  909. Kernel module for USB-to-Ethernet ASIX AX88179 based USB 3.0/2.0
  910. to Gigabit Ethernet adapters.
  911. endef
  912. $(eval $(call KernelPackage,usb-net-asix-ax88179))
  913. define KernelPackage/usb-net-hso
  914. TITLE:=Kernel module for Option USB High Speed Mobile Devices
  915. KCONFIG:=CONFIG_USB_HSO
  916. FILES:= \
  917. $(LINUX_DIR)/drivers/$(USBNET_DIR)/hso.ko
  918. AUTOLOAD:=$(call AutoProbe,hso)
  919. $(call AddDepends/usb-net)
  920. $(call AddDepends/rfkill)
  921. endef
  922. define KernelPackage/usb-net-hso/description
  923. Kernel module for Option USB High Speed Mobile Devices
  924. endef
  925. $(eval $(call KernelPackage,usb-net-hso))
  926. define KernelPackage/usb-net-kaweth
  927. TITLE:=Kernel module for USB-to-Ethernet Kaweth convertors
  928. KCONFIG:=CONFIG_USB_KAWETH
  929. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/kaweth.ko
  930. AUTOLOAD:=$(call AutoProbe,kaweth)
  931. $(call AddDepends/usb-net)
  932. endef
  933. define KernelPackage/usb-net-kaweth/description
  934. Kernel module for USB-to-Ethernet Kaweth convertors
  935. endef
  936. $(eval $(call KernelPackage,usb-net-kaweth))
  937. define KernelPackage/usb-net-pegasus
  938. TITLE:=Kernel module for USB-to-Ethernet Pegasus convertors
  939. KCONFIG:=CONFIG_USB_PEGASUS
  940. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/pegasus.ko
  941. AUTOLOAD:=$(call AutoProbe,pegasus)
  942. $(call AddDepends/usb-net)
  943. endef
  944. define KernelPackage/usb-net-pegasus/description
  945. Kernel module for USB-to-Ethernet Pegasus convertors
  946. endef
  947. $(eval $(call KernelPackage,usb-net-pegasus))
  948. define KernelPackage/usb-net-mcs7830
  949. TITLE:=Kernel module for USB-to-Ethernet MCS7830 convertors
  950. KCONFIG:=CONFIG_USB_NET_MCS7830
  951. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/mcs7830.ko
  952. AUTOLOAD:=$(call AutoProbe,mcs7830)
  953. $(call AddDepends/usb-net)
  954. endef
  955. define KernelPackage/usb-net-mcs7830/description
  956. Kernel module for USB-to-Ethernet MCS7830 convertors
  957. endef
  958. $(eval $(call KernelPackage,usb-net-mcs7830))
  959. define KernelPackage/usb-net-smsc95xx
  960. TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices
  961. KCONFIG:=CONFIG_USB_NET_SMSC95XX
  962. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
  963. AUTOLOAD:=$(call AutoProbe,smsc95xx)
  964. $(call AddDepends/usb-net, +kmod-lib-crc16)
  965. endef
  966. define KernelPackage/usb-net-smsc95xx/description
  967. Kernel module for SMSC LAN95XX based devices
  968. endef
  969. $(eval $(call KernelPackage,usb-net-smsc95xx))
  970. define KernelPackage/usb-net-dm9601-ether
  971. TITLE:=Support for DM9601 ethernet connections
  972. KCONFIG:=CONFIG_USB_NET_DM9601
  973. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/dm9601.ko
  974. AUTOLOAD:=$(call AutoProbe,dm9601)
  975. $(call AddDepends/usb-net)
  976. endef
  977. define KernelPackage/usb-net-dm9601-ether/description
  978. Kernel support for USB DM9601 devices
  979. endef
  980. $(eval $(call KernelPackage,usb-net-dm9601-ether))
  981. define KernelPackage/usb-net-cdc-ether
  982. TITLE:=Support for cdc ethernet connections
  983. KCONFIG:=CONFIG_USB_NET_CDCETHER
  984. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ether.ko
  985. AUTOLOAD:=$(call AutoProbe,cdc_ether)
  986. $(call AddDepends/usb-net)
  987. endef
  988. define KernelPackage/usb-net-cdc-ether/description
  989. Kernel support for USB CDC Ethernet devices
  990. endef
  991. $(eval $(call KernelPackage,usb-net-cdc-ether))
  992. define KernelPackage/usb-net-cdc-eem
  993. TITLE:=Support for CDC EEM connections
  994. KCONFIG:=CONFIG_USB_NET_CDC_EEM
  995. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_eem.ko
  996. AUTOLOAD:=$(call AutoProbe,cdc_eem)
  997. $(call AddDepends/usb-net)
  998. endef
  999. define KernelPackage/usb-net-cdc-eem/description
  1000. Kernel support for USB CDC EEM
  1001. endef
  1002. $(eval $(call KernelPackage,usb-net-cdc-eem))
  1003. define KernelPackage/usb-net-cdc-subset
  1004. TITLE:=Support for CDC Ethernet subset connections
  1005. KCONFIG:= \
  1006. CONFIG_USB_NET_CDC_SUBSET \
  1007. CONFIG_USB_ARMLINUX
  1008. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_subset.ko
  1009. AUTOLOAD:=$(call AutoProbe,cdc_subset)
  1010. $(call AddDepends/usb-net)
  1011. endef
  1012. define KernelPackage/usb-net-cdc-subset/description
  1013. Kernel support for Simple USB Network Links (CDC Ethernet subset)
  1014. endef
  1015. $(eval $(call KernelPackage,usb-net-cdc-subset))
  1016. define KernelPackage/usb-net-qmi-wwan
  1017. TITLE:=QMI WWAN driver
  1018. KCONFIG:=CONFIG_USB_NET_QMI_WWAN
  1019. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/qmi_wwan.ko
  1020. AUTOLOAD:=$(call AutoProbe,qmi_wwan)
  1021. $(call AddDepends/usb-net,+kmod-usb-wdm)
  1022. endef
  1023. define KernelPackage/usb-net-qmi-wwan/description
  1024. QMI WWAN driver for Qualcomm MSM based 3G and LTE modems
  1025. endef
  1026. $(eval $(call KernelPackage,usb-net-qmi-wwan))
  1027. define KernelPackage/usb-net-rtl8150
  1028. TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
  1029. KCONFIG:=CONFIG_USB_RTL8150
  1030. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/rtl8150.ko
  1031. AUTOLOAD:=$(call AutoProbe,rtl8150)
  1032. $(call AddDepends/usb-net)
  1033. endef
  1034. define KernelPackage/usb-net-rtl8150/description
  1035. Kernel module for USB-to-Ethernet Realtek 8150 convertors
  1036. endef
  1037. $(eval $(call KernelPackage,usb-net-rtl8150))
  1038. define KernelPackage/usb-net-rtl8152
  1039. TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
  1040. KCONFIG:=CONFIG_USB_RTL8152
  1041. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko
  1042. AUTOLOAD:=$(call AutoProbe,r8152)
  1043. $(call AddDepends/usb-net)
  1044. endef
  1045. define KernelPackage/usb-net-rtl8152/description
  1046. Kernel module for USB-to-Ethernet Realtek 8152 USB2.0/3.0 convertors
  1047. endef
  1048. $(eval $(call KernelPackage,usb-net-rtl8152))
  1049. define KernelPackage/usb-net-sr9700
  1050. TITLE:=Support for CoreChip SR9700 ethernet devices
  1051. KCONFIG:=CONFIG_USB_NET_SR9700
  1052. FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/sr9700.ko
  1053. AUTOLOAD:=$(call AutoProbe,sr9700)
  1054. $(call AddDepends/usb-net)
  1055. endef
  1056. define KernelPackage/usb-net-sr9700/description
  1057. Kernel module for CoreChip-sz SR9700 based USB 1.1 10/100 ethernet devices
  1058. endef
  1059. $(eval $(call KernelPackage,usb-net-sr9700))
  1060. define KernelPackage/usb-net-rndis
  1061. TITLE:=Support for RNDIS connections
  1062. KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
  1063. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.ko
  1064. AUTOLOAD:=$(call AutoProbe,rndis_host)
  1065. $(call AddDepends/usb-net,+kmod-usb-net-cdc-ether)
  1066. endef
  1067. define KernelPackage/usb-net-rndis/description
  1068. Kernel support for RNDIS connections
  1069. endef
  1070. $(eval $(call KernelPackage,usb-net-rndis))
  1071. define KernelPackage/usb-net-cdc-mbim
  1072. SUBMENU:=$(USB_MENU)
  1073. TITLE:=Kernel module for MBIM Devices
  1074. KCONFIG:=CONFIG_USB_NET_CDC_MBIM
  1075. FILES:= \
  1076. $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_mbim.ko
  1077. AUTOLOAD:=$(call AutoProbe,cdc_mbim)
  1078. $(call AddDepends/usb-net,+kmod-usb-wdm +kmod-usb-net-cdc-ncm)
  1079. endef
  1080. define KernelPackage/usb-net-cdc-mbim/description
  1081. Kernel module for Option USB High Speed Mobile Devices
  1082. endef
  1083. $(eval $(call KernelPackage,usb-net-cdc-mbim))
  1084. define KernelPackage/usb-net-cdc-ncm
  1085. TITLE:=Support for CDC NCM connections
  1086. KCONFIG:=CONFIG_USB_NET_CDC_NCM
  1087. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_ncm.ko
  1088. AUTOLOAD:=$(call AutoProbe,cdc_ncm)
  1089. $(call AddDepends/usb-net)
  1090. endef
  1091. define KernelPackage/usb-net-cdc-ncm/description
  1092. Kernel support for CDC NCM connections
  1093. endef
  1094. $(eval $(call KernelPackage,usb-net-cdc-ncm))
  1095. define KernelPackage/usb-net-huawei-cdc-ncm
  1096. TITLE:=Support for Huawei CDC NCM connections
  1097. KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM
  1098. FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko
  1099. AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm)
  1100. $(call AddDepends/usb-net,+kmod-usb-net-cdc-ncm +kmod-usb-wdm)
  1101. endef
  1102. define KernelPackage/usb-net-huawei-cdc-ncm/description
  1103. Kernel support for Huawei CDC NCM connections
  1104. endef
  1105. $(eval $(call KernelPackage,usb-net-huawei-cdc-ncm))
  1106. define KernelPackage/usb-net-sierrawireless
  1107. TITLE:=Support for Sierra Wireless devices
  1108. KCONFIG:=CONFIG_USB_SIERRA_NET
  1109. FILES:=$(LINUX_DIR)/drivers/net/usb/sierra_net.ko
  1110. AUTOLOAD:=$(call AutoProbe,sierra_net)
  1111. $(call AddDepends/usb-net)
  1112. endef
  1113. define KernelPackage/usb-net-sierrawireless/description
  1114. Kernel support for Sierra Wireless devices
  1115. endef
  1116. $(eval $(call KernelPackage,usb-net-sierrawireless))
  1117. define KernelPackage/usb-net-ipheth
  1118. TITLE:=Apple iPhone USB Ethernet driver
  1119. KCONFIG:=CONFIG_USB_IPHETH
  1120. FILES:=$(LINUX_DIR)/drivers/net/usb/ipheth.ko
  1121. AUTOLOAD:=$(call AutoProbe,ipheth)
  1122. $(call AddDepends/usb-net)
  1123. endef
  1124. define KernelPackage/usb-net-ipheth/description
  1125. Kernel support for Apple iPhone USB Ethernet driver
  1126. endef
  1127. $(eval $(call KernelPackage,usb-net-ipheth))
  1128. define KernelPackage/usb-net-kalmia
  1129. TITLE:=Samsung Kalmia based LTE USB modem
  1130. KCONFIG:=CONFIG_USB_NET_KALMIA
  1131. FILES:=$(LINUX_DIR)/drivers/net/usb/kalmia.ko
  1132. AUTOLOAD:=$(call AutoProbe,kalmia)
  1133. $(call AddDepends/usb-net)
  1134. endef
  1135. define KernelPackage/usb-net-kalmia/description
  1136. Kernel support for Samsung Kalmia based LTE USB modem
  1137. endef
  1138. $(eval $(call KernelPackage,usb-net-kalmia))
  1139. define KernelPackage/usb-net-pl
  1140. TITLE:=Prolific PL-2301/2302/25A1 based cables
  1141. KCONFIG:=CONFIG_USB_NET_PLUSB
  1142. FILES:=$(LINUX_DIR)/drivers/net/usb/plusb.ko
  1143. AUTOLOAD:=$(call AutoProbe,plusb)
  1144. $(call AddDepends/usb-net)
  1145. endef
  1146. define KernelPackage/usb-net-pl/description
  1147. Kernel support for Prolific PL-2301/2302/25A1 based cables
  1148. endef
  1149. $(eval $(call KernelPackage,usb-net-pl))
  1150. define KernelPackage/usb-hid
  1151. TITLE:=Support for USB Human Input Devices
  1152. KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
  1153. DEPENDS:=+kmod-hid +kmod-hid-generic +kmod-input-evdev
  1154. FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
  1155. AUTOLOAD:=$(call AutoProbe,usbhid)
  1156. $(call AddDepends/usb)
  1157. endef
  1158. define KernelPackage/usb-hid/description
  1159. Kernel support for USB HID devices such as keyboards and mice
  1160. endef
  1161. $(eval $(call KernelPackage,usb-hid))
  1162. define KernelPackage/usb-yealink
  1163. TITLE:=USB Yealink VOIP phone
  1164. DEPENDS:=+kmod-input-evdev
  1165. KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
  1166. FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
  1167. AUTOLOAD:=$(call AutoProbe,yealink)
  1168. $(call AddDepends/usb)
  1169. endef
  1170. define KernelPackage/usb-yealink/description
  1171. Kernel support for Yealink VOIP phone
  1172. endef
  1173. $(eval $(call KernelPackage,usb-yealink))
  1174. define KernelPackage/usb-cm109
  1175. TITLE:=Support for CM109 device
  1176. DEPENDS:=+kmod-input-evdev
  1177. KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
  1178. FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
  1179. AUTOLOAD:=$(call AutoProbe,cm109)
  1180. $(call AddDepends/usb)
  1181. endef
  1182. define KernelPackage/usb-cm109/description
  1183. Kernel support for CM109 VOIP phone
  1184. endef
  1185. $(eval $(call KernelPackage,usb-cm109))
  1186. define KernelPackage/usb-test
  1187. TITLE:=USB Testing Driver
  1188. DEPENDS:=@DEVEL
  1189. KCONFIG:=CONFIG_USB_TEST
  1190. FILES:=$(LINUX_DIR)/drivers/usb/misc/usbtest.ko
  1191. $(call AddDepends/usb)
  1192. endef
  1193. define KernelPackage/usb-test/description
  1194. Kernel support for testing USB Host Controller software
  1195. endef
  1196. $(eval $(call KernelPackage,usb-test))
  1197. define KernelPackage/usbip
  1198. TITLE := USB-over-IP kernel support
  1199. KCONFIG:= \
  1200. CONFIG_USBIP_CORE \
  1201. CONFIG_USBIP_DEBUG=n
  1202. FILES:=$(LINUX_DIR)/drivers/usb/usbip/usbip-core.ko
  1203. AUTOLOAD:=$(call AutoProbe,usbip-core)
  1204. $(call AddDepends/usb)
  1205. endef
  1206. $(eval $(call KernelPackage,usbip))
  1207. define KernelPackage/usbip-client
  1208. TITLE := USB-over-IP client driver
  1209. DEPENDS := +kmod-usbip
  1210. KCONFIG := CONFIG_USBIP_VHCI_HCD
  1211. FILES :=$(LINUX_DIR)/drivers/usb/usbip/vhci-hcd.ko
  1212. AUTOLOAD := $(call AutoProbe,vhci-hcd)
  1213. $(call AddDepends/usb)
  1214. endef
  1215. $(eval $(call KernelPackage,usbip-client))
  1216. define KernelPackage/usbip-server
  1217. $(call KernelPackage/usbip/Default)
  1218. TITLE := USB-over-IP host driver
  1219. DEPENDS := +kmod-usbip
  1220. KCONFIG := CONFIG_USBIP_HOST
  1221. FILES :=$(LINUX_DIR)/drivers/usb/usbip/usbip-host.ko
  1222. AUTOLOAD := $(call AutoProbe,usbip-host)
  1223. $(call AddDepends/usb)
  1224. endef
  1225. $(eval $(call KernelPackage,usbip-server))
  1226. define KernelPackage/usb-chipidea
  1227. TITLE:=Host and device support for Chipidea controllers
  1228. DEPENDS:=+USB_GADGET_SUPPORT:kmod-usb-gadget @TARGET_ar71xx||TARGET_ath79 +kmod-usb-ehci +kmod-usb-phy-nop
  1229. KCONFIG:= \
  1230. CONFIG_EXTCON \
  1231. CONFIG_USB_CHIPIDEA \
  1232. CONFIG_USB_CHIPIDEA_HOST=y \
  1233. CONFIG_USB_CHIPIDEA_UDC=y \
  1234. CONFIG_USB_CHIPIDEA_DEBUG=y
  1235. FILES:= \
  1236. $(LINUX_DIR)/drivers/extcon/[email protected] \
  1237. $(LINUX_DIR)/drivers/extcon/[email protected] \
  1238. $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
  1239. $(LINUX_DIR)/drivers/usb/common/[email protected]
  1240. AUTOLOAD:=$(call AutoLoad,39,ci_hdrc,1)
  1241. $(call AddDepends/usb)
  1242. endef
  1243. define KernelPackage/usb-chipidea/description
  1244. Kernel support for USB Chipidea controllers
  1245. endef
  1246. $(eval $(call KernelPackage,usb-chipidea))
  1247. define KernelPackage/usb-chipidea2
  1248. TITLE:=Host and device support for Chipidea2 controllers
  1249. DEPENDS:=+kmod-usb-chipidea
  1250. KCONFIG:= \
  1251. CONFIG_EXTCON \
  1252. CONFIG_USB_CHIPIDEA \
  1253. CONFIG_USB_CHIPIDEA_HOST=y \
  1254. CONFIG_USB_CHIPIDEA_UDC=y \
  1255. CONFIG_USB_CHIPIDEA_DEBUG=y
  1256. FILES:= \
  1257. $(LINUX_DIR)/drivers/extcon/[email protected] \
  1258. $(LINUX_DIR)/drivers/extcon/[email protected] \
  1259. $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc_usb2.ko
  1260. AUTOLOAD:=$(call AutoLoad,39,ci_hdrc_usb2,1)
  1261. $(call AddDepends/usb)
  1262. endef
  1263. define KernelPackage/usb-chipidea2/description
  1264. Kernel support for USB Chipidea controllers
  1265. endef
  1266. $(eval $(call KernelPackage,usb-chipidea2))
  1267. define KernelPackage/usbmon
  1268. TITLE:=USB traffic monitor
  1269. KCONFIG:=CONFIG_USB_MON
  1270. $(call AddDepends/usb)
  1271. FILES:=$(LINUX_DIR)/drivers/usb/mon/usbmon.ko
  1272. AUTOLOAD:=$(call AutoProbe,usbmon)
  1273. endef
  1274. define KernelPackage/usbmon/description
  1275. Kernel support for USB traffic monitoring
  1276. endef
  1277. $(eval $(call KernelPackage,usbmon))
  1278. XHCI_MODULES := xhci-hcd xhci-pci xhci-plat-hcd
  1279. ifdef CONFIG_TARGET_ramips_mt7621
  1280. XHCI_MODULES += xhci-mtk
  1281. endif
  1282. XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,$(XHCI_MODULES)))
  1283. XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES))
  1284. define KernelPackage/usb3
  1285. TITLE:=Support for USB3 controllers
  1286. DEPENDS:= \
  1287. +TARGET_bcm53xx:kmod-usb-bcma \
  1288. +TARGET_bcm53xx:kmod-phy-bcm-ns-usb3
  1289. KCONFIG:= \
  1290. CONFIG_USB_PCI=y \
  1291. CONFIG_USB_XHCI_HCD \
  1292. CONFIG_USB_XHCI_PCI \
  1293. CONFIG_USB_XHCI_PLATFORM \
  1294. CONFIG_USB_XHCI_MVEBU=y \
  1295. CONFIG_USB_XHCI_MTK \
  1296. CONFIG_USB_XHCI_HCD_DEBUGGING=n
  1297. FILES:= \
  1298. $(XHCI_FILES)
  1299. AUTOLOAD:=$(call AutoLoad,54,$(XHCI_AUTOLOAD),1)
  1300. $(call AddDepends/usb)
  1301. endef
  1302. define KernelPackage/usb3/description
  1303. Kernel support for USB3 (XHCI) controllers
  1304. endef
  1305. $(eval $(call KernelPackage,usb3))
  1306. define KernelPackage/usb-net2280
  1307. TITLE:=Support for NetChip 228x PCI USB peripheral controller
  1308. KCONFIG:= \
  1309. CONFIG_USB_PCI=y \
  1310. CONFIG_USB_NET2280
  1311. DEPENDS:=@PCI_SUPPORT +kmod-usb-gadget
  1312. FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc/net2280.ko
  1313. AUTOLOAD:=$(call AutoLoad,46,net2280)
  1314. $(call AddDepends/usb)
  1315. endef
  1316. define KernelPackage/usb-net2280/description
  1317. Kernel support for NetChip 228x / PLX USB338x PCI USB peripheral controller.
  1318. endef
  1319. $(eval $(call KernelPackage,usb-net2280))
  1320. define KernelPackage/chaoskey
  1321. SUBMENU:=$(USB_MENU)
  1322. TITLE:=Chaoskey hardware RNG support
  1323. DEPENDS:=+kmod-random-core
  1324. KCONFIG:=CONFIG_USB_CHAOSKEY
  1325. FILES:=$(LINUX_DIR)/drivers/usb/misc/chaoskey.ko
  1326. AUTOLOAD:=$(call AutoProbe,chaoskey)
  1327. $(call AddDepends/usb)
  1328. endef
  1329. define KernelPackage/chaoskey/description
  1330. Kernel module for chaoskey, USB attached true random number generator
  1331. endef
  1332. $(eval $(call KernelPackage,chaoskey))