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>
69 lines
1.7 KiB
Plaintext
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
|