Commit Graph

6127 Commits

Author SHA1 Message Date
Chris Wilson 2d5d55702b sna/gen6+: Override PTE cacheability bits for reads
This is primarily useful for enabling the render cache for reads from
scanouts.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-28 15:57:27 +00:00
Chris Wilson 3ed87945c9 sna/gen5+: Disable max-vbo address
As we do not use this feature, disable it and save the relocation.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-28 11:05:40 +00:00
Chris Wilson b2c9e9da63 sna/blt: Avoid clobbering common state before converting to a BLT
In case we need to continue on with the render operation, we need to
preserve the existing state.

Reported-by: Jiri Slaby <jirislaby@gmail.com>
References: https://bugs.freedesktop.org/show_bug.cgi?id=57601
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-27 11:34:12 +00:00
Chris Wilson 1e06d19a00 sna: Disable shadow tracking upon regen
References: https://bugs.freedesktop.org/show_bug.cgi?id=56608
References: https://bugs.freedesktop.org/show_bug.cgi?id=52255
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-26 15:49:24 +00:00
Chris Wilson d21ed3a6ab sna: Use a single execobject flag to mark read/write domains
Slight modification to the proposed API to only pass the simplified
domain tracking now performed by the kernel.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-26 10:34:28 +00:00
Chris Wilson 7a904ce839 2.20.14 release
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-26 08:48:31 +00:00
Chris Wilson 1367e3f9ef sna: Exploit the alpha-fixup of the BLT for texture format conversions
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-25 12:12:57 +00:00
Chris Wilson 6d6399f97c sna: Transform a simple repeat pattern into range of the BLT
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-25 00:05:44 +00:00
Chris Wilson 39f1e228b7 sna: Make GPU idle more consistent during wakeup
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-24 20:16:29 +00:00
Chris Wilson 40b6121746 sna/g4x: Refine the w/a for the broken sf shader
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 18:21:41 +00:00
Chris Wilson e0b906b096 sna/g4x: Use the render pipeline more often for composite operations
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 18:01:25 +00:00
Chris Wilson 54d8968da5 sna/gen4: Revert changes to 965g[m]
The changes tested on g45/gm45 prove to be highly unstable on 965gm,
suggesting a radical difference in the nature of the bugs between the
two generations. In theory, g4x has additional features that could be
exploited over and above gen4 which may prove interesting in the future.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 17:47:49 +00:00
Chris Wilson d560296561 sna/gen4: Don't force a flush for the dirty target if the we do not read back
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 16:35:06 +00:00
Chris Wilson 4023b20447 sna/gen4: Force composite(WHITE, glyph) for building the glyphstring mask
For reasons that are not apparent, if we don't composite with
source/mask for the glyph strings, there appears to be some cache
corruption. About as bizarre as the rest of gen4 idiosynacracies.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 15:42:18 +00:00
Chris Wilson f74b62755c sna/gen4: Set composite op before testing for a BLT compatible op
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 14:59:42 +00:00
Chris Wilson 4c922eb52c sna/gen4: Pass the mask channel explicitly rather than through a dummy mask
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 14:44:16 +00:00
Chris Wilson 2e68efa8ec sna/gen4: Reduce the flush before performing the CA pass
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 14:04:51 +00:00
Chris Wilson 43aff6708f sna/gen4: Update render fill routines to use the dummy mask
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 13:47:00 +00:00
Chris Wilson 3529107122 sna/gen4: Move the flush from inside the spans to emit_state()
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 13:37:47 +00:00
Chris Wilson 217f3e835b sna/gen4: Backport the more efficient composite box emitters
Now that we aren't flushing after every single rectangle, we can strive
for a little efficiency.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 13:37:47 +00:00
Chris Wilson d3145e3f81 sna/gen4: Use a dummy white mask to avoid the flush w/a when compositing
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-23 13:37:47 +00:00
Chris Wilson 65d530b59b Revert "uxa: Refactor early-exit paths of uxa_try_driver_composite()."
This reverts commit fa5c573455 as it
causes a SIGSEGV.

Reported-by: lu hua <huax.lu@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57389
2012-11-22 08:18:38 +00:00
Chris Wilson d3a49f3639 sna/gen3+: Clear the render.vbo when replacing it for vertex upload
As we may trigger a flush and a retire when searching for a vertex
buffer for the new vertices, we need to be careful to decouple the
destroyed vbo in order to avoid a use-after-free when inspecting the
state.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 18:42:24 +00:00
Chris Wilson 1c57a52a1f sna: Assert that we do not replace a GPU bo with a proxy
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 18:18:06 +00:00
Chris Wilson 8da12a00ee sna: Skip uploading unintialiased pixmap data
References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 17:28:46 +00:00
Chris Wilson 0696ea4bd6 sna: Add the missing assertion for !proxy
References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 17:25:33 +00:00
Chris Wilson ee72375ecd sna: Do not migrate uninitialised pixmaps
Reported-by: Jiri Slaby <jirislaby@gmail.com>
References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 17:08:53 +00:00
Chris Wilson 44dad49014 sna: Do not dispose of a shadow pixmap
Fixes regression from 2249e9edc3

Reported-by: Jiri Slaby <jirislaby@gmail.com>
References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 16:22:35 +00:00
Chris Wilson 9c627a0524 sna: Remove the kgem_bo_is_mappable refcnt assertion from freed paths
A few callers of kgem_bo_is_mappable operate on freed bo, and so need to
avoid the assert(bo->refcnt).

References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 16:04:24 +00:00
Chris Wilson c0c48c7a5a sna: Add a few refcnt assertions
References: https://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 14:51:59 +00:00
Chris Wilson 0884777c33 sna: Fix bogus assertion from 03fb9ded43
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 14:31:44 +00:00
Chris Wilson 2249e9edc3 sna: Dispose of local copy for render sources
If we transfer the pixmap to the GPU to use as a render source, presume
that we will not need to then touch the local copy (at least for a
while) and so return that memory to the system.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 13:05:36 +00:00
Chris Wilson 736bb0f705 sna: Tighten a couple of assertions for damage with use_bo
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-21 12:16:46 +00:00
Chris Wilson 03fb9ded43 sna: Assert that we do not create a proxy with existent GPU damage
References: http://bugs.freedesktop.org/show_bug.cgi?id=47597
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-20 21:36:50 +00:00
Chris Wilson 9ab1d1f94e sna/dri: Queue a vblank-continuation after flip-completion
If a vblank request was delayed due to a pending flip, we need to make
sure that we then queue it after that flip or else progress ceases.

Reported-by: Jiri Slaby <jirislaby@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56423
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57156
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-20 18:42:58 +00:00
Chris Wilson 7a7a76b359 sna/dri: Avoid a NULL dereference inside a DBG
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-20 16:05:32 +00:00
Eric Anholt fa5c573455 uxa: Refactor early-exit paths of uxa_try_driver_composite().
Saves 200b of code at -O2.
2012-11-20 11:39:47 +00:00
Eric Anholt edefb64d2b uxa: Work around uninitialized-value warning.
The compiler isn't noticing that localDst only diverges from pDst when
the _copy variables have also been set.
2012-11-20 11:39:47 +00:00
Eric Anholt 18b2e2a827 uxa: Add printf attribute to intel_debug_fallback().
Shuts up a bunch of warnings with xorg's shared warning flags, and
should give us more informative warnings in our code.
2012-11-20 11:39:47 +00:00
Eric Anholt 2d1e267e66 uxa/dri: Factor out the repeated swap fallback code. 2012-11-20 11:39:46 +00:00
Eric Anholt cd2f373da7 configure.ac: Fix bad syntax for test calls 2012-11-20 11:39:44 +00:00
Chris Wilson b8c01d9bd7 sna/dri: Add an assert that the cached DRI2 buffer is pinned for DRI
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-20 11:35:31 +00:00
Chris Wilson 84b1a02fa9 sna/dri: Avoid setting off-delay after a failed flip (use-after-free)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-19 13:41:28 +00:00
Chris Wilson b4dd1103a5 sna/gen6+: Tweak prefer-blt to offset latency when in rc6
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-18 12:51:32 +00:00
Chris Wilson 0cb8544dc1 Remove useless indirection of intel_chipsets
Once upon a time this was used to hide a compiler warning about a
pointer mismatch, now the compiler still warns about the cast, making
the indirect moot.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-18 12:50:44 +00:00
Chris Wilson 8509e474f5 sna/dri: Clear the last-used-cpu flag when performing CopyRegion
Keeps the internal bookkeeping intact after the small bypass.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-16 23:02:44 +00:00
Chris Wilson 866ed4a26c sna/dri: Add a couple of more asserts to track injection of a rogue bo
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-15 15:13:14 +00:00
Chris Wilson d2897cb013 sna/gen4,5: Fix the opacity shader to use the right vertex attribute
Reported-by: Edward Sheldrake <ejsheldrake@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57054
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-13 12:43:44 +00:00
Chris Wilson 440eaa0497 sna/gen4: Tidy emission of opacity vertex attribute
Just make it more consistent between the various emitters

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-13 12:43:42 +00:00
Chris Wilson b6d2bb9615 sna/gen4: Do not prefer inplace non-rectilinear spans
As gen4 requires the per-rectangle vertex flush, emitting spans on the
GPU is inefficient and so we prefer to composite the mask instead.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-13 11:08:37 +00:00