mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-27 04:54:41 +08:00
drm/omap: dss: Remove output devices list
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>
This commit is contained in:
parent
3ce75d67e4
commit
de57e9dbc1
@ -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))
|
||||
|
@ -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))
|
||||
|
@ -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))
|
||||
|
@ -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)
|
||||
{
|
||||
|
@ -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,
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
@ -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)
|
||||
|
@ -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);
|
||||
|
@ -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)
|
||||
|
@ -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,
|
||||
|
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user