[PATCH 01/35] drm/panel: remove the get_timings() callback

From: Dmitry Baryshkov

Date: Mon Oct 26 2026 - 07:14:20 EST


Nothing has ever called get_timings() since it was introduced in commit
2938931f3732 ("drm/panel: Add display timing support"). Remove it
together with its three implementations.

Assisted-by: LLM
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxxxxxxxx>
---
drivers/gpu/drm/panel/panel-edp.c | 18 ------------------
drivers/gpu/drm/panel/panel-seiko-43wvf1g.c | 18 ------------------
drivers/gpu/drm/panel/panel-simple.c | 18 ------------------
include/drm/drm_panel.h | 12 ------------
4 files changed, 66 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c
index 94bc54c3833a..d3a4cf9b1760 100644
--- a/drivers/gpu/drm/panel/panel-edp.c
+++ b/drivers/gpu/drm/panel/panel-edp.c
@@ -646,23 +646,6 @@ static int panel_edp_get_modes(struct drm_panel *panel,
return num;
}

-static int panel_edp_get_timings(struct drm_panel *panel,
- unsigned int num_timings,
- struct display_timing *timings)
-{
- struct panel_edp *p = to_panel_edp(panel);
- unsigned int i;
-
- if (p->desc->num_timings < num_timings)
- num_timings = p->desc->num_timings;
-
- if (timings)
- for (i = 0; i < num_timings; i++)
- timings[i] = p->desc->timings[i];
-
- return p->desc->num_timings;
-}
-
static enum drm_panel_orientation panel_edp_get_orientation(struct drm_panel *panel)
{
struct panel_edp *p = to_panel_edp(panel);
@@ -699,7 +682,6 @@ static const struct drm_panel_funcs panel_edp_funcs = {
.enable = panel_edp_enable,
.get_modes = panel_edp_get_modes,
.get_orientation = panel_edp_get_orientation,
- .get_timings = panel_edp_get_timings,
.debugfs_init = panel_edp_debugfs_init,
};

diff --git a/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c b/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c
index 0935d83ee2db..99b3895a1b28 100644
--- a/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c
+++ b/drivers/gpu/drm/panel/panel-seiko-43wvf1g.c
@@ -174,28 +174,10 @@ static int seiko_panel_get_modes(struct drm_panel *panel,
return seiko_panel_get_fixed_modes(p, connector);
}

-static int seiko_panel_get_timings(struct drm_panel *panel,
- unsigned int num_timings,
- struct display_timing *timings)
-{
- struct seiko_panel *p = to_seiko_panel(panel);
- unsigned int i;
-
- if (p->desc->num_timings < num_timings)
- num_timings = p->desc->num_timings;
-
- if (timings)
- for (i = 0; i < num_timings; i++)
- timings[i] = p->desc->timings[i];
-
- return p->desc->num_timings;
-}
-
static const struct drm_panel_funcs seiko_panel_funcs = {
.unprepare = seiko_panel_unprepare,
.prepare = seiko_panel_prepare,
.get_modes = seiko_panel_get_modes,
- .get_timings = seiko_panel_get_timings,
};

static int seiko_panel_probe(struct device *dev,
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index a944c34642dc..e4629428b1b2 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -405,23 +405,6 @@ static int panel_simple_get_modes(struct drm_panel *panel,
return num;
}

-static int panel_simple_get_timings(struct drm_panel *panel,
- unsigned int num_timings,
- struct display_timing *timings)
-{
- struct panel_simple *p = to_panel_simple(panel);
- unsigned int i;
-
- if (p->desc->num_timings < num_timings)
- num_timings = p->desc->num_timings;
-
- if (timings)
- for (i = 0; i < num_timings; i++)
- timings[i] = p->desc->timings[i];
-
- return p->desc->num_timings;
-}
-
static enum drm_panel_orientation panel_simple_get_orientation(struct drm_panel *panel)
{
struct panel_simple *p = to_panel_simple(panel);
@@ -436,7 +419,6 @@ static const struct drm_panel_funcs panel_simple_funcs = {
.enable = panel_simple_enable,
.get_modes = panel_simple_get_modes,
.get_orientation = panel_simple_get_orientation,
- .get_timings = panel_simple_get_timings,
};

static struct panel_desc *panel_dpi_probe(struct device *dev)
diff --git a/include/drm/drm_panel.h b/include/drm/drm_panel.h
index 58113ea7d63a..deae4753a594 100644
--- a/include/drm/drm_panel.h
+++ b/include/drm/drm_panel.h
@@ -40,7 +40,6 @@ struct drm_connector;
struct drm_device;
struct drm_panel_follower;
struct drm_panel;
-struct display_timing;

enum drm_panel_orientation;

@@ -131,17 +130,6 @@ struct drm_panel_funcs {
*/
enum drm_panel_orientation (*get_orientation)(struct drm_panel *panel);

- /**
- * @get_timings:
- *
- * Copy display timings into the provided array and return
- * the number of display timings available.
- *
- * This function is optional.
- */
- int (*get_timings)(struct drm_panel *panel, unsigned int num_timings,
- struct display_timing *timings);
-
/**
* @debugfs_init:
*

--
2.47.3