Kconfig 28 KB

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