Message ID | 20250108112744.64686-34-angelogioacchino.delregno@collabora.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Add support for MT8195/88 DPI, HDMIv2 and DDCv2 | expand |
On Wed, Jan 08, 2025 at 12:27:43PM +0100, AngeloGioacchino Del Regno wrote: > Add an interlace_allowed bool member to struct mtk_hdmi_ver_conf > which will be used to signal whether interlaced modes are supported > by the bridge (in our case, the HDMI IP), and enable it for HDMIv2. > > Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> > --- > drivers/gpu/drm/mediatek/mtk_hdmi_common.c | 1 + > drivers/gpu/drm/mediatek/mtk_hdmi_common.h | 1 + > drivers/gpu/drm/mediatek/mtk_hdmi_v2.c | 3 ++- > 3 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c b/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c > index 4cecfef1466b..8841fa4e476a 100644 > --- a/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c > +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c > @@ -1301,7 +1301,8 @@ static const struct mtk_hdmi_ver_conf mtk_hdmi_conf_v2 = { > .bridge_funcs = &mtk_v2_hdmi_bridge_funcs, > .codec_ops = &mtk_hdmi_v2_audio_codec_ops, > .mtk_hdmi_clock_names = mtk_hdmi_v2_clk_names, > - .num_clocks = MTK_HDMI_V2_CLK_COUNT > + .num_clocks = MTK_HDMI_V2_CLK_COUNT, > + .interlace_allowed = true Nit: if you have a trailing comma, you don't have to change the last line when adding a new one. > }; > > static const struct mtk_hdmi_conf mtk_hdmi_conf_mt8188 = { > -- > 2.47.0 >
diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_common.c b/drivers/gpu/drm/mediatek/mtk_hdmi_common.c index 1804fe3f986c..be9b7a8e4a87 100644 --- a/drivers/gpu/drm/mediatek/mtk_hdmi_common.c +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_common.c @@ -428,6 +428,7 @@ struct mtk_hdmi *mtk_hdmi_common_probe(struct platform_device *pdev) hdmi->bridge.ddc = hdmi->ddc_adpt; hdmi->bridge.vendor = "MediaTek"; hdmi->bridge.product = "On-Chip HDMI"; + hdmi->bridge.interlace_allowed = ver_conf->interlace_allowed; ret = devm_drm_bridge_add(dev, &hdmi->bridge); if (ret) diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_common.h b/drivers/gpu/drm/mediatek/mtk_hdmi_common.h index e74fe1371324..de5e064585f8 100644 --- a/drivers/gpu/drm/mediatek/mtk_hdmi_common.h +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_common.h @@ -137,6 +137,7 @@ struct mtk_hdmi_ver_conf { const struct hdmi_codec_ops *codec_ops; const char * const *mtk_hdmi_clock_names; int num_clocks; + bool interlace_allowed; }; struct mtk_hdmi_conf { diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c b/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c index 4cecfef1466b..8841fa4e476a 100644 --- a/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_v2.c @@ -1301,7 +1301,8 @@ static const struct mtk_hdmi_ver_conf mtk_hdmi_conf_v2 = { .bridge_funcs = &mtk_v2_hdmi_bridge_funcs, .codec_ops = &mtk_hdmi_v2_audio_codec_ops, .mtk_hdmi_clock_names = mtk_hdmi_v2_clk_names, - .num_clocks = MTK_HDMI_V2_CLK_COUNT + .num_clocks = MTK_HDMI_V2_CLK_COUNT, + .interlace_allowed = true }; static const struct mtk_hdmi_conf mtk_hdmi_conf_mt8188 = {
Add an interlace_allowed bool member to struct mtk_hdmi_ver_conf which will be used to signal whether interlaced modes are supported by the bridge (in our case, the HDMI IP), and enable it for HDMIv2. Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> --- drivers/gpu/drm/mediatek/mtk_hdmi_common.c | 1 + drivers/gpu/drm/mediatek/mtk_hdmi_common.h | 1 + drivers/gpu/drm/mediatek/mtk_hdmi_v2.c | 3 ++- 3 files changed, 4 insertions(+), 1 deletion(-)