i2c: exynos5: register driver early in subsys initcall to avoid probe defer
authorMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 31 Mar 2015 12:47:00 +0000 (14:47 +0200)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Mon, 13 Apr 2015 10:44:56 +0000 (12:44 +0200)
i2c bus drivers should be registered earlier than other drivers to let
important i2c devices (like pmic) get registered early enough to avoid
probe defer of other devices.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
drivers/i2c/busses/i2c-exynos5.c

index b29c750..934a5cb 100644 (file)
@@ -867,7 +867,17 @@ static struct platform_driver exynos5_i2c_driver = {
        },
 };
 
-module_platform_driver(exynos5_i2c_driver);
+static int __init i2c_adap_exynos5_i2c_init(void)
+{
+       return platform_driver_register(&exynos5_i2c_driver);
+}
+subsys_initcall(i2c_adap_exynos5_i2c_init);
+
+static void __exit i2c_adap_exynos5_i2c_exit(void)
+{
+       platform_driver_unregister(&exynos5_i2c_driver);
+}
+module_exit(i2c_adap_exynos5_i2c_exit);
 
 MODULE_DESCRIPTION("Exynos5 HS-I2C Bus driver");
 MODULE_AUTHOR("Naveen Krishna Chatradhi, <ch.naveen@samsung.com>");