1# USB device configuration options 2 3# Copyright (c) 2016 Wind River Systems, Inc. 4# SPDX-License-Identifier: Apache-2.0 5 6menuconfig USB_DEVICE_DRIVER 7 bool "Enable USB device controller drivers" 8 help 9 Enable USB device controller drivers. 10 11if USB_DEVICE_DRIVER 12 13config USB_DW 14 bool "Designware USB Device Controller Driver" 15 help 16 Designware USB Device Controller Driver. 17 18config USB_DW_USB_2_0 19 bool "DesignWare Controller and PHY support for USB specification 2.0" 20 depends on USB_DW 21 help 22 Indicates whether or not USB specification version 2.0 is supported 23 24config USB_DC_STM32 25 bool "USB device controller driver for STM32 devices" 26 depends on SOC_FAMILY_STM32 27 select USE_STM32_LL_USB 28 select USE_STM32_HAL_PCD 29 select USE_STM32_HAL_PCD_EX 30 help 31 Enable USB support on the STM32 F0, F1, F2, F3, F4, F7, L0, L4 and G4 family of 32 processors. 33 34config USB_DC_STM32_DISCONN_ENABLE 35 bool 36 depends on USB_DC_STM32 37 help 38 Say Y if your board uses USB DISCONNECT pin to enable the 39 pull-up resistor on USB DP. 40 41config USB_DC_SAM0 42 bool "SAM0 series USB Device Controller driver" 43 default y 44 depends on SOC_FAMILY_SAM0 45 help 46 SAM0 family USB device controller Driver. 47 48DT_COMPAT_SAM_USBC := atmel,sam-usbc 49 50config USB_DC_SAM_USBC 51 bool "SAM4L USBC Device Controller driver" 52 depends on SOC_SERIES_SAM4L 53 default $(dt_compat_enabled,$(DT_COMPAT_SAM_USBC)) 54 help 55 SAM4L family USBC device controller Driver. 56 57config USB_DC_SAM_USBHS 58 bool "SAM series USB HS Device Controller driver" 59 depends on SOC_SERIES_SAME70 || \ 60 SOC_SERIES_SAMV71 61 help 62 SAM family USB HS device controller Driver. 63 64config USB_NRFX 65 bool "Nordic Semiconductor USB Device Controller Driver" 66 default y 67 depends on HAS_HW_NRF_USBD 68 select NRFX_USBD 69 select NRFX_POWER 70 help 71 nRF USB Device Controller Driver 72 73config USB_NRFX_EVT_QUEUE_SIZE 74 int "USBD event queue size" 75 range 4 64 76 default 32 77 depends on USB_NRFX 78 help 79 Size of the driver's internal event queue. 80 Required size will depend on number of endpoints (class instances) in use. 81 82config USB_NRFX_WORK_QUEUE_STACK_SIZE 83 int "USBD work queue stack size" 84 default 1024 85 depends on USB_NRFX 86 help 87 Size of the stack for the work queue thread that is used in the driver 88 for handling the events from the USBD ISR, i.e. executing endpoint 89 callbacks and providing proper notifications to the USB device stack. 90 91config USB_NRFX_ATTACHED_EVENT_DELAY 92 int "USBD attached event delay" 93 range 0 1000 94 default 0 95 depends on USB_NRFX 96 help 97 Configurable attached event delay in milliseconds. Delay can be used 98 to give USB Charging Controller time for initialization. 99 100config USB_KINETIS 101 bool "Kinetis USB Device Controller Driver" 102 help 103 Kinetis USB Device Controller Driver. 104 105config USB_MCUX 106 bool "NXP MCUX USB Device Controller Driver" 107 help 108 NXP MCUX USB Device Controller Driver for MXRT and LPC SoC's. 109 110if USB_MCUX 111 112choice USB_MCUX_CONTROLLER_TYPE 113 prompt "USB Controller type" 114 help 115 Select the type of controller available in the SoC. 116 117config USB_DC_NXP_EHCI 118 bool "MXRT EHCI USB Device Controller" 119 select NOCACHE_MEMORY if HAS_MCUX_CACHE 120 help 121 Kinetis and RT EHCI USB Device Controller Driver. 122 123config USB_DC_NXP_LPCIP3511 124 bool "LPC USB Device Controller" 125 help 126 LPC USB Device Controller Driver. 127 128endchoice 129 130endif # USB_MCUX 131 132config USB_NATIVE_POSIX 133 bool "Native Posix USB Device Controller Driver" 134 help 135 Native Posix USB Device Controller Driver. 136 137module = USB_DRIVER 138module-str = usb driver 139source "subsys/logging/Kconfig.template.log_config" 140 141endif # USB_DEVICE_DRIVER 142