diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2018-02-28 15:58:13 +0200 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2018-09-03 16:13:26 +0300 |
commit | b93109d7dc9e15649e1cf18281f02d8b4a102584 (patch) | |
tree | 5250492e53cb03bd2b780489f97982bbfbae7f73 /drivers/gpu/drm/omapdrm/displays/encoder-opa362.c | |
parent | e10bd354ad79d2772842300c85ffd1a49722cfae (diff) |
drm/omap: dss: Move common device operations to common structure
The various types of omapdss_*_ops structures define multiple operations
that are not specific to a bus type. To simplify the code and remove
dependencies on specific bus types move those operations to a common
structure. Operations that are specific to a bus type are kept in the
specialized ops structures.
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/encoder-opa362.c')
-rw-r--r-- | drivers/gpu/drm/omapdrm/displays/encoder-opa362.c | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c b/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c index 0e3f4a20e531..37982ffe0ad4 100644 --- a/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c +++ b/drivers/gpu/drm/omapdrm/displays/encoder-opa362.c @@ -50,7 +50,7 @@ static int opa362_connect(struct omap_dss_device *dssdev, return PTR_ERR(in); } - r = in->ops.atv->connect(in, dssdev); + r = in->ops->connect(in, dssdev); if (r) { omap_dss_put_device(in); return r; @@ -82,7 +82,7 @@ static void opa362_disconnect(struct omap_dss_device *dssdev, dst->src = NULL; dssdev->dst = NULL; - in->ops.atv->disconnect(in, &ddata->dssdev); + in->ops->disconnect(in, &ddata->dssdev); omap_dss_put_device(in); ddata->in = NULL; @@ -102,9 +102,9 @@ static int opa362_enable(struct omap_dss_device *dssdev) if (omapdss_device_is_enabled(dssdev)) return 0; - in->ops.atv->set_timings(in, &ddata->vm); + in->ops->set_timings(in, &ddata->vm); - r = in->ops.atv->enable(in); + r = in->ops->enable(in); if (r) return r; @@ -129,7 +129,7 @@ static void opa362_disable(struct omap_dss_device *dssdev) if (ddata->enable_gpio) gpiod_set_value_cansleep(ddata->enable_gpio, 0); - in->ops.atv->disable(in); + in->ops->disable(in); dssdev->state = OMAP_DSS_DISPLAY_DISABLED; } @@ -144,7 +144,7 @@ static void opa362_set_timings(struct omap_dss_device *dssdev, ddata->vm = *vm; - in->ops.atv->set_timings(in, vm); + in->ops->set_timings(in, vm); } static int opa362_check_timings(struct omap_dss_device *dssdev, @@ -155,16 +155,14 @@ static int opa362_check_timings(struct omap_dss_device *dssdev, dev_dbg(dssdev->dev, "check_timings\n"); - return in->ops.atv->check_timings(in, vm); + return in->ops->check_timings(in, vm); } -static const struct omapdss_atv_ops opa362_atv_ops = { +static const struct omap_dss_device_ops opa362_ops = { .connect = opa362_connect, .disconnect = opa362_disconnect, - .enable = opa362_enable, .disable = opa362_disable, - .check_timings = opa362_check_timings, .set_timings = opa362_set_timings, }; @@ -191,7 +189,7 @@ static int opa362_probe(struct platform_device *pdev) ddata->enable_gpio = gpio; dssdev = &ddata->dssdev; - dssdev->ops.atv = &opa362_atv_ops; + dssdev->ops = &opa362_ops; dssdev->dev = &pdev->dev; dssdev->type = OMAP_DISPLAY_TYPE_VENC; dssdev->output_type = OMAP_DISPLAY_TYPE_VENC; |