All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Wilson <chris@chris-wilson.co.uk>
To: Intel Graphics Development <intel-gfx@lists.freedesktop.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>, stable@vger.kernel.org
Subject: Re: [PATCH] drm/i915: fix overlay on i830M
Date: Mon, 22 Oct 2012 11:54:05 +0100	[thread overview]
Message-ID: <eeac1e$4ngd7v@AZSMGA002.ch.intel.com> (raw)
In-Reply-To: <1350902658-1956-1-git-send-email-daniel.vetter@ffwll.ch>

[-- Attachment #1: Type: text/plain, Size: 1894 bytes --]

On Mon, 22 Oct 2012 12:44:18 +0200, Daniel Vetter <daniel.vetter@ffwll.ch> wrote:
> The overlay on the i830M has a peculiar failure mode: It works the
> first time around after boot-up, but consistenly hangs the second time
> it's used.
> 
> Chris Wilson has dug out a nice errata:
> 
> "1.5.12 Clock Gating Disable for Display Register
> Address Offset:	06200h–06203h
> 
> "Bit 3
> Ovrunit Clock Gating Disable.
> 0 = Clock gating controlled by unit enabling logic
> 1 = Disable clock gating function
> DevALM Errata ALM049: Overlay Clock Gating Must be Disabled:  Overlay
> & L2 Cache clock gating must be disabled in order to prevent device
> hangs when turning off overlay.SW must turn off Ovrunit clock gating
> (6200h) and L2 Cache clock gating (C8h)."
> 
> Now I've nowhere found that 0xc8 register and hence couldn't apply the
> l2 cache workaround. But I've remembered that part of the magic that
> the OVERLAY_ON/OFF commands are supposed to do is to rearrange cache
> allocations so that the overlay scaler has some scratch space.
> 
> And while pondering how that could explain the hang the 2nd time we
> enable the overlay, I've remembered that the old ums overlay code did
> _not_ issue the OVERLAY_OFF cmd.
> 
> And indeed, disabling the OFF cmd results in the overlay working
> flawlessly, so I guess we can workaround the lack of the above
> workaround by simply never disabling the overlay engine once it's
> enabled.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47827
> Cc: stable@vger.kernel.org
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>

That looks fun, and indeed will probably work. So if we never issue the
OFF command, do we still need i830_init_clock_gating()?

And if we do still need i830_init_clock_gating() wouldn't it be better
applied as a quirk to intel_overlay_on()?
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2012-10-22 10:54 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-22 10:44 [PATCH] drm/i915: fix overlay on i830M Daniel Vetter
2012-10-22 10:54 ` Chris Wilson [this message]
  -- strict thread matches above, loose matches on Subject: below --
2012-10-22 10:55 Daniel Vetter
2012-10-23  9:12 ` Daniel Vetter
2012-10-23  9:56   ` Chris Wilson
2012-10-23 10:59     ` Daniel Vetter

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='eeac1e$4ngd7v@AZSMGA002.ch.intel.com' \
    --to=chris@chris-wilson.co.uk \
    --cc=daniel.vetter@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=stable@vger.kernel.org \
    /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.