1# Copyright (c) 2016 Wind River Systems, Inc. 2# SPDX-License-Identifier: Apache-2.0 3 4menu "USB CDC ACM Class support" 5 6config USB_CDC_ACM 7 bool "USB CDC ACM Class support" 8 default y 9 select USB_COMPOSITE_DEVICE 10 depends on SERIAL 11 depends on DT_HAS_ZEPHYR_CDC_ACM_UART_ENABLED 12 select SERIAL_HAS_DRIVER 13 select SERIAL_SUPPORT_INTERRUPT 14 select RING_BUFFER 15 select UART_INTERRUPT_DRIVEN 16 help 17 USB CDC ACM class support. 18 19if USB_CDC_ACM 20 21config USB_CDC_ACM_RINGBUF_SIZE 22 int "USB CDC ACM ring buffer size" 23 default 1024 24 help 25 USB CDC ACM ring buffer size 26 27config CDC_ACM_INTERRUPT_EP_MPS 28 int 29 default 16 30 help 31 CDC ACM class interrupt IN endpoint size 32 33config CDC_ACM_BULK_EP_MPS 34 int 35 default 512 if USB_DC_HAS_HS_SUPPORT 36 default 64 37 help 38 CDC ACM class bulk endpoints size 39 40config CDC_ACM_TX_DELAY_MS 41 int 42 default 100 43 help 44 Time in milliseconds to wait before sending actual payload to host. 45 This is needed to prevent tty ECHO on Linux. 46 47config CDC_ACM_IAD 48 bool "Force using Interface Association Descriptor" 49 default y 50 help 51 IAD should not be required for non-composite CDC ACM device, 52 but Windows 7 fails to properly enumerate without it. 53 Enable if you want CDC ACM to work with Windows 7. 54 55config CDC_ACM_DTE_RATE_CALLBACK_SUPPORT 56 bool "Support callbacks when the USB host changes the virtual baud rate" 57 default BOOTLOADER_BOSSA 58 help 59 If set, enables support for a callback that is invoked when the 60 remote host changes the virtual baud rate. This is used 61 by Arduino style programmers to reset the device into the 62 bootloader. 63 64module = USB_CDC_ACM 65module-str = usb cdc acm 66source "subsys/logging/Kconfig.template.log_config" 67 68endif # USB_CDC_ACM 69 70endmenu 71