aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@ti.com>2012-10-22 08:57:25 -0400
committerTomi Valkeinen <tomi.valkeinen@ti.com>2012-11-05 04:14:04 -0500
commit046bc5751d70c9d5356d725e3e16987ed98eb7c8 (patch)
tree21681d4146a35a23d77393b21d55943a7e494355 /drivers/video
parent9296dbd79efb3a754f06d71510cc47af7eff0bee (diff)
OMAPDSS: fix DPI & DSI init order
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>
Diffstat (limited to 'drivers/video')
-rw-r--r--drivers/video/omap2/dss/core.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/video/omap2/dss/core.c b/drivers/video/omap2/dss/core.c
index a2ea684169e..b1a9ce1188f 100644
--- a/drivers/video/omap2/dss/core.c
+++ b/drivers/video/omap2/dss/core.c
@@ -510,6 +510,9 @@ static int __init omap_dss_bus_register(void)
510 510
511/* INIT */ 511/* INIT */
512static int (*dss_output_drv_reg_funcs[])(void) __initdata = { 512static int (*dss_output_drv_reg_funcs[])(void) __initdata = {
513#ifdef CONFIG_OMAP2_DSS_DSI
514 dsi_init_platform_driver,
515#endif
513#ifdef CONFIG_OMAP2_DSS_DPI 516#ifdef CONFIG_OMAP2_DSS_DPI
514 dpi_init_platform_driver, 517 dpi_init_platform_driver,
515#endif 518#endif
@@ -522,15 +525,15 @@ static int (*dss_output_drv_reg_funcs[])(void) __initdata = {
522#ifdef CONFIG_OMAP2_DSS_VENC 525#ifdef CONFIG_OMAP2_DSS_VENC
523 venc_init_platform_driver, 526 venc_init_platform_driver,
524#endif 527#endif
525#ifdef CONFIG_OMAP2_DSS_DSI
526 dsi_init_platform_driver,
527#endif
528#ifdef CONFIG_OMAP4_DSS_HDMI 528#ifdef CONFIG_OMAP4_DSS_HDMI
529 hdmi_init_platform_driver, 529 hdmi_init_platform_driver,
530#endif 530#endif
531}; 531};
532 532
533static void (*dss_output_drv_unreg_funcs[])(void) __exitdata = { 533static void (*dss_output_drv_unreg_funcs[])(void) __exitdata = {
534#ifdef CONFIG_OMAP2_DSS_DSI
535 dsi_uninit_platform_driver,
536#endif
534#ifdef CONFIG_OMAP2_DSS_DPI 537#ifdef CONFIG_OMAP2_DSS_DPI
535 dpi_uninit_platform_driver, 538 dpi_uninit_platform_driver,
536#endif 539#endif
@@ -543,9 +546,6 @@ static void (*dss_output_drv_unreg_funcs[])(void) __exitdata = {
543#ifdef CONFIG_OMAP2_DSS_VENC 546#ifdef CONFIG_OMAP2_DSS_VENC
544 venc_uninit_platform_driver, 547 venc_uninit_platform_driver,
545#endif 548#endif
546#ifdef CONFIG_OMAP2_DSS_DSI
547 dsi_uninit_platform_driver,
548#endif
549#ifdef CONFIG_OMAP4_DSS_HDMI 549#ifdef CONFIG_OMAP4_DSS_HDMI
550 hdmi_uninit_platform_driver, 550 hdmi_uninit_platform_driver,
551#endif 551#endif