menu "Device Drivers" config RT_USING_DEVICE_IPC bool "Using device drivers IPC" default y config RT_UNAMED_PIPE_NUMBER int "The number of unamed pipe" default 64 if RT_USING_DEVICE_IPC config RT_USING_SYSTEM_WORKQUEUE bool "Using system default workqueue" default n if RT_USING_SYSTEM_WORKQUEUE config RT_SYSTEM_WORKQUEUE_STACKSIZE int "The stack size for system workqueue thread" default 2048 config RT_SYSTEM_WORKQUEUE_PRIORITY int "The priority level of system workqueue thread" default 23 endif endif menuconfig RT_USING_SERIAL bool "USING Serial device drivers" select RT_USING_DEVICE_IPC select RT_USING_DEVICE default y if RT_USING_SERIAL choice prompt "Choice Serial version" default RT_USING_SERIAL_V1 config RT_USING_SERIAL_V1 bool "RT_USING_SERIAL_V1" config RT_USING_SERIAL_V2 bool "RT_USING_SERIAL_V2" endchoice config RT_SERIAL_USING_DMA bool "Enable serial DMA mode" default y config RT_SERIAL_RB_BUFSZ int "Set RX buffer size" depends on !RT_USING_SERIAL_V2 default 64 endif config RT_USING_TTY bool "Using TTY SYSTEM" depends on RT_USING_SMART default y if RT_USING_TTY config RT_TTY_DEBUG bool "Using TTY DEBUG" default n endif config RT_USING_CAN bool "Using CAN device drivers" default n if RT_USING_CAN config RT_CAN_USING_HDR bool "Enable CAN hardware filter" default n config RT_CAN_USING_CANFD bool "Enable CANFD support" default n endif config RT_USING_HWTIMER bool "Using hardware timer device drivers" default n config RT_USING_CPUTIME bool "Enable CPU time for high resolution clock counter" default n help When enable this option, the BSP should provide a rt_clock_cputime_ops for CPU time by: const static struct rt_clock_cputime_ops _ops = {...}; clock_cpu_setops(&_ops); Then user can use high resolution clock counter with: ts1 = clock_cpu_gettime(); ts2 = clock_cpu_gettime(); /* and get the ms of delta tick with API: */ ms_tick = clock_cpu_millisecond(t2 - t1); us_tick = clock_cpu_microsecond(t2 - t1); if RT_USING_CPUTIME config RT_USING_CPUTIME_CORTEXM bool "Support Cortex-M CPU" default y depends on ARCH_ARM_CORTEX_M0 || ARCH_ARM_CORTEX_M3 || ARCH_ARM_CORTEX_M4 || ARCH_ARM_CORTEX_M7 select PKG_USING_PERF_COUNTER config RT_USING_CPUTIME_RISCV bool "Use rdtime instructions for CPU time" default y depends on ARCH_RISCV64 help Some RISCV64 MCU Use rdtime instructions read CPU time. config CPUTIME_TIMER_FREQ int "CPUTIME timer freq" default 0 endif config RT_USING_I2C bool "Using I2C device drivers" default n if RT_USING_I2C config RT_I2C_DEBUG bool "Use I2C debug message" default n config RT_USING_I2C_BITOPS bool "Use GPIO to simulate I2C" default y if RT_USING_I2C_BITOPS config RT_I2C_BITOPS_DEBUG bool "Use simulate I2C debug message" default n endif endif config RT_USING_PHY bool "Using ethernet phy device drivers" default n config RT_USING_PIN bool "Using generic GPIO device drivers" default y config RT_USING_ADC bool "Using ADC device drivers" default n config RT_USING_DAC bool "Using DAC device drivers" default n config RT_USING_NULL bool "Using NULL device drivers" default n config RT_USING_ZERO bool "Using ZERO device drivers" default n config RT_USING_RANDOM bool "Using RANDOM device drivers" default n config RT_USING_PWM bool "Using PWM device drivers" default n config RT_USING_MTD_NOR bool "Using MTD Nor Flash device drivers" default n config RT_USING_MTD_NAND bool "Using MTD Nand Flash device drivers" default n if RT_USING_MTD_NAND config RT_MTD_NAND_DEBUG bool "Enable MTD Nand operations debug information" default n endif config RT_USING_PM bool "Using Power Management device drivers" default n if RT_USING_PM config PM_TICKLESS_THRESHOLD_TIME int "PM tickless threashold time" default 2 config PM_USING_CUSTOM_CONFIG bool "PM using custom pm config" default n config PM_ENABLE_DEBUG bool "PM Enable Debug" default n config PM_ENABLE_SUSPEND_SLEEP_MODE bool "PM Device suspend change sleep mode" default n config PM_ENABLE_THRESHOLD_SLEEP_MODE bool "PM using threshold time change sleep mode" default n if PM_ENABLE_THRESHOLD_SLEEP_MODE config PM_LIGHT_THRESHOLD_TIME int "PM light mode threashold time" default 5 config PM_DEEP_THRESHOLD_TIME int "PM deep mode threashold time" default 20 config PM_STANDBY_THRESHOLD_TIME int "PM standby mode threashold time" default 100 endif endif config RT_USING_FDT bool "Using fdt interface for device drivers" default n if RT_USING_FDT config RT_USING_FDTLIB bool "Using fdt lib for device drivers" default y config FDT_USING_DEBUG bool "Using fdt debug function " default n endif config RT_USING_RTC bool "Using RTC device drivers" default n if RT_USING_RTC config RT_USING_ALARM bool "Using RTC alarm" default n config RT_USING_SOFT_RTC bool "Using software simulation RTC device" default n endif config RT_USING_SDIO bool "Using SD/MMC device drivers" default n if RT_USING_SDIO config RT_SDIO_STACK_SIZE int "The stack size for sdio irq thread" default 512 config RT_SDIO_THREAD_PRIORITY int "The priority level value of sdio irq thread" default 15 config RT_MMCSD_STACK_SIZE int "The stack size for mmcsd thread" default 1024 config RT_MMCSD_THREAD_PREORITY int "The priority level value of mmcsd thread" default 22 config RT_MMCSD_MAX_PARTITION int "mmcsd max partition" default 16 config RT_SDIO_DEBUG bool "Enable SDIO debug log output" default n endif config RT_USING_SPI bool "Using SPI Bus/Device device drivers" default n if RT_USING_SPI config RT_USING_SPI_BITOPS select RT_USING_PIN bool "Use GPIO to simulate SPI" default n if RT_USING_SPI_BITOPS config RT_SPI_BITOPS_DEBUG bool "Use simulate SPI debug message" default n endif config RT_USING_QSPI bool "Enable QSPI mode" default n config RT_USING_SPI_MSD bool "Using SD/TF card driver with spi" select RT_USING_DFS default n config RT_USING_SFUD bool "Using Serial Flash Universal Driver" default n help An using JEDEC's SFDP standard serial (SPI) flash universal driver library if RT_USING_SFUD config RT_SFUD_USING_SFDP bool "Using auto probe flash JEDEC SFDP parameter" default y config RT_SFUD_USING_FLASH_INFO_TABLE bool "Using defined supported flash chip information table" default y config RT_SFUD_USING_QSPI bool "Using QSPI mode support" select RT_USING_QSPI default n config RT_SFUD_SPI_MAX_HZ int "Default spi maximum speed(HZ)" range 0 50000000 default 50000000 help Read the JEDEC SFDP command must run at 50 MHz or less,and you also can use rt_spi_configure(); to config spi speed. config RT_DEBUG_SFUD bool "Show more SFUD debug information" default n endif config RT_USING_ENC28J60 bool "Using ENC28J60 SPI Ethernet network interface" select RT_USING_LWIP default n config RT_USING_SPI_WIFI bool "Using RW009/007 SPI Wi-Fi wireless interface" select RT_USING_LWIP default n endif config RT_USING_WDT bool "Using Watch Dog device drivers" default n config RT_USING_AUDIO bool "Using Audio device drivers" default n if RT_USING_AUDIO config RT_AUDIO_REPLAY_MP_BLOCK_SIZE int "Replay memory pool block size" default 4096 config RT_AUDIO_REPLAY_MP_BLOCK_COUNT int "Replay memory pool block count" default 2 config RT_AUDIO_RECORD_PIPE_SIZE int "Record pipe size" default 2048 endif config RT_USING_SENSOR bool "Using Sensor device drivers" select RT_USING_PIN default n if RT_USING_SENSOR config RT_USING_SENSOR_V2 bool "Enable Sensor Framework v2" default n config RT_USING_SENSOR_CMD bool "Using Sensor cmd" select PKG_USING_RT_VSNPRINTF_FULL if RT_USING_SENSOR_V2 default y endif config RT_USING_TOUCH bool "Using Touch device drivers" default n if RT_USING_TOUCH config RT_TOUCH_PIN_IRQ bool "touch irq use pin irq" default n endif config RT_USING_LCD bool "Using LCD graphic drivers" default n menuconfig RT_USING_HWCRYPTO bool "Using Hardware Crypto drivers" default n if RT_USING_HWCRYPTO config RT_HWCRYPTO_DEFAULT_NAME string "Hardware crypto device name" default "hwcryto" config RT_HWCRYPTO_IV_MAX_SIZE int "IV max size" default "16" config RT_HWCRYPTO_KEYBIT_MAX_SIZE int "Key max bit length" default 256 config RT_HWCRYPTO_USING_GCM bool "Using Hardware GCM" default n config RT_HWCRYPTO_USING_AES bool "Using Hardware AES" default n if RT_HWCRYPTO_USING_AES config RT_HWCRYPTO_USING_AES_ECB bool "Using Hardware AES ECB mode" default y config RT_HWCRYPTO_USING_AES_CBC bool "Using Hardware AES CBC mode" default n config RT_HWCRYPTO_USING_AES_CFB bool "Using Hardware AES CFB mode" default n config RT_HWCRYPTO_USING_AES_CTR bool "Using Hardware AES CTR mode" default n config RT_HWCRYPTO_USING_AES_OFB bool "Using Hardware AES OFB mode" default n endif config RT_HWCRYPTO_USING_DES bool "Using Hardware DES" default n if RT_HWCRYPTO_USING_DES config RT_HWCRYPTO_USING_DES_ECB bool "Using Hardware DES ECB mode" default y config RT_HWCRYPTO_USING_DES_CBC bool "Using Hardware DES CBC mode" default n endif config RT_HWCRYPTO_USING_3DES bool "Using Hardware 3DES" default n if RT_HWCRYPTO_USING_3DES config RT_HWCRYPTO_USING_3DES_ECB bool "Using Hardware 3DES ECB mode" default y config RT_HWCRYPTO_USING_3DES_CBC bool "Using Hardware 3DES CBC mode" default n endif config RT_HWCRYPTO_USING_RC4 bool "Using Hardware RC4" default n config RT_HWCRYPTO_USING_MD5 bool "Using Hardware MD5" default n config RT_HWCRYPTO_USING_SHA1 bool "Using Hardware SHA1" default n config RT_HWCRYPTO_USING_SHA2 bool "Using Hardware SHA2" default n if RT_HWCRYPTO_USING_SHA2 config RT_HWCRYPTO_USING_SHA2_224 bool "Using Hardware SHA2_224 mode" default n config RT_HWCRYPTO_USING_SHA2_256 bool "Using Hardware SHA2_256 mode" default y config RT_HWCRYPTO_USING_SHA2_384 bool "Using Hardware SHA2_384 mode" default n config RT_HWCRYPTO_USING_SHA2_512 bool "Using Hardware SHA2_512 mode" default n endif config RT_HWCRYPTO_USING_RNG bool "Using Hardware RNG" default n config RT_HWCRYPTO_USING_CRC bool "Using Hardware CRC" default n if RT_HWCRYPTO_USING_CRC config RT_HWCRYPTO_USING_CRC_07 bool "Using Hardware CRC-8 0x07 polynomial" default n config RT_HWCRYPTO_USING_CRC_8005 bool "Using Hardware CRC-16 0x8005 polynomial" default n config RT_HWCRYPTO_USING_CRC_1021 bool "Using Hardware CRC-16 0x1021 polynomial" default n config RT_HWCRYPTO_USING_CRC_3D65 bool "Using Hardware CRC-16 0x3D65 polynomial" default n config RT_HWCRYPTO_USING_CRC_04C11DB7 bool "Using Hardware CRC-32 0x04C11DB7 polynomial" default n endif config RT_HWCRYPTO_USING_BIGNUM bool "Using Hardware bignum" default n if RT_HWCRYPTO_USING_BIGNUM config RT_HWCRYPTO_USING_BIGNUM_EXPTMOD bool "Using Hardware bignum expt_mod operation" default y config RT_HWCRYPTO_USING_BIGNUM_MULMOD bool "Using Hardware bignum mul_mod operation" default y config RT_HWCRYPTO_USING_BIGNUM_MUL bool "Using Hardware bignum mul operation" default n config RT_HWCRYPTO_USING_BIGNUM_ADD bool "Using Hardware bignum add operation" default n config RT_HWCRYPTO_USING_BIGNUM_SUB bool "Using Hardware bignum sub operation" default n endif endif config RT_USING_PULSE_ENCODER bool "Using PULSE ENCODER device drivers" default n config RT_USING_INPUT_CAPTURE bool "Using INPUT CAPTURE device drivers" default n if RT_USING_INPUT_CAPTURE config RT_INPUT_CAPTURE_RB_SIZE int "Set input capture ringbuffer size" default 100 endif config RT_USING_DEV_BUS bool "Using Device Bus device drivers" default y if RT_USING_SMART default n if !RT_USING_SMART menuconfig RT_USING_WIFI bool "Using Wi-Fi framework" default n if RT_USING_WIFI config RT_WLAN_DEVICE_STA_NAME string "The device name for station" default "wlan0" config RT_WLAN_DEVICE_AP_NAME string "The device name for ap" default "wlan1" config RT_WLAN_SSID_MAX_LENGTH int "SSID maximum length" default 32 config RT_WLAN_PASSWORD_MAX_LENGTH int "Password maximum length" default 32 config RT_WLAN_DEV_EVENT_NUM int "Driver events maxcount" default 2 config RT_WLAN_MANAGE_ENABLE bool "Connection management Enable" default y if RT_WLAN_MANAGE_ENABLE config RT_WLAN_SCAN_WAIT_MS int "Set scan timeout time(ms)" default 10000 config RT_WLAN_CONNECT_WAIT_MS int "Set connect timeout time(ms)" default 10000 config RT_WLAN_SCAN_SORT bool "Automatic sorting of scan results" default y config RT_WLAN_MSH_CMD_ENABLE bool "MSH command Enable" default y config RT_WLAN_AUTO_CONNECT_ENABLE bool "Auto connect Enable" select RT_WLAN_CFG_ENABLE select RT_WLAN_WORK_THREAD_ENABLE default y if RT_WLAN_AUTO_CONNECT_ENABLE config AUTO_CONNECTION_PERIOD_MS int "Auto connect period(ms)" default 2000 endif endif config RT_WLAN_CFG_ENABLE bool "WiFi information automatically saved Enable" default y if RT_WLAN_CFG_ENABLE config RT_WLAN_CFG_INFO_MAX int "Maximum number of WiFi information automatically saved" default 3 endif config RT_WLAN_PROT_ENABLE bool "Transport protocol manage Enable" default y if RT_WLAN_PROT_ENABLE config RT_WLAN_PROT_NAME_LEN int "Transport protocol name length" default 8 config RT_WLAN_PROT_MAX int "Transport protocol maxcount" default 2 config RT_WLAN_DEFAULT_PROT string "Default transport protocol" default "lwip" config RT_WLAN_PROT_LWIP_ENABLE bool "LWIP transport protocol Enable" select RT_USING_LWIP default y if RT_WLAN_PROT_LWIP_ENABLE config RT_WLAN_PROT_LWIP_NAME string "LWIP transport protocol name" default "lwip" config RT_WLAN_PROT_LWIP_PBUF_FORCE bool "Forced use of PBUF transmission" default n endif endif config RT_WLAN_WORK_THREAD_ENABLE bool "WLAN work queue thread Enable" default y if RT_WLAN_WORK_THREAD_ENABLE config RT_WLAN_WORKQUEUE_THREAD_NAME string "WLAN work queue thread name" default "wlan" config RT_WLAN_WORKQUEUE_THREAD_SIZE int "WLAN work queue thread size" default 2048 config RT_WLAN_WORKQUEUE_THREAD_PRIO int "WLAN work queue thread priority" default 15 endif menuconfig RT_WLAN_DEBUG bool "Enable WLAN Debugging Options" default n if RT_WLAN_DEBUG config RT_WLAN_CMD_DEBUG bool "Enable Debugging of wlan_cmd.c" default n config RT_WLAN_MGNT_DEBUG bool "Enable Debugging of wlan_mgnt.c" default n config RT_WLAN_DEV_DEBUG bool "Enable Debugging of wlan_dev.c" default n config RT_WLAN_PROT_DEBUG bool "Enable Debugging of wlan_prot.c" default n config RT_WLAN_CFG_DEBUG bool "Enable Debugging of wlan_cfg.c" default n config RT_WLAN_LWIP_DEBUG bool "Enable Debugging of wlan_lwip.c" default n endif endif menuconfig RT_USING_VIRTIO bool "Using VirtIO device drivers" default n if RT_USING_VIRTIO choice prompt "VirtIO Version" default RT_USING_VIRTIO10 config RT_USING_VIRTIO10 bool "VirtIO v1.0" endchoice config RT_USING_VIRTIO_MMIO_ALIGN bool "Using VirtIO MMIO alignment" default y config RT_USING_VIRTIO_BLK bool "Using VirtIO BLK" default y config RT_USING_VIRTIO_NET bool "Using VirtIO NET" default y menuconfig RT_USING_VIRTIO_CONSOLE bool "Using VirtIO Console" default y if RT_USING_VIRTIO_CONSOLE config RT_USING_VIRTIO_CONSOLE_PORT_MAX_NR int "Max number of port in VirtIO Console" default 4 endif config RT_USING_VIRTIO_GPU bool "Using VirtIO GPU" default y config RT_USING_VIRTIO_INPUT bool "Using VirtIO Input" default y endif menu "Using USB" config RT_USING_USB bool default n config RT_USING_USB_HOST bool "Using USB host" default n select RT_USING_USB if RT_USING_USB_HOST config RT_USBH_MSTORAGE bool "Enable Udisk Drivers" default n if RT_USBH_MSTORAGE config UDISK_MOUNTPOINT string "Udisk mount dir" default "/" endif config RT_USBH_HID bool "Enable HID Drivers" default n if RT_USBH_HID config RT_USBH_HID_MOUSE bool "Enable HID mouse protocol" default n config RT_USBH_HID_KEYBOARD bool "Enable HID keyboard protocol" default n endif endif config RT_USING_USB_DEVICE bool "Using USB device" default n select RT_USING_USB if RT_USING_USB_DEVICE || RT_USING_USB_HOST config RT_USBD_THREAD_STACK_SZ int "usb thread stack size" default 4096 endif if RT_USING_USB_DEVICE config USB_VENDOR_ID hex "USB Vendor ID" default 0x0FFE config USB_PRODUCT_ID hex "USB Product ID" default 0x0001 config RT_USB_DEVICE_COMPOSITE bool "Enable composite device" default n choice prompt "Device type" default _RT_USB_DEVICE_NONE depends on !RT_USB_DEVICE_COMPOSITE config _RT_USB_DEVICE_NONE bool "Using custom class by register interface" select RT_USB_DEVICE_NONE config _RT_USB_DEVICE_CDC bool "Enable to use device as CDC device" select RT_USB_DEVICE_CDC config _RT_USB_DEVICE_MSTORAGE bool "Enable to use device as Mass Storage device" select RT_USB_DEVICE_MSTORAGE config _RT_USB_DEVICE_HID bool "Enable to use device as HID device" select RT_USB_DEVICE_HID config _RT_USB_DEVICE_RNDIS bool "Enable to use device as rndis device" select RT_USB_DEVICE_RNDIS depends on RT_USING_LWIP config _RT_USB_DEVICE_ECM bool "Enable to use device as ecm device" select RT_USB_DEVICE_ECM depends on RT_USING_LWIP config _RT_USB_DEVICE_WINUSB bool "Enable to use device as winusb device" select RT_USB_DEVICE_WINUSB config _RT_USB_DEVICE_AUDIO bool "Enable to use device as audio device" select RT_USB_DEVICE_AUDIO endchoice if RT_USB_DEVICE_COMPOSITE config RT_USB_DEVICE_CDC bool "Enable to use device as CDC device" default n config RT_USB_DEVICE_NONE bool default y config RT_USB_DEVICE_MSTORAGE bool "Enable to use device as Mass Storage device" default n config RT_USB_DEVICE_HID bool "Enable to use device as HID device" default n config RT_USB_DEVICE_RNDIS bool "Enable to use device as rndis device" default n depends on RT_USING_LWIP config RT_USB_DEVICE_ECM bool "Enable to use device as ecm device" default n depends on RT_USING_LWIP config RT_USB_DEVICE_WINUSB bool "Enable to use device as winusb device" default n config RT_USB_DEVICE_AUDIO bool "Enable to use device as audio device" default n endif if RT_USB_DEVICE_CDC config RT_VCOM_TASK_STK_SIZE int "virtual com thread stack size" default 512 config RT_CDC_RX_BUFSIZE int "virtual com rx buffer size" default 128 config RT_VCOM_TX_USE_DMA bool "Enable to use dma for vcom tx" default n config RT_VCOM_SERNO string "serial number of virtual com" default "32021919830108" config RT_VCOM_SER_LEN int "serial number length of virtual com" default 14 config RT_VCOM_TX_TIMEOUT int "tx timeout(ticks) of virtual com" default 1000 endif if RT_USB_DEVICE_WINUSB config RT_WINUSB_GUID string "Guid for winusb" default "{6860DC3C-C05F-4807-8807-1CA861CC1D66}" endif if RT_USB_DEVICE_MSTORAGE config RT_USB_MSTORAGE_DISK_NAME string "msc class disk name" default "flash0" endif if RT_USB_DEVICE_RNDIS config RNDIS_DELAY_LINK_UP bool "Delay linkup media connection" select RT_USING_TIMER_SOFT default n endif if RT_USB_DEVICE_HID config RT_USB_DEVICE_HID_KEYBOARD bool "Use to HID device as Keyboard" default n if RT_USB_DEVICE_HID_KEYBOARD config RT_USB_DEVICE_HID_KEYBOARD_NUMBER int "Number of Keyboard(max 3)" default 1 range 1 3 endif config RT_USB_DEVICE_HID_MOUSE bool "Use to HID device as Mouse" default n config RT_USB_DEVICE_HID_GENERAL bool "Use to HID device as General HID device" default y if RT_USB_DEVICE_HID_GENERAL config RT_USB_DEVICE_HID_GENERAL_OUT_REPORT_LENGTH int "General HID device out report length" default 63 range 0 63 config RT_USB_DEVICE_HID_GENERAL_IN_REPORT_LENGTH int "General HID device in report length" default 63 range 0 63 endif config RT_USB_DEVICE_HID_MEDIA bool "Use to HID device as media keyboard" default y endif if RT_USB_DEVICE_AUDIO config RT_USB_DEVICE_AUDIO_MIC bool "Use usb mic device as audio device" default n if RT_USB_DEVICE_AUDIO_MIC config RT_USBD_MIC_DEVICE_NAME string "audio mic device name" default "mic0" endif config RT_USB_DEVICE_AUDIO_SPEAKER bool "Use usb speaker device as audio device" default n if RT_USB_DEVICE_AUDIO_SPEAKER config RT_USBD_SPEAKER_DEVICE_NAME string "audio speaker device name" default "sound0" endif endif endif endmenu endmenu