Kconfig 26 KB

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