| # USB device configuration options |
| |
| # Copyright (c) 2016 Wind River Systems, Inc. |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| DT_COMPAT_RPI_PICO_USBD := raspberrypi,pico-usbd |
| |
| menuconfig USB_DEVICE_DRIVER |
| bool "USB device controller drivers" |
| help |
| Enable USB device controller drivers. |
| |
| if USB_DEVICE_DRIVER |
| |
| config USB_DC_HAS_HS_SUPPORT |
| bool "USB device controller supports high speed" |
| help |
| USB device controller supports high speed. |
| |
| config USB_DEVICE_REMOTE_WAKEUP |
| bool "Remote wakeup support" |
| help |
| USB device controller supports remote wakeup feature. |
| |
| config USB_DW |
| bool "Designware USB Device Controller Driver" |
| help |
| Designware USB Device Controller Driver. |
| |
| config USB_DW_USB_2_0 |
| bool "DesignWare Controller and PHY support for USB specification 2.0" |
| depends on USB_DW |
| help |
| Indicates whether or not USB specification version 2.0 is supported |
| |
| config USB_DC_RPI_PICO |
| bool "USB device controller driver for Raspberry Pi Pico devices" |
| default $(dt_compat_enabled,$(DT_COMPAT_RPI_PICO_USBD)) |
| depends on SOC_SERIES_RP2XXX |
| help |
| Enable USB support on the RP2 family of processors. |
| |
| config USB_DC_STM32 |
| bool "USB device controller driver for STM32 devices" |
| depends on SOC_FAMILY_STM32 |
| select USE_STM32_LL_USB |
| select USE_STM32_HAL_PCD |
| select USE_STM32_HAL_PCD_EX |
| help |
| Enable USB support on the STM32 F0, F1, F2, F3, F4, F7, L0, L4, G4, U5 family of |
| processors. |
| |
| config USB_DC_SAM0 |
| bool "SAM0 series USB Device Controller driver" |
| default y |
| depends on SOC_FAMILY_SAM0 |
| help |
| SAM0 family USB device controller Driver. |
| |
| DT_COMPAT_SAM_USBC := atmel,sam-usbc |
| |
| config USB_DC_SAM_USBC |
| bool "SAM4L USBC Device Controller driver" |
| depends on SOC_SERIES_SAM4L |
| default $(dt_compat_enabled,$(DT_COMPAT_SAM_USBC)) |
| help |
| SAM4L family USBC device controller Driver. |
| |
| DT_SAM_USBHS := $(dt_nodelabel_path,usbhs) |
| DT_SAM_USBHS_SPEED := $(dt_node_str_prop_equals,$(DT_SAM_USBHS),maximum-speed,high-speed) |
| |
| config USB_DC_SAM_USBHS |
| bool "SAM series USB HS Device Controller driver" |
| depends on SOC_SERIES_SAME70 || \ |
| SOC_SERIES_SAMV71 |
| imply USB_DC_HAS_HS_SUPPORT if "$(DT_SAM_USBHS_SPEED)" |
| help |
| SAM family USB HS device controller Driver. |
| |
| config USB_NRFX |
| bool "Nordic Semiconductor USB Device Controller Driver" |
| default y |
| depends on HAS_HW_NRF_USBD |
| select NRFX_USBD |
| select NRFX_POWER |
| imply USB_DEVICE_REMOTE_WAKEUP |
| help |
| nRF USB Device Controller Driver |
| |
| config USB_NRFX_EVT_QUEUE_SIZE |
| int "USBD event queue size" |
| range 4 64 |
| default 32 |
| depends on USB_NRFX |
| help |
| Size of the driver's internal event queue. |
| Required size will depend on number of endpoints (class instances) in use. |
| |
| config USB_NRFX_WORK_QUEUE_STACK_SIZE |
| int "USBD work queue stack size" |
| default 1024 |
| depends on USB_NRFX |
| help |
| Size of the stack for the work queue thread that is used in the driver |
| for handling the events from the USBD ISR, i.e. executing endpoint |
| callbacks and providing proper notifications to the USB device stack. |
| |
| config USB_NRFX_ATTACHED_EVENT_DELAY |
| int "USBD attached event delay" |
| range 0 1000 |
| default 0 |
| depends on USB_NRFX |
| help |
| Configurable attached event delay in milliseconds. Delay can be used |
| to give USB Charging Controller time for initialization. |
| |
| config USB_KINETIS |
| bool "Kinetis USB Device Controller Driver" |
| help |
| Kinetis USB Device Controller Driver. |
| |
| config USB_MCUX |
| bool "NXP MCUX USB Device Controller Driver" |
| help |
| NXP MCUX USB Device Controller Driver for MXRT and LPC SoC's. |
| |
| if USB_MCUX |
| |
| choice USB_MCUX_CONTROLLER_TYPE |
| prompt "USB Controller type" |
| help |
| Select the type of controller available in the SoC. |
| |
| config USB_DC_NXP_EHCI |
| bool "MXRT EHCI USB Device Controller" |
| select NOCACHE_MEMORY if HAS_MCUX_CACHE |
| help |
| Kinetis and RT EHCI USB Device Controller Driver. |
| |
| config USB_DC_NXP_LPCIP3511 |
| bool "LPC USB Device Controller" |
| help |
| LPC USB Device Controller Driver. |
| |
| endchoice |
| |
| config USB_DC_MSG_QUEUE_LEN |
| int |
| default 10 |
| help |
| Maximum number of messages USB device controller interrupt can queue |
| for callback thread |
| |
| |
| endif # USB_MCUX |
| |
| config USB_NATIVE_POSIX |
| bool "Native Posix USB Device Controller Driver" |
| help |
| Native Posix USB Device Controller Driver. |
| |
| module = USB_DRIVER |
| module-str = usb driver |
| source "subsys/logging/Kconfig.template.log_config" |
| |
| endif # USB_DEVICE_DRIVER |