On Tue, Jun 04, 2024 at 03:20:30PM +0200, Noralf Trønnes via B4 Relay wrote: > From: Noralf Trønnes <noralf@xxxxxxxxxxx> > > MIPI DCS write/set commands have 8 bit parameters except for the > write_memory commands where it depends on the pixel format. > drm_mipi_dbi does currently only support RGB565 which is 16-bit and it > has to make sure that the pixels enters the SPI bus in big endian format > since the MIPI DBI spec doesn't have support for little endian. > > drm_mipi_dbi is optimized for DBI interface option 3 which means that the > 16-bit bytes are swapped by the upper layer if the SPI bus does not > support 16 bits per word, signified by the swap_bytes member. > > In order to support both 16-bit and 24-bit pixel transfers we need a way > to tell the DBI command layer the format of the buffer. Add a > write_memory_bpw member that the upper layer can use to tell how many > bits per word to use for the SPI transfer. > > v4: > - Expand the commit message (Dmitry) > > Signed-off-by: Noralf Trønnes <noralf@xxxxxxxxxxx> > --- > drivers/gpu/drm/drm_mipi_dbi.c | 14 ++++++++++---- > include/drm/drm_mipi_dbi.h | 5 +++++ > 2 files changed, 15 insertions(+), 4 deletions(-) > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> -- With best wishes Dmitry