Chris Wilson
fbfbbee828
sna: Fix glyph DBG to include clip extents and actual glyph origin
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-17 09:20:21 +01:00
Chris Wilson
f0ed0ca234
sna: Promote an undamaged pixmap to use the full GPU
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-17 08:35:20 +01:00
Chris Wilson
1f79e877fb
sna: Share the pixmap migration decision with the BLT composite routines
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 23:48:10 +01:00
Chris Wilson
d141a2d590
sna: Disable snoopable bo for gen4
...
Further inspection reveals that whilst it may not hang the GPU, the
results are not pleasant or complete.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 23:27:32 +01:00
Chris Wilson
107feed2a4
sna: Disable snoopable uplaod buffers for gen4
...
The sampler really does not like using snoopable buffers...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 18:58:30 +01:00
Chris Wilson
818c21165c
sna: Fixup pixmap validation for sna_copy_area()
...
Remember to offset the box by the drawable deltas in order to
compensate for compositing.
Reported-by: Jiri Slaby <jirislaby@gmail.com>
References: https://bugs.freedesktop.org/show_bug.cgi?id=52142
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 16:28:00 +01:00
Chris Wilson
623d84bed7
Wrap defines to avoid redefinition warnings
...
Currently this only catches out ARRAY_SIZE, but wrap the other common
defines for consistency.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 16:07:37 +01:00
Chris Wilson
907a2a7c97
sna/trapezoids: Fix inplace unaligned fills (on gen4)
...
Reported-by: Sergio Callegari <sergio.callegari@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=52150
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 14:49:45 +01:00
Chris Wilson
6ce2f40249
sna/trapezoids: Add some DBG to unaligned fills
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 14:46:39 +01:00
Chris Wilson
2721214868
sna: Move the disabling of CPU bo for gen4 to the render unit
...
They appear to work fine with the BLT and only seem to cause issues when
used with the sammpler. So enable them for accelerated uploads and
downloads.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 13:52:39 +01:00
Chris Wilson
0777b146bf
sna: Use set-cache-level to allocate snoopable upload buffers
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 13:49:39 +01:00
Chris Wilson
33443f7ee4
sna: Add a couple of DBG options to control accelerated up/downloads
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 12:51:54 +01:00
Chris Wilson
9240602938
sna: Discard and recreate the CPU buffer when busy during move-to-cpu
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 12:30:44 +01:00
Chris Wilson
7024ef771f
sna: Add a few DBG to show when CPU bos are being used for xfer
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 12:30:43 +01:00
Chris Wilson
c564414157
sna: Disable the scanout flush when switch off via DPMS
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 12:17:40 +01:00
Chris Wilson
536e7ab756
intel: Don't use stdbool without declaring it
...
Reported-by: Fabio Pedretti <fabio.ped@libero.it>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-16 12:17:40 +01:00
Chris Wilson
0c32be15b0
uxa: Remove Shadow hack
...
This was an incomplete hack so deprecate in favour of Shadow-on-Steriods,
SNA.
References: https://bugs.freedesktop.org/show_bug.cgi?id=47324
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-15 20:56:58 +01:00
Chris Wilson
6a18a0936e
configure: version bump for 2.20.0 release
...
The day SNA hits mainstream...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-15 20:26:30 +01:00
Chris Wilson
6fa059330d
sna: Avoid creating a CPU bo for uploads if we already have a large GPU bo
...
And vice-versa if already have a large CPU bo.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-15 15:14:47 +01:00
Chris Wilson
a253c95ec6
sna: Prefer uploads to be staged in snoopable bo
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-15 15:13:23 +01:00
Chris Wilson
ef6d94a844
sna: Simply reverse all the boxes if dx <= 0 and dy <= 0
...
In this fairly common case, avoid both the double pass and use a simpler
algorithm as we can simply reverse the order of the boxes.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-15 11:46:53 +01:00
Chris Wilson
6601a943ff
sna: Keep track of the base pointer for the reordered boxes
...
So that we avoid freeing an invalid pointer.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-15 11:39:56 +01:00
Chris Wilson
ef34d5cf41
sna: Make sure we check for a busy CPU bo before declaring is-cpu
...
Even if the pixmap is entirely damaged on the CPU, we still may be in
the process of transferring it and so cause an unwanted stall.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 23:25:17 +01:00
Chris Wilson
0e397e4a1d
sna/glyphs: Perform the fallback mask reduce before moving the glyph pointers
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 21:36:45 +01:00
Chris Wilson
db1ee13a53
sna/gen7: Check for gradient allocation failure within spans
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 21:26:01 +01:00
Chris Wilson
86479e9746
sna/gen7: Uses EXTEND_PAD for its alpha-gradient with spans
...
Fixes regression from 2b94f9a043 .
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 21:24:04 +01:00
Chris Wilson
f17037275c
sna: Reorder overlapping boxes for CopyArea/Window
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 20:15:26 +01:00
Chris Wilson
86e09d14bd
sna: Tidy sna_copy_boxes
...
So there appears to be a bug hidden here. But only when we scroll
upwards in a GTK+ application. Hmm.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 19:44:17 +01:00
Chris Wilson
924f596463
sna: Avoid BLT to snoopable bo on older gen
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 19:16:07 +01:00
Chris Wilson
44e226b1d9
sna/glyphs: A repeat of the earlier typo for pixman glyphs
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 18:39:09 +01:00
Chris Wilson
797ebf937f
sna/glyphs: Fix typo and render glyphs to the small mask
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 16:58:18 +01:00
Chris Wilson
2b94f9a043
sna/gen7: Preselect sampler
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 16:40:06 +01:00
Chris Wilson
50d61c38bd
sna/gen4: Fix typo introduced in checking dst format
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 16:07:32 +01:00
Chris Wilson
fc91b1f157
sna/gen7: Only emit the render flushes between operations
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 15:57:32 +01:00
Chris Wilson
d30dc59651
sna/gen7: Only fallback to BLT for a redirected target
...
As we can always use a partial surface for the source.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 15:42:19 +01:00
Chris Wilson
9f05b0c03b
sna/gen4+: Fix up card/dest format confusion in previous commit
...
That would have been much more successful had I not supplied the wrong
opaque formats to the sampler.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 15:10:56 +01:00
Chris Wilson
fffbc34e46
sna/gen4+: Translate to card format using a switch
...
GCC produces faster code than a walk over the format tables.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 14:54:27 +01:00
Chris Wilson
95fdd9af5c
sna: Enable pixman_glyphs if available
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 14:15:11 +01:00
Chris Wilson
3f764ee4c5
sna/dri: Presume an unknown chipset will want i965_dri.so
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 12:29:47 +01:00
Chris Wilson
39845280b5
sna: Allow BLT support on future unknown hardware
...
Assume that if the kernel recognises the chipset and declares it has a
BLT, we can use it.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 12:14:28 +01:00
Chris Wilson
b260ca44b3
Drop some unused includes
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 10:02:51 +01:00
Chris Wilson
f517bdb12b
sna: Do not perform batch compaction on old kernels
...
As they will reject the delta pointing outside of the target batch.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 09:21:17 +01:00
Chris Wilson
ce69a1e868
sna: Add some DBG for selecting glyph path
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 09:21:17 +01:00
Chris Wilson
b68b2d9091
sna: Add some DBG for short-circuiting choice of source bo
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 09:21:17 +01:00
Chris Wilson
ad4786b285
sna: Aim for consistency and use stdbool except for core X APIs
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-14 09:21:12 +01:00
Chris Wilson
a05c3547bb
sna/gen4: Simplify comparing the pipeline-pointers against the previous
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-13 15:06:15 +01:00
Chris Wilson
ea9ec18505
sna: Split CloseScreen into two phases
...
In order to get the ordering correct we need to free the xf86_cursors
before calling the miPointerCloseScreen. This requires us to insert a
hook at the top of the CloseScreen chain. However we still require the
final CloseScreen hook in order to do the fundamental clean up, hence
split the CloseScreen callback into two phases.
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-07-13 11:46:09 +01:00
Chris Wilson
0f03f7b435
sna: Only try to enable DRI2 if the module is available at runtime
...
Blatantly cribbed from Michel Danzer's patch for ati...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-13 10:35:27 +01:00
Chris Wilson
b5d6a57f12
Enable compilation of SNA by default
...
But only if we meet the required versions of Xorg and leave UXA as the
default AccelMethod for the time being.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-12 22:16:55 +01:00
Chris Wilson
6c2975ab29
Fix the reporting of whether SNA is configured
...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-07-12 22:14:59 +01:00