Driver for CFAF240320X0-020T display

Noralf Trønnes noralf at tronnes.org
Fri Dec 16 12:30:02 UTC 2022



Den 16.12.2022 12.54, skrev Fabio Estevam:
> Hi,
> 
> Does anyone know if the Crystalfontz CFAF240320X0-020T display is
> supported in Linux?
> 
> https://www.crystalfontz.com/product/cfaf240320x0020t-2inch-240x320-color-tft
> 
> It uses a Sitronix ST7789V controller.
> 
> For the ST7789V, there is a drm driver:
> drivers/gpu/drm/panel/panel-sitronix-st7789v.c
> 
> and also an fbtft one:
> drivers/staging/fbtft/fb_st7789v.c
> 

I see they both have the same compatible string, that's unfortunate

> Documentation/devicetree/bindings/display/panel/sitronix,st7789v.yaml
> shows a remote-endpoint property, so I assume this only works when st7789v
> is connected via RGB parallel, correct?
> 

Yes, pixels are sent over MIPI DPI, the init/setup commands are sent
over MIPI DBI (SPI).

> On my board, the CFAF240320X0-020T is connected via SPI only, so I
> guess I should try the fbtdt driver?
> 

Many of these controllers support the MIPI DCS command set and accepts
these commands over MIPI DBI (including pixels). Mostly the DBI mode is
SPI. fbtft have support for many MIPI DBI compatible controllers and the
only thing that differs between them is the initialization commands. In
fbtft this can be overridden using the DT property init=.

There is a DRM driver that can be used with all of these controllers:
drivers/gpu/drm/tiny/panel-mipi-dbi.c. It uses a firmware file for the
init commands.

Binding:
Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml
Wiki: https://github.com/notro/panel-mipi-dbi/wiki

> The arch/riscv/boot/dts/canaan/sipeed_maix_* boards use compatible =
> "sitronix,st7789v"
> 
> Do these boards have st7789v functional? Are they using the fbtft or drm
> driver?
> 

Looks like they use the fbtft driver since remote-endpoint is not set.

Noralf.

> Appreciate any suggestions.
> 
> Thanks,
> 
> Fabio Estevam


More information about the dri-devel mailing list