rockchip-linux / u-boot

U-Boot tree for pending commits
113 stars 79 forks source link

Logo.bmp is not displayed at boot time on RK3288_BOX board and Firefly-RK3288 board. #53

Open ertos12 opened 4 years ago

ertos12 commented 4 years ago

Logo.bmp is not displayed at boot time on RK3288_BOX board and Firefly-RK3288 board.

I am currently using U-boot of RK3288_Linux_SDK_V2.2_20200106_200304 version SDK. In the U-Boot of the previous RK3288_Linux_SDK_V2.0_20181010_190812 version SDK, logo.bmp is displayed at boot, and logo_kernel.bmp is displayed in Kernel.

The strange thing is that if you remove the HDMI cable from the board and connect the HDMI cable after booting, the X window screen is displayed, but when I connect the HDMI cable to the board from the beginning and boot, any content doesn't work including the logo.bmp screen is displayed on the screen at the booting time.

Is it u-boot drm driver issue? I don't know.

ertos12 commented 4 years ago

I found some solution. If the source clock of RK3288's VOP DCLK is set to general pll (GPLL) instead of codec pll (CPLL), logo.bmp can be displayed in U-boot. I think we should check more about why.

I changed the source code of "rockchip_vop_set_clk ()" in "clk_rk3288.c" as follows to force general pll (GPLL).

/* vop dclk source clk: cpll,dclk_div: 1 */
switch (periph) {
case DCLK_VOP0:

if 0

    // ret = (readl(&cru->cru_clksel_con[27]) & DCLK_VOP0_PLL_MASK) >> 
            //               DCLK_VOP0_PLL_SHIFT;

else

            ret = DCLK_VOP0_SELECT_GPLL;

endif