Kconfig 27 KB

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