[U-Boot] rk3288: HDMI out causing boot hang

Hi All,
Did anyone tried HDMI out on rk3288? Enabling HDMI out causing boot hang, during stdout initialization from console.c
Enabled below configs and stdin/out/err environment to probe the DM_VIDEO, seems like the console initialization hangs during stdout initialization.
Log: Model: Tinker-RK3288 DRAM: 2 GiB MMC: dwmmc@ff0c0000: 1 Loading Environment from MMC... OK 1. console_init_r 2. console_init_r 2.1 console_init_r rk3288_vop_probe vop@ff930000: probing regulator 'vcc18_lcd' vop@ff930000: probing regulator 'VCC18_LCD' vop@ff930000: probing regulator 'vdd10_lcd_pwren_h' vop@ff930000: probing regulator 'vdd10_lcd' vop@ff930000: probing regulator 'VDD10_LCD' vop@ff930000: probing regulator 'vcc33_lcd' rk_display_init(vop@ff930000, 2139095040, endpoint@0) vop_id=0 remote vop_id=0 rk_display_init(vop@ff930000): no UCLASS_DISPLAY for remote-endpoint Device failed: ret=-22 rk_display_init(vop@ff930000, 2139095040, endpoint@1) vop_id=1 remote vop_id=0 Found device 'hdmi@ff980000', disp_uc_priv=7cf71710 rk3288_hdmi_probe hdmi@ff980000: probing regulator 'vcc50_hdmi' rk_hdmi_probe: 1 rk_hdmi_probe: 2 rk_hdmi_probe: done! fb=7f800000, size=2560 1440 rk3288_vop_probe done!
Changes: +CONFIG_DM_VIDEO=y +CONFIG_DISPLAY=y +CONFIG_VIDEO_ROCKCHIP=y +CONFIG_DISPLAY_ROCKCHIP_HDMI=y +CONFIG_CONSOLE_SCROLL_LINES=10
+#define ROCKCHIP_DEVICE_SETTINGS \ + "stdout=serial,vidconsole\0" \ + "stderr=serial,vidconsole\0"
Any inputs?
Jagan.

Hello Jagan,
On Thu, Sep 12, 2019 at 10:50 PM Jagan Teki jagan@amarulasolutions.com wrote:
Hi All,
Did anyone tried HDMI out on rk3288? Enabling HDMI out causing boot hang, during stdout initialization from console.c
Enabled below configs and stdin/out/err environment to probe the DM_VIDEO, seems like the console initialization hangs during stdout initialization.
Log: Model: Tinker-RK3288 DRAM: 2 GiB MMC: dwmmc@ff0c0000: 1 Loading Environment from MMC... OK
- console_init_r
- console_init_r
2.1 console_init_r rk3288_vop_probe vop@ff930000: probing regulator 'vcc18_lcd' vop@ff930000: probing regulator 'VCC18_LCD' vop@ff930000: probing regulator 'vdd10_lcd_pwren_h' vop@ff930000: probing regulator 'vdd10_lcd' vop@ff930000: probing regulator 'VDD10_LCD' vop@ff930000: probing regulator 'vcc33_lcd' rk_display_init(vop@ff930000, 2139095040, endpoint@0) vop_id=0 remote vop_id=0 rk_display_init(vop@ff930000): no UCLASS_DISPLAY for remote-endpoint Device failed: ret=-22 rk_display_init(vop@ff930000, 2139095040, endpoint@1) vop_id=1 remote vop_id=0 Found device 'hdmi@ff980000', disp_uc_priv=7cf71710 rk3288_hdmi_probe hdmi@ff980000: probing regulator 'vcc50_hdmi' rk_hdmi_probe: 1 rk_hdmi_probe: 2 rk_hdmi_probe: done! fb=7f800000, size=2560 1440 rk3288_vop_probe done!
Changes: +CONFIG_DM_VIDEO=y +CONFIG_DISPLAY=y +CONFIG_VIDEO_ROCKCHIP=y +CONFIG_DISPLAY_ROCKCHIP_HDMI=y +CONFIG_CONSOLE_SCROLL_LINES=10
+#define ROCKCHIP_DEVICE_SETTINGS \
"stdout=serial,vidconsole\0" \
"stderr=serial,vidconsole\0"
Any inputs?
I saw this some time ago with Armbian with ASUS Tinker Board, but thought I had somehow misconfigured it, and simply disabled it. I can confirm it hangs for me though.
Jagan.
Linux-rockchip mailing list Linux-rockchip@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-rockchip

Hi Jagan,
On Fri, 13 Sep 2019 08:19:47 +0530 Jagan Teki jagan@amarulasolutions.com wrote: ...
Any inputs?
Try to input "setenv stdout serial" command on the serial console. There might be a chance that stdout/stdin has switched to the video console and the output proceeds there. If the HDMI display shows nothing, it appears like a hang.
-- Anatolij

Hi Anatolij
On Fri, Sep 13, 2019 at 4:01 PM Anatolij Gustschin agust@denx.de wrote:
Hi Jagan,
On Fri, 13 Sep 2019 08:19:47 +0530 Jagan Teki jagan@amarulasolutions.com wrote: ...
Any inputs?
Try to input "setenv stdout serial" command on the serial console. There might be a chance that stdout/stdin has switched to the video console and the output proceeds there. If the HDMI display shows nothing, it appears like a hang.
It's not an hang. It's the output is not shown. I'm trying to understand the reason
Michael
-- Anatolij
Linux-rockchip mailing list Linux-rockchip@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-rockchip

Hi
On Fri, Sep 13, 2019 at 4:02 PM Michael Nazzareno Trimarchi michael@amarulasolutions.com wrote:
Hi Anatolij
On Fri, Sep 13, 2019 at 4:01 PM Anatolij Gustschin agust@denx.de wrote:
Hi Jagan,
On Fri, 13 Sep 2019 08:19:47 +0530 Jagan Teki jagan@amarulasolutions.com wrote: ...
Any inputs?
Try to input "setenv stdout serial" command on the serial console. There might be a chance that stdout/stdin has switched to the video console and the output proceeds there. If the HDMI display shows nothing, it appears like a hang.
It's not an hang. It's the output is not shown. I'm trying to understand the reason
I have fixed, still not so good ;)
Michael
Michael
-- Anatolij
Linux-rockchip mailing list Linux-rockchip@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-rockchip
-- | Michael Nazzareno Trimarchi Amarula Solutions BV | | COO - Founder Cruquiuskade 47 | | +31(0)851119172 Amsterdam 1018 AM NL | | [`as] http://www.amarulasolutions.com |

Hi
On Fri, Sep 13, 2019 at 5:02 PM Michael Nazzareno Trimarchi michael@amarulasolutions.com wrote:
Hi
On Fri, Sep 13, 2019 at 4:02 PM Michael Nazzareno Trimarchi michael@amarulasolutions.com wrote:
Hi Anatolij
On Fri, Sep 13, 2019 at 4:01 PM Anatolij Gustschin agust@denx.de wrote:
Hi Jagan,
On Fri, 13 Sep 2019 08:19:47 +0530 Jagan Teki jagan@amarulasolutions.com wrote: ...
Any inputs?
Try to input "setenv stdout serial" command on the serial console. There might be a chance that stdout/stdin has switched to the video console and the output proceeds there. If the HDMI display shows nothing, it appears like a hang.
It's not an hang. It's the output is not shown. I'm trying to understand the reason
It was a bug of the old uboot
commit 79cdcaced710d955f68066d02327b86be573339c Author: Niklas Schulze me@jns.io Date: Sun Jul 14 10:40:13 2019 +0000
rockchip: video: rk3288_hdmi: Add missing call to dw_hdmi_enable()
The RK3288 HDMI driver's rk3288_hdmi_enable() currently lacks a call to dw_hdmi_enable(). Thus, the HDMI output never gets enabled.
Signed-off-by: Niklas Schulze me@jns.io Cc: Philipp Tomsich philipp.tomsich@theobroma-systems.com Reviewed-by: Kever Yang Kever.yang@rock-chips.com Reviewed-by: Philipp Tomsich philipp.tomsich@theobroma-systems.com
diff --git a/drivers/video/rockchip/rk3288_hdmi.c b/drivers/video/rockchip/rk3288_hdmi.c index 315d3adf27..3d25ce924c 100644 --- a/drivers/video/rockchip/rk3288_hdmi.c +++ b/drivers/video/rockchip/rk3288_hdmi.c @@ -33,7 +33,7 @@ static int rk3288_hdmi_enable(struct udevice *dev, int panel_bpp, /* hdmi data from vop id */ rk_clrsetreg(&grf->soc_con6, 1 << 4, (vop_id == 1) ? (1 << 4) : 0);
- return 0; + return dw_hdmi_enable(&priv->hdmi, edid); }
Now I need to test the mainline one
Michael
I have fixed, still not so good ;)
Michael
Michael
-- Anatolij
Linux-rockchip mailing list Linux-rockchip@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-rockchip
-- | Michael Nazzareno Trimarchi Amarula Solutions BV | | COO - Founder Cruquiuskade 47 | | +31(0)851119172 Amsterdam 1018 AM NL | | [`as] http://www.amarulasolutions.com |
-- | Michael Nazzareno Trimarchi Amarula Solutions BV | | COO - Founder Cruquiuskade 47 | | +31(0)851119172 Amsterdam 1018 AM NL | | [`as] http://www.amarulasolutions.com |

Hi Anatolij,
On Fri, Sep 13, 2019 at 7:31 PM Anatolij Gustschin agust@denx.de wrote:
Hi Jagan,
On Fri, 13 Sep 2019 08:19:47 +0530 Jagan Teki jagan@amarulasolutions.com wrote: ...
Any inputs?
Try to input "setenv stdout serial" command on the serial console. There might be a chance that stdout/stdin has switched to the video console and the output proceeds there. If the HDMI display shows nothing, it appears like a hang.
setting serial to stdout, would be a normal case, with this display didn't probe atall.
participants (4)
-
Anatolij Gustschin
-
Jagan Teki
-
Michael Nazzareno Trimarchi
-
Tony McKahan