summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2018-06-06 18:04:26 +0300
committerTomi Valkeinen <tomi.valkeinen@ti.com>2018-09-03 16:13:30 +0300
commitca6e968b9326a17d072b14b658fff538466c6bd2 (patch)
tree710954eca6fdf849c727abf9aa800bbdf02797b2 /drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
parent35d944cbee2199312c6832a4acd0201a921545f4 (diff)
drm/omap: Remove .get_timings() operation from display connectors
The analog TV, DVI and HDMI connectors all report timing information through the .get_timings() information. For analog TV outputs the information is queried from the encoder, so the operation is unused. Remove it. For HDMI outputs the display pipeline provides EDID capability, so the operation is unused as well. Remove it. For DVI outputs the operation is also unused if the pipeline provides EDID capability. Otherwise (when the DDC bus is not connected) we shouldn't hardcode a single mode, but instead report no mode and let the KMS core add default modes. This is achieved by removing the operation. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c')
-rw-r--r--drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c31
1 files changed, 0 insertions, 31 deletions
diff --git a/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c b/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
index a9e2a366a851..4866bf8ed524 100644
--- a/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
+++ b/drivers/gpu/drm/omapdrm/displays/connector-analog-tv.c
@@ -20,23 +20,6 @@ struct panel_drv_data {
struct omap_dss_device dssdev;
struct device *dev;
-
- struct videomode vm;
-};
-
-static const struct videomode tvc_pal_vm = {
- .hactive = 720,
- .vactive = 574,
- .pixelclock = 13500000,
- .hsync_len = 64,
- .hfront_porch = 12,
- .hback_porch = 68,
- .vsync_len = 5,
- .vfront_porch = 5,
- .vback_porch = 41,
-
- .flags = DISPLAY_FLAGS_INTERLACED | DISPLAY_FLAGS_HSYNC_LOW |
- DISPLAY_FLAGS_VSYNC_LOW,
};
#define to_panel_data(x) container_of(x, struct panel_drv_data, dssdev)
@@ -93,22 +76,11 @@ static void tvc_disable(struct omap_dss_device *dssdev)
static void tvc_set_timings(struct omap_dss_device *dssdev,
const struct videomode *vm)
{
- struct panel_drv_data *ddata = to_panel_data(dssdev);
struct omap_dss_device *src = dssdev->src;
- ddata->vm = *vm;
-
src->ops->set_timings(src, vm);
}
-static void tvc_get_timings(struct omap_dss_device *dssdev,
- struct videomode *vm)
-{
- struct panel_drv_data *ddata = to_panel_data(dssdev);
-
- *vm = ddata->vm;
-}
-
static const struct omap_dss_device_ops tvc_ops = {
.connect = tvc_connect,
.disconnect = tvc_disconnect,
@@ -117,7 +89,6 @@ static const struct omap_dss_device_ops tvc_ops = {
.disable = tvc_disable,
.set_timings = tvc_set_timings,
- .get_timings = tvc_get_timings,
};
static int tvc_probe(struct platform_device *pdev)
@@ -132,8 +103,6 @@ static int tvc_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, ddata);
ddata->dev = &pdev->dev;
- ddata->vm = tvc_pal_vm;
-
dssdev = &ddata->dssdev;
dssdev->ops = &tvc_ops;
dssdev->dev = &pdev->dev;