summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-07-04sna: Clamp object size to the min of 1/4 of the whole GTT or 1/2 the mappableHEADmasterChris Wilson2-4/+11
... for those pesky early devices whose GTT was no larger than the AGP aperture. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Update flush/retirement lists after a implicit flush for mmapChris Wilson1-1/+12
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Enable relaxed-fencing for gen2 devicesChris Wilson1-6/+2
(Just as dependent upon non-buggy kernels as gen3...) Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Fix gen2 tiled surface sizesChris Wilson1-1/+1
Actually use the gen2 path for gen2 devices! Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna/gen2: fix batch buffer acountingChris Wilson1-14/+32
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Manually set to the GTT domain for mmapChris Wilson1-0/+6
...since the kernel no longer does strict coherency. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Trim number of downsample passesChris Wilson1-13/+35
If we can fit the entire width or the entire height into the pipeline when downsampling, do so. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Don't change tiling modes on replaceChris Wilson1-10/+3
This was trying to workaround a kernel bug, and instead causes a performance cliff for textures that *need* to be tiled. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Force tiled modes for large pitchesChris Wilson3-8/+36
If the surface is so big that the 2x2 texel sampling will cause a TLB miss everytime, i.e. the row pitch exceeeds 4096, then we need to encourage tiling to prevent attrocious performance. For example, try downscaling a 2560x1600 background image on a gen3 device using I915_TILING_NONE... Using slideshow-demo /usr/share/backgrounds/cosmos/whirlpool.jpg, on a PineView netbook, fps goes from under 4 to over 40. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-04sna: Finer-grained debugging for trapezoidsChris Wilson1-0/+12
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-02sna/video: Downgrade severity of "overlay not found" messageChris Wilson1-1/+1
We don't need to warn the user that their hardware does not support the video overlay plane (but Jesse is working on it!), but merely inform them that its presence is lacking. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-02sna/gen2: Add missing stub debug filesChris Wilson1-0/+60
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-01sna/gen2: Recompute blend pipeline for component-alpha passChris Wilson1-3/+4
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-01sna/gen2: Pack solid sources into the default diffuse componentChris Wilson1-51/+188
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-01sna/gen2: Remove unused state from invariant setupChris Wilson1-101/+19
... and also some state that gets clobbered when we install the composite pipelines. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-01sna: Downsample sources 2x too large to fit in the 3D pipelineChris Wilson7-5/+283
This is quite trivial to hit given the 2k limits on gen2/gen3. We compromise on image quality by pre-downscaling the source by a fixed factor to make it fit into the pipeline in preference to performing the entire operation on the CPU. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-01sna/gen2: Use specular component for solid spansChris Wilson4-120/+244
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-01sna/gen2: Add missing render fallbacks for blt opsChris Wilson4-42/+448
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-07-01sna/gen2: Implement composite-spansChris Wilson5-95/+511
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-30sna: Mappable aperture is region 0 on gen2Chris Wilson1-5/+8
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-30sna: Distinguish 830/845 vs 855/865 using the generation idChris Wilson4-11/+20
Remove the PCI ID device checks by using the simpler check on the generation id for errata pertaining to 830/845. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-28uxa/glyphs: Fallback instead of crashing on large stringsChris Wilson1-0/+10
Not ideal, but being slow is a major improvement over losing data. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36860 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-27sna/video: Use EXTEND_PAD to avoid mixing in the border colorChris Wilson3-3/+3
...which is 0 and appears green around an unaligned YUV-video. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38723 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-27sna: Disable XVideo using the TexturedAdapter if the GPU is wedgedChris Wilson2-1/+7
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-26sna: Typo in debug assertion.Chris Wilson1-1/+1
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-26sna/dri: Mark the GPU bo as damaged upon a page-flipChris Wilson1-0/+16
...so that CPU pixmap is correctly invalidated for the next readback. For instance, if you were to take a screenshot on a composited destkop. Reported-by: Sitosfe Wheeler <sitsofe@yahoo.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-26sna: Only create bo up to half the size of the mappable apertureChris Wilson4-30/+52
As we use GTT mappings if writing directly into the tiled buffer and the available aperture is reported by the kernel as the total GTT and not limited to the fenceable/mappable region, we need to manually probe this value and ensure that our creation and fenced routines observe this distinct limit. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-26sna/dri: Reorganise schedule_swap to not confuse immediate and wait pathsChris Wilson1-71/+78
Eeek, the wait-for-target-msc was using the immediate swap path, meaning that for copy-swaps the copy was submitting immediately but the client throttled waiting upon the target vblank. What is actually intended is for the presentation to be delayed until the target_msc. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-25sna/dri: Fix composited copy-swapsChris Wilson1-84/+73
The secret is not to cheat and render directly to the front buffer, but remember to mark the Window as damaged. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-25sna/display: Protect against drmModeGetCrtc returning NULLChris Wilson1-0/+3
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-25sna/gen4+: Use the drawable rectangle offset for copy boxesChris Wilson3-7/+13
Saves a little bit of work whilst emitting the rectangles. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-25sna: Correct typo in computing damage of PolyPointChris Wilson1-1/+1
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38614 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-24sna: Also allow BLT copies to discard the alpha channelChris Wilson7-26/+45
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-24sna/dri: Copy to real front upon swapChris Wilson1-139/+65
The front-buffer of a DRI2 drawable, may not in fact be pointing to the scanout pixmap. So override the destination for swapbuffers to update the scanout. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-24sna: Wrap the fbcon in a scratch pixmap for render-copy across depth changesChris Wilson1-3/+14
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-24sna: Avoid using the BLT to copy between mismatching depthsChris Wilson8-21/+77
We either conflated bpp (which fails given a mixture of depth-24 and depth-30 pixmaps) or neglected to check at all. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-24sna: Support depth-30 and some more logging to show the depthChris Wilson2-4/+18
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-24Xv: set up pipeline for Xv on IvybridgeXiang, Haihao2-24/+554
The configuration is same as that on Sandybridge, but many state commands are changed Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
2011-06-24Xv: upload new shaders to GEM objects for Xv on IvybridgeXiang, Haihao1-6/+30
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
2011-06-24Xv: update SURFACE_STATE & SAMPLER_STATE for Xv on IvybridgeXiang, Haihao2-11/+267
SURFACE_STATE & SAMPLER_STATE are changed since Ivybridge Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
2011-06-24Xv: New shaders for Xv on IvybridgeXiang, Haihao12-4/+225
Redefine some M4 macros, also update the check for intel-gen4asm to support Ivybridge Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
2011-06-24Xv: separate fragments from M4 macrosXiang, Haihao10-106/+219
It is to prepare for Xv on Ivybridge. The difference from Sandybridge is that all message payload must be in GRF registers instead of MRF registers on Ivybridge. We will only redefine some M4 macros for Ivybridge Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
2011-06-24sna: Don't render to invalid surfacesChris Wilson3-3/+7
Fixes a regression from d0362a. In bypassing the is_wedged checked, we also ended up bypassing the checks that we could indeed render to the target bo. With the result that we were creating GPU buffers for SHM surfaces, something that requires Xserver fixes before we can actually enable... Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-24sna: Clip the fbcon to the frontbufferChris Wilson1-6/+18
...both to correct the placement of the fbcon into the smaller scanout and to ensure that we correctly clip the boxes to be copied. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-23sna: Relent and workaround the lack of O_NONBLOCK on /dev/dri/card0Chris Wilson1-1/+14
So in order not to block server shutdown, check that the fd is readable before attempting to read from it. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-23sna: Debug compile fix, and some extra commentsChris Wilson5-19/+52
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-23sna: For an unbounded op, we need to convert the whole surfaceChris Wilson1-15/+29
Otherwise if we fail to check, then we create a 0x0 surface to sample with the operation -- net result is that we end up using a clear source instead of the desired mask. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-22Don't include xf86Priv.hAdam Jackson5-5/+0
I'd like it to not be in the SDK anymore, and we're not using anything from it. Signed-off-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2011-06-22configure: Define required_xorg_xserver_version later so it can make ↵Jian Zhao1-2/+2
successfully.
2011-06-22sna/video: Use pwrite for upload of unclipped, unrotated framesChris Wilson8-74/+97
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>