OSDN Git Service

drm/omap: dss: Remove output devices list
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Thu, 1 Mar 2018 23:25:32 +0000 (01:25 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 3 Sep 2018 13:13:26 +0000 (16:13 +0300)
The output devices list isn't used anymore, all output devices are
accessed through the global devices list. Remove it.

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>
12 files changed:
drivers/gpu/drm/omapdrm/displays/encoder-opa362.c
drivers/gpu/drm/omapdrm/displays/encoder-tfp410.c
drivers/gpu/drm/omapdrm/displays/encoder-tpd12s015.c
drivers/gpu/drm/omapdrm/dss/base.c
drivers/gpu/drm/omapdrm/dss/dpi.c
drivers/gpu/drm/omapdrm/dss/dsi.c
drivers/gpu/drm/omapdrm/dss/hdmi4.c
drivers/gpu/drm/omapdrm/dss/hdmi5.c
drivers/gpu/drm/omapdrm/dss/omapdss.h
drivers/gpu/drm/omapdrm/dss/output.c
drivers/gpu/drm/omapdrm/dss/sdi.c
drivers/gpu/drm/omapdrm/dss/venc.c

index a190bcf..52ceaae 100644 (file)
@@ -146,7 +146,6 @@ static int opa362_probe(struct platform_device *pdev)
        struct panel_drv_data *ddata;
        struct omap_dss_device *dssdev;
        struct gpio_desc *gpio;
-       int r;
 
        dev_dbg(&pdev->dev, "probe\n");
 
@@ -169,11 +168,7 @@ static int opa362_probe(struct platform_device *pdev)
        dssdev->output_type = OMAP_DISPLAY_TYPE_VENC;
        dssdev->owner = THIS_MODULE;
 
-       r = omapdss_register_output(dssdev);
-       if (r) {
-               dev_err(&pdev->dev, "Failed to register output\n");
-               return r;
-       }
+       omapdss_device_register(dssdev);
 
        return 0;
 }
@@ -183,7 +178,7 @@ static int __exit opa362_remove(struct platform_device *pdev)
        struct panel_drv_data *ddata = platform_get_drvdata(pdev);
        struct omap_dss_device *dssdev = &ddata->dssdev;
 
-       omapdss_unregister_output(&ddata->dssdev);
+       omapdss_device_unregister(&ddata->dssdev);
 
        WARN_ON(omapdss_device_is_enabled(dssdev));
        if (omapdss_device_is_enabled(dssdev))
index db52eb4..f4223cf 100644 (file)
@@ -192,11 +192,7 @@ static int tfp410_probe(struct platform_device *pdev)
        dssdev->owner = THIS_MODULE;
        dssdev->port_num = 1;
 
-       r = omapdss_register_output(dssdev);
-       if (r) {
-               dev_err(&pdev->dev, "Failed to register output\n");
-               return r;
-       }
+       omapdss_device_register(dssdev);
 
        return 0;
 }
@@ -206,7 +202,7 @@ static int __exit tfp410_remove(struct platform_device *pdev)
        struct panel_drv_data *ddata = platform_get_drvdata(pdev);
        struct omap_dss_device *dssdev = &ddata->dssdev;
 
-       omapdss_unregister_output(&ddata->dssdev);
+       omapdss_device_unregister(&ddata->dssdev);
 
        WARN_ON(omapdss_device_is_enabled(dssdev));
        if (omapdss_device_is_enabled(dssdev))
index 4537867..90e0703 100644 (file)
@@ -301,11 +301,7 @@ static int tpd_probe(struct platform_device *pdev)
        dssdev->owner = THIS_MODULE;
        dssdev->port_num = 1;
 
-       r = omapdss_register_output(dssdev);
-       if (r) {
-               dev_err(&pdev->dev, "Failed to register output\n");
-               return r;
-       }
+       omapdss_device_register(dssdev);
 
        return 0;
 }
@@ -315,7 +311,7 @@ static int __exit tpd_remove(struct platform_device *pdev)
        struct panel_drv_data *ddata = platform_get_drvdata(pdev);
        struct omap_dss_device *dssdev = &ddata->dssdev;
 
-       omapdss_unregister_output(&ddata->dssdev);
+       omapdss_device_unregister(&ddata->dssdev);
 
        WARN_ON(omapdss_device_is_enabled(dssdev));
        if (omapdss_device_is_enabled(dssdev))
index 22d3818..8fac816 100644 (file)
@@ -63,6 +63,7 @@ void omapdss_device_register(struct omap_dss_device *dssdev)
        list_add_tail(&dssdev->list, &omapdss_devices_list);
        mutex_unlock(&omapdss_devices_lock);
 }
+EXPORT_SYMBOL_GPL(omapdss_device_register);
 
 void omapdss_device_unregister(struct omap_dss_device *dssdev)
 {
@@ -70,6 +71,7 @@ void omapdss_device_unregister(struct omap_dss_device *dssdev)
        list_del(&dssdev->list);
        mutex_unlock(&omapdss_devices_lock);
 }
+EXPORT_SYMBOL_GPL(omapdss_device_unregister);
 
 static bool omapdss_device_is_registered(struct device_node *node)
 {
index bb7dcd8..372f107 100644 (file)
@@ -718,7 +718,7 @@ static void dpi_init_output_port(struct dpi_data *dpi, struct device_node *port)
        out->ops = &dpi_ops;
        out->owner = THIS_MODULE;
 
-       omapdss_register_output(out);
+       omapdss_device_register(out);
 }
 
 static void dpi_uninit_output_port(struct device_node *port)
@@ -726,7 +726,7 @@ static void dpi_uninit_output_port(struct device_node *port)
        struct dpi_data *dpi = port->data;
        struct omap_dss_device *out = &dpi->output;
 
-       omapdss_unregister_output(out);
+       omapdss_device_unregister(out);
 }
 
 int dpi_init_port(struct dss_device *dss, struct platform_device *pdev,
index ac6ec1f..e061816 100644 (file)
@@ -4995,14 +4995,14 @@ static void dsi_init_output(struct dsi_data *dsi)
        out->ops = &dsi_ops;
        out->owner = THIS_MODULE;
 
-       omapdss_register_output(out);
+       omapdss_device_register(out);
 }
 
 static void dsi_uninit_output(struct dsi_data *dsi)
 {
        struct omap_dss_device *out = &dsi->output;
 
-       omapdss_unregister_output(out);
+       omapdss_device_unregister(out);
 }
 
 static int dsi_probe_of(struct dsi_data *dsi)
index 7e5474e..fa81803 100644 (file)
@@ -565,14 +565,14 @@ static void hdmi_init_output(struct omap_hdmi *hdmi)
        out->ops = &hdmi_ops;
        out->owner = THIS_MODULE;
 
-       omapdss_register_output(out);
+       omapdss_device_register(out);
 }
 
 static void hdmi_uninit_output(struct omap_hdmi *hdmi)
 {
        struct omap_dss_device *out = &hdmi->output;
 
-       omapdss_unregister_output(out);
+       omapdss_device_unregister(out);
 }
 
 static int hdmi_probe_of(struct omap_hdmi *hdmi)
index 86b18cc..ef4a48f 100644 (file)
@@ -556,14 +556,14 @@ static void hdmi_init_output(struct omap_hdmi *hdmi)
        out->ops = &hdmi_ops;
        out->owner = THIS_MODULE;
 
-       omapdss_register_output(out);
+       omapdss_device_register(out);
 }
 
 static void hdmi_uninit_output(struct omap_hdmi *hdmi)
 {
        struct omap_dss_device *out = &hdmi->output;
 
-       omapdss_unregister_output(out);
+       omapdss_device_unregister(out);
 }
 
 static int hdmi_probe_of(struct omap_hdmi *hdmi)
index 0033adf..26abc09 100644 (file)
@@ -416,8 +416,6 @@ struct omap_dss_device {
 
        /* OMAP DSS output specific fields */
 
-       struct list_head output_list;
-
        /* DISPC channel for this output */
        enum omap_channel dispc_channel;
        bool dispc_channel_connected;
@@ -510,9 +508,6 @@ int omap_dss_get_num_overlay_managers(void);
 
 int omap_dss_get_num_overlays(void);
 
-int omapdss_register_output(struct omap_dss_device *output);
-void omapdss_unregister_output(struct omap_dss_device *output);
-struct omap_dss_device *omap_dss_get_output(enum omap_dss_output_id id);
 int omapdss_output_set_device(struct omap_dss_device *out,
                struct omap_dss_device *dssdev);
 int omapdss_output_unset_device(struct omap_dss_device *out);
index 6abdb61..e62da96 100644 (file)
@@ -23,7 +23,6 @@
 
 #include "omapdss.h"
 
-static LIST_HEAD(output_list);
 static DEFINE_MUTEX(output_lock);
 
 int omapdss_output_set_device(struct omap_dss_device *out,
@@ -88,34 +87,6 @@ err:
 }
 EXPORT_SYMBOL(omapdss_output_unset_device);
 
-int omapdss_register_output(struct omap_dss_device *out)
-{
-       list_add_tail(&out->output_list, &output_list);
-       omapdss_device_register(out);
-       return 0;
-}
-EXPORT_SYMBOL(omapdss_register_output);
-
-void omapdss_unregister_output(struct omap_dss_device *out)
-{
-       list_del(&out->output_list);
-       omapdss_device_unregister(out);
-}
-EXPORT_SYMBOL(omapdss_unregister_output);
-
-struct omap_dss_device *omap_dss_get_output(enum omap_dss_output_id id)
-{
-       struct omap_dss_device *out;
-
-       list_for_each_entry(out, &output_list, output_list) {
-               if (out->id == id)
-                       return out;
-       }
-
-       return NULL;
-}
-EXPORT_SYMBOL(omap_dss_get_output);
-
 struct omap_dss_device *omapdss_find_output_from_display(struct omap_dss_device *dssdev)
 {
        while (dssdev->src)
index e782be2..2f39e1f 100644 (file)
@@ -331,12 +331,12 @@ static void sdi_init_output(struct sdi_device *sdi)
        out->ops = &sdi_ops;
        out->owner = THIS_MODULE;
 
-       omapdss_register_output(out);
+       omapdss_device_register(out);
 }
 
 static void sdi_uninit_output(struct sdi_device *sdi)
 {
-       omapdss_unregister_output(&sdi->output);
+       omapdss_device_unregister(&sdi->output);
 }
 
 int sdi_init_port(struct dss_device *dss, struct platform_device *pdev,
index 17668da..70418cf 100644 (file)
@@ -768,12 +768,12 @@ static void venc_init_output(struct venc_device *venc)
        out->ops = &venc_ops;
        out->owner = THIS_MODULE;
 
-       omapdss_register_output(out);
+       omapdss_device_register(out);
 }
 
 static void venc_uninit_output(struct venc_device *venc)
 {
-       omapdss_unregister_output(&venc->output);
+       omapdss_device_unregister(&venc->output);
 }
 
 static int venc_probe_of(struct venc_device *venc)