12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- diff --git a/drivers/gpu/drm/sun4i/sun4i_tcon.c b/drivers/gpu/drm/sun4i/sun4i_tcon.c
- index 5e751b80e..92d4cd3dc 100644
- --- a/drivers/gpu/drm/sun4i/sun4i_tcon.c
- +++ b/drivers/gpu/drm/sun4i/sun4i_tcon.c
- @@ -338,12 +338,12 @@ static void sun4i_tcon0_mode_set_dithering(struct sun4i_tcon *tcon,
- * The whole dithering process and these parameters are not
- * explained in the vendor documents or BSP kernel code.
- */
- - regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_PR_REG, 0x11111111);
- - regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_PG_REG, 0x11111111);
- - regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_PB_REG, 0x11111111);
- - regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_LR_REG, 0x11111111);
- - regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_LG_REG, 0x11111111);
- - regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_LB_REG, 0x11111111);
- + regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_PR_REG, 1);
- + regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_PG_REG, 3);
- + regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_PB_REG, 5);
- + regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_LR_REG, 7);
- + regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_LG_REG, 11);
- + regmap_write(tcon->regs, SUN4I_TCON0_FRM_SEED_LB_REG, 13);
- regmap_write(tcon->regs, SUN4I_TCON0_FRM_TBL0_REG, 0x01010000);
- regmap_write(tcon->regs, SUN4I_TCON0_FRM_TBL1_REG, 0x15151111);
- regmap_write(tcon->regs, SUN4I_TCON0_FRM_TBL2_REG, 0x57575555);
- @@ -1602,6 +1602,12 @@ static const struct sun4i_tcon_quirks sun8i_r40_tv_quirks = {
- .set_mux = sun8i_r40_tcon_tv_set_mux,
- };
-
- +static const struct sun4i_tcon_quirks sun50i_h6_lcd_quirks = {
- + .has_channel_0 = true,
- + .dclk_min_div = 1,
- + .set_mux = sun8i_r40_tcon_tv_set_mux,
- +};
- +
- static const struct sun4i_tcon_quirks sun8i_v3s_quirks = {
- .has_channel_0 = true,
- .dclk_min_div = 1,
- @@ -1632,6 +1638,7 @@ const struct of_device_id sun4i_tcon_of_table[] = {
- { .compatible = "allwinner,sun8i-a83t-tcon-lcd", .data = &sun8i_a83t_lcd_quirks },
- { .compatible = "allwinner,sun8i-a83t-tcon-tv", .data = &sun8i_a83t_tv_quirks },
- { .compatible = "allwinner,sun8i-r40-tcon-tv", .data = &sun8i_r40_tv_quirks },
- + { .compatible = "allwinner,sun50i-h6-tcon-lcd", .data = &sun50i_h6_lcd_quirks },
- { .compatible = "allwinner,sun8i-v3s-tcon", .data = &sun8i_v3s_quirks },
- { .compatible = "allwinner,sun9i-a80-tcon-lcd", .data = &sun9i_a80_tcon_lcd_quirks },
- { .compatible = "allwinner,sun9i-a80-tcon-tv", .data = &sun9i_a80_tcon_tv_quirks },
- diff --git a/drivers/gpu/drm/sun4i/sun8i_mixer.c b/drivers/gpu/drm/sun4i/sun8i_mixer.c
- index 4fe915262..cd667fef8 100644
- --- a/drivers/gpu/drm/sun4i/sun8i_mixer.c
- +++ b/drivers/gpu/drm/sun4i/sun8i_mixer.c
- @@ -683,6 +683,16 @@ static const struct sun8i_mixer_cfg sun50i_h6_mixer0_cfg = {
- .vi_num = 1,
- };
-
- +static const struct sun8i_mixer_cfg sun50i_h6_mixer1_cfg = {
- + .ccsc = 0,
- + .is_de3 = true,
- + .mod_rate = 600000000,
- + .scaler_mask = 0xf,
- + .scanline_yuv = 4096,
- + .ui_num = 1,
- + .vi_num = 1,
- +};
- +
- static const struct of_device_id sun8i_mixer_of_table[] = {
- {
- .compatible = "allwinner,sun8i-a83t-de2-mixer-0",
- @@ -724,6 +734,10 @@ static const struct of_device_id sun8i_mixer_of_table[] = {
- .compatible = "allwinner,sun50i-h6-de3-mixer-0",
- .data = &sun50i_h6_mixer0_cfg,
- },
- + {
- + .compatible = "allwinner,sun50i-h6-de3-mixer-1",
- + .data = &sun50i_h6_mixer1_cfg,
- + },
- { }
- };
- MODULE_DEVICE_TABLE(of, sun8i_mixer_of_table);
|