summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-01-04sna: Carefully free the freed_pixmap upon exitChris Wilson
As the contents of the pixmap are now rubbish, we need to manually destroy it rather than pass it to the normal sna_pixmap_destroy() routines. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-04sna: Limit batch to a single page on 865gChris Wilson
Verified on real hw, this undocumented (at least in the bspec before me) bug truly exists. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-04sna: Guard against NULL damage derefChris Wilson
The fast version of damage checking assumes that the damage has already been determined to be non-NULL, so make sure it is. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-04sna: Fix typo during partial list deletionChris Wilson
And keep the asserts that lead to its discovery. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-04sna/gen3: Remove incorrect premultiplication of solid component-alpha maskChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-04sna: Discard mask and source for PictOpClearChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03uxa/glamor: Route some missing drawing function to glamorZhigang Gong
We have to route all the drawing function to glamor first, when glamor is enabled. This adds a few more functions that were previously just falling back to swrast and passes them to glamor instead. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03uxa/glamor: Let glamor do the GC validationZhigang Gong
If we are using GLAMOR, then a tile pixmap or stipple pixmap may be pure glamor pixmap and thus UXA will not know how to render to them, and we need to let glamor do the validation. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03uxa/glamor: Remove extraneous flushZhigang Gong
When glamor is enabled, a pixmap will not be accessed by UXA's accelerated functions. Only unaccelerated functions may access those pixmaps, and before each unaccelerated rendering, it calls uxa_prepare_access which will do a glFlush. Combined with a flush before sending to DRI clients, we no longer need to flush after every operation. Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03uxa/glamor: Remove dead code.Zhigang Gong
Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna: Inline checks for over-sized buffers during pixmap creationChris Wilson
Make the tests for acceptable GPU pixmaps explicit and upfront. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna: Always search for an exact active match first from the bo-cacheChris Wilson
And accept second-best only if permitted by flags. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna: Force tiling on medium pitches if not reduced for other reasonsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna: Delete the last buffer if destroyed without being used on the GPUChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna/gen3: Prefer to use the blitter for solid fillsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna/trapezoids: Pass the sna pointer to the calleesChris Wilson
Avoid the repeated multiple indirect dereferences. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna: Avoid unnecessary call overhead for read-only move-to-cpuChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna: Use a cheaper no-reduction damage check for simply discarding further ↵Chris Wilson
damage Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna/damage: Mark the box as packed so that the embedded_box is aligned correctlyChris Wilson
valgrind was complaining about an overlapping memcpy on a 64-bit platform as gcc padded the sna_damage_box to 28 bytes... Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-03sna/gen3: Check for a non-NULL bo before incrementing its ref in reuse_source()Chris Wilson
For gen3, we may reduce a source into a constant operator and so dispense with keeping a bo. When duplicated into the mask channel, we then need to be careful not to dereference the NULL pointer. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-01sna: Prefer not to force the creation of gpu bo for pixmap uploadsChris Wilson
As this causes a significant regression when benchmarking firefox on SNB with firefox-planet-gnome if we already have CPU buffers. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-01sna: Keep a freelist of buffersChris Wilson
As reallocation of bo is the most frequent cause of malloc/free. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-01sna: Tune blt routineChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-01sna: Delete some redundant codeChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-01sna: Eliminate one union pass when reducing damage-addChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-01-01sna: Move some checks against programming errors to assertsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31Revert "sna: Increase the minimum alignment constraint for g33"Chris Wilson
This reverts commit 2934e778f01cdf1307732b248b11a31c0e79e866. The actual cause of the bug I was seeing on my PNV box turned out to be a1f585a3d0a, so time to reinvestigate the alignment issues.
2011-12-31uxa/video: Clear all state structures before uploadingChris Wilson
A regression from eb859f644633e left some of the state uninitialised before uploading to the GPU leading to undefined behaviour. Reported-by: Alexey Shumitsky <alexey.shumitsky@gmail.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44338 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44252 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31uxa: the video destination should be in the render write domainChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31sna: Implement inplace trapezoidal addition (for clipmasks)Chris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31sna: Update pixmap->devKind for GTT mappingsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31sna: Implement tiled uploads for small stipples larger than patternsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31sna: Make sure the shadow pixmap is suitable for scanoutChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31sna: Tweak throttling to be run before going idleChris Wilson
The goal is to avoid introducing extra latency in the middle of a command sequence and to delay it until we have to wait for the clients. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31sna: compare tiling against minimum width for relevancyChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-31sna: Defer the initial source upload if the GPU bo will be untiledChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-30sna: Remove redundant use-gpu-bo clauseChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29sna: Fix DBG for no intersection with damageChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29sna: Tune disarming of the scanout flush timerChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29sna: Allow uploading inplace to a freshly created GPU boChris Wilson
If the operation is favoured to be performed using a WC upload, presume that we will use the uploaded pixmap on the GPU and so prefer to create a GPU buffer to hold the fresh data. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29sna: Only update the damage region as necesary for contains-boxChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29sna: Reset the source counter upon dirtying the shadow pixmapChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29sna: Be paranoid and check for errors from mmapping the boChris Wilson
Now that the error propagation is actually in place, we may as well use it. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-29uxa: Depend upon DRI2 not DRIChris Wilson
The symbols required for building intel_dri.c are checked during configure under the DRI2 defines. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-28sna/dri: Update set_bo() for change of bo ownership transfer during page-flipChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-28sna: Fix debug message for read-boxesChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-28sna: Do not create glyph caches if the gpu is wedgedChris Wilson
As these will only be created in normal memory and never used. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-28sna: Refactor common code for testing gpu busyness of a pixmapChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-28sna: Perform clip mask compositing inplaceChris Wilson
Avoid the extra composite-in pass for simple clipmask construction. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-12-28uxa: Remove concept of global FB ownership made obsolete by GEM and KMSChris Wilson
With the introduction of GEM, we can continue to submit batch buffers irrespective of ownership of the console, so do so. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>