From: Bibby Hsieh <bibby.hsieh@mediatek.com>
To: Philipp Zabel <p.zabel@pengutronix.de>
Cc: David Airlie <airlied@linux.ie>,
Matthias Brugger <matthias.bgg@gmail.com>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
dri-devel@lists.freedesktop.org,
linux-mediatek@lists.infradead.org,
Yingjoe Chen <yingjoe.chen@mediatek.com>,
Cawa Cheng <cawa.cheng@mediatek.com>,
Daniel Kurtz <djkurtz@chromium.org>,
YT Shen <yt.shen@mediatek.com>,
Thierry Reding <thierry.reding@gmail.com>,
CK Hu <ck.hu@mediatek.com>, Mao Huang <littlecvr@chromium.org>,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
Sascha Hauer <kernel@pengutronix.de>,
Junzhi Zhao <junzhi.zhao@mediatek.com>
Subject: Re: [PATCH 3/4] drm/mediatek: fix the wrong pixel clock when resolution is 4K
Date: Mon, 25 Jul 2016 14:25:37 +0800 [thread overview]
Message-ID: <1469427937.26205.19.camel@mtksdaap41> (raw)
In-Reply-To: <1469007718.5809.32.camel@pengutronix.de>
Hi, Philipp,
Thanks for your comment.
On Wed, 2016-07-20 at 11:41 +0200, Philipp Zabel wrote:
> Am Mittwoch, den 20.07.2016, 12:03 +0800 schrieb Bibby Hsieh:
> > From: Junzhi Zhao <junzhi.zhao@mediatek.com>
> >
> > Pixel clock should be 297MHz when resolution is 4K.
> >
> > Signed-off-by: Junzhi Zhao <junzhi.zhao@mediatek.com>
> > Signed-off-by: Bibby Hsieh <bibby.hsieh@mediatek.com>
> > ---
> > drivers/gpu/drm/mediatek/mtk_dpi.c | 184 +++++++++++++++++++++++++-----------
> > 1 file changed, 131 insertions(+), 53 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > index d05ca79..c0f04d2 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > @@ -60,14 +60,35 @@ enum mtk_dpi_out_color_format {
> > MTK_DPI_COLOR_FORMAT_YCBCR_422_FULL
> > };
> >
> > +enum mtk_dpi_clk_id {
> > + MTK_DPI_CLK_DPI_ENGINE,
> > + MTK_DPI_CLK_DPI_PIXEL,
> > + MTK_DPI_CLK_TVD_PLL,
> > + MTK_DPI_CLK_TVDPLL_MUX,
> > + MTK_DPI_CLK_TVDPLL_D2,
> > + MTK_DPI_CLK_TVDPLL_D4,
> > + MTK_DPI_CLK_TVDPLL_D8,
> > + MTK_DPI_CLK_TVDPLL_D16,
> > + MTK_DPI_CLK_COUNT,
> > +};
>
> I think this is going in the wrong direction. If the pixel clock output
> isn't correct after a clk_set_rate(dpi->pixel_clk, rate), the clock
> drivers should be fixed, not worked around in the dpi driver.
>
> The TVDPLL_* mux and dividers are not direct inputs to the DPI module:
>
> tvdpll ("pll")
> | ..|\
> v ..| | mm_sel ----> mm_dpi_engine ("engine")
> tvdpll_594m(1/3) ..|/
> |
> |`-> tvdpll_d2 -->|\
> |`-> tvdpll_d4 -->| | dpi0_sel --> mm_dpi_pixel ("pixel")
> |`-> tvdpll_d8 -->| |
> `--> tvdpll_d16 ->|/
>
> Currently the code first sets the "pll" to the desired multiple of the
> pixel clock manually (*3*4, *3*8) and than calls clk_set_rate on the
> "pixel" clock which gets propagated by the clock framework up to
> dpi0_sel. Since dpi0_sel doesn't have the CLK_SET_RATE_PARENT flag set,
> it should just choose the tvdpll_d* input divider. I'd like not to give
> the dpi driver direct access to all the intermediate clocks.
>
Ok, I will make some modifications according to your comment.
> regards
> Philipp
WARNING: multiple messages have this Message-ID (diff)
From: bibby.hsieh@mediatek.com (Bibby Hsieh)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/4] drm/mediatek: fix the wrong pixel clock when resolution is 4K
Date: Mon, 25 Jul 2016 14:25:37 +0800 [thread overview]
Message-ID: <1469427937.26205.19.camel@mtksdaap41> (raw)
In-Reply-To: <1469007718.5809.32.camel@pengutronix.de>
Hi, Philipp,
Thanks for your comment.
On Wed, 2016-07-20 at 11:41 +0200, Philipp Zabel wrote:
> Am Mittwoch, den 20.07.2016, 12:03 +0800 schrieb Bibby Hsieh:
> > From: Junzhi Zhao <junzhi.zhao@mediatek.com>
> >
> > Pixel clock should be 297MHz when resolution is 4K.
> >
> > Signed-off-by: Junzhi Zhao <junzhi.zhao@mediatek.com>
> > Signed-off-by: Bibby Hsieh <bibby.hsieh@mediatek.com>
> > ---
> > drivers/gpu/drm/mediatek/mtk_dpi.c | 184 +++++++++++++++++++++++++-----------
> > 1 file changed, 131 insertions(+), 53 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > index d05ca79..c0f04d2 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > @@ -60,14 +60,35 @@ enum mtk_dpi_out_color_format {
> > MTK_DPI_COLOR_FORMAT_YCBCR_422_FULL
> > };
> >
> > +enum mtk_dpi_clk_id {
> > + MTK_DPI_CLK_DPI_ENGINE,
> > + MTK_DPI_CLK_DPI_PIXEL,
> > + MTK_DPI_CLK_TVD_PLL,
> > + MTK_DPI_CLK_TVDPLL_MUX,
> > + MTK_DPI_CLK_TVDPLL_D2,
> > + MTK_DPI_CLK_TVDPLL_D4,
> > + MTK_DPI_CLK_TVDPLL_D8,
> > + MTK_DPI_CLK_TVDPLL_D16,
> > + MTK_DPI_CLK_COUNT,
> > +};
>
> I think this is going in the wrong direction. If the pixel clock output
> isn't correct after a clk_set_rate(dpi->pixel_clk, rate), the clock
> drivers should be fixed, not worked around in the dpi driver.
>
> The TVDPLL_* mux and dividers are not direct inputs to the DPI module:
>
> tvdpll ("pll")
> | ..|\
> v ..| | mm_sel ----> mm_dpi_engine ("engine")
> tvdpll_594m(1/3) ..|/
> |
> |`-> tvdpll_d2 -->|\
> |`-> tvdpll_d4 -->| | dpi0_sel --> mm_dpi_pixel ("pixel")
> |`-> tvdpll_d8 -->| |
> `--> tvdpll_d16 ->|/
>
> Currently the code first sets the "pll" to the desired multiple of the
> pixel clock manually (*3*4, *3*8) and than calls clk_set_rate on the
> "pixel" clock which gets propagated by the clock framework up to
> dpi0_sel. Since dpi0_sel doesn't have the CLK_SET_RATE_PARENT flag set,
> it should just choose the tvdpll_d* input divider. I'd like not to give
> the dpi driver direct access to all the intermediate clocks.
>
Ok, I will make some modifications according to your comment.
> regards
> Philipp
WARNING: multiple messages have this Message-ID (diff)
From: Bibby Hsieh <bibby.hsieh@mediatek.com>
To: Philipp Zabel <p.zabel@pengutronix.de>
Cc: David Airlie <airlied@linux.ie>,
Matthias Brugger <matthias.bgg@gmail.com>,
Daniel Vetter <daniel.vetter@ffwll.ch>,
<dri-devel@lists.freedesktop.org>,
<linux-mediatek@lists.infradead.org>,
Yingjoe Chen <yingjoe.chen@mediatek.com>,
Cawa Cheng <cawa.cheng@mediatek.com>,
Daniel Kurtz <djkurtz@chromium.org>,
YT Shen <yt.shen@mediatek.com>,
Thierry Reding <thierry.reding@gmail.com>,
CK Hu <ck.hu@mediatek.com>, Mao Huang <littlecvr@chromium.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-kernel@vger.kernel.org>,
"Sascha Hauer" <kernel@pengutronix.de>,
Junzhi Zhao <junzhi.zhao@mediatek.com>
Subject: Re: [PATCH 3/4] drm/mediatek: fix the wrong pixel clock when resolution is 4K
Date: Mon, 25 Jul 2016 14:25:37 +0800 [thread overview]
Message-ID: <1469427937.26205.19.camel@mtksdaap41> (raw)
In-Reply-To: <1469007718.5809.32.camel@pengutronix.de>
Hi, Philipp,
Thanks for your comment.
On Wed, 2016-07-20 at 11:41 +0200, Philipp Zabel wrote:
> Am Mittwoch, den 20.07.2016, 12:03 +0800 schrieb Bibby Hsieh:
> > From: Junzhi Zhao <junzhi.zhao@mediatek.com>
> >
> > Pixel clock should be 297MHz when resolution is 4K.
> >
> > Signed-off-by: Junzhi Zhao <junzhi.zhao@mediatek.com>
> > Signed-off-by: Bibby Hsieh <bibby.hsieh@mediatek.com>
> > ---
> > drivers/gpu/drm/mediatek/mtk_dpi.c | 184 +++++++++++++++++++++++++-----------
> > 1 file changed, 131 insertions(+), 53 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > index d05ca79..c0f04d2 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > @@ -60,14 +60,35 @@ enum mtk_dpi_out_color_format {
> > MTK_DPI_COLOR_FORMAT_YCBCR_422_FULL
> > };
> >
> > +enum mtk_dpi_clk_id {
> > + MTK_DPI_CLK_DPI_ENGINE,
> > + MTK_DPI_CLK_DPI_PIXEL,
> > + MTK_DPI_CLK_TVD_PLL,
> > + MTK_DPI_CLK_TVDPLL_MUX,
> > + MTK_DPI_CLK_TVDPLL_D2,
> > + MTK_DPI_CLK_TVDPLL_D4,
> > + MTK_DPI_CLK_TVDPLL_D8,
> > + MTK_DPI_CLK_TVDPLL_D16,
> > + MTK_DPI_CLK_COUNT,
> > +};
>
> I think this is going in the wrong direction. If the pixel clock output
> isn't correct after a clk_set_rate(dpi->pixel_clk, rate), the clock
> drivers should be fixed, not worked around in the dpi driver.
>
> The TVDPLL_* mux and dividers are not direct inputs to the DPI module:
>
> tvdpll ("pll")
> | ..|\
> v ..| | mm_sel ----> mm_dpi_engine ("engine")
> tvdpll_594m(1/3) ..|/
> |
> |`-> tvdpll_d2 -->|\
> |`-> tvdpll_d4 -->| | dpi0_sel --> mm_dpi_pixel ("pixel")
> |`-> tvdpll_d8 -->| |
> `--> tvdpll_d16 ->|/
>
> Currently the code first sets the "pll" to the desired multiple of the
> pixel clock manually (*3*4, *3*8) and than calls clk_set_rate on the
> "pixel" clock which gets propagated by the clock framework up to
> dpi0_sel. Since dpi0_sel doesn't have the CLK_SET_RATE_PARENT flag set,
> it should just choose the tvdpll_d* input divider. I'd like not to give
> the dpi driver direct access to all the intermediate clocks.
>
Ok, I will make some modifications according to your comment.
> regards
> Philipp
next prev parent reply other threads:[~2016-07-25 6:25 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-20 4:03 [PATCH 0/4] MT8173 HDMI 4K support Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 4:03 ` [PATCH 1/4] drm/mediatek: do mtk_hdmi_send_infoframe after HDMI clock enable Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
[not found] ` <1468987385-37353-1-git-send-email-bibby.hsieh-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>
2016-07-20 4:03 ` [PATCH 2/4] drm/mediatek: enhance the HDMI driving current Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 7:15 ` CK Hu
2016-07-20 7:15 ` CK Hu
2016-07-20 7:15 ` CK Hu
2016-07-25 6:15 ` Bibby Hsieh
2016-07-25 6:15 ` Bibby Hsieh
2016-07-25 6:15 ` Bibby Hsieh
2016-07-20 4:03 ` [PATCH 3/4] drm/mediatek: fix the wrong pixel clock when resolution is 4K Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 7:57 ` CK Hu
2016-07-20 7:57 ` CK Hu
2016-07-20 7:57 ` CK Hu
2016-07-25 6:24 ` Bibby Hsieh
2016-07-25 6:24 ` Bibby Hsieh
2016-07-25 6:24 ` Bibby Hsieh
2016-07-25 6:49 ` CK Hu
2016-07-25 6:49 ` CK Hu
2016-07-25 6:49 ` CK Hu
2016-07-25 8:37 ` Bibby Hsieh
2016-07-25 8:37 ` Bibby Hsieh
2016-07-25 8:37 ` Bibby Hsieh
2016-07-20 9:41 ` Philipp Zabel
2016-07-20 9:41 ` Philipp Zabel
2016-07-20 9:41 ` Philipp Zabel
2016-07-25 6:25 ` Bibby Hsieh [this message]
2016-07-25 6:25 ` Bibby Hsieh
2016-07-25 6:25 ` Bibby Hsieh
2016-07-20 4:03 ` [PATCH 4/4] drm/mediatek: adjust VENCPLL clock for 4K HDMI output Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 4:03 ` Bibby Hsieh
2016-07-20 9:55 ` Philipp Zabel
2016-07-20 9:55 ` Philipp Zabel
2016-07-20 9:55 ` Philipp Zabel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1469427937.26205.19.camel@mtksdaap41 \
--to=bibby.hsieh@mediatek.com \
--cc=airlied@linux.ie \
--cc=cawa.cheng@mediatek.com \
--cc=ck.hu@mediatek.com \
--cc=daniel.vetter@ffwll.ch \
--cc=djkurtz@chromium.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=junzhi.zhao@mediatek.com \
--cc=kernel@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=littlecvr@chromium.org \
--cc=matthias.bgg@gmail.com \
--cc=p.zabel@pengutronix.de \
--cc=thierry.reding@gmail.com \
--cc=yingjoe.chen@mediatek.com \
--cc=yt.shen@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.