diff --git a/drivers/video/sunxi_display2.c b/drivers/video/sunxi_display2.c index ecef9f661f..b372183b4a 100644 --- a/drivers/video/sunxi_display2.c +++ b/drivers/video/sunxi_display2.c @@ -431,7 +431,7 @@ static void sunxi_composer_mode_set(int mux, const struct ctfb_res_modes *mode, u32 data; /* enable clock */ -#ifdef CONFIG_MACH_SUN8I_H3 +#if defined(CONFIG_MACH_SUN8I_H3) && !defined(CONFIG_MACH_SUN50I_H5) setbits_le32(&de_clk_regs->rst_cfg, (mux == 0) ? 1 : 4); #else setbits_le32(&de_clk_regs->rst_cfg, (mux == 0) ? 1 : 2); @@ -915,6 +915,11 @@ static void sunxi_tvencoder_mode_set(void) setbits_le32(&ccm->ahb_gate1, 1 << AHB_GATE_OFFSET_TVE); writel(CCM_TVE_CTRL_GATE | CCM_TVE_CTRL_M(2), &ccm->tve_clk_cfg); +#ifdef CONFIG_MACH_SUN50I_H5 + writel(0x285 << 16, SUNXI_TVE0_BASE + 0x304); + writel(0x00101110, SUNXI_TVE0_BASE + 0x30c); +#endif + switch (sunxi_display.monitor) { case sunxi_monitor_composite_pal: writel(SUNXI_TVE_GCTRL_DAC_INPUT(0, 1) |