-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Display buffer initialization for ESP32 #313
Comments
Problem solved in other PR, and is merged to Tested on real ESP32 devices with ST7789 and ILI9342C displays. |
I've raised some concerns about if we really need |
You are doing it right to use lv_draw_buf_init.
The issue is you have configured to do so. |
Let's open an new issue for it, so everyone can see it. Doing it now. |
Default to 1 to make it behave same to lvgl v8. To avoid confusions raised in lvgl/lv_binding_micropython#313 Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
The drivers have been changed back original logic. Fix lvgl#5270 Related to lvgl#5204 lvgl/lv_binding_micropython#313 Discussion on lvgl#5273 Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
The drivers have been changed back original logic. Fix #5270 Fix #5271 Related to #5204 lvgl/lv_binding_micropython#313 Discussion on #5273 Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
The drivers have been changed back original logic. Fix #5270 Fix #5271 Related to #5204 lvgl/lv_binding_micropython#313 Discussion on #5273 Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
VELAPLATFO-20122 The drivers have been changed back original logic. Fix lvgl#5270 Fix lvgl#5271 Related to lvgl#5204 lvgl/lv_binding_micropython#313 Discussion on lvgl#5273 Change-Id: I798af8753f50ba0eed9d6b7f00e184fb032bde1c Signed-off-by: Xu Xingliang <xuxingliang@xiaomi.com>
Hello @XuNeo, @kisvegabor ,
There is a buffer allocation issue in display initialization for ESP32 ili9xxx driver:
https://github.com/lvgl/lv_binding_micropython/blob/master/driver/esp32/ili9XXX.py#L151
(ESP32 document about DMA-Capable memory allocation)
These 2 lines allocate memory which can be accessed by DMA, and returns
void *
, so a simple memory area, and it cannot be passed to lv_display_set_draw_buffers(lv_display_t * disp, lv_draw_buf_t * buf1, lv_draw_buf_t * buf2), which was refactored in this PR.Neither lv.draw_buf_create() will not allocate DMA-capable memory area.
I see that there is also a lv_draw_buf_init() function, which accepts a
void*
memory area, but it tries to align it.Why do we need
lv_draw_buf_t
everywhere, even for display buffer (and decoded image data)? Only to have word-aligned memory area?Could you please check the above mentioned codes and help in this topic?
The text was updated successfully, but these errors were encountered: