All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian Masney <masneyb@onstation.org>
To: Jonathan Marek <jonathan@marek.ca>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 33/33] drm/panel-simple: Fix dotclock for LG ACX467AKM-7
Date: Wed, 4 Mar 2020 05:00:32 -0500	[thread overview]
Message-ID: <20200304100032.GA18958@onstation.org> (raw)
In-Reply-To: <30e32ce4-d958-6cb9-e0f7-8de9377562ce@marek.ca>

On Tue, Mar 03, 2020 at 10:04:56PM -0500, Jonathan Marek wrote:
> If I have time to kill over the weekend I'll do a new rebase of my Nexus 5
> patches (my last rebase was back in August on 5.2, and the panel was working
> correctly at 60Hz back then).

That would be great if you have time to look at the panel. My
out-of-tree patches for this phone are at
https://github.com/masneyb/linux/commits/v5.5-nexus5.
A high-level description of those patches are on the cover letter:
https://github.com/masneyb/nexus-5-upstream/blob/master/out-of-tree-patches/upstream-patches/v5.5/0000-cover-letter.patch

A description of what works and what I've done upstream for this device
is described at:
https://masneyb.github.io/nexus-5-upstream/

Brian



> 
> Looked at it again and it does look like your glmark was vsynced (glmark
> explicitly disables vsync so I guess you have it force-enabled) since the
> results are all 26-27 (X works a bit differently and gets double the
> framerate somehow?)
> 
> On 3/3/20 9:53 PM, Brian Masney wrote:
> > On Tue, Mar 03, 2020 at 09:27:50PM -0500, Jonathan Marek wrote:
> > > modetest should be printing "freq: 60.0Hz", so definitely something wrong
> > > there. Though I guess you have another problem since I would expect the
> > > patch to drop it to 30 and not 13.5.
> > > 
> > > (FYI glmark-x11 isn't vsynced which is why I specifically mentioned
> > > glmark-drm)
> > 
> > I tried compiling the drm variant and it was complaining about some
> > missing dependencies that I didn't see in Alpine Linux. I didn't try too
> > hard since I'm a bit short on time at this point since I'm starting a
> > new job on Monday and I have another side project that I want to finish
> > before then.
> > 
> > I suspect that the issue is caused by the introduction of the async
> > commit support in the MSM driver that introduced the ping/pong timeouts.
> > I'll try in a few weeks or so reverting those patches and see if that
> > affects the speed.
> > 
> > I'm still ok with Ville's patch going in given the existing slow state.
> > There's no clear path forward right now for the autocommit patch that I
> > linked to earlier in this thread. :(
> > 
> > Brian
> > 
> > > 
> > > On 3/3/20 9:16 PM, Brian Masney wrote:
> > > > On Tue, Mar 03, 2020 at 08:04:05AM -0500, Jonathan Marek wrote:
> > > > > What Xorg prints doesn't mean anything. I don't think there will be errors
> > > > > in dmesg, you need to run something that does pageflips as fast as possible
> > > > > and see that the refresh rate is still 60. (modetest with -v, glmark-drm are
> > > > > examples)
> > > > 
> > > > I assume that you mean modetest from
> > > > https://gitlab.freedesktop.org/mesa/drm/tree/master/tests/modetest ?
> > > > Here's the modeset connector information:
> > > > 
> > > > id   encoder status      name    size (mm)  modes   encoders
> > > > 32   31      connected   DSI-1   62x110     1       31
> > > >     modes:
> > > >           index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
> > > >     #0 1080x1920 71.71 1080 1082 1084 1086 1920 1922 1924 1926 150000
> > > >     flags: ; type: preferred, driver
> > > > 
> > > > And the page flip results...
> > > > 
> > > > $ modetest -v -s 32:1080x1920
> > > > trying to open device 'msm'...done
> > > > setting mode 1080x1920-71.71Hz@XR24 on connectors 32, crtc 50
> > > > failed to set gamma: Function not implemented
> > > > freq: 13.50Hz
> > > > freq: 13.51Hz
> > > > freq: 13.51Hz
> > > > 
> > > > It's the same results with and without Ville's patch.
> > > > 
> > > > Here's the beginning of the glmark2 results with the x11-gl flavor:
> > > > 
> > > > =======================================================
> > > >       glmark2 2017.07
> > > > =======================================================
> > > >       OpenGL Information
> > > >       GL_VENDOR:     freedreno
> > > >       GL_RENDERER:   FD330
> > > >       GL_VERSION:    3.1 Mesa 20.0.0-devel
> > > > =======================================================
> > > > [build] use-vbo=false: FPS: 26 FrameTime: 38.462 ms
> > > > [build] use-vbo=true: FPS: 26 FrameTime: 38.462 ms
> > > > [texture] texture-filter=nearest: FPS: 26 FrameTime: 38.462 ms
> > > > [texture] texture-filter=linear: FPS: 26 FrameTime: 38.462 ms
> > > > [texture] texture-filter=mipmap: FPS: 27 FrameTime: 37.037 ms
> > > > [shading] shading=gouraud: FPS: 27 FrameTime: 37.037 ms
> > > > [shading] shading=blinn-phong-inf: FPS: 27 FrameTime: 37.037 ms
> > > > [shading] shading=phong: FPS: 27 FrameTime: 37.037 ms
> > > > [shading] shading=cel: FPS: 26 FrameTime: 38.462 ms
> > > > [bump] bump-render=high-poly: FPS: 27 FrameTime: 37.037 ms
> > > > [bump] bump-render=normals: FPS: 27 FrameTime: 37.037 ms
> > > > [bump] bump-render=height: FPS: 27 FrameTime: 37.037 ms
> > > > [effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 25 FrameTime: 40.000 ms
> > > > [effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 26 FrameTime:
> > > >    38.462 ms
> > > > [pulsar] light=false:quads=5:texture=false: FPS: 26 FrameTime: 38.462 ms
> > > > [desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4:
> > > >    FPS: 26 FrameTime: 38.462 ms
> > > > [desktop] effect=shadow:windows=4: FPS: 27 FrameTime: 37.037 ms
> > > > ...
> > > > 
> > > > Brian
> > > > 
> > > > 
> > > > > 
> > > > > On 3/3/20 7:26 AM, Brian Masney wrote:
> > > > > > On Mon, Mar 02, 2020 at 10:36:54PM -0500, Jonathan Marek wrote:
> > > > > > > Another thing: did you verify that the panel still runs at 60hz (and not
> > > > > > > dropping frames to 30hz)? IIRC that was the behavior with lower clock.
> > > > > > 
> > > > > > Yes, the panel is running at 60 HZ according to the Xorg log with
> > > > > > Ville's patch applied:
> > > > > > 
> > > > > >        modeset(0): Modeline "1080x1920"x60.0  125.50  1080 1082 1084 1086
> > > > > >        1920 1922 1924 1926 (115.6 kHz eP)
> > > > > > 
> > > > > > I verified there's no underflow errors in dmesg.
> > > > > > 
> > > > > > If I recall correctly, the clock speeds that was in your tree was set
> > > > > > too low for the gpu_opp_table (that wouldn't cause this issue), but I
> > > > > > seem to recall there were some other clock speed mismatches. The
> > > > > > bandwidth requests weren't set on the RPM as well, so maybe that
> > > > > > contributed to the problem. That's done upstream with the msm8974
> > > > > > interconnect driver:
> > > > > > 
> > > > > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/interconnect/qcom/msm8974.c
> > > > > > 
> > > > > > There's a separate known issue with 'pp done time out' errors that
> > > > > > occur on the framebuffer that started upstream several months ago with
> > > > > > the introduction of async commit support in the MSM driver. I tried
> > > > > > working around this by enabling the autorefresh feature but it's not
> > > > > > fully working yet and I hit a dead end since there's no docs available
> > > > > > publicly for this. The grim details are at:
> > > > > > 
> > > > > > https://lore.kernel.org/lkml/20191230020053.26016-2-masneyb@onstation.org/
> > > > > > 
> > > > > > So I'm still OK with Ville's patch going in.
> > > > > > 
> > > > > > Brian
> > > > > > 
> > > > > > 
> > > > > > > 
> > > > > > > On 3/2/20 10:28 PM, Jonathan Marek wrote:
> > > > > > > > 
> > > > > > > > On 3/2/20 10:13 PM, Brian Masney wrote:
> > > > > > > > > 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
> > > > > > > > > 
> > > > > > > > > 
> > > > > > > > 
> > > > > > > > No, I'm talking about the DSI clock (the driver for it is in
> > > > > > > > drm/msm/dsi/). For a command mode panel the front/back porches aren't
> > > > > > > > relevant, but the dsi pixel/byte clock need to be a bit higher than
> > > > > > > > 1920x1080x60. Since 125498 is a little higher than 124416 that might be
> > > > > > > > enough (there is also rounding of the clock values to consider).
> > > > > > > > 
> > > > > > > > > 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,
> > > > > > > > > > > 
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2020-03-05  8:14 UTC|newest]

Thread overview: 98+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-02 20:34 [PATCH 00/33] drm/panel: Fix dotclocks Ville Syrjala
2020-03-02 20:34 ` [PATCH 01/33] drm/panel-novatek-nt35510: Fix dotclock Ville Syrjala
2020-03-07 14:29   ` Linus Walleij
2020-03-09 13:36   ` [PATCH v2 " Ville Syrjala
2020-03-09 15:33     ` Linus Walleij
2020-03-11 14:46       ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 02/33] drm/panel-arm-versatile: " Ville Syrjala
2020-03-03 12:10   ` Linus Walleij
2020-03-03 14:54     ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 03/33] drm/panel-feixin-k101-im2ba02: " Ville Syrjala
2020-03-02 23:36   ` Icenowy Zheng
2020-03-03 14:51     ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 04/33] drm/panel-ilitek-ili9322: Fix dotclocks Ville Syrjala
2020-03-07 14:38   ` Linus Walleij
2020-03-09 13:38   ` [PATCH v2 " Ville Syrjala
2020-03-09 15:33     ` Linus Walleij
2020-03-11 14:47       ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 05/33] drm/panel-leadtek-ltk500hd1829: Fix dotclock Ville Syrjala
2020-03-03 12:52   ` Heiko Stuebner
2020-04-02 13:13     ` Ville Syrjälä
2020-04-02 13:20       ` Heiko Stuebner
2020-04-02 15:49       ` Sam Ravnborg
2020-03-02 20:34 ` [PATCH 06/33] drm/panel-lg-lg4573: " Ville Syrjala
2020-03-03  5:24   ` Heiko Schocher
2020-03-11 14:46     ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 07/33] drm/panel-sitronix-st7789v: " Ville Syrjala
2020-03-02 20:34 ` [PATCH 08/33] drm/panel-sony-acx424akp: Fix dotclocks Ville Syrjala
2020-03-07 14:40   ` Linus Walleij
2020-03-11 14:46     ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 09/33] drm/panel-simple: Fix dotclock for AUO G101EVN010 Ville Syrjala
2020-03-02 20:34 ` [PATCH 10/33] drm/panel-simple: Fix dotclock for AUO G104SN02 V2 Ville Syrjala
2020-03-03 13:13   ` Christoph Fritz
2020-03-04 12:19     ` Stefan Riedmüller
2020-03-02 20:34 ` [PATCH 11/33] drm/panel-simple: Fix dotclock for CDTech S043WQ26H-CT7 Ville Syrjala
2020-03-02 20:34 ` [PATCH 12/33] drm/panel-simple: Fix dotclock for CDTech S070WV95-CT16 Ville Syrjala
2020-03-02 20:34 ` [PATCH 13/33] drm/panel-simple: Fix dotclock for Chunghwa CLAA070WP03XG Ville Syrjala
2020-03-02 20:34 ` [PATCH 14/33] drm/panel-simple: Fix dotclock for Chunghwa Picture Tubes 10.1" WXGA Ville Syrjala
2020-03-02 20:34 ` [PATCH 15/33] drm/panel-simple: Fix dotclock for EDT ET035012DM6 Ville Syrjala
2020-03-03  7:33   ` Marco Felsch
2020-03-03 14:52     ` Ville Syrjälä
2020-03-06  8:02       ` Marco Felsch
2020-03-09 13:18         ` Ville Syrjälä
2020-03-10  7:05           ` Marco Felsch
2020-03-10 12:04             ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 16/33] drm/panel-simple: Fix dotclock for EDT ET043080DH6-GP Ville Syrjala
2020-03-02 20:34 ` [PATCH 17/33] drm/panel-simple: Fix dotclock for Foxlink FL500WVR00-A0T Ville Syrjala
2020-03-02 20:34 ` [PATCH 18/33] drm/panel-simple: Fix dotclock for Giantplus GPG482739QS5 Ville Syrjala
2020-03-02 20:34 ` [PATCH 19/33] drm/panel-simple: Fix dotclock for Innolux AT070TN92 Ville Syrjala
2020-03-02 20:34 ` [PATCH 20/33] drm/panel-simple: Fix dotclock for LeMaker BL035-RGB-002 3.5" LCD Ville Syrjala
2020-03-02 20:34 ` [PATCH 21/33] drm/panel-simple: Fix dotclock for Logic PD Type 28 Ville Syrjala
2020-03-03 13:00   ` Adam Ford
2020-03-11 14:46     ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 22/33] drm/panel-simple: Fix dotclock for Netron DY E231732 Ville Syrjala
2020-03-02 20:34 ` [PATCH 23/33] drm/panel-simple: Fix dotclock for On Tat Industrial Company 7" DPI TFT Ville Syrjala
2020-03-02 20:34 ` [PATCH 24/33] drm/panel-simple: Fix dotclock for Ortustech COM37H3M Ville Syrjala
2020-03-02 21:24   ` H. Nikolaus Schaller
2020-03-03 15:03     ` Ville Syrjälä
2020-03-03 15:49       ` H. Nikolaus Schaller
2020-03-05 19:41         ` H. Nikolaus Schaller
2020-03-09 13:00           ` Ville Syrjälä
2020-03-09 13:03             ` H. Nikolaus Schaller
2020-03-02 20:34 ` [PATCH 25/33] drm/panel-simple: Fix dotclock for PDA 91-00156-A0 Ville Syrjala
2020-03-02 20:34 ` [PATCH 26/33] drm/panel-simple: Fix dotclock for QiaoDian qd43003c0-40 Ville Syrjala
2020-03-02 20:34 ` [PATCH 27/33] drm/panel-simple: Fix dotclock for Sharp LQ035Q7DB03 Ville Syrjala
2020-03-02 21:40   ` Vladimir Zapolskiy
2020-03-03 14:49     ` Ville Syrjälä
2020-03-02 20:34 ` [PATCH 28/33] drm/panel-simple: Fix dotclock for Sharp LQ150X1LG11 Ville Syrjala
2020-03-02 22:53   ` Peter Rosin
2020-03-03 14:20     ` Thierry Reding
2020-03-03 14:57       ` Peter Rosin
2020-03-03 15:05         ` Thierry Reding
2020-03-03 15:16           ` Peter Rosin
2020-03-04 17:25         ` Sam Ravnborg
2020-03-05 13:07           ` [PATCH] Revert "drm/panel: simple: Add support for Sharp LQ150X1LG11 panels" Peter Rosin
2020-03-07 18:31             ` Sam Ravnborg
2020-03-02 20:34 ` [PATCH 29/33] drm/panel-simple: Fix dotclock for Shelly SCA07010-BFN-LNN Ville Syrjala
2020-03-02 20:34 ` [PATCH 30/33] drm/panel-simple: Fix dotclock for TPK U.S.A. LLC Fusion Ville Syrjala
2020-03-02 20:34 ` [PATCH 31/33] drm/panel-simple: Fix dotclock for XT VL050-8048NT-C01 Ville Syrjala
2020-03-11 14:56   ` Fabio Estevam
2020-03-02 20:34 ` [PATCH 32/33] drm/panel-simple: Fix dotclock for LG LH500WX1-SD03 Ville Syrjala
2020-03-02 20:34 ` [PATCH 33/33] drm/panel-simple: Fix dotclock for LG ACX467AKM-7 Ville Syrjala
2020-03-02 20:48   ` Jonathan Marek
2020-03-03  3:13     ` Brian Masney
2020-03-03  3:28       ` Jonathan Marek
2020-03-03  3:36         ` Jonathan Marek
2020-03-03 12:26           ` Brian Masney
2020-03-03 13:04             ` Jonathan Marek
2020-03-04  2:16               ` Brian Masney
2020-03-04  2:27                 ` Jonathan Marek
2020-03-04  2:53                   ` Brian Masney
2020-03-04  3:04                     ` Jonathan Marek
2020-03-04 10:00                       ` Brian Masney [this message]
2020-03-04 10:37                   ` Brian Masney
2020-03-04  9:10     ` Linus Walleij
2020-03-04 13:16       ` Jonathan Marek
2020-03-04 14:00         ` Linus Walleij
2020-03-02 21:47 ` [PATCH 00/33] drm/panel: Fix dotclocks Sam Ravnborg
2020-03-03 14:50   ` Ville Syrjälä

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=20200304100032.GA18958@onstation.org \
    --to=masneyb@onstation.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=jonathan@marek.ca \
    /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.