Kconfig 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874
  1. menu "Device Drivers"
  2. config RT_USING_DEVICE_IPC
  3. bool "Using device drivers IPC"
  4. default y
  5. if RT_USING_DEVICE_IPC
  6. config RT_USING_SYSTEM_WORKQUEUE
  7. bool "Using system default workqueue"
  8. default n
  9. if RT_USING_SYSTEM_WORKQUEUE
  10. config RT_SYSTEM_WORKQUEUE_STACKSIZE
  11. int "The stack size for system workqueue thread"
  12. default 2048
  13. config RT_SYSTEM_WORKQUEUE_PRIORITY
  14. int "The priority level of system workqueue thread"
  15. default 23
  16. endif
  17. endif
  18. menuconfig RT_USING_SERIAL
  19. bool "USING Serial device drivers"
  20. select RT_USING_DEVICE_IPC
  21. select RT_USING_DEVICE
  22. default y
  23. if RT_USING_SERIAL
  24. choice
  25. prompt "Choice Serial version"
  26. default RT_USING_SERIAL_V1
  27. config RT_USING_SERIAL_V1
  28. bool "RT_USING_SERIAL_V1"
  29. config RT_USING_SERIAL_V2
  30. bool "RT_USING_SERIAL_V2"
  31. endchoice
  32. config RT_SERIAL_USING_DMA
  33. bool "Enable serial DMA mode"
  34. default y
  35. config RT_SERIAL_RB_BUFSZ
  36. int "Set RX buffer size"
  37. depends on !RT_USING_SERIAL_V2
  38. default 64
  39. endif
  40. config RT_USING_CAN
  41. bool "Using CAN device drivers"
  42. default n
  43. if RT_USING_CAN
  44. config RT_CAN_USING_HDR
  45. bool "Enable CAN hardware filter"
  46. default n
  47. config RT_CAN_USING_CANFD
  48. bool "Enable CANFD support"
  49. default n
  50. endif
  51. config RT_USING_HWTIMER
  52. bool "Using hardware timer device drivers"
  53. default n
  54. config RT_USING_CPUTIME
  55. bool "Enable CPU time for high resolution clock counter"
  56. default n
  57. help
  58. When enable this option, the BSP should provide a rt_clock_cputime_ops
  59. for CPU time by:
  60. const static struct rt_clock_cputime_ops _ops = {...};
  61. clock_cpu_setops(&_ops);
  62. Then user can use high resolution clock counter with:
  63. ts1 = clock_cpu_gettime();
  64. ts2 = clock_cpu_gettime();
  65. /* and get the ms of delta tick with API: */
  66. ms_tick = clock_cpu_millisecond(t2 - t1);
  67. us_tick = clock_cpu_microsecond(t2 - t1);
  68. if RT_USING_CPUTIME
  69. config RT_USING_CPUTIME_CORTEXM
  70. bool "Support Cortex-M CPU"
  71. default y
  72. depends on ARCH_ARM_CORTEX_M0 || ARCH_ARM_CORTEX_M3 || ARCH_ARM_CORTEX_M4 || ARCH_ARM_CORTEX_M7
  73. select PKG_USING_PERF_COUNTER
  74. endif
  75. config RT_USING_I2C
  76. bool "Using I2C device drivers"
  77. default n
  78. if RT_USING_I2C
  79. config RT_I2C_DEBUG
  80. bool "Use I2C debug message"
  81. default n
  82. config RT_USING_I2C_BITOPS
  83. bool "Use GPIO to simulate I2C"
  84. default y
  85. if RT_USING_I2C_BITOPS
  86. config RT_I2C_BITOPS_DEBUG
  87. bool "Use simulate I2C debug message"
  88. default n
  89. endif
  90. endif
  91. config RT_USING_PHY
  92. bool "Using ethernet phy device drivers"
  93. default n
  94. config RT_USING_PIN
  95. bool "Using generic GPIO device drivers"
  96. default y
  97. config RT_USING_ADC
  98. bool "Using ADC device drivers"
  99. default n
  100. config RT_USING_DAC
  101. bool "Using DAC device drivers"
  102. default n
  103. config RT_USING_PWM
  104. bool "Using PWM device drivers"
  105. default n
  106. config RT_USING_MTD_NOR
  107. bool "Using MTD Nor Flash device drivers"
  108. default n
  109. config RT_USING_MTD_NAND
  110. bool "Using MTD Nand Flash device drivers"
  111. default n
  112. if RT_USING_MTD_NAND
  113. config RT_MTD_NAND_DEBUG
  114. bool "Enable MTD Nand operations debug information"
  115. default n
  116. endif
  117. config RT_USING_PM
  118. bool "Using Power Management device drivers"
  119. default n
  120. if RT_USING_PM
  121. config PM_TICKLESS_THRESHOLD_TIME
  122. int "PM tickless threashold time"
  123. default 2
  124. config PM_USING_CUSTOM_CONFIG
  125. bool "PM using custom pm config"
  126. default n
  127. config PM_ENABLE_DEBUG
  128. bool "PM Enable Debug"
  129. default n
  130. config PM_ENABLE_SUSPEND_SLEEP_MODE
  131. bool "PM Device suspend change sleep mode"
  132. default n
  133. config PM_ENABLE_THRESHOLD_SLEEP_MODE
  134. bool "PM using threshold time change sleep mode"
  135. default n
  136. if PM_ENABLE_THRESHOLD_SLEEP_MODE
  137. config PM_LIGHT_THRESHOLD_TIME
  138. int "PM light mode threashold time"
  139. default 5
  140. config PM_DEEP_THRESHOLD_TIME
  141. int "PM deep mode threashold time"
  142. default 20
  143. config PM_STANDBY_THRESHOLD_TIME
  144. int "PM standby mode threashold time"
  145. default 100
  146. endif
  147. endif
  148. config RT_USING_RTC
  149. bool "Using RTC device drivers"
  150. default n
  151. if RT_USING_RTC
  152. config RT_USING_ALARM
  153. bool "Using RTC alarm"
  154. default n
  155. config RT_USING_SOFT_RTC
  156. bool "Using software simulation RTC device"
  157. default n
  158. endif
  159. config RT_USING_SDIO
  160. bool "Using SD/MMC device drivers"
  161. default n
  162. if RT_USING_SDIO
  163. config RT_SDIO_STACK_SIZE
  164. int "The stack size for sdio irq thread"
  165. default 512
  166. config RT_SDIO_THREAD_PRIORITY
  167. int "The priority level value of sdio irq thread"
  168. default 15
  169. config RT_MMCSD_STACK_SIZE
  170. int "The stack size for mmcsd thread"
  171. default 1024
  172. config RT_MMCSD_THREAD_PREORITY
  173. int "The priority level value of mmcsd thread"
  174. default 22
  175. config RT_MMCSD_MAX_PARTITION
  176. int "mmcsd max partition"
  177. default 16
  178. config RT_SDIO_DEBUG
  179. bool "Enable SDIO debug log output"
  180. default n
  181. endif
  182. config RT_USING_SPI
  183. bool "Using SPI Bus/Device device drivers"
  184. default n
  185. if RT_USING_SPI
  186. config RT_USING_SPI_BITOPS
  187. select RT_USING_PIN
  188. bool "Use GPIO to simulate SPI"
  189. default n
  190. if RT_USING_SPI_BITOPS
  191. config RT_SPI_BITOPS_DEBUG
  192. bool "Use simulate SPI debug message"
  193. default n
  194. endif
  195. config RT_USING_QSPI
  196. bool "Enable QSPI mode"
  197. default n
  198. config RT_USING_SPI_MSD
  199. bool "Using SD/TF card driver with spi"
  200. select RT_USING_DFS
  201. default n
  202. config RT_USING_SFUD
  203. bool "Using Serial Flash Universal Driver"
  204. default n
  205. help
  206. An using JEDEC's SFDP standard serial (SPI) flash universal driver library
  207. if RT_USING_SFUD
  208. config RT_SFUD_USING_SFDP
  209. bool "Using auto probe flash JEDEC SFDP parameter"
  210. default y
  211. config RT_SFUD_USING_FLASH_INFO_TABLE
  212. bool "Using defined supported flash chip information table"
  213. default y
  214. config RT_SFUD_USING_QSPI
  215. bool "Using QSPI mode support"
  216. select RT_USING_QSPI
  217. default n
  218. config RT_SFUD_SPI_MAX_HZ
  219. int "Default spi maximum speed(HZ)"
  220. range 0 50000000
  221. default 50000000
  222. help
  223. Read the JEDEC SFDP command must run at 50 MHz or less,and you also can use rt_spi_configure(); to config spi speed.
  224. config RT_DEBUG_SFUD
  225. bool "Show more SFUD debug information"
  226. default n
  227. endif
  228. config RT_USING_ENC28J60
  229. bool "Using ENC28J60 SPI Ethernet network interface"
  230. select RT_USING_LWIP
  231. default n
  232. config RT_USING_SPI_WIFI
  233. bool "Using RW009/007 SPI Wi-Fi wireless interface"
  234. select RT_USING_LWIP
  235. default n
  236. endif
  237. config RT_USING_WDT
  238. bool "Using Watch Dog device drivers"
  239. default n
  240. config RT_USING_AUDIO
  241. bool "Using Audio device drivers"
  242. default n
  243. if RT_USING_AUDIO
  244. config RT_AUDIO_REPLAY_MP_BLOCK_SIZE
  245. int "Replay memory pool block size"
  246. default 4096
  247. config RT_AUDIO_REPLAY_MP_BLOCK_COUNT
  248. int "Replay memory pool block count"
  249. default 2
  250. config RT_AUDIO_RECORD_PIPE_SIZE
  251. int "Record pipe size"
  252. default 2048
  253. endif
  254. config RT_USING_SENSOR
  255. bool "Using Sensor device drivers"
  256. select RT_USING_PIN
  257. default n
  258. if RT_USING_SENSOR
  259. config RT_USING_SENSOR_CMD
  260. bool "Enable sensor commands"
  261. select PKG_USING_RT_VSNPRINTF_FULL
  262. default y
  263. config RT_USING_SENSOR_DOUBLE_FLOAT
  264. bool "Using double floating as sensor data type"
  265. default n
  266. endif
  267. config RT_USING_TOUCH
  268. bool "Using Touch device drivers"
  269. default n
  270. if RT_USING_TOUCH
  271. config RT_TOUCH_PIN_IRQ
  272. bool "touch irq use pin irq"
  273. default n
  274. endif
  275. menuconfig RT_USING_HWCRYPTO
  276. bool "Using Hardware Crypto drivers"
  277. default n
  278. if RT_USING_HWCRYPTO
  279. config RT_HWCRYPTO_DEFAULT_NAME
  280. string "Hardware crypto device name"
  281. default "hwcryto"
  282. config RT_HWCRYPTO_IV_MAX_SIZE
  283. int "IV max size"
  284. default "16"
  285. config RT_HWCRYPTO_KEYBIT_MAX_SIZE
  286. int "Key max bit length"
  287. default 256
  288. config RT_HWCRYPTO_USING_GCM
  289. bool "Using Hardware GCM"
  290. default n
  291. config RT_HWCRYPTO_USING_AES
  292. bool "Using Hardware AES"
  293. default n
  294. if RT_HWCRYPTO_USING_AES
  295. config RT_HWCRYPTO_USING_AES_ECB
  296. bool "Using Hardware AES ECB mode"
  297. default y
  298. config RT_HWCRYPTO_USING_AES_CBC
  299. bool "Using Hardware AES CBC mode"
  300. default n
  301. config RT_HWCRYPTO_USING_AES_CFB
  302. bool "Using Hardware AES CFB mode"
  303. default n
  304. config RT_HWCRYPTO_USING_AES_CTR
  305. bool "Using Hardware AES CTR mode"
  306. default n
  307. config RT_HWCRYPTO_USING_AES_OFB
  308. bool "Using Hardware AES OFB mode"
  309. default n
  310. endif
  311. config RT_HWCRYPTO_USING_DES
  312. bool "Using Hardware DES"
  313. default n
  314. if RT_HWCRYPTO_USING_DES
  315. config RT_HWCRYPTO_USING_DES_ECB
  316. bool "Using Hardware DES ECB mode"
  317. default y
  318. config RT_HWCRYPTO_USING_DES_CBC
  319. bool "Using Hardware DES CBC mode"
  320. default n
  321. endif
  322. config RT_HWCRYPTO_USING_3DES
  323. bool "Using Hardware 3DES"
  324. default n
  325. if RT_HWCRYPTO_USING_3DES
  326. config RT_HWCRYPTO_USING_3DES_ECB
  327. bool "Using Hardware 3DES ECB mode"
  328. default y
  329. config RT_HWCRYPTO_USING_3DES_CBC
  330. bool "Using Hardware 3DES CBC mode"
  331. default n
  332. endif
  333. config RT_HWCRYPTO_USING_RC4
  334. bool "Using Hardware RC4"
  335. default n
  336. config RT_HWCRYPTO_USING_MD5
  337. bool "Using Hardware MD5"
  338. default n
  339. config RT_HWCRYPTO_USING_SHA1
  340. bool "Using Hardware SHA1"
  341. default n
  342. config RT_HWCRYPTO_USING_SHA2
  343. bool "Using Hardware SHA2"
  344. default n
  345. if RT_HWCRYPTO_USING_SHA2
  346. config RT_HWCRYPTO_USING_SHA2_224
  347. bool "Using Hardware SHA2_224 mode"
  348. default n
  349. config RT_HWCRYPTO_USING_SHA2_256
  350. bool "Using Hardware SHA2_256 mode"
  351. default y
  352. config RT_HWCRYPTO_USING_SHA2_384
  353. bool "Using Hardware SHA2_384 mode"
  354. default n
  355. config RT_HWCRYPTO_USING_SHA2_512
  356. bool "Using Hardware SHA2_512 mode"
  357. default n
  358. endif
  359. config RT_HWCRYPTO_USING_RNG
  360. bool "Using Hardware RNG"
  361. default n
  362. config RT_HWCRYPTO_USING_CRC
  363. bool "Using Hardware CRC"
  364. default n
  365. if RT_HWCRYPTO_USING_CRC
  366. config RT_HWCRYPTO_USING_CRC_07
  367. bool "Using Hardware CRC-8 0x07 polynomial"
  368. default n
  369. config RT_HWCRYPTO_USING_CRC_8005
  370. bool "Using Hardware CRC-16 0x8005 polynomial"
  371. default n
  372. config RT_HWCRYPTO_USING_CRC_1021
  373. bool "Using Hardware CRC-16 0x1021 polynomial"
  374. default n
  375. config RT_HWCRYPTO_USING_CRC_3D65
  376. bool "Using Hardware CRC-16 0x3D65 polynomial"
  377. default n
  378. config RT_HWCRYPTO_USING_CRC_04C11DB7
  379. bool "Using Hardware CRC-32 0x04C11DB7 polynomial"
  380. default n
  381. endif
  382. config RT_HWCRYPTO_USING_BIGNUM
  383. bool "Using Hardware bignum"
  384. default n
  385. if RT_HWCRYPTO_USING_BIGNUM
  386. config RT_HWCRYPTO_USING_BIGNUM_EXPTMOD
  387. bool "Using Hardware bignum expt_mod operation"
  388. default y
  389. config RT_HWCRYPTO_USING_BIGNUM_MULMOD
  390. bool "Using Hardware bignum mul_mod operation"
  391. default y
  392. config RT_HWCRYPTO_USING_BIGNUM_MUL
  393. bool "Using Hardware bignum mul operation"
  394. default n
  395. config RT_HWCRYPTO_USING_BIGNUM_ADD
  396. bool "Using Hardware bignum add operation"
  397. default n
  398. config RT_HWCRYPTO_USING_BIGNUM_SUB
  399. bool "Using Hardware bignum sub operation"
  400. default n
  401. endif
  402. endif
  403. config RT_USING_PULSE_ENCODER
  404. bool "Using PULSE ENCODER device drivers"
  405. default n
  406. config RT_USING_INPUT_CAPTURE
  407. bool "Using INPUT CAPTURE device drivers"
  408. default n
  409. if RT_USING_INPUT_CAPTURE
  410. config RT_INPUT_CAPTURE_RB_SIZE
  411. int "Set input capture ringbuffer size"
  412. default 100
  413. endif
  414. menuconfig RT_USING_WIFI
  415. bool "Using Wi-Fi framework"
  416. default n
  417. if RT_USING_WIFI
  418. config RT_WLAN_DEVICE_STA_NAME
  419. string "The device name for station"
  420. default "wlan0"
  421. config RT_WLAN_DEVICE_AP_NAME
  422. string "The device name for ap"
  423. default "wlan1"
  424. config RT_WLAN_SSID_MAX_LENGTH
  425. int "SSID maximum length"
  426. default 32
  427. config RT_WLAN_PASSWORD_MAX_LENGTH
  428. int "Password maximum length"
  429. default 32
  430. config RT_WLAN_DEV_EVENT_NUM
  431. int "Driver events maxcount"
  432. default 2
  433. config RT_WLAN_MANAGE_ENABLE
  434. bool "Connection management Enable"
  435. default y
  436. if RT_WLAN_MANAGE_ENABLE
  437. config RT_WLAN_SCAN_WAIT_MS
  438. int "Set scan timeout time(ms)"
  439. default 10000
  440. config RT_WLAN_CONNECT_WAIT_MS
  441. int "Set connect timeout time(ms)"
  442. default 10000
  443. config RT_WLAN_SCAN_SORT
  444. bool "Automatic sorting of scan results"
  445. default y
  446. config RT_WLAN_MSH_CMD_ENABLE
  447. bool "MSH command Enable"
  448. default y
  449. config RT_WLAN_AUTO_CONNECT_ENABLE
  450. bool "Auto connect Enable"
  451. select RT_WLAN_CFG_ENABLE
  452. select RT_WLAN_WORK_THREAD_ENABLE
  453. default y
  454. if RT_WLAN_AUTO_CONNECT_ENABLE
  455. config AUTO_CONNECTION_PERIOD_MS
  456. int "Auto connect period(ms)"
  457. default 2000
  458. endif
  459. endif
  460. config RT_WLAN_CFG_ENABLE
  461. bool "WiFi information automatically saved Enable"
  462. default y
  463. if RT_WLAN_CFG_ENABLE
  464. config RT_WLAN_CFG_INFO_MAX
  465. int "Maximum number of WiFi information automatically saved"
  466. default 3
  467. endif
  468. config RT_WLAN_PROT_ENABLE
  469. bool "Transport protocol manage Enable"
  470. default y
  471. if RT_WLAN_PROT_ENABLE
  472. config RT_WLAN_PROT_NAME_LEN
  473. int "Transport protocol name length"
  474. default 8
  475. config RT_WLAN_PROT_MAX
  476. int "Transport protocol maxcount"
  477. default 2
  478. config RT_WLAN_DEFAULT_PROT
  479. string "Default transport protocol"
  480. default "lwip"
  481. config RT_WLAN_PROT_LWIP_ENABLE
  482. bool "LWIP transport protocol Enable"
  483. select RT_USING_LWIP
  484. default y
  485. if RT_WLAN_PROT_LWIP_ENABLE
  486. config RT_WLAN_PROT_LWIP_NAME
  487. string "LWIP transport protocol name"
  488. default "lwip"
  489. config RT_WLAN_PROT_LWIP_PBUF_FORCE
  490. bool "Forced use of PBUF transmission"
  491. default n
  492. endif
  493. endif
  494. config RT_WLAN_WORK_THREAD_ENABLE
  495. bool "WLAN work queue thread Enable"
  496. default y
  497. if RT_WLAN_WORK_THREAD_ENABLE
  498. config RT_WLAN_WORKQUEUE_THREAD_NAME
  499. string "WLAN work queue thread name"
  500. default "wlan"
  501. config RT_WLAN_WORKQUEUE_THREAD_SIZE
  502. int "WLAN work queue thread size"
  503. default 2048
  504. config RT_WLAN_WORKQUEUE_THREAD_PRIO
  505. int "WLAN work queue thread priority"
  506. default 15
  507. endif
  508. menuconfig RT_WLAN_DEBUG
  509. bool "Enable WLAN Debugging Options"
  510. default n
  511. if RT_WLAN_DEBUG
  512. config RT_WLAN_CMD_DEBUG
  513. bool "Enable Debugging of wlan_cmd.c"
  514. default n
  515. config RT_WLAN_MGNT_DEBUG
  516. bool "Enable Debugging of wlan_mgnt.c"
  517. default n
  518. config RT_WLAN_DEV_DEBUG
  519. bool "Enable Debugging of wlan_dev.c"
  520. default n
  521. config RT_WLAN_PROT_DEBUG
  522. bool "Enable Debugging of wlan_prot.c"
  523. default n
  524. config RT_WLAN_CFG_DEBUG
  525. bool "Enable Debugging of wlan_cfg.c"
  526. default n
  527. config RT_WLAN_LWIP_DEBUG
  528. bool "Enable Debugging of wlan_lwip.c"
  529. default n
  530. endif
  531. endif
  532. menu "Using USB"
  533. config RT_USING_USB
  534. bool
  535. default n
  536. config RT_USING_USB_HOST
  537. bool "Using USB host"
  538. default n
  539. select RT_USING_USB
  540. if RT_USING_USB_HOST
  541. config RT_USBH_MSTORAGE
  542. bool "Enable Udisk Drivers"
  543. default n
  544. if RT_USBH_MSTORAGE
  545. config UDISK_MOUNTPOINT
  546. string "Udisk mount dir"
  547. default "/"
  548. endif
  549. config RT_USBH_HID
  550. bool "Enable HID Drivers"
  551. default n
  552. if RT_USBH_HID
  553. config RT_USBH_HID_MOUSE
  554. bool "Enable HID mouse protocol"
  555. default n
  556. config RT_USBH_HID_KEYBOARD
  557. bool "Enable HID keyboard protocol"
  558. default n
  559. endif
  560. endif
  561. config RT_USING_USB_DEVICE
  562. bool "Using USB device"
  563. default n
  564. select RT_USING_USB
  565. if RT_USING_USB_DEVICE || RT_USING_USB_HOST
  566. config RT_USBD_THREAD_STACK_SZ
  567. int "usb thread stack size"
  568. default 4096
  569. endif
  570. if RT_USING_USB_DEVICE
  571. config USB_VENDOR_ID
  572. hex "USB Vendor ID"
  573. default 0x0FFE
  574. config USB_PRODUCT_ID
  575. hex "USB Product ID"
  576. default 0x0001
  577. config RT_USB_DEVICE_COMPOSITE
  578. bool "Enable composite device"
  579. default n
  580. choice
  581. prompt "Device type"
  582. default _RT_USB_DEVICE_NONE
  583. depends on !RT_USB_DEVICE_COMPOSITE
  584. config _RT_USB_DEVICE_NONE
  585. bool "Using custom class by register interface"
  586. select RT_USB_DEVICE_NONE
  587. config _RT_USB_DEVICE_CDC
  588. bool "Enable to use device as CDC device"
  589. select RT_USB_DEVICE_CDC
  590. config _RT_USB_DEVICE_MSTORAGE
  591. bool "Enable to use device as Mass Storage device"
  592. select RT_USB_DEVICE_MSTORAGE
  593. config _RT_USB_DEVICE_HID
  594. bool "Enable to use device as HID device"
  595. select RT_USB_DEVICE_HID
  596. config _RT_USB_DEVICE_RNDIS
  597. bool "Enable to use device as rndis device"
  598. select RT_USB_DEVICE_RNDIS
  599. depends on RT_USING_LWIP
  600. config _RT_USB_DEVICE_ECM
  601. bool "Enable to use device as ecm device"
  602. select RT_USB_DEVICE_ECM
  603. depends on RT_USING_LWIP
  604. config _RT_USB_DEVICE_WINUSB
  605. bool "Enable to use device as winusb device"
  606. select RT_USB_DEVICE_WINUSB
  607. config _RT_USB_DEVICE_AUDIO
  608. bool "Enable to use device as audio device"
  609. select RT_USB_DEVICE_AUDIO
  610. endchoice
  611. if RT_USB_DEVICE_COMPOSITE
  612. config RT_USB_DEVICE_CDC
  613. bool "Enable to use device as CDC device"
  614. default n
  615. config RT_USB_DEVICE_NONE
  616. bool
  617. default y
  618. config RT_USB_DEVICE_MSTORAGE
  619. bool "Enable to use device as Mass Storage device"
  620. default n
  621. config RT_USB_DEVICE_HID
  622. bool "Enable to use device as HID device"
  623. default n
  624. config RT_USB_DEVICE_RNDIS
  625. bool "Enable to use device as rndis device"
  626. default n
  627. depends on RT_USING_LWIP
  628. config RT_USB_DEVICE_ECM
  629. bool "Enable to use device as ecm device"
  630. default n
  631. depends on RT_USING_LWIP
  632. config RT_USB_DEVICE_WINUSB
  633. bool "Enable to use device as winusb device"
  634. default n
  635. config RT_USB_DEVICE_AUDIO
  636. bool "Enable to use device as audio device"
  637. default n
  638. endif
  639. if RT_USB_DEVICE_CDC
  640. config RT_VCOM_TASK_STK_SIZE
  641. int "virtual com thread stack size"
  642. default 512
  643. config RT_CDC_RX_BUFSIZE
  644. int "virtual com rx buffer size"
  645. default 128
  646. config RT_VCOM_TX_USE_DMA
  647. bool "Enable to use dma for vcom tx"
  648. default n
  649. config RT_VCOM_SERNO
  650. string "serial number of virtual com"
  651. default "32021919830108"
  652. config RT_VCOM_SER_LEN
  653. int "serial number length of virtual com"
  654. default 14
  655. config RT_VCOM_TX_TIMEOUT
  656. int "tx timeout(ticks) of virtual com"
  657. default 1000
  658. endif
  659. if RT_USB_DEVICE_WINUSB
  660. config RT_WINUSB_GUID
  661. string "Guid for winusb"
  662. default "{6860DC3C-C05F-4807-8807-1CA861CC1D66}"
  663. endif
  664. if RT_USB_DEVICE_MSTORAGE
  665. config RT_USB_MSTORAGE_DISK_NAME
  666. string "msc class disk name"
  667. default "flash0"
  668. endif
  669. if RT_USB_DEVICE_RNDIS
  670. config RNDIS_DELAY_LINK_UP
  671. bool "Delay linkup media connection"
  672. select RT_USING_TIMER_SOFT
  673. default n
  674. endif
  675. if RT_USB_DEVICE_HID
  676. config RT_USB_DEVICE_HID_KEYBOARD
  677. bool "Use to HID device as Keyboard"
  678. default n
  679. if RT_USB_DEVICE_HID_KEYBOARD
  680. config RT_USB_DEVICE_HID_KEYBOARD_NUMBER
  681. int "Number of Keyboard(max 3)"
  682. default 1
  683. range 1 3
  684. endif
  685. config RT_USB_DEVICE_HID_MOUSE
  686. bool "Use to HID device as Mouse"
  687. default n
  688. config RT_USB_DEVICE_HID_GENERAL
  689. bool "Use to HID device as General HID device"
  690. default y
  691. if RT_USB_DEVICE_HID_GENERAL
  692. config RT_USB_DEVICE_HID_GENERAL_OUT_REPORT_LENGTH
  693. int "General HID device out report length"
  694. default 63
  695. range 0 63
  696. config RT_USB_DEVICE_HID_GENERAL_IN_REPORT_LENGTH
  697. int "General HID device in report length"
  698. default 63
  699. range 0 63
  700. endif
  701. config RT_USB_DEVICE_HID_MEDIA
  702. bool "Use to HID device as media keyboard"
  703. default y
  704. endif
  705. if RT_USB_DEVICE_AUDIO
  706. config RT_USB_DEVICE_AUDIO_MIC
  707. bool "Use usb mic device as audio device"
  708. default n
  709. if RT_USB_DEVICE_AUDIO_MIC
  710. config RT_USBD_MIC_DEVICE_NAME
  711. string "audio mic device name"
  712. default "mic0"
  713. endif
  714. config RT_USB_DEVICE_AUDIO_SPEAKER
  715. bool "Use usb speaker device as audio device"
  716. default n
  717. if RT_USB_DEVICE_AUDIO_SPEAKER
  718. config RT_USBD_SPEAKER_DEVICE_NAME
  719. string "audio speaker device name"
  720. default "sound0"
  721. endif
  722. endif
  723. endif
  724. endmenu
  725. endmenu