summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2012-09-05Add PlatformProbe to handle sharing of device entitiesChris Wilson
Reported-by: Nick Bowler <nbowler@draconx.ca> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54561 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Harden against initialisation failuresChris Wilson
References: https://bugs.freedesktop.org/show_bug.cgi?id=54561 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05Revert "sna: Flush the batch before a render operation if the GPU is idle"Chris Wilson
This reverts commit ad57ac07a273bf376b74884de47d8ee1e7129fb8. These checks end up being too frequent and not allowing us to batch sufficient commands to offset the overhead of batch submission. Hmm.
2012-09-05uxa: Fix cut'n'paste error in Option "Backlight"Chris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05uxa: Flush batch immediately after queuing a WAIT_FOR_EVENTChris Wilson
We still encounter hangs with kernel-3.5 with the culprit being a wait on a disabled pipe. As we thoroughly check before that the pipe is still disabled and flush before a modeset, the only possibility that remains is that DPMS is disabling the pipe before we submit. Close that race by always submitting the batch immediately after a WAIT_FOR_EVENT. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Initialise the empty boxes field of the region before subtracting itChris Wilson
Fixes regression from commit 38fb77af757318e5fb6f605b37306ce4585b11a5 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Wed Sep 5 08:23:34 2012 +0100 sna: Don't upload ignored cpu damage Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Drop master after discarding framebuffersChris Wilson
As Imre Deak pointed out in the previous patch, drmModeRmFB only works when we hold the DRM master, therefore to prevent a leak of the framebuffer across server reset we need to defer dropping master until after we release our scanouts and modes. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05uxa: fix leakage of FB when closing the screenImre Deak
Calling drmModeRmFB is only allowed in DRM master mode. Since leaving the VT also drops master mode we need to remove the FB before calling I830LeaveVT. This is only a real leak in case of a server reset, otherwise the server process will exit anyway and the kernel will clean up the FB. Signed-off-by: Imre Deak <imre.deak@intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Review validity of damage when discarding CPU boChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna/video: Use the scanout flag and FB id for sprite framebuffersChris Wilson
So that we can use the same teardown path as normal scanouts. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna/gen7: Always emit a stall when flushing the texture cacheChris Wilson
Reported-by: Reinhard Karcher <reinhard.karcher@gmx.net> References: https://bugs.freedesktop.org/show_bug.cgi?id=54488 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Use async upload only if the last render was not CPUChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Tweak upload path to remove redundant codeChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Don't upload ignored cpu damageChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Add DBG control to disable CPU boChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05sna: Fix comparison of memcpy overlap to include x-offsetsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Rearrange use_cpu() tests for composite ops to avoid syncing CPU boChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Flush the batch before a render operation if the GPU is idleChris Wilson
Experiment with pushing those first commands earlier. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: And remember to flush the damage to the output slaves...Chris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Improve handling of output offloadingChris Wilson
In particular, don't forget to flush when we only have offload slaves and no native pixmaps. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Fix a typo in an error messageChris Wilson
s/achieve/retrieve/ otherwise it is nonsense. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Add some DBG to the prime pathsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Fixup CREATE_USAGE_SHAREDChris Wilson
The DRI2 code tries to create pixmaps with non-zero width/height, whoops. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Fix typo for detecting prime ioctlsChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04sna: Port prime interfacingChris Wilson
Preliminary prime support. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-03sna: Enable platform probingChris Wilson
Completing commit 0768ac4d195214825137152893deb74a87fcd11e Author: Dave Airlie <airlied@redhat.com> Date: Wed Jul 25 16:11:23 2012 +1000 intel: add platform probing support. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-03uxa: Fix Backlight option support.Сковорода Никита Андреевич
Signed-off-by: Сковорода Никита Андреевич <chalkerx@gmail.com>
2012-09-03sna/gen6+: Redirect fills if the destination is too large for 3DChris Wilson
Reported-by: Clemens Eisserer <linuxhippy@gmail.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54134 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-04intel: fix return value for no pEntDave Airlie
Probably never gets hit but shuold return FALSE, pointed out on irc by Lekensteyn Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-03intel: query kernel for caps to setup scrn capabilities.Dave Airlie
This queries the kernel for prime support before advertising the capabilities. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-03intel: add pixmap tracking and scanout support. (v2)Dave Airlie
This adds support for pixmap tracking and scanout of alternate pixmaps. v2: do dirty updates after uxa block handler, check if kernel can flush vmap for us so we don't have to. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-03intel/uxa: add pixmap sharing support.Dave Airlie
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-03intel: add platform probing support.Dave Airlie
This allows the driver to be loaded by the platform loading code. Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-02sna: Cache the temporary upload buffer when copying boxesChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-02sna: Don't retire when searching for a snoopable buffer without hw supportChris Wilson
If the hw/kernel doesn't support snoopable buffers, then it makes little sense to search for one, and force a retire in the certainty of not finding any. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-02sna: Tweak placement rules if we already have a CPU boChris Wilson
If we have a CPU bo, consider if it may be quicker to render to it then create a GPU bo. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-01sna/dri: Remove busy-wait spin from vblank chaining of swapbuffersChris Wilson
The issue being that, due to the delay, the chained swap would miss its intended vblank and so cause an unwanted reduction in frame throughput and increase output latency even further. Since both client and server have other rate-limiting processes in place, we can forgo the stall here and still keep the clients in check. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54274 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-01sna: Nullify gpu_bo after free in case final release is deferred in destroyChris Wilson
As we may defer the actual release of the pixmap until after completion of the last shm operation, we need to make sure in that case we mark the GPU bo as released to prevent a use-after-free. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-01sna/gen2+: Add the missing assertions in case the drawrect is invalidChris Wilson
Only the later gen had these useful assertions, add them to the rest just in case. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-01sna: Discard cached CPU upload early when clearing with a solid fillChris Wilson
Otherwise we end up considering the GPU bo as a real target, causing confusion and failed asserts. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-30sna/dri: Use common routine for testing busyness after flushChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-30sna/dri: Hold a reference to the vsync blitChris Wilson
Fixes regression from commit 96a921487ef00db03a12bec7b0821410d6b74c31 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Mon Aug 27 21:50:32 2012 +0100 sna: Track outstanding requests per-ring Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-29sna: Remove inconsistent assertionChris Wilson
As we now may not prefer to use the GPU even if all-damaged and clear, asserting that if we choose to use the CPU if clear is now bogus. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-28sna: Align active upload buffers to the next page for reuseChris Wilson
If we write to the same page as it already active on the GPU then despite the invalidation performed at the beginning of each batch, we do not seem to correctly sample the new data. References: https://bugs.freedesktop.org/show_bug.cgi?id=51422 References: https://bugs.freedesktop.org/show_bug.cgi?id=52299 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-28sna: Discard inplace flag if we create a CPU map for the upload bufferChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-28sna: Propagate the request to flush rather than directly submit the batchChris Wilson
The subtly is that we need to reset the mode correctly after submitting the batch which was not handled by kgem_flush(). If we fail to set the appropriate mode then the next operation will be on a random ring, which can prove fatal with SandyBridge+. Reported-by: Reinis Danne <reinis.danne@gmail.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-28sna: Make sure we reset the domain tracking when exporting DRI boChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-27sna: Track outstanding requests per-ringChris Wilson
In order to properly track when the GPU is idle, we need to account for the completion order that may differ on architectures like SandyBridge with multiple mostly independent rings. Reported-by: Clemens Eisserer <linuxhippy@gmail.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54127 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-27sna: Ensure that we create a GTT mapping for the inplace upload bufferChris Wilson
As the code will optimistically convert a request for a GTT mapping into a CPU mapping if the object is still in the CPU domain, we need to overrule that in this case where we explicitly want to write directly into the GTT and furthermore keep the buffer around in an upload cache. References: https://bugs.freedesktop.org/show_bug.cgi?id=51422 References: https://bugs.freedesktop.org/show_bug.cgi?id=52299 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-08-27sna: Force the stall if using a busy ShmPixmap bo with PutImageChris Wilson
As we will stall in the near future to serialise access with the ShmPixmap, we may as well stall first and do a simple copy using the CPU in this highly unlikely scenario. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>