summaryrefslogtreecommitdiff
path: root/app/src/display/Kconfig
diff options
context:
space:
mode:
authorPeter Johanson <peter@peterjohanson.com>2021-08-12 03:43:07 +0000
committerPete Johanson <peter@peterjohanson.com>2021-09-25 17:17:04 -0400
commit063d98e3dfa8e0089aa0039b24489d29b062cf5e (patch)
treed3329cb1e0c5c350f32784ed05e0a3761023f0f7 /app/src/display/Kconfig
parent9f2785786fed6e195949f4f88acd8b272f95e1d3 (diff)
feat(display): Optional dedicated work queue.
* Add new Kconfig settingsx to allow selecting system or dedicated work queue for performing UI updates. * Allow UI updates to not block other system tasks when display is updating, especially important for e-ink displays.
Diffstat (limited to 'app/src/display/Kconfig')
-rw-r--r--app/src/display/Kconfig23
1 files changed, 23 insertions, 0 deletions
diff --git a/app/src/display/Kconfig b/app/src/display/Kconfig
index 95b5d47..9c70911 100644
--- a/app/src/display/Kconfig
+++ b/app/src/display/Kconfig
@@ -29,6 +29,29 @@ config ZMK_DISPLAY_STATUS_SCREEN_CUSTOM
endchoice
+choice ZMK_DISPLAY_WORK_QUEUE
+ prompt "Work queue selection for UI updates"
+
+config ZMK_DISPLAY_WORK_QUEUE_SYSTEM
+ bool "Use default system work queue for UI updates"
+
+config ZMK_DISPLAY_WORK_QUEUE_DEDICATED
+ bool "Use dedicated work queue for UI updates"
+
+endchoice
+
+if ZMK_DISPLAY_WORK_QUEUE_DEDICATED
+
+config ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE
+ int "Stack size for dedicated UI thread/queue"
+ default 2048
+
+config ZMK_DISPLAY_DEDICATED_THREAD_PRIORITY
+ int "Thread priority for dedicated UI thread/queue"
+ default 5
+
+endif # ZMK_DISPLAY_WORK_QUEUE_DEDICATED
+
rsource "widgets/Kconfig"
endif