lkml.org 
[lkml]   [2019]   [Nov]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [Freedreno] drm/msm: 'pp done time out' errors after async commit changes
    On Mon, Nov 4, 2019 at 4:01 PM Brian Masney <masneyb@onstation.org> wrote:
    >
    > Hey Rob,
    >
    > Since commit 2d99ced787e3 ("drm/msm: async commit support"), the frame
    > buffer console on my Nexus 5 began throwing these errors:
    >
    > msm fd900000.mdss: pp done time out, lm=0
    >
    > The display still works.
    >
    > I see that mdp5_flush_commit() was introduced in commit 9f6b65642bd2
    > ("drm/msm: add kms->flush_commit()") with a TODO comment and the commit
    > description mentions flushing registers. I assume that this is the
    > proper fix. If so, can you point me to where these registers are
    > defined and I can work on the mdp5 implementation.

    See mdp5_ctl_commit(), which writes the CTL_FLUSH registers.. the idea
    would be to defer writing CTL_FLUSH[ctl_id] = flush_mask until
    kms->flush() (which happens from a timer shortly before vblank).

    But I think the async flush case should not come up with fbcon? It
    was really added to cope with hwcursor updates (and userspace that
    assumes it can do an unlimited # of cursor updates per frame).. the
    intention was that nothing should change in the sequence for mdp5 (but
    I guess that was not the case).

    BR,
    -R

    \
     
     \ /
      Last update: 2019-11-05 01:20    [W:3.361 / U:0.000 seconds]
    ©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site