[U-Boot] [PATCH v2 1/2] mx6sabresd: Avoid hang when HDMI cable is not connected

Fabio Estevam festevam at gmail.com
Wed Sep 11 23:14:29 CEST 2013


From: Fabio Estevam <fabio.estevam at freescale.com>

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 check to 'dev->detect' in order to prevent the hang.

Reported-by: Pardeep Kumar Singla <b45784 at freescale.com>
Suggested-by: Eric Bénard <eric at eukrea.com>
Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
---
Changes since v1:
- Check dev->detect

 board/freescale/mx6sabresd/mx6sabresd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/board/freescale/mx6sabresd/mx6sabresd.c b/board/freescale/mx6sabresd/mx6sabresd.c
index c832bd9..0f91fe2 100644
--- a/board/freescale/mx6sabresd/mx6sabresd.c
+++ b/board/freescale/mx6sabresd/mx6sabresd.c
@@ -313,7 +313,7 @@ int board_video_skip(void)
 	if (!panel) {
 		for (i = 0; i < ARRAY_SIZE(displays); i++) {
 			struct display_info_t const *dev = displays+i;
-			if (dev->detect(dev)) {
+			if (dev->detect && dev->detect(dev)) {
 				panel = dev->mode.name;
 				printf("auto-detected panel %s\n", panel);
 				break;
-- 
1.8.1.2



More information about the U-Boot mailing list