From 063d98e3dfa8e0089aa0039b24489d29b062cf5e Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 12 Aug 2021 03:43:07 +0000 Subject: 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. --- app/src/display/Kconfig | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'app/src/display/Kconfig') 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 -- cgit v1.2.3