zephyr/subsys/input/Kconfig
Fabio Baltieri 3386e96515 input: add input subsystem
Initial commit introducing the input subsystem into Zephyr.

Includes the input_event data structure, the input_report_* APIs, an
iterables sections based subscription API and two operation modes:
synchronous, where the listeners are called directly, and asynchronous,
where the listeners are called in a dedicated thread.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-03-06 11:47:32 -08:00

71 lines
1.6 KiB
Plaintext

# Copyright 2023 Google LLC
# SPDX-License-Identifier: Apache-2.0
menuconfig INPUT
bool "Input"
help
Include input subsystem and drivers in the system config.
if INPUT
module = INPUT
module-str = input
source "subsys/logging/Kconfig.template.log_config"
config INPUT_INIT_PRIORITY
int "Input subsystem and drivers init priority"
default 90
help
Input subsystem and drivers initialization priority.
choice INPUT_MODE
prompt "Input event processing mode"
default INPUT_MODE_THREAD
config INPUT_MODE_SYNCHRONOUS
bool "Process input events synchronously"
help
Input events callbacks are processed synchronously in the context of
the code that is reporting the event.
config INPUT_MODE_THREAD
bool "Process input events in a dedicated thread"
depends on MULTITHREADING
help
Input events are added to a message queue and the callbacks are
processed asynchronously in a dedicated thread.
endchoice
if INPUT_MODE_THREAD
config INPUT_THREAD_PRIORITY_OVERRIDE
bool "Override default input thread priority"
help
Option to change the default value of input thread priority.
if INPUT_THREAD_PRIORITY_OVERRIDE
config INPUT_THREAD_PRIORITY
int "Input thread priority"
default 0
help
Set thread priority of the input
endif
config INPUT_QUEUE_MAX_MSGS
int "Input queue max messages"
default 16
help
Maximum number of messages in the input event queue.
config INPUT_THREAD_STACK_SIZE
int "Input thread stack size"
default 512
help
Stack size for the thread processing the input events, must have
enough space for executing the registered callbacks.
endif # INPUT_MODE_THREAD
endif # INPUT