Initial project setup
This commit is contained in:
379
managed_components/espressif__esp_tinyusb/Kconfig
Normal file
379
managed_components/espressif__esp_tinyusb/Kconfig
Normal file
@@ -0,0 +1,379 @@
|
||||
menu "TinyUSB Stack"
|
||||
config TINYUSB_DEBUG_LEVEL
|
||||
int "TinyUSB log level (0-3)"
|
||||
default 1
|
||||
range 0 3
|
||||
help
|
||||
Specify verbosity of TinyUSB log output.
|
||||
|
||||
choice TINYUSB_RHPORT
|
||||
prompt "USB Peripheral"
|
||||
default TINYUSB_RHPORT_HS if IDF_TARGET_ESP32P4
|
||||
default TINYUSB_RHPORT_FS
|
||||
help
|
||||
Allows set the USB Peripheral Controller for TinyUSB.
|
||||
|
||||
- High-speed (USB OTG2.0 Peripheral for High-, Full- and Low-speed)
|
||||
- Full-speed (USB OTG1.1 Peripheral for Full- and Low-speed)
|
||||
|
||||
config TINYUSB_RHPORT_HS
|
||||
bool "OTG2.0"
|
||||
depends on IDF_TARGET_ESP32P4
|
||||
config TINYUSB_RHPORT_FS
|
||||
bool "OTG1.1"
|
||||
endchoice
|
||||
|
||||
menu "TinyUSB DCD"
|
||||
choice TINYUSB_MODE
|
||||
prompt "DCD Mode"
|
||||
default TINYUSB_MODE_DMA
|
||||
help
|
||||
TinyUSB DCD DWC2 Driver supports two modes: Slave mode (based on IRQ) and Buffer DMA mode.
|
||||
|
||||
config TINYUSB_MODE_SLAVE
|
||||
bool "Slave/IRQ"
|
||||
config TINYUSB_MODE_DMA
|
||||
bool "Buffer DMA"
|
||||
endchoice
|
||||
endmenu # "TinyUSB DCD"
|
||||
|
||||
menu "TinyUSB task configuration"
|
||||
config TINYUSB_NO_DEFAULT_TASK
|
||||
bool "Do not create a TinyUSB task"
|
||||
default n
|
||||
help
|
||||
This option allows to not create the FreeRTOS task during the driver initialization.
|
||||
User will have to handle TinyUSB events manually.
|
||||
|
||||
config TINYUSB_TASK_PRIORITY
|
||||
int "TinyUSB task priority"
|
||||
default 5
|
||||
depends on !TINYUSB_NO_DEFAULT_TASK
|
||||
help
|
||||
Set the priority of the default TinyUSB main task.
|
||||
|
||||
config TINYUSB_TASK_STACK_SIZE
|
||||
int "TinyUSB task stack size (bytes)"
|
||||
default 4096
|
||||
depends on !TINYUSB_NO_DEFAULT_TASK
|
||||
help
|
||||
Set the stack size of the default TinyUSB main task.
|
||||
|
||||
choice TINYUSB_TASK_AFFINITY
|
||||
prompt "TinyUSB task affinity"
|
||||
default TINYUSB_TASK_AFFINITY_CPU1 if !FREERTOS_UNICORE
|
||||
default TINYUSB_TASK_AFFINITY_NO_AFFINITY
|
||||
depends on !TINYUSB_NO_DEFAULT_TASK
|
||||
help
|
||||
Allows setting TinyUSB tasks affinity, i.e. whether the task is pinned to
|
||||
CPU0, pinned to CPU1, or allowed to run on any CPU.
|
||||
|
||||
config TINYUSB_TASK_AFFINITY_NO_AFFINITY
|
||||
bool "No affinity"
|
||||
config TINYUSB_TASK_AFFINITY_CPU0
|
||||
bool "CPU0"
|
||||
config TINYUSB_TASK_AFFINITY_CPU1
|
||||
bool "CPU1"
|
||||
depends on !FREERTOS_UNICORE
|
||||
endchoice
|
||||
|
||||
config TINYUSB_TASK_AFFINITY
|
||||
hex
|
||||
default FREERTOS_NO_AFFINITY if TINYUSB_TASK_AFFINITY_NO_AFFINITY
|
||||
default 0x0 if TINYUSB_TASK_AFFINITY_CPU0
|
||||
default 0x1 if TINYUSB_TASK_AFFINITY_CPU1
|
||||
|
||||
config TINYUSB_INIT_IN_DEFAULT_TASK
|
||||
bool "Initialize TinyUSB stack within the default TinyUSB task"
|
||||
default n
|
||||
depends on !TINYUSB_NO_DEFAULT_TASK
|
||||
help
|
||||
Run TinyUSB stack initialization just after starting the default TinyUSB task.
|
||||
This is especially useful in multicore scenarios, when we need to pin the task
|
||||
to a specific core and, at the same time initialize TinyUSB stack
|
||||
(i.e. install interrupts) on the same core.
|
||||
endmenu # "TinyUSB task configuration"
|
||||
|
||||
menu "Descriptor configuration"
|
||||
comment "You can provide your custom descriptors via tinyusb_driver_install()"
|
||||
config TINYUSB_DESC_USE_ESPRESSIF_VID
|
||||
bool "VID: Use Espressif's vendor ID"
|
||||
default y
|
||||
help
|
||||
Enable this option, USB device will use Espressif's vendor ID as its VID.
|
||||
This is helpful at product develop stage.
|
||||
|
||||
config TINYUSB_DESC_CUSTOM_VID
|
||||
hex "VID: Custom vendor ID"
|
||||
default 0x1234
|
||||
depends on !TINYUSB_DESC_USE_ESPRESSIF_VID
|
||||
help
|
||||
Custom Vendor ID.
|
||||
|
||||
config TINYUSB_DESC_USE_DEFAULT_PID
|
||||
bool "PID: Use a default PID assigned to TinyUSB"
|
||||
default y
|
||||
help
|
||||
Default TinyUSB PID assigning uses values 0x4000...0x4007.
|
||||
|
||||
config TINYUSB_DESC_CUSTOM_PID
|
||||
hex "PID: Custom product ID"
|
||||
default 0x5678
|
||||
depends on !TINYUSB_DESC_USE_DEFAULT_PID
|
||||
help
|
||||
Custom Product ID.
|
||||
|
||||
config TINYUSB_DESC_BCD_DEVICE
|
||||
hex "bcdDevice"
|
||||
default 0x0100
|
||||
help
|
||||
Version of the firmware of the USB device.
|
||||
|
||||
config TINYUSB_DESC_MANUFACTURER_STRING
|
||||
string "Manufacturer name"
|
||||
default "Espressif Systems"
|
||||
help
|
||||
Name of the manufacturer of the USB device.
|
||||
|
||||
config TINYUSB_DESC_PRODUCT_STRING
|
||||
string "Product name"
|
||||
default "Espressif Device"
|
||||
help
|
||||
Name of the USB device.
|
||||
|
||||
config TINYUSB_DESC_SERIAL_STRING
|
||||
string "Serial string"
|
||||
default "123456"
|
||||
help
|
||||
Serial number of the USB device.
|
||||
|
||||
config TINYUSB_DESC_CDC_STRING
|
||||
depends on TINYUSB_CDC_ENABLED
|
||||
string "CDC Device String"
|
||||
default "Espressif CDC Device"
|
||||
help
|
||||
Name of the CDC device.
|
||||
|
||||
config TINYUSB_DESC_MSC_STRING
|
||||
depends on TINYUSB_MSC_ENABLED
|
||||
string "MSC Device String"
|
||||
default "Espressif MSC Device"
|
||||
help
|
||||
Name of the MSC device.
|
||||
endmenu # "Descriptor configuration"
|
||||
|
||||
menu "Massive Storage Class (MSC)"
|
||||
config TINYUSB_MSC_ENABLED
|
||||
bool "Enable TinyUSB MSC feature"
|
||||
default n
|
||||
help
|
||||
Enable TinyUSB MSC feature.
|
||||
|
||||
config TINYUSB_MSC_BUFSIZE
|
||||
depends on TINYUSB_MSC_ENABLED
|
||||
int "MSC FIFO size"
|
||||
default 512 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
||||
default 8192 if IDF_TARGET_ESP32P4
|
||||
range 64 8192 if IDF_TARGET_ESP32S2 || IDF_TARGET_ESP32S3
|
||||
range 64 32768 if IDF_TARGET_ESP32P4
|
||||
help
|
||||
MSC FIFO size, in bytes.
|
||||
|
||||
config TINYUSB_MSC_MOUNT_PATH
|
||||
depends on TINYUSB_MSC_ENABLED
|
||||
string "Mount Path"
|
||||
default "/data"
|
||||
help
|
||||
MSC Mount Path of storage.
|
||||
|
||||
menu "TinyUSB FAT Format Options"
|
||||
choice TINYUSB_FAT_FORMAT_TYPE
|
||||
prompt "FatFS Format Type"
|
||||
default TINYUSB_FAT_FORMAT_ANY
|
||||
help
|
||||
Select the FAT filesystem type used when formatting storage.
|
||||
|
||||
config TINYUSB_FAT_FORMAT_ANY
|
||||
bool "FM_ANY - Automatically select from FAT12/FAT16/FAT32"
|
||||
|
||||
config TINYUSB_FAT_FORMAT_FAT
|
||||
bool "FM_FAT - Allow only FAT12/FAT16"
|
||||
|
||||
config TINYUSB_FAT_FORMAT_FAT32
|
||||
bool "FM_FAT32 - Force FAT32 only"
|
||||
|
||||
config TINYUSB_FAT_FORMAT_EXFAT
|
||||
bool "FM_EXFAT - Force exFAT (requires exFAT enabled)"
|
||||
|
||||
endchoice
|
||||
|
||||
config TINYUSB_FAT_FORMAT_SFD
|
||||
bool "FM_SFD - Use SFD (no partition table)"
|
||||
default n
|
||||
help
|
||||
Format as a Super Floppy Disk (no partition table).
|
||||
This is typical for USB flash drives and small volumes.
|
||||
endmenu
|
||||
|
||||
endmenu # "Massive Storage Class"
|
||||
|
||||
menu "Communication Device Class (CDC)"
|
||||
config TINYUSB_CDC_ENABLED
|
||||
bool "Enable TinyUSB CDC feature"
|
||||
default n
|
||||
help
|
||||
Enable TinyUSB CDC feature.
|
||||
|
||||
config TINYUSB_CDC_COUNT
|
||||
int "CDC Channel Count"
|
||||
default 1
|
||||
range 1 2
|
||||
depends on TINYUSB_CDC_ENABLED
|
||||
help
|
||||
Number of independent serial ports.
|
||||
|
||||
config TINYUSB_CDC_RX_BUFSIZE
|
||||
depends on TINYUSB_CDC_ENABLED
|
||||
int "CDC FIFO size of RX channel"
|
||||
default 512
|
||||
range 64 10000
|
||||
help
|
||||
CDC FIFO size of RX channel.
|
||||
|
||||
config TINYUSB_CDC_TX_BUFSIZE
|
||||
depends on TINYUSB_CDC_ENABLED
|
||||
int "CDC FIFO size of TX channel"
|
||||
default 512
|
||||
help
|
||||
CDC FIFO size of TX channel.
|
||||
endmenu # "Communication Device Class"
|
||||
|
||||
menu "Musical Instrument Digital Interface (MIDI)"
|
||||
config TINYUSB_MIDI_COUNT
|
||||
int "TinyUSB MIDI interfaces count"
|
||||
default 0
|
||||
range 0 2
|
||||
help
|
||||
Setting value greater than 0 will enable TinyUSB MIDI feature.
|
||||
endmenu # "Musical Instrument Digital Interface (MIDI)"
|
||||
|
||||
menu "Human Interface Device Class (HID)"
|
||||
config TINYUSB_HID_COUNT
|
||||
int "TinyUSB HID interfaces count"
|
||||
default 0
|
||||
range 0 4
|
||||
help
|
||||
Setting value greater than 0 will enable TinyUSB HID feature.
|
||||
endmenu # "HID Device Class (HID)"
|
||||
|
||||
menu "Device Firmware Upgrade (DFU)"
|
||||
choice TINYUSB_DFU_MODE
|
||||
prompt "DFU mode"
|
||||
default TINYUSB_DFU_MODE_NONE
|
||||
help
|
||||
Select which DFU driver you want to use.
|
||||
|
||||
config TINYUSB_DFU_MODE_DFU
|
||||
bool "DFU"
|
||||
|
||||
config TINYUSB_DFU_MODE_DFU_RUNTIME
|
||||
bool "DFU Runtime"
|
||||
|
||||
config TINYUSB_DFU_MODE_NONE
|
||||
bool "None"
|
||||
endchoice
|
||||
config TINYUSB_DFU_BUFSIZE
|
||||
depends on TINYUSB_DFU_MODE_DFU
|
||||
int "DFU XFER BUFFSIZE"
|
||||
default 512
|
||||
help
|
||||
DFU XFER BUFFSIZE.
|
||||
endmenu # Device Firmware Upgrade (DFU)
|
||||
|
||||
menu "Bluetooth Host Class (BTH)"
|
||||
config TINYUSB_BTH_ENABLED
|
||||
bool "Enable TinyUSB BTH feature"
|
||||
default n
|
||||
help
|
||||
Enable TinyUSB BTH feature.
|
||||
|
||||
config TINYUSB_BTH_ISO_ALT_COUNT
|
||||
depends on TINYUSB_BTH_ENABLED
|
||||
int "BTH ISO ALT COUNT"
|
||||
default 0
|
||||
help
|
||||
BTH ISO ALT COUNT.
|
||||
endmenu # "Bluetooth Host Device Class"
|
||||
|
||||
menu "Network driver (ECM/NCM/RNDIS)"
|
||||
choice TINYUSB_NET_MODE
|
||||
prompt "Network mode"
|
||||
default TINYUSB_NET_MODE_NONE
|
||||
help
|
||||
Select network driver you want to use.
|
||||
|
||||
config TINYUSB_NET_MODE_ECM_RNDIS
|
||||
bool "ECM/RNDIS"
|
||||
|
||||
config TINYUSB_NET_MODE_NCM
|
||||
bool "NCM"
|
||||
|
||||
config TINYUSB_NET_MODE_NONE
|
||||
bool "None"
|
||||
endchoice
|
||||
|
||||
config TINYUSB_NCM_OUT_NTB_BUFFS_COUNT
|
||||
int "Number of NCM NTB buffers for reception side"
|
||||
depends on TINYUSB_NET_MODE_NCM
|
||||
default 3
|
||||
range 1 6
|
||||
help
|
||||
Number of NTB buffers for reception side.
|
||||
Can be increased to improve performance and stability with the cost of additional RAM requirements.
|
||||
Helps to mitigate "tud_network_can_xmit: request blocked" warning message when running NCM device.
|
||||
|
||||
config TINYUSB_NCM_IN_NTB_BUFFS_COUNT
|
||||
int "Number of NCM NTB buffers for transmission side"
|
||||
depends on TINYUSB_NET_MODE_NCM
|
||||
default 3
|
||||
range 1 6
|
||||
help
|
||||
Number of NTB buffers for transmission side.
|
||||
Can be increased to improve performance and stability with the cost of additional RAM requirements.
|
||||
Helps to mitigate "tud_network_can_xmit: request blocked" warning message when running NCM device.
|
||||
|
||||
config TINYUSB_NCM_OUT_NTB_BUFF_MAX_SIZE
|
||||
int "NCM NTB Buffer size for reception size"
|
||||
depends on TINYUSB_NET_MODE_NCM
|
||||
default 3200
|
||||
range 1600 10240
|
||||
help
|
||||
Size of NTB buffers on the reception side. The minimum size used by Linux is 2048 bytes.
|
||||
NTB buffer size must be significantly larger than the MTU (Maximum Transmission Unit).
|
||||
The typical default MTU size for Ethernet is 1500 bytes, plus an additional packet overhead.
|
||||
To improve performance, the NTB buffer size should be large enough to fit multiple MTU-sized
|
||||
frames in a single NTB buffer and it's length should be multiple of 4.
|
||||
|
||||
config TINYUSB_NCM_IN_NTB_BUFF_MAX_SIZE
|
||||
int "NCM NTB Buffer size for transmission size"
|
||||
depends on TINYUSB_NET_MODE_NCM
|
||||
default 3200
|
||||
range 1600 10240
|
||||
help
|
||||
Size of NTB buffers on the transmission side. The minimum size used by Linux is 2048 bytes.
|
||||
NTB buffer size must be significantly larger than the MTU (Maximum Transmission Unit).
|
||||
The typical default MTU size for Ethernet is 1500 bytes, plus an additional packet overhead.
|
||||
To improve performance, the NTB buffer size should be large enough to fit multiple MTU-sized
|
||||
frames in a single NTB buffer and it's length should be multiple of 4.
|
||||
|
||||
endmenu # "Network driver (ECM/NCM/RNDIS)"
|
||||
|
||||
menu "Vendor Specific Interface"
|
||||
config TINYUSB_VENDOR_COUNT
|
||||
int "TinyUSB Vendor specific interfaces count"
|
||||
default 0
|
||||
range 0 2
|
||||
help
|
||||
Setting value greater than 0 will enable TinyUSB Vendor specific feature.
|
||||
endmenu # "Vendor Specific Interface"
|
||||
endmenu # "TinyUSB Stack"
|
||||
Reference in New Issue
Block a user