[PATCH v3 3/5] drm/sitronix/st7571-i2c: Add an indirection level to parse DT
Javier Martinez Canillas
javierm at redhat.com
Tue Jul 15 11:03:52 UTC 2025
Other Sitronix display controllers might need a different parsing DT
logic, so lets add a .parse_dt callback to struct st7571_panel_data.
Suggested-by: Thomas Zimmermann <tzimmermann at suse.de>
Signed-off-by: Javier Martinez Canillas <javierm at redhat.com>
Reviewed-by: Marcus Folkesson <marcus.folkesson at gmail.com>
---
(no changes since v1)
drivers/gpu/drm/sitronix/st7571-i2c.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/sitronix/st7571-i2c.c b/drivers/gpu/drm/sitronix/st7571-i2c.c
index fd9d6c701cc4..f9c4fedb3cca 100644
--- a/drivers/gpu/drm/sitronix/st7571-i2c.c
+++ b/drivers/gpu/drm/sitronix/st7571-i2c.c
@@ -92,6 +92,7 @@ struct st7571_panel_constraints {
struct st7571_panel_data {
int (*init)(struct st7571_device *st7571);
+ int (*parse_dt)(struct st7571_device *st7571);
struct st7571_panel_constraints constraints;
};
@@ -881,7 +882,7 @@ static int st7571_probe(struct i2c_client *client)
i2c_set_clientdata(client, st7571);
st7571->pdata = device_get_match_data(&client->dev);
- ret = st7571_parse_dt(st7571);
+ ret = st7571->pdata->parse_dt(st7571);
if (ret)
return ret;
@@ -964,6 +965,7 @@ static void st7571_remove(struct i2c_client *client)
struct st7571_panel_data st7571_config = {
.init = st7571_lcd_init,
+ .parse_dt = st7571_parse_dt,
.constraints = {
.min_nlines = 1,
.max_nlines = 128,
--
2.49.0
More information about the dri-devel
mailing list