blob: e7f3d135e411a08167a982e44695a95479a191b6 [file] [edit]
# Copyright (c) 2026 NXP Semiconductors
# SPDX-License-Identifier: Apache-2.0
config INPUT_CRSF
bool "CRSF driver"
default y
depends on DT_HAS_TBS_CRSF_ENABLED
depends on UART_INTERRUPT_DRIVEN
select CRC
select UART_USE_RUNTIME_CONFIGURE
help
Enable driver for CRSF Remote controller.
if INPUT_CRSF
config INPUT_CRSF_THREAD_STACK_SIZE
int "Stack size for the crsf thread"
default 1024
help
Size of the stack used for the crsf thread.
config INPUT_CRSF_THREAD_PRIORITY
int "Priority for the crsf thread"
default 0
help
Priority level of the crsf thread.
config INPUT_CRSF_REPORT_FILTER
int "Minimal change in signal to report"
default 1
help
CRSF tends to be a bit noisy you can increase the threshold to
lower the amounts of input events. Set to 0 for no filtering
config INPUT_CRSF_SEND_SYNC
bool "Send Sync to input subsys on each CRSF frame"
default y
help
Sends sync message to input subsys with sync bit.
config INPUT_CRSF_CHANNEL_VALUE_ONE
int "Threshold value > for INPUT_EV_KEY value 1"
default 1800
help
CRSF sends analogue values for digital switches. This config value
sets the threshold to interpret the analogue value as a logic 1
config INPUT_CRSF_CHANNEL_VALUE_ZERO
int "Threshold value < for INPUT_EV_KEY value 0"
default 1200
help
CRSF sends analogue values for digital switches. This config value
sets the threshold to interpret the analogue value as a logic 0
DT_CHOSEN_Z_DTCM := zephyr,dtcm
config INPUT_CRSF_USE_DTCM_FOR_DMA_BUFFER
bool "Use DTCM for hardware DMA buffers"
depends on $(dt_chosen_enabled,$(DT_CHOSEN_Z_DTCM))
help
Place the hardware DMA buffers into DTCM for lower
latency.
endif # INPUT_CRSF