OMAPDSS: DPI: use platform_driver_register()

Use platform_driver_register() instead of platform_driver_probe() so
that we can support EPROBE_DEFER.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
This commit is contained in:
Tomi Valkeinen 2013-04-26 14:27:44 +03:00
parent dfbc32316c
commit 94cf394b15
1 changed files with 8 additions and 7 deletions

View File

@ -520,7 +520,7 @@ void omapdss_dpi_set_data_lines(struct omap_dss_device *dssdev, int data_lines)
} }
EXPORT_SYMBOL(omapdss_dpi_set_data_lines); EXPORT_SYMBOL(omapdss_dpi_set_data_lines);
static int __init dpi_verify_dsi_pll(struct platform_device *dsidev) static int dpi_verify_dsi_pll(struct platform_device *dsidev)
{ {
int r; int r;
@ -572,7 +572,7 @@ static enum omap_channel dpi_get_channel(void)
} }
} }
static int __init dpi_init_display(struct omap_dss_device *dssdev) static int dpi_init_display(struct omap_dss_device *dssdev)
{ {
struct platform_device *dsidev; struct platform_device *dsidev;
@ -607,7 +607,7 @@ static int __init dpi_init_display(struct omap_dss_device *dssdev)
return 0; return 0;
} }
static struct omap_dss_device * __init dpi_find_dssdev(struct platform_device *pdev) static struct omap_dss_device *dpi_find_dssdev(struct platform_device *pdev)
{ {
struct omap_dss_board_info *pdata = pdev->dev.platform_data; struct omap_dss_board_info *pdata = pdev->dev.platform_data;
const char *def_disp_name = omapdss_get_default_display_name(); const char *def_disp_name = omapdss_get_default_display_name();
@ -635,7 +635,7 @@ static struct omap_dss_device * __init dpi_find_dssdev(struct platform_device *p
return def_dssdev; return def_dssdev;
} }
static void __init dpi_probe_pdata(struct platform_device *dpidev) static void dpi_probe_pdata(struct platform_device *dpidev)
{ {
struct omap_dss_device *plat_dssdev; struct omap_dss_device *plat_dssdev;
struct omap_dss_device *dssdev; struct omap_dss_device *dssdev;
@ -676,7 +676,7 @@ static void __init dpi_probe_pdata(struct platform_device *dpidev)
} }
} }
static void __init dpi_init_output(struct platform_device *pdev) static void dpi_init_output(struct platform_device *pdev)
{ {
struct omap_dss_output *out = &dpi.output; struct omap_dss_output *out = &dpi.output;
@ -696,7 +696,7 @@ static void __exit dpi_uninit_output(struct platform_device *pdev)
dss_unregister_output(out); dss_unregister_output(out);
} }
static int __init omap_dpi_probe(struct platform_device *pdev) static int omap_dpi_probe(struct platform_device *pdev)
{ {
mutex_init(&dpi.lock); mutex_init(&dpi.lock);
@ -717,6 +717,7 @@ static int __exit omap_dpi_remove(struct platform_device *pdev)
} }
static struct platform_driver omap_dpi_driver = { static struct platform_driver omap_dpi_driver = {
.probe = omap_dpi_probe,
.remove = __exit_p(omap_dpi_remove), .remove = __exit_p(omap_dpi_remove),
.driver = { .driver = {
.name = "omapdss_dpi", .name = "omapdss_dpi",
@ -726,7 +727,7 @@ static struct platform_driver omap_dpi_driver = {
int __init dpi_init_platform_driver(void) int __init dpi_init_platform_driver(void)
{ {
return platform_driver_probe(&omap_dpi_driver, omap_dpi_probe); return platform_driver_register(&omap_dpi_driver);
} }
void __exit dpi_uninit_platform_driver(void) void __exit dpi_uninit_platform_driver(void)