All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zhi Wang <zhi.a.wang@intel.com>
To: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: "intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>,
	"Gao, Ping A" <ping.a.gao@intel.com>
Subject: Re: Write GFX_FLSH_CNT after updating GGTT entries
Date: Thu, 19 Nov 2015 21:28:12 +0800	[thread overview]
Message-ID: <564DCE6C.6030308@intel.com> (raw)
In-Reply-To: <20151119132602.GS4437@intel.com>

Thanks!

OK. Then I check my box:

00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd 
Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA 
controller])
	Subsystem: Hewlett-Packard Company Device 3396
	Flags: bus master, fast devsel, latency 0, IRQ 27
	Memory at f7400000 (64-bit, non-prefetchable) [size=4M]

So this should be our own magic to play WC on a non-prefechable BAR 
especially for GGTT MMIOs?

Thanks,
Zhi.

On 11/19/15 21:26, Ville Syrjälä wrote:
> On Thu, Nov 19, 2015 at 09:04:11PM +0800, Zhi Wang wrote:
>> Hi Ville:
>>
>> Thanks for the answer! :) Learned a lot.
>>
>> I think the following scenario should be typical for a general PCI
>> devices(perhaps a dedicated video card). How do other PCI devices handle
>> this kinds of WC MMIO writes without GFX_FLSH_CNT? Only support UC mapping?
>
> The standard rule is that you can't use WC, except for prefetchable BARs.
>
>>
>> Thanks,
>> Zhi.
>>
>> On 11/19/15 18:35, Ville Syrjälä wrote:
>>> On Thu, Nov 19, 2015 at 06:20:23PM +0800, Zhi Wang wrote:
>>>> Hi Gurus:
>>>>        I'm curious about the register GFX_FLSH_CNT(0x101008) in
>>>> i915_gem_gtt.c. Does these register exist in recently generations? After
>>>> digging into b-spec, it looks only BXT and CHV has this register. Does
>>>> the desktop platform also have this register which needs to be written
>>>> after updating GGTT MMIOs?
>>>>
>>>> BTW: Looks windows driver haven't used this MMIO... So whose behavior is
>>>> the right behavior?
>>>
>>> As I understand it that register flushes the CPU GTT TLBs, and we need
>>> to do it because of the WC mapping we have for the GTT PTEs. If we used
>>> UC mapping we wouldn't need it since there's supposedly an automagic
>>> TLB flush that happens on PTE writes.
>>>
>>> BSpec is bad at finding some registers via bxml. Using dtsearch and
>>> looking for both 0x<offset> and <offset>h is the method I use to track
>>> such things down.
>>>
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2015-11-19 13:28 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-19 10:20 Write GFX_FLSH_CNT after updating GGTT entries Zhi Wang
2015-11-19 10:35 ` Ville Syrjälä
2015-11-19 13:04   ` Zhi Wang
2015-11-19 13:26     ` Ville Syrjälä
2015-11-19 13:28       ` Zhi Wang [this message]
2015-11-20  9:23   ` Tian, Kevin
2015-11-20  9:40     ` Chris Wilson
2015-11-20  9:53       ` Tian, Kevin

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=564DCE6C.6030308@intel.com \
    --to=zhi.a.wang@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=ping.a.gao@intel.com \
    --cc=ville.syrjala@linux.intel.com \
    /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.