Kconfig.cherryusb 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312
  1. # Kconfig file for CherryUSB
  2. menuconfig CHERRYUSB
  3. bool "Using CherryUSB"
  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
  26. bool "fsdev"
  27. config CHERRYUSB_DEVICE_DWC2_ST
  28. bool "dwc2_st"
  29. config CHERRYUSB_DEVICE_DWC2_ESP
  30. bool "dwc2_esp"
  31. config CHERRYUSB_DEVICE_DWC2_AT
  32. bool "dwc2_at"
  33. config CHERRYUSB_DEVICE_DWC2_GD
  34. bool "dwc2_gd"
  35. config CHERRYUSB_DEVICE_DWC2_HC
  36. bool "dwc2_hc"
  37. config CHERRYUSB_DEVICE_DWC2_CUSTOM
  38. bool "dwc2_custom"
  39. config CHERRYUSB_DEVICE_MUSB_ES
  40. bool "musb_es"
  41. config CHERRYUSB_DEVICE_MUSB_SUNXI
  42. bool "musb_sunxi"
  43. config CHERRYUSB_DEVICE_MUSB_BK
  44. bool "musb_bk"
  45. config CHERRYUSB_DEVICE_MUSB_CUSTOM
  46. bool "musb_custom"
  47. config CHERRYUSB_DEVICE_BL
  48. bool "bouffalo"
  49. config CHERRYUSB_DEVICE_HPM
  50. bool "hpm"
  51. config CHERRYUSB_DEVICE_AIC
  52. bool "aic"
  53. config CHERRYUSB_DEVICE_CH32
  54. bool "ch32"
  55. config CHERRYUSB_DEVICE_PUSB2
  56. bool "pusb2"
  57. endchoice
  58. config CHERRYUSB_DEVICE_CDC_ACM
  59. bool
  60. prompt "Enable usb cdc acm device"
  61. default n
  62. config CHERRYUSB_DEVICE_HID
  63. bool
  64. prompt "Enable usb hid device"
  65. default n
  66. config CHERRYUSB_DEVICE_MSC
  67. bool
  68. prompt "Enable usb msc device"
  69. default n
  70. config CHERRYUSB_DEVICE_AUDIO
  71. bool
  72. prompt "Enable usb audio device"
  73. default n
  74. config CHERRYUSB_DEVICE_VIDEO
  75. bool
  76. prompt "Enable usb video device"
  77. default n
  78. config CHERRYUSB_DEVICE_CDC_RNDIS
  79. bool
  80. prompt "Enable usb cdc rndis device"
  81. default n
  82. config CHERRYUSB_DEVICE_CDC_ECM
  83. bool
  84. prompt "Enable usb cdc ecm device"
  85. default n
  86. config CHERRYUSB_DEVICE_CDC_NCM
  87. bool
  88. prompt "Enable usb cdc ncm device"
  89. default n
  90. config CHERRYUSB_DEVICE_DFU
  91. bool
  92. prompt "Enable usb dfu device"
  93. default n
  94. choice
  95. prompt "Select usb device template"
  96. default CHERRYUSB_DEVICE_TEMPLATE_NONE
  97. config CHERRYUSB_DEVICE_TEMPLATE_NONE
  98. bool "none (Implement it yourself)"
  99. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM
  100. bool "cdc_acm"
  101. config CHERRYUSB_DEVICE_TEMPLATE_MSC
  102. bool "msc"
  103. config CHERRYUSB_DEVICE_TEMPLATE_HID_KEYBOARD
  104. bool "hid_keyboard"
  105. config CHERRYUSB_DEVICE_TEMPLATE_HID_MOUSE
  106. bool "hid_mouse"
  107. config CHERRYUSB_DEVICE_TEMPLATE_HID_CUSTOM
  108. bool "hid_custom"
  109. config CHERRYUSB_DEVICE_TEMPLATE_VIDEO
  110. bool "video"
  111. config CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V1_MIC_SPEAKER
  112. bool "audio_v1_mic_speaker_multichan"
  113. config CHERRYUSB_DEVICE_TEMPLATE_AUDIO_V2_MIC_SPEAKER
  114. bool "audio_v2_mic_speaker_multichan"
  115. config CHERRYUSB_DEVICE_TEMPLATE_CDC_RNDIS
  116. bool "cdc_rndis"
  117. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ECM
  118. bool "cdc_ecm"
  119. config CHERRYUSB_DEVICE_TEMPLATE_CDC_NCM
  120. bool "cdc_ncm"
  121. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC
  122. bool "cdc_acm_msc"
  123. config CHERRYUSB_DEVICE_TEMPLATE_CDC_ACM_MSC_HID
  124. bool "cdc_acm_msc_hid"
  125. config CHERRYUSB_DEVICE_TEMPLATE_WINUSBV1
  126. bool "winusbv1"
  127. config CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2_CDC
  128. bool "winusbv2_cdc"
  129. config CHERRYUSB_DEVICE_TEMPLATE_WINUSBV2_HID
  130. bool "winusbv2_hid"
  131. endchoice
  132. endif
  133. menuconfig CHERRYUSB_HOST
  134. bool "Enable usb host mode"
  135. default n
  136. if CHERRYUSB_HOST
  137. choice
  138. prompt "Select usb host ip, and some ip need config in usb_config.h, please check"
  139. default CHERRYUSB_HOST_CUSTOM
  140. config CHERRYUSB_HOST_CUSTOM
  141. bool "CUSTOM (Implement it yourself)"
  142. config CHERRYUSB_HOST_EHCI_BL
  143. bool "ehci_bouffalo"
  144. config CHERRYUSB_HOST_EHCI_HPM
  145. bool "ehci_hpm"
  146. config CHERRYUSB_HOST_EHCI_AIC
  147. bool "ehci_aic"
  148. config CHERRYUSB_HOST_EHCI_NUVOTON_NUC980
  149. bool "ehci_nuvoton_nuc980"
  150. config CHERRYUSB_HOST_EHCI_NUVOTON_MA35D0
  151. bool "ehci_nuvoton_ma35d0"
  152. config CHERRYUSB_HOST_EHCI_CUSTOM
  153. bool "ehci_custom"
  154. config CHERRYUSB_HOST_DWC2_ST
  155. bool "dwc2_st"
  156. config CHERRYUSB_HOST_DWC2_ESP
  157. bool "dwc2_esp"
  158. config CHERRYUSB_HOST_DWC2_HC
  159. bool "dwc2_hc"
  160. config CHERRYUSB_HOST_DWC2_CUSTOM
  161. bool "dwc2_custom"
  162. config CHERRYUSB_HOST_MUSB_ES
  163. bool "musb_es"
  164. config CHERRYUSB_HOST_MUSB_SUNXI
  165. bool "musb_sunxi"
  166. config CHERRYUSB_HOST_MUSB_BK
  167. bool "musb_bk"
  168. config CHERRYUSB_HOST_MUSB_CUSTOM
  169. bool "musb_custom"
  170. config CHERRYUSB_HOST_PUSB2
  171. bool "pusb2"
  172. config CHERRYUSB_HOST_XHCI
  173. bool "xhci"
  174. endchoice
  175. config CHERRYUSB_HOST_CDC_ACM
  176. bool
  177. prompt "Enable usb cdc acm driver"
  178. default n
  179. config CHERRYUSB_HOST_HID
  180. bool
  181. prompt "Enable usb hid driver"
  182. default n
  183. config CHERRYUSB_HOST_MSC
  184. bool
  185. prompt "Enable usb msc driver"
  186. default n
  187. config CHERRYUSB_HOST_CDC_ECM
  188. bool
  189. prompt "Enable usb cdc ecm driver"
  190. select USBHOST_PLATFORM_CDC_ECM
  191. default n
  192. config CHERRYUSB_HOST_CDC_RNDIS
  193. bool
  194. prompt "Enable usb rndis driver"
  195. select USBHOST_PLATFORM_CDC_RNDIS
  196. default n
  197. config CHERRYUSB_HOST_CDC_NCM
  198. bool
  199. prompt "Enable usb cdc ncm driver"
  200. select USBHOST_PLATFORM_CDC_NCM
  201. default n
  202. config CHERRYUSB_HOST_VIDEO
  203. bool
  204. prompt "Enable usb video driver, it is commercial charge"
  205. default n
  206. config CHERRYUSB_HOST_AUDIO
  207. bool
  208. prompt "Enable usb audio driver, it is commercial charge"
  209. default n
  210. config CHERRYUSB_HOST_BLUETOOTH
  211. bool
  212. prompt "Enable usb bluetooth driver"
  213. default n
  214. config CHERRYUSB_HOST_ASIX
  215. bool
  216. prompt "Enable usb asix driver"
  217. select USBHOST_PLATFORM_ASIX
  218. default n
  219. config CHERRYUSB_HOST_RTL8152
  220. bool
  221. prompt "Enable usb rtl8152 driver"
  222. select USBHOST_PLATFORM_RTL8152
  223. default n
  224. config CHERRYUSB_HOST_FTDI
  225. bool
  226. prompt "Enable usb ftdi driver"
  227. default n
  228. config CHERRYUSB_HOST_CH34X
  229. bool
  230. prompt "Enable usb ch34x driver"
  231. default n
  232. config CHERRYUSB_HOST_CP210X
  233. bool
  234. prompt "Enable usb cp210x driver"
  235. default n
  236. config CHERRYUSB_HOST_PL2303
  237. bool
  238. prompt "Enable usb pl2303 driver"
  239. default n
  240. config USBHOST_PLATFORM_CDC_ECM
  241. bool
  242. config USBHOST_PLATFORM_CDC_RNDIS
  243. bool
  244. config USBHOST_PLATFORM_CDC_NCM
  245. bool
  246. config USBHOST_PLATFORM_ASIX
  247. bool
  248. config USBHOST_PLATFORM_RTL8152
  249. bool
  250. config CHERRYUSB_HOST_TEMPLATE
  251. bool
  252. prompt "Use usb host template"
  253. default n
  254. if CHERRYUSB_HOST_TEMPLATE
  255. config TEST_USBH_CDC_ACM
  256. int
  257. prompt "demo for test cdc acm"
  258. default 0
  259. depends on CHERRYUSB_HOST_CDC_ACM
  260. config TEST_USBH_HID
  261. int
  262. prompt "demo for test hid"
  263. default 0
  264. depends on CHERRYUSB_HOST_HID
  265. config TEST_USBH_MSC
  266. int
  267. prompt "demo for test msc"
  268. default 0
  269. depends on CHERRYUSB_HOST_MSC
  270. endif
  271. endif
  272. endif