diff options
author | Philipp Zabel <p.zabel@pengutronix.de> | 2023-04-03 13:53:39 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2023-04-11 13:58:09 +0200 |
commit | 18ba95d982733ab123e93debeea58a29ba993896 (patch) | |
tree | 9498619035d7375f101f315b19011edca699039c /drivers/video | |
parent | 44acfda59830afeadcd59ac0ec6d19da4b1c23b9 (diff) | |
download | barebox-18ba95d982733ab123e93debeea58a29ba993896.tar.gz |
video: mipi_dbi: disable byte swapping if 16-bit SPI transfers are supported
If the SPI controller supports switching to 16-bit transfers, there
is no need to swap bytes on little-endian architectures. This also
allows to transfer directly from the 16-bit framebuffer.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Link: https://lore.barebox.org/20230403115340.3416720-3-p.zabel@pengutronix.de
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/mipi_dbi.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/video/mipi_dbi.c b/drivers/video/mipi_dbi.c index 61b0fbcc49..aab6b12439 100644 --- a/drivers/video/mipi_dbi.c +++ b/drivers/video/mipi_dbi.c @@ -632,8 +632,7 @@ int mipi_dbi_spi_init(struct spi_device *spi, struct mipi_dbi *dbi, dbi->command = mipi_dbi_typec3_command; dbi->dc = dc; - // TODO: can we just force 16 bit? - if (mipi_dbi_machine_little_endian() && spi->bits_per_word != 16) + if (mipi_dbi_machine_little_endian() && !spi_is_bpw_supported(spi, 16)) dbi->swap_bytes = true; dev_dbg(dev, "SPI speed: %uMHz\n", spi->max_speed_hz / 1000000); |