OMAPDSS: manage output-dssdev connection in output drivers

We currently attach an output to a dssdev in the initialization code for
dssdevices in display.c. This works, but doesn't quite make sense: an
output entity represents (surprisingly) an output of DSS, which is
managed by an output driver. The output driver also handles adding new
dssdev's for that particular output.

It makes more sense to make the output-dssdev connection in the output
driver. This is also in line with common display framework.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
此提交包含在:
Tomi Valkeinen
2012-12-07 12:50:08 +02:00
父節點 09a8c45cbb
當前提交 486c0e17b7
共有 9 個檔案被更改,包括 55 行新增46 行删除

查看文件

@@ -79,17 +79,8 @@ EXPORT_SYMBOL(omapdss_default_get_timings);
int dss_init_device(struct platform_device *pdev,
struct omap_dss_device *dssdev)
{
struct omap_dss_output *out;
int r;
out = omapdss_get_output_from_dssdev(dssdev);
r = omapdss_output_set_device(out, dssdev);
if (r) {
DSSERR("failed to connect output to new device\n");
return r;
}
r = display_init_sysfs(pdev, dssdev);
if (r) {
omapdss_output_unset_device(dssdev->output);
@@ -103,9 +94,6 @@ void dss_uninit_device(struct platform_device *pdev,
struct omap_dss_device *dssdev)
{
display_uninit_sysfs(pdev, dssdev);
if (dssdev->output)
omapdss_output_unset_device(dssdev->output);
}
static int dss_suspend_device(struct device *dev, void *data)