Skip to content

Commit

Permalink
drm/panel: sitronix-st7789v: Use 9 bits per spi word by default
Browse files Browse the repository at this point in the history
The Sitronix controller expects 9-bit words, provide this as default at
probe time rather than specifying this in each and every access.

Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Maxime Ripard <mripard@kernel.org>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Tested-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230714013756.1546769-17-sre@kernel.org
  • Loading branch information
Miquel Raynal authored and Neil Armstrong committed Aug 1, 2023
1 parent 9943981 commit 6b00e72
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion drivers/gpu/drm/panel/panel-sitronix-st7789v.c
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,6 @@ static int st7789v_spi_write(struct st7789v *ctx, enum st7789v_prefix prefix,
u16 txbuf = ((prefix & 1) << 8) | data;

xfer.tx_buf = &txbuf;
xfer.bits_per_word = 9;
xfer.len = sizeof(txbuf);

return spi_sync_transfer(ctx->spi, &xfer, 1);
Expand Down Expand Up @@ -436,6 +435,11 @@ static int st7789v_probe(struct spi_device *spi)
spi_set_drvdata(spi, ctx);
ctx->spi = spi;

spi->bits_per_word = 9;
ret = spi_setup(spi);
if (ret < 0)
return dev_err_probe(&spi->dev, ret, "Failed to setup spi\n");

ctx->info = device_get_match_data(&spi->dev);

drm_panel_init(&ctx->panel, dev, &st7789v_drm_funcs,
Expand Down

0 comments on commit 6b00e72

Please sign in to comment.