OMAPDSS: RFBI: 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-05-02 12:11:56 +03:00
parent ee4a24e2fd
commit 9abf7de1b1

View file

@ -943,13 +943,13 @@ void omapdss_rfbi_display_disable(struct omap_dss_device *dssdev)
} }
EXPORT_SYMBOL(omapdss_rfbi_display_disable); EXPORT_SYMBOL(omapdss_rfbi_display_disable);
static int __init rfbi_init_display(struct omap_dss_device *dssdev) static int rfbi_init_display(struct omap_dss_device *dssdev)
{ {
rfbi.dssdev[dssdev->phy.rfbi.channel] = dssdev; rfbi.dssdev[dssdev->phy.rfbi.channel] = dssdev;
return 0; return 0;
} }
static struct omap_dss_device * __init rfbi_find_dssdev(struct platform_device *pdev) static struct omap_dss_device *rfbi_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();
@ -977,7 +977,7 @@ static struct omap_dss_device * __init rfbi_find_dssdev(struct platform_device *
return def_dssdev; return def_dssdev;
} }
static void __init rfbi_probe_pdata(struct platform_device *rfbidev) static void rfbi_probe_pdata(struct platform_device *rfbidev)
{ {
struct omap_dss_device *plat_dssdev; struct omap_dss_device *plat_dssdev;
struct omap_dss_device *dssdev; struct omap_dss_device *dssdev;
@ -1018,7 +1018,7 @@ static void __init rfbi_probe_pdata(struct platform_device *rfbidev)
} }
} }
static void __init rfbi_init_output(struct platform_device *pdev) static void rfbi_init_output(struct platform_device *pdev)
{ {
struct omap_dss_output *out = &rfbi.output; struct omap_dss_output *out = &rfbi.output;
@ -1039,7 +1039,7 @@ static void __exit rfbi_uninit_output(struct platform_device *pdev)
} }
/* RFBI HW IP initialisation */ /* RFBI HW IP initialisation */
static int __init omap_rfbihw_probe(struct platform_device *pdev) static int omap_rfbihw_probe(struct platform_device *pdev)
{ {
u32 rev; u32 rev;
struct resource *rfbi_mem; struct resource *rfbi_mem;
@ -1135,6 +1135,7 @@ static const struct dev_pm_ops rfbi_pm_ops = {
}; };
static struct platform_driver omap_rfbihw_driver = { static struct platform_driver omap_rfbihw_driver = {
.probe = omap_rfbihw_probe,
.remove = __exit_p(omap_rfbihw_remove), .remove = __exit_p(omap_rfbihw_remove),
.driver = { .driver = {
.name = "omapdss_rfbi", .name = "omapdss_rfbi",
@ -1145,7 +1146,7 @@ static struct platform_driver omap_rfbihw_driver = {
int __init rfbi_init_platform_driver(void) int __init rfbi_init_platform_driver(void)
{ {
return platform_driver_probe(&omap_rfbihw_driver, omap_rfbihw_probe); return platform_driver_register(&omap_rfbihw_driver);
} }
void __exit rfbi_uninit_platform_driver(void) void __exit rfbi_uninit_platform_driver(void)