zephyr/drivers/usb/udc/Kconfig
Johann Fischer c41071d2ac drivers: udc: add UDC driver for RP2040 USB device controller
This driver is mostly rewritten from scratch, with some parts borrowed
from the usb_dc_rpi_pico driver implemented by Pete Johanson.
This driver does not use any function from RPI PICO HAL and actually
could be furter improved to not use any defines or types from the HAL as
they are confusing and overdo it with volatile qualifiers.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2024-09-05 16:57:46 -04:00

69 lines
1.7 KiB
Plaintext

# Copyright (c) 2021-2022 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
menuconfig UDC_DRIVER
bool "USB device controller drivers [EXPERIMENTAL]"
select EXPERIMENTAL
select NET_BUF
help
USB device controller driver.
if UDC_DRIVER
config UDC_BUF_COUNT
int "Number of buffers in the pool"
range 16 256
default 16
help
Number of UDC request buffers in the pool.
config UDC_BUF_POOL_SIZE
int "Memory available for requests"
range 64 32768
default 1024
help
Total amount of memory available for UDC requests.
config UDC_BUF_FORCE_NOCACHE
bool "Place the buffer pools in the nocache memory region"
depends on NOCACHE_MEMORY && DCACHE
help
Place the buffer pools in the nocache memory region if the driver
cannot handle buffers in cached memory.
config UDC_WORKQUEUE
bool "Use a dedicate work queue for UDC drivers"
help
This option provides a dedicated work queue for UDC drivers.
config UDC_WORKQUEUE_STACK_SIZE
int "UDC workqueue stack size"
depends on UDC_WORKQUEUE
default 512
config UDC_WORKQUEUE_PRIORITY
int "UDC workqueue priority"
depends on UDC_WORKQUEUE
default SYSTEM_WORKQUEUE_PRIORITY
help
By default, UDC work queue priority is the same as
System workqueue priority.
module = UDC_DRIVER
module-str = usb drv
source "subsys/logging/Kconfig.template.log_config"
source "drivers/usb/udc/Kconfig.dwc2"
source "drivers/usb/udc/Kconfig.nrf"
source "drivers/usb/udc/Kconfig.kinetis"
source "drivers/usb/udc/Kconfig.skeleton"
source "drivers/usb/udc/Kconfig.virtual"
source "drivers/usb/udc/Kconfig.stm32"
source "drivers/usb/udc/Kconfig.it82xx2"
source "drivers/usb/udc/Kconfig.mcux"
source "drivers/usb/udc/Kconfig.numaker"
source "drivers/usb/udc/Kconfig.rpi_pico"
endif # UDC_DRIVER