Kconfig 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337
  1. # Kconfig file for package CherryUSB
  2. menuconfig RT_USING_CHERRYUSB
  3. bool "Using USB with CherryUSB"
  4. default n
  5. if RT_USING_CHERRYUSB
  6. menuconfig RT_CHERRYUSB_DEVICE
  7. bool "Enable usb device mode"
  8. default n
  9. if RT_CHERRYUSB_DEVICE
  10. choice
  11. prompt "Select usb device speed"
  12. default RT_CHERRYUSB_DEVICE_SPEED_FS
  13. config RT_CHERRYUSB_DEVICE_SPEED_FS
  14. bool "FS"
  15. config RT_CHERRYUSB_DEVICE_SPEED_HS
  16. bool "HS"
  17. config RT_CHERRYUSB_DEVICE_SPEED_AUTO
  18. bool "AUTO"
  19. endchoice
  20. choice
  21. prompt "Select usb device ip, and some ip need config in usb_config.h, please check"
  22. default RT_CHERRYUSB_DEVICE_CUSTOM
  23. config RT_CHERRYUSB_DEVICE_CUSTOM
  24. bool "CUSTOM (Implement it yourself)"
  25. config RT_CHERRYUSB_DEVICE_FSDEV
  26. bool "fsdev"
  27. config RT_CHERRYUSB_DEVICE_DWC2_ST
  28. bool "dwc2_st"
  29. config RT_CHERRYUSB_DEVICE_DWC2_ESP
  30. bool "dwc2_esp"
  31. config RT_CHERRYUSB_DEVICE_DWC2_AT
  32. bool "dwc2_at"
  33. config RT_CHERRYUSB_DEVICE_DWC2_GD
  34. bool "dwc2_gd"
  35. config RT_CHERRYUSB_DEVICE_DWC2_HC
  36. bool "dwc2_hc"
  37. config RT_CHERRYUSB_DEVICE_DWC2_KENDRYTE
  38. bool "dwc2_kendryte"
  39. config RT_CHERRYUSB_DEVICE_DWC2_CUSTOM
  40. bool "dwc2_custom"
  41. config RT_CHERRYUSB_DEVICE_MUSB_ES
  42. bool "musb_es"
  43. config RT_CHERRYUSB_DEVICE_MUSB_SUNXI
  44. bool "musb_sunxi"
  45. config RT_CHERRYUSB_DEVICE_MUSB_BK
  46. bool "musb_bk"
  47. config RT_CHERRYUSB_DEVICE_MUSB_CUSTOM
  48. bool "musb_custom"
  49. config RT_CHERRYUSB_DEVICE_KINETIS_MCX
  50. bool "kinetis_mcx"
  51. config RT_CHERRYUSB_DEVICE_KINETIS_CUSTOM
  52. bool "kinetis_custom"
  53. config RT_CHERRYUSB_DEVICE_CHIPIDEA_MCX
  54. bool "chipidea_mcx"
  55. config RT_CHERRYUSB_DEVICE_CHIPIDEA_CUSTOM
  56. bool "chipidea_custom"
  57. config RT_CHERRYUSB_DEVICE_BL
  58. bool "bouffalo"
  59. config RT_CHERRYUSB_DEVICE_CH32
  60. bool "ch32"
  61. config RT_CHERRYUSB_DEVICE_HPM
  62. bool "hpm"
  63. config RT_CHERRYUSB_DEVICE_AIC
  64. bool "aic"
  65. config RT_CHERRYUSB_DEVICE_PUSB2
  66. bool "pusb2"
  67. config RT_CHERRYUSB_DEVICE_NRF5X
  68. bool "nrf5x"
  69. endchoice
  70. config RT_CHERRYUSB_DEVICE_CDC_ACM
  71. bool
  72. prompt "Enable usb cdc acm device"
  73. default n
  74. config RT_CHERRYUSB_DEVICE_HID
  75. bool
  76. prompt "Enable usb hid device"
  77. default n
  78. config RT_CHERRYUSB_DEVICE_MSC
  79. bool
  80. prompt "Enable usb msc device"
  81. default n
  82. config RT_CHERRYUSB_DEVICE_AUDIO
  83. bool
  84. prompt "Enable usb audio device"
  85. default n
  86. config RT_CHERRYUSB_DEVICE_VIDEO
  87. bool
  88. prompt "Enable usb video device"
  89. default n
  90. config RT_CHERRYUSB_DEVICE_CDC_RNDIS
  91. bool
  92. prompt "Enable usb cdc rndis device"
  93. default n
  94. config RT_CHERRYUSB_DEVICE_CDC_ECM
  95. bool
  96. prompt "Enable usb cdc ecm device"
  97. default n
  98. config RT_CHERRYUSB_DEVICE_CDC_NCM
  99. bool
  100. prompt "Enable usb cdc ncm device"
  101. default n
  102. config RT_CHERRYUSB_DEVICE_DFU
  103. bool
  104. prompt "Enable usb dfu device"
  105. default n
  106. choice
  107. prompt "Select usb device template"
  108. default RT_CHERRYUSB_DEVICE_TEMPLATE_NONE
  109. config RT_CHERRYUSB_DEVICE_TEMPLATE_NONE
  110. bool "none (Implement it yourself)"
  111. config RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM
  112. bool "cdc_acm"
  113. config RT_CHERRYUSB_DEVICE_TEMPLATE_MSC
  114. bool "msc"
  115. config RT_CHERRYUSB_DEVICE_TEMPLATE_HID_KEYBOARD
  116. bool "hid_keyboard"
  117. config RT_CHERRYUSB_DEVICE_TEMPLATE_HID_MOUSE
  118. bool "hid_mouse"
  119. config RT_CHERRYUSB_DEVICE_TEMPLATE_HID_CUSTOM
  120. bool "hid_custom"
  121. config RT_CHERRYUSB_DEVICE_TEMPLATE_VIDEO
  122. bool "video"
  123. config RT_CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V1_MIC_SPEAKER
  124. bool "audio_v1_mic_speaker_multichan"
  125. config RT_CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V2_MIC_SPEAKER
  126. bool "audio_v2_mic_speaker_multichan"
  127. config RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_RNDIS
  128. bool "cdc_rndis"
  129. config RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ECM
  130. bool "cdc_ecm"
  131. config RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_NCM
  132. bool "cdc_ncm"
  133. config RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC
  134. bool "cdc_acm_msc"
  135. config RT_CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC_HID
  136. bool "cdc_acm_msc_hid"
  137. config RT_CHERRYUSB_DEVICE_TEMPLATE_WINUSBV1
  138. bool "winusbv1"
  139. config RT_CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2_CDC
  140. bool "winusbv2_cdc"
  141. config RT_CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2_HID
  142. bool "winusbv2_hid"
  143. endchoice
  144. endif
  145. menuconfig RT_CHERRYUSB_HOST
  146. bool "Enable usb host mode"
  147. default n
  148. if RT_CHERRYUSB_HOST
  149. choice
  150. prompt "Select usb host ip, and some ip need config in usb_config.h, please check"
  151. default RT_CHERRYUSB_HOST_CUSTOM
  152. config RT_CHERRYUSB_HOST_CUSTOM
  153. bool "CUSTOM (Implement it yourself)"
  154. config RT_CHERRYUSB_HOST_EHCI_BL
  155. bool "ehci_bouffalo"
  156. config RT_CHERRYUSB_HOST_EHCI_HPM
  157. bool "ehci_hpm"
  158. config RT_CHERRYUSB_HOST_EHCI_AIC
  159. bool "ehci_aic"
  160. config RT_CHERRYUSB_HOST_EHCI_MCX
  161. bool "ehci_mcx"
  162. config RT_CHERRYUSB_HOST_EHCI_NUC980
  163. bool "ehci_nuc980"
  164. config RT_CHERRYUSB_HOST_EHCI_MA35D0
  165. bool "ehci_ma35d0"
  166. config RT_CHERRYUSB_HOST_EHCI_CUSTOM
  167. bool "ehci_custom"
  168. config RT_CHERRYUSB_HOST_DWC2_ST
  169. bool "dwc2_st"
  170. config RT_CHERRYUSB_HOST_DWC2_ESP
  171. bool "dwc2_esp"
  172. config RT_CHERRYUSB_HOST_DWC2_KENDRYTE
  173. bool "dwc2_kendryte"
  174. config RT_CHERRYUSB_HOST_DWC2_CUSTOM
  175. bool "dwc2_custom"
  176. config RT_CHERRYUSB_HOST_MUSB_ES
  177. bool "musb_es"
  178. config RT_CHERRYUSB_HOST_MUSB_SUNXI
  179. bool "musb_sunxi"
  180. config RT_CHERRYUSB_HOST_MUSB_BK
  181. bool "musb_bk"
  182. config RT_CHERRYUSB_HOST_MUSB_CUSTOM
  183. bool "musb_custom"
  184. config RT_CHERRYUSB_HOST_PUSB2
  185. bool "pusb2"
  186. config RT_CHERRYUSB_HOST_XHCI
  187. bool "xhci"
  188. config RT_CHERRYUSB_HOST_KINETIS_MCX
  189. bool "kinetis_mcx"
  190. config RT_CHERRYUSB_HOST_KINETIS_CUSTOM
  191. bool "kinetis_custom"
  192. endchoice
  193. config RT_CHERRYUSB_HOST_CDC_ACM
  194. bool
  195. prompt "Enable usb cdc acm driver"
  196. default n
  197. config RT_CHERRYUSB_HOST_HID
  198. bool
  199. prompt "Enable usb hid driver"
  200. default n
  201. config RT_CHERRYUSB_HOST_MSC
  202. bool
  203. prompt "Enable usb msc driver"
  204. default n
  205. select RT_USING_DFS
  206. select RT_USING_DFS_ELMFAT
  207. config RT_CHERRYUSB_HOST_CDC_ECM
  208. bool
  209. prompt "Enable usb cdc ecm driver"
  210. select RT_USING_LWIP
  211. select CONFIG_USBHOST_PLATFORM_CDC_ECM
  212. default n
  213. config RT_CHERRYUSB_HOST_CDC_RNDIS
  214. bool
  215. prompt "Enable usb rndis driver"
  216. select RT_USING_LWIP
  217. select CONFIG_USBHOST_PLATFORM_CDC_RNDIS
  218. default n
  219. config RT_CHERRYUSB_HOST_CDC_NCM
  220. bool
  221. prompt "Enable usb cdc ncm driver"
  222. select RT_USING_LWIP
  223. select CONFIG_USBHOST_PLATFORM_CDC_NCM
  224. default n
  225. config RT_CHERRYUSB_HOST_VIDEO
  226. bool
  227. prompt "Enable usb video driver, it is commercial charge"
  228. default n
  229. config RT_CHERRYUSB_HOST_AUDIO
  230. bool
  231. prompt "Enable usb audio driver, it is commercial charge"
  232. default n
  233. config RT_CHERRYUSB_HOST_BLUETOOTH
  234. bool
  235. prompt "Enable usb bluetooth driver"
  236. default n
  237. config RT_CHERRYUSB_HOST_ASIX
  238. bool
  239. prompt "Enable usb asix driver"
  240. select RT_USING_LWIP
  241. select CONFIG_USBHOST_PLATFORM_ASIX
  242. default n
  243. config RT_CHERRYUSB_HOST_RTL8152
  244. bool
  245. prompt "Enable usb rtl8152 driver"
  246. select RT_USING_LWIP
  247. select CONFIG_USBHOST_PLATFORM_RTL8152
  248. default n
  249. config RT_CHERRYUSB_HOST_FTDI
  250. bool
  251. prompt "Enable usb ftdi driver"
  252. default n
  253. config RT_CHERRYUSB_HOST_CH34X
  254. bool
  255. prompt "Enable usb ch34x driver"
  256. default n
  257. config RT_CHERRYUSB_HOST_CP210X
  258. bool
  259. prompt "Enable usb cp210x driver"
  260. default n
  261. config RT_CHERRYUSB_HOST_PL2303
  262. bool
  263. prompt "Enable usb pl2303 driver"
  264. default n
  265. config CONFIG_USBHOST_PLATFORM_CDC_ECM
  266. bool
  267. config CONFIG_USBHOST_PLATFORM_CDC_RNDIS
  268. bool
  269. config CONFIG_USBHOST_PLATFORM_CDC_NCM
  270. bool
  271. config CONFIG_USBHOST_PLATFORM_ASIX
  272. bool
  273. config CONFIG_USBHOST_PLATFORM_RTL8152
  274. bool
  275. config RT_LWIP_PBUF_POOL_BUFSIZE
  276. int "The size of each pbuf in the pbuf pool"
  277. range 1500 2000
  278. default 1600
  279. config RT_CHERRYUSB_HOST_TEMPLATE
  280. bool
  281. prompt "Use usb host template"
  282. default n
  283. if RT_CHERRYUSB_HOST_TEMPLATE
  284. config TEST_USBH_CDC_ACM
  285. int
  286. prompt "demo for test cdc acm"
  287. default 0
  288. depends on CHERRYUSB_HOST_CDC_ACM
  289. config TEST_USBH_HID
  290. int
  291. prompt "demo for test hid"
  292. default 0
  293. depends on CHERRYUSB_HOST_HID
  294. endif
  295. endif
  296. endif