@@ -221,7 +221,7 @@ static int lvgl_allocate_rendering_buffers(lv_display_t *display)
221
221
222
222
#ifdef CONFIG_LV_Z_RUN_LVGL_ON_WORKQUEUE
223
223
224
- K_THREAD_STACK_DEFINE (lvgl_workqueue_stack , CONFIG_LV_Z_LVGL_WORKQUEUE_STACK_SIZE );
224
+ static K_THREAD_STACK_DEFINE (lvgl_workqueue_stack , CONFIG_LV_Z_LVGL_WORKQUEUE_STACK_SIZE ) ;
225
225
static struct k_work_q lvgl_workqueue ;
226
226
227
227
static void lvgl_timer_handler_work (struct k_work * work )
@@ -236,7 +236,7 @@ static void lvgl_timer_handler_work(struct k_work *work)
236
236
237
237
k_work_schedule_for_queue (& lvgl_workqueue , dwork , K_MSEC (wait_time ));
238
238
}
239
- K_WORK_DEFINE (lvgl_work , lvgl_timer_handler_work );
239
+ static K_WORK_DEFINE (lvgl_work , lvgl_timer_handler_work ) ;
240
240
241
241
#endif /* CONFIG_LV_Z_RUN_LVGL_ON_WORKQUEUE */
242
242
@@ -359,6 +359,16 @@ int lvgl_init(void)
359
359
return 0 ;
360
360
}
361
361
362
+ #ifdef CONFIG_LV_Z_RUN_LVGL_ON_WORKQUEUE
363
+ int lvgl_schedule_job (int32_t ms )
364
+ {
365
+ struct k_work_delayable * dwork = k_work_delayable_from_work (& lvgl_work );
366
+
367
+ return k_work_schedule_for_queue (& lvgl_workqueue , dwork , K_MSEC (ms ));
368
+ }
369
+
370
+ #endif
371
+
362
372
#ifdef CONFIG_LV_Z_AUTO_INIT
363
373
SYS_INIT (lvgl_init , APPLICATION , CONFIG_LV_Z_INIT_PRIORITY );
364
374
#endif /* CONFIG_LV_Z_AUTO_INIT */
0 commit comments