Hi, Frank: Frank Wunderlich <fran...@public-files.de> 於 2020年7月28日 週二 下午7:19寫道: > > From: chunhui dai <chunhui....@mediatek.com> > > - disable tmds on phy on mt2701 > - support other resolutions like 1280x1024
If this patch does two things, it should be broken into two patches. > > without this Patch i see flickering on my TFT (1280x1024), > so i guess clock is wrong. > > Signed-off-by: chunhui dai <chunhui....@mediatek.com> > Signed-off-by: Frank Wunderlich <fran...@public-files.de> > Tested-by: Frank Wunderlich <fran...@public-files.de> > --- > drivers/gpu/drm/mediatek/mtk_hdmi_phy.c | 3 +++ > drivers/gpu/drm/mediatek/mtk_hdmi_phy.h | 1 + > drivers/gpu/drm/mediatek/mtk_mt2701_hdmi_phy.c | 1 + > 3 files changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_phy.c > b/drivers/gpu/drm/mediatek/mtk_hdmi_phy.c > index 5223498502c4..edadb7a700f1 100644 > --- a/drivers/gpu/drm/mediatek/mtk_hdmi_phy.c > +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_phy.c > @@ -184,6 +184,9 @@ static int mtk_hdmi_phy_probe(struct platform_device > *pdev) > return PTR_ERR(phy_provider); > } > > + if (hdmi_phy->conf->pll_default_off) > + hdmi_phy->conf->hdmi_phy_disable_tmds(hdmi_phy); I think every pll is default off, so you should turn on pll rather than disable tmds. Regards, Chun-Kuang. > + > return of_clk_add_provider(dev->of_node, of_clk_src_simple_get, > hdmi_phy->pll); > } > diff --git a/drivers/gpu/drm/mediatek/mtk_hdmi_phy.h > b/drivers/gpu/drm/mediatek/mtk_hdmi_phy.h > index 2d8b3182470d..f472fdeb63dc 100644 > --- a/drivers/gpu/drm/mediatek/mtk_hdmi_phy.h > +++ b/drivers/gpu/drm/mediatek/mtk_hdmi_phy.h > @@ -22,6 +22,7 @@ struct mtk_hdmi_phy; > struct mtk_hdmi_phy_conf { > bool tz_disabled; > unsigned long flags; > + bool pll_default_off; > const struct clk_ops *hdmi_phy_clk_ops; > void (*hdmi_phy_enable_tmds)(struct mtk_hdmi_phy *hdmi_phy); > void (*hdmi_phy_disable_tmds)(struct mtk_hdmi_phy *hdmi_phy); > diff --git a/drivers/gpu/drm/mediatek/mtk_mt2701_hdmi_phy.c > b/drivers/gpu/drm/mediatek/mtk_mt2701_hdmi_phy.c > index d3cc4022e988..6fbedacfc1e8 100644 > --- a/drivers/gpu/drm/mediatek/mtk_mt2701_hdmi_phy.c > +++ b/drivers/gpu/drm/mediatek/mtk_mt2701_hdmi_phy.c > @@ -239,6 +239,7 @@ static void mtk_hdmi_phy_disable_tmds(struct mtk_hdmi_phy > *hdmi_phy) > struct mtk_hdmi_phy_conf mtk_hdmi_phy_2701_conf = { > .tz_disabled = true, > .flags = CLK_SET_RATE_GATE, > + .pll_default_off = true, > .hdmi_phy_clk_ops = &mtk_hdmi_phy_pll_ops, > .hdmi_phy_enable_tmds = mtk_hdmi_phy_enable_tmds, > .hdmi_phy_disable_tmds = mtk_hdmi_phy_disable_tmds, > -- > 2.25.1 >