Using platform_driver_probe() prevent driver from requesting
probe deferral. Fix this.
While at that, also switch to module_platform_driver() and
remove __init annotation from probe().
Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
        debugfs_remove(msm_otg_dbg_root);
 }
 
-static int __init msm_otg_probe(struct platform_device *pdev)
+static int msm_otg_probe(struct platform_device *pdev)
 {
        int ret = 0;
        struct resource *res;
 };
 
 static struct platform_driver msm_otg_driver = {
+       .probe = msm_otg_probe,
        .remove = msm_otg_remove,
        .driver = {
                .name = DRIVER_NAME,
        },
 };
 
-module_platform_driver_probe(msm_otg_driver, msm_otg_probe);
+module_platform_driver(msm_otg_driver);
 
 MODULE_LICENSE("GPL v2");
 MODULE_DESCRIPTION("MSM USB transceiver driver");