Re: [PATCH 33/33] drm/panel-simple: Fix dotclock for LG ACX467AKM-7

Brian Masney
2020-03-03T08:25:09Z

On Mon, Mar 02, 2020 at 03:48:22PM -0500, Jonathan Marek wrote:
> Hi,
>
> This is a command mode panel and the the msm/mdp5 driver uses the vrefresh
> field for the actual refresh rate, while the dotclock field is used for the
> DSI clocks. The dotclock needed to be a bit higher than necessary otherwise
> the panel would not work.
>
> If you want to get rid of the separate clock/vrefresh fields there would
> need to be some changes to msm driver.
>
> (note I hadn't made the patch with upstreaming in mind, the 150000 value is
> likely not optimal, just something that worked, this is something that
> should have been checked with the downstream driver)

Is this the right clock frequency in the downstream MSM 3.4 kernel that
you're talking about?

https://github.com/AICP/kernel_lge_hammerhead/blob/n7.1/arch/arm/mach-msm/clock-8974.c#L3326

I don't see any obvious clock values in the downstream command mode
panel configuration:

https://github.com/AICP/kernel_lge_hammerhead/blob/n7.1/arch/arm/boot/dts/msm8974-hammerhead/msm8974-hammerhead-panel.dtsi#L591

Anyways, I tried Ville's patch with the framebuffer, kmscube, and X11
and everything appears to be working fine. You can add my Tested-by if
you end up applying this.

Tested-by: Brian Masney <masneyb@onstation.org>

Brian

> On 3/2/20 3:34 PM, Ville Syrjala wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > The currently listed dotclock disagrees with the currently
> > listed vrefresh rate. Change the dotclock to match the vrefresh.
> >
> > Someone tell me which (if either) of the dotclock or vreresh is
> > correct?
> >
> > Cc: Jonathan Marek <jonathan@marek.ca>
> > Cc: Brian Masney <masneyb@onstation.org>
> > Cc: Linus Walleij <linus.walleij@linaro.org>
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> > drivers/gpu/drm/panel/panel-simple.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> > index b24fdf239440..f958d8dfd760 100644
> > --- a/drivers/gpu/drm/panel/panel-simple.c
> > +++ b/drivers/gpu/drm/panel/panel-simple.c
> > @@ -3996,7 +3996,7 @@ static const struct panel_desc_dsi panasonic_vvx10f004b00 = {
> > };
> > static const struct drm_display_mode lg_acx467akm_7_mode = {
> > - .clock = 150000,
> > + .clock = 125498,
> > .hdisplay = 1080,
> > .hsync_start = 1080 + 2,
> > .hsync_end = 1080 + 2 + 2,
> >