Since commit d9b894603 (mx6sabresd: Add LVDS splash screen support) the 
following hang happens if the HDMI cable is not connected or the 'panel' 
variable is not set:

U-Boot 2013.10-rc2-12978-g47ac53d-dirty (Sep 11 2013 - 15:07:38)                
                                                                                
CPU:   Freescale i.MX6Q rev1.2 at 792 MHz                                       
Reset cause: POR                                                                
Board: MX6-SabreSD                                                              
DRAM:  1 GiB                                                                    
MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
...

Provide a detect_lvds() to avoid the hang.

Reported-by: Pardeep Kumar Singla <b45...@freescale.com>
Signed-off-by: Fabio Estevam <fabio.este...@freescale.com>
---
 board/freescale/mx6sabresd/mx6sabresd.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/board/freescale/mx6sabresd/mx6sabresd.c 
b/board/freescale/mx6sabresd/mx6sabresd.c
index c832bd9..e514529 100644
--- a/board/freescale/mx6sabresd/mx6sabresd.c
+++ b/board/freescale/mx6sabresd/mx6sabresd.c
@@ -263,6 +263,12 @@ static void enable_lvds(struct display_info_t const *dev)
               IOMUXC_GPR2_DATA_WIDTH_CH1_24BIT;
        writel(reg, &iomux->gpr[2]);
 }
+
+static int detect_lvds(struct display_info_t const *dev)
+{
+       return 0;
+}
+
 static struct display_info_t const displays[] = {{
        .bus    = -1,
        .addr   = 0,
@@ -287,7 +293,7 @@ static struct display_info_t const displays[] = {{
        .bus    = -1,
        .addr   = 0,
        .pixfmt = IPU_PIX_FMT_LVDS666,
-       .detect = NULL,
+       .detect = detect_lvds,
        .enable = enable_lvds,
        .mode   = {
                .name           = "Hannstar-XGA",
-- 
1.8.1.2


_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to