OMAPDSS: fix DPI & DSI init order
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 22 Oct 2012 12:57:25 +0000 (15:57 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 5 Nov 2012 09:14:04 +0000 (11:14 +0200)
DPI may use DSI PLL, so it depends on DSI. However, currently DPI driver
is added first, which causes DPI initialization to fail when it tries to
get the DSI PLL.

This patch changes the init order to fix this.

A better solution would be to separate DSI PLL and DSI drivers. They
have dependencies, though, but we could still have DSI PLL as an
independent entity that we could initialize before any of the output
drivers.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
drivers/video/omap2/dss/core.c

index a2ea684169e99aedc8cc2080a363813cc91543d0..b1a9ce1188fb86ce6ad14e39b2f0ba9795286a57 100644 (file)
@@ -510,6 +510,9 @@ static int __init omap_dss_bus_register(void)
 
 /* INIT */
 static int (*dss_output_drv_reg_funcs[])(void) __initdata = {
+#ifdef CONFIG_OMAP2_DSS_DSI
+       dsi_init_platform_driver,
+#endif
 #ifdef CONFIG_OMAP2_DSS_DPI
        dpi_init_platform_driver,
 #endif
@@ -522,15 +525,15 @@ static int (*dss_output_drv_reg_funcs[])(void) __initdata = {
 #ifdef CONFIG_OMAP2_DSS_VENC
        venc_init_platform_driver,
 #endif
-#ifdef CONFIG_OMAP2_DSS_DSI
-       dsi_init_platform_driver,
-#endif
 #ifdef CONFIG_OMAP4_DSS_HDMI
        hdmi_init_platform_driver,
 #endif
 };
 
 static void (*dss_output_drv_unreg_funcs[])(void) __exitdata = {
+#ifdef CONFIG_OMAP2_DSS_DSI
+       dsi_uninit_platform_driver,
+#endif
 #ifdef CONFIG_OMAP2_DSS_DPI
        dpi_uninit_platform_driver,
 #endif
@@ -543,9 +546,6 @@ static void (*dss_output_drv_unreg_funcs[])(void) __exitdata = {
 #ifdef CONFIG_OMAP2_DSS_VENC
        venc_uninit_platform_driver,
 #endif
-#ifdef CONFIG_OMAP2_DSS_DSI
-       dsi_uninit_platform_driver,
-#endif
 #ifdef CONFIG_OMAP4_DSS_HDMI
        hdmi_uninit_platform_driver,
 #endif
This page took 0.025822 seconds and 5 git commands to generate.