From: Dave Stevenson <dave.stevenson@raspberrypi.com>
To: Maxime Ripard <maxime@cerno.tech>
Cc: Tim Gover <tim.gover@raspberrypi.com>,
David Airlie <airlied@linux.ie>,
DRI Development <dri-devel@lists.freedesktop.org>,
bcm-kernel-feedback-list@broadcom.com,
linux-rpi-kernel@lists.infradead.org,
Thomas Zimmermann <tzimmermann@suse.de>,
Daniel Vetter <daniel.vetter@intel.com>,
Phil Elwell <phil@raspberrypi.com>,
Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Subject: Re: [PATCH v2 2/5] drm/vc4: hdmi: Properly compute the BVB clock rate
Date: Thu, 1 Apr 2021 12:09:56 +0100 [thread overview]
Message-ID: <CAPY8ntAuT3k3+CmVSUKAMSkpoNAYOu+GTMf7fiFZxxzTXTfOPw@mail.gmail.com> (raw)
In-Reply-To: <20210318092917.831995-3-maxime@cerno.tech>
Hi Maxime
Sorry for the delay in reviewing these patches.
On Thu, 18 Mar 2021 at 09:29, Maxime Ripard <maxime@cerno.tech> wrote:
>
> The BVB clock rate computation doesn't take into account a mode clock of
> 594MHz that we're going to need to support 4k60.
>
> Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
> ---
> drivers/gpu/drm/vc4/vc4_hdmi.c | 17 +++++++++--------
> 1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/vc4/vc4_hdmi.c b/drivers/gpu/drm/vc4/vc4_hdmi.c
> index eee9751009c2..eaee853bb404 100644
> --- a/drivers/gpu/drm/vc4/vc4_hdmi.c
> +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
> @@ -91,7 +91,6 @@
> # define VC4_HD_M_ENABLE BIT(0)
>
> #define CEC_CLOCK_FREQ 40000
> -#define VC4_HSM_MID_CLOCK 149985000
>
> #define HDMI_14_MAX_TMDS_CLK (340 * 1000 * 1000)
>
> @@ -739,7 +738,7 @@ static void vc4_hdmi_encoder_pre_crtc_configure(struct drm_encoder *encoder,
> conn_state_to_vc4_hdmi_conn_state(conn_state);
> struct drm_display_mode *mode = &encoder->crtc->state->adjusted_mode;
> struct vc4_hdmi *vc4_hdmi = encoder_to_vc4_hdmi(encoder);
> - unsigned long pixel_rate, hsm_rate;
> + unsigned long bvb_rate, pixel_rate, hsm_rate;
> int ret;
>
> ret = pm_runtime_get_sync(&vc4_hdmi->pdev->dev);
> @@ -793,12 +792,14 @@ static void vc4_hdmi_encoder_pre_crtc_configure(struct drm_encoder *encoder,
>
> vc4_hdmi_cec_update_clk_div(vc4_hdmi);
>
> - /*
> - * FIXME: When the pixel freq is 594MHz (4k60), this needs to be setup
> - * at 300MHz.
> - */
> - ret = clk_set_min_rate(vc4_hdmi->pixel_bvb_clock,
> - (hsm_rate > VC4_HSM_MID_CLOCK ? 150000000 : 75000000));
> + if (pixel_rate > 297000000)
> + bvb_rate = 300000000;
> + else if (pixel_rate > 148500000)
> + bvb_rate = 150000000;
> + else
> + bvb_rate = 75000000;
> +
> + ret = clk_set_min_rate(vc4_hdmi->pixel_bvb_clock, bvb_rate);
> if (ret) {
> DRM_ERROR("Failed to set pixel bvb clock rate: %d\n", ret);
> clk_disable_unprepare(vc4_hdmi->hsm_clock);
> --
> 2.30.2
>
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2021-04-01 11:10 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-18 9:29 [PATCH v2 0/5] drm/vc4: hdmi: Support the 4k @ 60Hz modes Maxime Ripard
2021-03-18 9:29 ` [PATCH v2 1/5] drm/vc4: hvs: Make the HVS bind first Maxime Ripard
2021-03-18 9:29 ` [PATCH v2 2/5] drm/vc4: hdmi: Properly compute the BVB clock rate Maxime Ripard
2021-04-01 11:09 ` Dave Stevenson [this message]
2021-03-18 9:29 ` [PATCH v2 3/5] drm/vc4: hdmi: Check and warn if we can't reach 4kp60 frequencies Maxime Ripard
2021-04-01 11:12 ` Dave Stevenson
2021-03-18 9:29 ` [PATCH v2 4/5] drm/vc4: hdmi: Enable the scrambler Maxime Ripard
2021-04-01 11:30 ` Dave Stevenson
2021-04-09 12:35 ` Maxime Ripard
2021-04-12 9:43 ` Dave Stevenson
2021-03-18 9:29 ` [PATCH v2 5/5] drm/vc4: hdmi: Raise the maximum clock rate Maxime Ripard
2021-03-19 8:24 ` [PATCH v2 0/5] drm/vc4: hdmi: Support the 4k @ 60Hz modes Thomas Zimmermann
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=CAPY8ntAuT3k3+CmVSUKAMSkpoNAYOu+GTMf7fiFZxxzTXTfOPw@mail.gmail.com \
--to=dave.stevenson@raspberrypi.com \
--cc=airlied@linux.ie \
--cc=bcm-kernel-feedback-list@broadcom.com \
--cc=daniel.vetter@intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-rpi-kernel@lists.infradead.org \
--cc=maxime@cerno.tech \
--cc=nsaenzjulienne@suse.de \
--cc=phil@raspberrypi.com \
--cc=tim.gover@raspberrypi.com \
--cc=tzimmermann@suse.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).