Kconfig 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361
  1. # Kconfig file for CherryUSB
  2. menuconfig CHERRYUSB
  3. bool "CherryUSB Configuration"
  4. default n
  5. if CHERRYUSB
  6. menuconfig CHERRYUSB_DEVICE
  7. bool "Enable usb device mode"
  8. default n
  9. if CHERRYUSB_DEVICE
  10. choice
  11. prompt "Select usb device speed"
  12. default CHERRYUSB_DEVICE_SPEED_FS
  13. config CHERRYUSB_DEVICE_SPEED_FS
  14. bool "FS"
  15. config CHERRYUSB_DEVICE_SPEED_HS
  16. bool "HS"
  17. config 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 CHERRYUSB_DEVICE_CUSTOM
  23. config CHERRYUSB_DEVICE_CUSTOM
  24. bool "CUSTOM (Implement it yourself)"
  25. config CHERRYUSB_DEVICE_FSDEV_ST
  26. bool "fsdev_st"
  27. config CHERRYUSB_DEVICE_FSDEV_CUSTOM
  28. bool "fsdev_custom"
  29. config CHERRYUSB_DEVICE_DWC2_ST
  30. bool "dwc2_st"
  31. config CHERRYUSB_DEVICE_DWC2_ESP
  32. bool "dwc2_esp"
  33. config CHERRYUSB_DEVICE_DWC2_KENDRYTE
  34. bool "dwc2_kendryte"
  35. config CHERRYUSB_DEVICE_DWC2_AT
  36. bool "dwc2_at"
  37. config CHERRYUSB_DEVICE_DWC2_HC
  38. bool "dwc2_hc"
  39. config CHERRYUSB_DEVICE_DWC2_NATION
  40. bool "dwc2_nation"
  41. config CHERRYUSB_DEVICE_DWC2_GD
  42. bool "dwc2_gd"
  43. config CHERRYUSB_DEVICE_DWC2_CUSTOM
  44. bool "dwc2_custom"
  45. config CHERRYUSB_DEVICE_MUSB_ES
  46. bool "musb_es"
  47. config CHERRYUSB_DEVICE_MUSB_SUNXI
  48. bool "musb_sunxi"
  49. config CHERRYUSB_DEVICE_MUSB_BK
  50. bool "musb_bk"
  51. config CHERRYUSB_DEVICE_MUSB_CUSTOM
  52. bool "musb_custom"
  53. config CHERRYUSB_DEVICE_CHIPIDEA_MCX
  54. bool "chipidea_mcx"
  55. config CHERRYUSB_DEVICE_CHIPIDEA_CUSTOM
  56. bool "chipidea_custom"
  57. config CHERRYUSB_DEVICE_KINETIS_MCX
  58. bool "kinetis_mcx"
  59. config CHERRYUSB_DEVICE_KINETIS_MM32
  60. bool "kinetis_mm32"
  61. config CHERRYUSB_DEVICE_KINETIS_CUSTOM
  62. bool "kinetis_custom"
  63. config CHERRYUSB_DEVICE_BL
  64. bool "bouffalo"
  65. config CHERRYUSB_DEVICE_HPM
  66. bool "hpm"
  67. config CHERRYUSB_DEVICE_AIC
  68. bool "aic"
  69. config CHERRYUSB_DEVICE_RP2040
  70. bool "rp2040"
  71. config CHERRYUSB_DEVICE_CH32
  72. bool "ch32"
  73. config CHERRYUSB_DEVICE_PUSB2
  74. bool "pusb2"
  75. endchoice
  76. config CHERRYUSB_DEVICE_CDC_ACM
  77. bool
  78. prompt "Enable usb cdc acm device"
  79. default n
  80. config CHERRYUSB_DEVICE_HID
  81. bool
  82. prompt "Enable usb hid device"
  83. default n
  84. config CHERRYUSB_DEVICE_MSC
  85. bool
  86. prompt "Enable usb msc device"
  87. default n
  88. config CHERRYUSB_DEVICE_AUDIO
  89. bool
  90. prompt "Enable usb audio device"
  91. default n
  92. config CHERRYUSB_DEVICE_VIDEO
  93. bool
  94. prompt "Enable usb video device"
  95. default n
  96. config CHERRYUSB_DEVICE_CDC_RNDIS
  97. bool
  98. prompt "Enable usb cdc rndis device"
  99. default n
  100. config CHERRYUSB_DEVICE_CDC_ECM
  101. bool
  102. prompt "Enable usb cdc ecm device"
  103. default n
  104. config CHERRYUSB_DEVICE_CDC_NCM
  105. bool
  106. prompt "Enable usb cdc ncm device"
  107. default n
  108. config CHERRYUSB_DEVICE_MTP
  109. bool
  110. prompt "Enable usb mtp device, it is commercial charge"
  111. default n
  112. config CHERRYUSB_DEVICE_DFU
  113. bool
  114. prompt "Enable usb dfu device"
  115. default n
  116. config CHERRYUSB_DEVICE_ADB
  117. bool
  118. prompt "Enable usb adb device"
  119. default n
  120. choice
  121. prompt "Select usb device template"
  122. default CHERRYUSB_DEVICE_TEMPLATE_NONE
  123. config CHERRYUSB_DEVICE_TEMPLATE_NONE
  124. bool "none (Implement it yourself)"
  125. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM
  126. bool "cdc_acm"
  127. config CHERRYUSB_DEVICE_TEMPLATE_MSC
  128. bool "msc"
  129. config CHERRYUSB_DEVICE_TEMPLATE_HID_KEYBOARD
  130. bool "hid_keyboard"
  131. config CHERRYUSB_DEVICE_TEMPLATE_HID_MOUSE
  132. bool "hid_mouse"
  133. config CHERRYUSB_DEVICE_TEMPLATE_HID_CUSTOM
  134. bool "hid_custom"
  135. config CHERRYUSB_DEVICE_TEMPLATE_VIDEO
  136. bool "video"
  137. config CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V1_MIC_SPEAKER
  138. bool "audio_v1_mic_speaker_multichan"
  139. config CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V2_MIC_SPEAKER
  140. bool "audio_v2_mic_speaker_multichan"
  141. config CHERRYUSB_DEVICE_TEMPLATE_CDC_RNDIS
  142. bool "cdc_rndis"
  143. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ECM
  144. bool "cdc_ecm"
  145. config CHERRYUSB_DEVICE_TEMPLATE_CDC_NCM
  146. bool "cdc_ncm"
  147. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC
  148. bool "cdc_acm_msc"
  149. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC_HID
  150. bool "cdc_acm_msc_hid"
  151. config CHERRYUSB_DEVICE_TEMPLATE_WINUSBV1
  152. bool "winusbv1"
  153. config CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2_CDC
  154. bool "winusbv2_cdc"
  155. config CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2_HID
  156. bool "winusbv2_hid"
  157. endchoice
  158. endif
  159. menuconfig CHERRYUSB_HOST
  160. bool "Enable usb host mode"
  161. default n
  162. if CHERRYUSB_HOST
  163. choice
  164. prompt "Select usb host ip, and some ip need config in usb_config.h, please check"
  165. default CHERRYUSB_HOST_CUSTOM
  166. config CHERRYUSB_HOST_CUSTOM
  167. bool "CUSTOM (Implement it yourself)"
  168. config CHERRYUSB_HOST_EHCI_BL
  169. bool "ehci_bouffalo"
  170. config CHERRYUSB_HOST_EHCI_HPM
  171. bool "ehci_hpm"
  172. config CHERRYUSB_HOST_EHCI_AIC
  173. bool "ehci_aic"
  174. config CHERRYUSB_HOST_EHCI_MCX
  175. bool "ehci_mcx"
  176. config CHERRYUSB_HOST_EHCI_NUC980
  177. bool "ehci_nuc980"
  178. config CHERRYUSB_HOST_EHCI_MA35D0
  179. bool "ehci_ma35d0"
  180. config CHERRYUSB_HOST_EHCI_CUSTOM
  181. bool "ehci_custom"
  182. config CHERRYUSB_HOST_DWC2_ST
  183. bool "dwc2_st"
  184. config CHERRYUSB_HOST_DWC2_ESP
  185. bool "dwc2_esp"
  186. config CHERRYUSB_HOST_DWC2_KENDRYTE
  187. bool "dwc2_kendryte"
  188. config CHERRYUSB_HOST_DWC2_HC
  189. bool "dwc2_hc"
  190. config CHERRYUSB_HOST_DWC2_NATION
  191. bool "dwc2_nation"
  192. config CHERRYUSB_HOST_DWC2_CUSTOM
  193. bool "dwc2_custom"
  194. config CHERRYUSB_HOST_MUSB_ES
  195. bool "musb_es"
  196. config CHERRYUSB_HOST_MUSB_SUNXI
  197. bool "musb_sunxi"
  198. config CHERRYUSB_HOST_MUSB_BK
  199. bool "musb_bk"
  200. config CHERRYUSB_HOST_MUSB_CUSTOM
  201. bool "musb_custom"
  202. config CHERRYUSB_HOST_PUSB2
  203. bool "pusb2"
  204. config CHERRYUSB_HOST_XHCI_PHYTIUM
  205. bool "xhci_phytium"
  206. config CHERRYUSB_HOST_XHCI_CUSTOM
  207. bool "xhci"
  208. config CHERRYUSB_HOST_KINETIS_MCX
  209. bool "kinetis_mcx"
  210. config CHERRYUSB_HOST_KINETIS_MM32
  211. bool "kinetis_mm32"
  212. config CHERRYUSB_HOST_KINETIS_CUSTOM
  213. bool "kinetis_custom"
  214. config CHERRYUSB_HOST_RP2040
  215. bool "rp2040"
  216. endchoice
  217. config CHERRYUSB_HOST_CDC_ACM
  218. bool
  219. prompt "Enable usb cdc acm driver"
  220. default n
  221. config CHERRYUSB_HOST_HID
  222. bool
  223. prompt "Enable usb hid driver"
  224. default n
  225. config CHERRYUSB_HOST_MSC
  226. bool
  227. prompt "Enable usb msc driver"
  228. default n
  229. config CHERRYUSB_HOST_CDC_ECM
  230. bool
  231. prompt "Enable usb cdc ecm driver"
  232. select USBHOST_PLATFORM_CDC_ECM
  233. default n
  234. config CHERRYUSB_HOST_CDC_RNDIS
  235. bool
  236. prompt "Enable usb rndis driver"
  237. select USBHOST_PLATFORM_CDC_RNDIS
  238. default n
  239. config CHERRYUSB_HOST_CDC_NCM
  240. bool
  241. prompt "Enable usb cdc ncm driver"
  242. select USBHOST_PLATFORM_CDC_NCM
  243. default n
  244. config CHERRYUSB_HOST_VIDEO
  245. bool
  246. prompt "Enable usb video driver, it is commercial charge"
  247. default n
  248. config CHERRYUSB_HOST_AUDIO
  249. bool
  250. prompt "Enable usb audio driver, it is commercial charge"
  251. default n
  252. config CHERRYUSB_HOST_BLUETOOTH
  253. bool
  254. prompt "Enable usb bluetooth driver"
  255. default n
  256. config CHERRYUSB_HOST_ASIX
  257. bool
  258. prompt "Enable usb asix driver"
  259. select USBHOST_PLATFORM_ASIX
  260. default n
  261. config CHERRYUSB_HOST_RTL8152
  262. bool
  263. prompt "Enable usb rtl8152 driver"
  264. select USBHOST_PLATFORM_RTL8152
  265. default n
  266. config CHERRYUSB_HOST_FTDI
  267. bool
  268. prompt "Enable usb ftdi driver"
  269. default n
  270. config CHERRYUSB_HOST_CH34X
  271. bool
  272. prompt "Enable usb ch34x driver"
  273. default n
  274. config CHERRYUSB_HOST_CP210X
  275. bool
  276. prompt "Enable usb cp210x driver"
  277. default n
  278. config CHERRYUSB_HOST_PL2303
  279. bool
  280. prompt "Enable usb pl2303 driver"
  281. default n
  282. config CHERRYUSB_HOST_AOA
  283. bool
  284. prompt "Enable usb aoa driver"
  285. default n
  286. config USBHOST_PLATFORM_CDC_ECM
  287. bool
  288. config USBHOST_PLATFORM_CDC_RNDIS
  289. bool
  290. config USBHOST_PLATFORM_CDC_NCM
  291. bool
  292. config USBHOST_PLATFORM_ASIX
  293. bool
  294. config USBHOST_PLATFORM_RTL8152
  295. bool
  296. config CHERRYUSB_HOST_TEMPLATE
  297. bool
  298. prompt "Use usb host template"
  299. default n
  300. if CHERRYUSB_HOST_TEMPLATE
  301. config TEST_USBH_CDC_ACM
  302. int
  303. prompt "demo for test cdc acm"
  304. default 0
  305. depends on CHERRYUSB_HOST_CDC_ACM
  306. config TEST_USBH_HID
  307. int
  308. prompt "demo for test hid"
  309. default 0
  310. depends on CHERRYUSB_HOST_HID
  311. config TEST_USBH_MSC
  312. int
  313. prompt "demo for test msc"
  314. default 0
  315. depends on CHERRYUSB_HOST_MSC
  316. endif
  317. endif
  318. endif