I was meaning more like using the spare cpu time to run other tasks (not related to littlevgl) and on DMA completion I can schedule the lv_task_handler to run again.
Actually it makes sense to yield in lvgl until the display driver calls lv_disp_flush_ready() (to tell lvgl DMA has completed).
Today it’s just spinning:
/*In double buffered mode wait until the other buffer is flushed before flushing the current
* one*/
if(lv_disp_is_double_buf(disp_refr)) {
while(vdb->flushing)
;
}
vdb->flushing = 1;
@kisvegabor, @embeddedt - I remember vaguely that this was discussed before.
Any reason why not to call YIELD in that while loop, and let the user define YIELD in lv_conf.h?