lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aRSqQ8AFWhUFlOyT@gmail.com>
Date: Wed, 12 Nov 2025 16:39:47 +0100
From: Marcus Folkesson <marcus.folkesson@...il.com>
To: Lars Rask <Lars.Rask@...s.com>
Cc: "david@...hnology.com" <david@...hnology.com>,
	"jagan@...rulasolutions.com" <jagan@...rulasolutions.com>,
	"agx@...xcpu.org" <agx@...xcpu.org>,
	"dri-devel@...ts.freedesktop.org" <dri-devel@...ts.freedesktop.org>,
	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	Kernel <Kernel@...s.com>, Amir Dawd Seid <Amir.Seid@...s.com>,
	Johan Adolfsson <Johan.Adolfsson@...s.com>,
	Daniel Larsson Persson <Daniel.Larsson.Persson@...s.com>
Subject: Re: [RFC] What to base new driver for Raystar RDX0063 display panel
 using Sitronix ST75156 chip on?

Hi Lars,

On Wed, Nov 12, 2025 at 03:08:08PM +0000, Lars Rask wrote:
> Hi,
> I'm trying to create a driver for a small lcd display called Raystar RDX0063 that is using the
> Sitronix ST75156 chip. The display is used in SPI 4 wire mode similar to many other tiny MIPI
> DBI displays, but the register set and framebuffer format is not MIPI DBI compliant, since each
> byte sent is actually 1 column of 8 rows.
> 
> The datasheets for the Raystar RDX0063 display and the Sitronix ST75156 chip are unfortunately
> not publicly available, but you can find the datasheet for Sitronix ST7567 (which is similar to 
> ST75156) here: https://www.topwaydisplay.com/sites/default/files/2020-05/ST7567.pdf

Support for ST7567 is mainlined (st7571 driver), and once this [1] series
is applied, it should also support the SPI interface.

Hard to tell without seeing the datasheet for ST75156, but if it's
similar to ST7567, you might be able to just add an entry in the st7571
driver for it.

> 
> The main difference seems to be that ST75156 supports a higher resolution than ST7567,
> as can be seen here: 
> https://www.sitronix.com.tw/en/products/industrial-display-driver-ic/mono-stn-lcd-driver-ic

This is how st7567 is defined:

const struct st7571_panel_data st7567_config = {
	.init = st7567_lcd_init,
	.parse_dt = st7567_parse_dt,
	.constraints = {
		.min_nlines = 1,
		.max_nlines = 64,
		.min_ncols = 128,
		.max_ncols = 128,
		.support_grayscale = false,
	},
};

I think a similar structure for ST75156 with is enough.

> 
> As a first attempt to create the driver, the panel-mipi-dbi driver was extended with "tweaks"
> to support non MIPI DBI panels. This seems to work. However, after some discussion with the
> maintainer that is no longer active (https://github.com/notro/panel-mipi-dbi/discussions/14)
> the conclusion was that these "tweaks" were not upstreamable, and that I need to create a new
> driver specifically for the Raystar RDX0063 display panel using the Sitronix st75156 chip
> instead.
> 
> In order to make my driver upstreamable, which driver should I be "inspired" by (i.e copy and modify)
> and base my work on? The drivers in drivers/gpu/drm/sitronix/ and drivers/gpu/drm/tiny/ usually uses
> struct mipi_dbi_dev and mipi_db_command() helpers, but drivers/gpu/drm/panel/panel-sitronix-st7789v.c
> does not.
> 
> Should I create my new driver as /gpu/drm/sitronix/st75156.c and use mipi_dbi helpers where applicable?
> If it is preferable to avoid using the mipi dbi helpers, is there another set of helper functions that
> I should use instead?
> 
> Best regards
> /Lars Rask

[1] https://lists.freedesktop.org/archives/dri-devel/2025-October/532431.html

Best regards,
Marcus Folkesson

Download attachment "signature.asc" of type "application/pgp-signature" (834 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ