[U-Boot] [PATCH v2 1/2] video: sunxi: de2: fix SimpleFB node creation when HDMI not initialized

Icenowy Zheng icenowy at aosc.io
Wed Nov 1 14:18:06 UTC 2017


When HDMI is not initialized (e.g. no monitor is plugged), the current
SimpleFB code will still create a broken SimpleFB node.

Detect whether HDMI is initialized when creating SimpleFB node.

Fixes: be5b96f0e411 ("sunxi: setup simplefb for Allwinner DE2")
Signed-off-by: Icenowy Zheng <icenowy at aosc.io>
---
 drivers/video/sunxi/sunxi_de2.c | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/drivers/video/sunxi/sunxi_de2.c b/drivers/video/sunxi/sunxi_de2.c
index e8903400ec..6d6bb2e0c3 100644
--- a/drivers/video/sunxi/sunxi_de2.c
+++ b/drivers/video/sunxi/sunxi_de2.c
@@ -346,13 +346,19 @@ int sunxi_simplefb_setup(void *blob)
 					 "sunxi_dw_hdmi", &hdmi);
 	if (ret) {
 		debug("HDMI not present\n");
-		return 0;
+	} else if (device_active(hdmi)) {
+		if (mux == 0)
+			pipeline = "mixer0-lcd0-hdmi";
+		else
+			pipeline = "mixer1-lcd1-hdmi";
+	} else {
+		debug("HDMI present but not probed\n");
 	}
 
-	if (mux == 0)
-		pipeline = "mixer0-lcd0-hdmi";
-	else
-		pipeline = "mixer1-lcd1-hdmi";
+	if (!pipeline) {
+		debug("No active display present\n");
+		return 0;
+	}
 
 	de2_priv = dev_get_uclass_priv(de2);
 	de2_plat = dev_get_uclass_platdata(de2);
-- 
2.13.6



More information about the U-Boot mailing list