On Sun, 23 Feb 2025, at 8:15 PM, Jernej Škrabec wrote:
quoted
+ if (mixer->cfg->de_type == sun8i_mixer_de33)
+ regmap_write(mixer->top_regs, SUN50I_MIXER_GLOBAL_DBUFF,
+ SUN8I_MIXER_GLOBAL_DBUFF_ENABLE);
This was my mistake. There is no such thing as
SUN50I_MIXER_GLOBAL_DBUFF in DE33
anymore. Values are generally applied at vblank time (I think). Above
write actually
writes to RCQ register, which is not great. Just drop this code and fix
condition to !=.
Ah yes, good spotting.
quoted
+static const struct sun8i_mixer_cfg sun50i_h616_mixer0_cfg = {
+ .ccsc = CCSC_MIXER0_LAYOUT,
+ .de_type = sun8i_mixer_de33,
+ .has_formatter = 1,
+ .mod_rate = 600000000,
+ .scaler_mask = 0xf,
+ .scanline_yuv = 4096,
+ .ui_num = 3,
+ .vi_num = 1,
+ .map = {0, 6, 7, 8},
+};
+
static const struct of_device_id sun8i_mixer_of_table[] = {
{
.compatible = "allwinner,sun8i-a83t-de2-mixer-0",@@ -832,6 +907,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-h616-de33-mixer-0",
+ .data = &sun50i_h616_mixer0_cfg,
+ },
This should go to separate patch, adding feature (DE33) and adding core support
are two distinct things.
Thanks, will split those out.
Regards,
Ryan