All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel.vetter@ffwll.ch>
To: intel-gfx@lists.freedesktop.org
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Subject: [PATCH 00/23] intel gtt rework, part 1: initialization
Date: Wed,  1 Sep 2010 22:29:47 +0200	[thread overview]
Message-ID: <1283373010-1314-1-git-send-email-daniel.vetter@ffwll.ch> (raw)

Hi all,

The goal of this rework is to
a) separate the fake agp driver from the hw access and
b) dig a direct path from gem to the intel gtt code
with the long-term goal to get rid of the fake agp driver for kms.

This series does this for the gtt setup code - except for the pte clearing
with the scratch page on initialization and pte restoring on resume, that
needs further work, first.

Patch series continuously tested on my ilk, i945gm and i855gm while
developing. IMHO the part most likely to suffer a regression is the
g33/pineview gtt size detection code.

Future patch series still to come like I'm currently planning them:
0. Deprecated the agp ioctls for kms. IIRC only xvmc on i915 ever used them
   (together with pin/unpin, which can go, too) and I've fixed that for
   intel 2.11 (2010Q1 release). So I think we can drop this in 2011Q1
   without hurting anyone.
1. Abstract away the pte handling/memory mapping. The intel fake agp drivers is
   the only user of quite a few generic agp helper things (dma remapping and
   the memory mask stuff, mostly). So this has the potential to be rather messy.
2. Wire the new pte handling directly to i915 and move the high-level stuff
   into the gem code. Sandybridge seems to have some new requirements here, can
   someone please shed some light on this? Zhenyu Wang?
[3. Port my duct-tapish i8xx cache coherency stuff over to the new framework.]
After 2011Q1: Kill the fake agp driver for kms-only chips (ilk and newer).
Perhaps even separate out the non-gem ums driver and get rid of the fake agp
driver for kms completely somewhen later.

Comments, flames, ideas highly welcome.

Yours, Daniel

daniel Vetter (23):
  agp/intel: split out gmch/gtt probe, part 2
  agp/intel: make intel-gtt.c into a real source file
  intel-gtt: introduce drm/intel-gtt.h
  intel-gtt: store a local pointer to the bridge pci dev
  intel-gtt: s/intel_i830_init_gtt_entries/intel_gtt_stolen_entries
  intel-gtt: new function intel_gtt_mappable_entries
  intel-gtt: generic intel_fake_agp_fetch_size
  intel-gtt: sane variable names for intel_gtt_stolen_entries
  intel-gtt: drop unnecessary conditions in intel_gtt_stolen_entries
  intel-gtt: adjust overhead entries in intel_gtt_stolen_entries
  intel-gtt: s/i8[13]0/fake_agp for generic functions
  intel-gtt: fix gtt_total_entries detection
  intel-gtt: introduce intel_gtt_driver
  intel-gtt: i915: use detected gtt size for mapping
  intel-gtt: i965: use detected gtt size for mapping
  intel-gtt: i830: adjust ioremap of regs and gtt to i9xx
  intel-gtt: consolidate the gtt ioremap calls
  intel-gtt: consolidate i830 setup
  intel-gtt: consolidate i9xx setup
  intel-gtt: call init_gtt_init in probe function
  intel-gtt: use chipset generation number some more
  drm/i915: drop prealloc_start from i915_dma gtt init
  drm/i915: die, i915_probe_agp, die

 drivers/char/agp/Makefile       |    1 +
 drivers/char/agp/intel-agp.c    |  189 +------
 drivers/char/agp/intel-agp.h    |   41 +--
 drivers/char/agp/intel-gtt.c    | 1067 +++++++++++++++++++++------------------
 drivers/gpu/drm/i915/i915_dma.c |  197 +-------
 drivers/gpu/drm/i915/i915_drv.h |    8 +-
 include/drm/intel-gtt.h         |   20 +
 7 files changed, 634 insertions(+), 889 deletions(-)
 create mode 100644 include/drm/intel-gtt.h

-- 
1.7.2.2

             reply	other threads:[~2010-09-01 20:28 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-01 20:29 Daniel Vetter [this message]
2010-09-01 20:29 ` [PATCH 01/23] agp/intel: split out gmch/gtt probe, part 2 Daniel Vetter
2010-09-01 20:29 ` [PATCH 02/23] agp/intel: make intel-gtt.c into a real source file Daniel Vetter
2010-09-01 20:29 ` [PATCH 03/23] intel-gtt: introduce drm/intel-gtt.h Daniel Vetter
2010-09-01 20:29 ` [PATCH 04/23] intel-gtt: store a local pointer to the bridge pci dev Daniel Vetter
2010-09-01 20:29 ` [PATCH 05/23] intel-gtt: s/intel_i830_init_gtt_entries/intel_gtt_stolen_entries Daniel Vetter
2010-09-01 20:29 ` [PATCH 06/23] intel-gtt: new function intel_gtt_mappable_entries Daniel Vetter
2010-09-01 20:29 ` [PATCH 07/23] intel-gtt: generic intel_fake_agp_fetch_size Daniel Vetter
2010-09-01 20:29 ` [PATCH 08/23] intel-gtt: sane variable names for intel_gtt_stolen_entries Daniel Vetter
2010-09-01 20:29 ` [PATCH 09/23] intel-gtt: drop unnecessary conditions in intel_gtt_stolen_entries Daniel Vetter
2010-09-01 20:29 ` [PATCH 10/23] intel-gtt: adjust overhead entries " Daniel Vetter
2010-09-01 20:29 ` [PATCH 11/23] intel-gtt: s/i8[13]0/fake_agp for generic functions Daniel Vetter
2010-09-01 20:29 ` [PATCH 12/23] intel-gtt: fix gtt_total_entries detection Daniel Vetter
2010-09-01 20:30 ` [PATCH 13/23] intel-gtt: introduce intel_gtt_driver Daniel Vetter
2010-09-01 20:30 ` [PATCH 14/23] intel-gtt: i915: use detected gtt size for mapping Daniel Vetter
2010-09-01 20:30 ` [PATCH 15/23] intel-gtt: i965: " Daniel Vetter
2010-09-01 20:30 ` [PATCH 16/23] intel-gtt: i830: adjust ioremap of regs and gtt to i9xx Daniel Vetter
2010-09-01 20:30 ` [PATCH 17/23] intel-gtt: consolidate the gtt ioremap calls Daniel Vetter
2010-09-01 20:30 ` [PATCH 18/23] intel-gtt: consolidate i830 setup Daniel Vetter
2010-09-01 20:30 ` [PATCH 19/23] intel-gtt: consolidate i9xx setup Daniel Vetter
2010-09-01 20:30 ` [PATCH 20/23] intel-gtt: call init_gtt_init in probe function Daniel Vetter
2010-09-01 20:30 ` [PATCH 21/23] intel-gtt: use chipset generation number some more Daniel Vetter
2010-09-01 20:30 ` [PATCH 22/23] drm/i915: drop prealloc_start from i915_dma.c gtt init Daniel Vetter
2010-09-01 20:30 ` [PATCH 23/23] drm/i915: die, i915_probe_agp, die Daniel Vetter
2010-09-05 16:10   ` Chris Wilson
2010-09-02  1:19 ` [PATCH 00/23] intel gtt rework, part 1: initialization Dave Airlie
2010-09-02 11:20 ` Chris Wilson

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=1283373010-1314-1-git-send-email-daniel.vetter@ffwll.ch \
    --to=daniel.vetter@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    --subject='Re: [PATCH 00/23] intel gtt rework, part 1: initialization' \
    /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

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.