usb.mk 45 KB

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