Display drivers to share (sharp mip, uc1610)

hi,
and sorry for a little bit confused questions.

For the buffer, i mean VDB (sharp mip) with lv_conf.h configuration :

#define LV_VDB_SIZE         ((LV_VER_RES / 4) * LV_HOR_RES) /*[pix]*/
#define LV_VDB_PX_BPP       1
#define LV_VDB_ADR          LV_VDB_ADR_INV
#define LV_VDB_DOUBLE       0

This display requires a continuous spi transmission for at least 1 line with header, line address and dummy bytes when updating his ram. The solution i found is to embed these extra bytes in VDB, so the effective size is larger than LV_VDB_SIZE :

static uint8_t sharp_vdb[(LV_VER_RES / 4) * (2 + (LV_HOR_RES / 8)) + 2]; /*size -> [bytes]*/

using lv_vdb_set_adr() to set VDB address in littlevGL.

For vdb_wr() and disp_flush(), it’s ok, writing pixels in VDB and flushing displays as expected.

I’ve tried to tweak lv_color.h to support 4 gray with color depth = 2 and what i’m not sure is the accuracy of these modifications (lv_color_toX).

Enven so, drivers work, sharp with mono theme and uc1610 with a tweaked mono.

Some basic photos :
sharp_mip :


uc1610 :