fdb751ef2bbc78314d1e01d3425cfacfb19b9f86 |
|
09-Aug-2014 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau: remove as much direct use of core headers as possible Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
0ad72863ea426d46b2786cba9430e122a40aad0b |
|
09-Aug-2014 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau: port to nvif client/device/objects Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
264ce192b3e7f45d0adb37bfbab2b01a3fbe6c30 |
|
14-Feb-2013 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nv84-/fence: prepare for emit/sync support of sysram sequences Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
827520ce06568f699dad275dcca61647cce08757 |
|
14-Feb-2013 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau/fence: make internal hooks part of the context A step towards being able to provide fences from other engines not connected to PFIFO. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
bba9852feedf3d38f963278e07bdd3db622090b9 |
|
14-Feb-2013 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nv84-/fence: abstract class emit/sync functions to virt+sequence Now can be used to operate on any buffer mapped into the GPU virtual address and not just the main inter-channel sync buffer. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
a34caf78f26bda63869471cb3f46f354f4658758 |
|
14-Feb-2013 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nv84/fence: access fences with full virtual address, not offset Allows most of the code to be shared between nv84/nvc0 implementations, and paves the way for doing emit/sync on non-VRAM buffers (multi-gpu, dma-buf). Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
e18c080fb8695d038f69c26c248f5ecbd9e8aa77 |
|
31-Jan-2013 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau/fence/nv84-: put processes to sleep while waiting on fences Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
04c8c21085e13011a2eaf3ae518ab44e23e21917 |
|
25-Nov-2012 |
Marcin Slusarz <marcin.slusarz@gmail.com> |
drm/nouveau: unpin various bo's before destroying These objects leak VRAM - but only on module unload. Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
e225f446a0808ce38b124df489d0568c05c3057a |
|
21-Nov-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau: rename nvd0_display to nv50_display to reflect reality since merge Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
4f6029da58ba9204c98e33f4f3737fe085c87a6f |
|
16-Nov-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nv50-nvc0: switch to common disp impl, removing previous version Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
77145f1cbdf8d28b46ff8070ca749bad821e0774 |
|
31-Jul-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau: port remainder of drm code, and rip out compat layer v2: Ben Skeggs <bskeggs@redhat.com> - fill in nouveau_pm.dev to prevent oops - fix ppc issues (build + OF shadow) Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
ebb945a94bba2ce8dff7b0942ff2b3f2a52a0a69 |
|
20-Jul-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau: port all engines to new engine module format This is a HUGE commit, but it's not nearly as bad as it looks - any problems can be isolated to a particular chipset and engine combination. It was simply too difficult to port each one at a time, the compat layers are *already* ridiculous. Most of the changes here are simply to the glue, the process for each of the engine modules was to start with a standard skeleton and copy+paste the old code into the appropriate places, fixing up variable names etc as needed. v2: Marcin Slusarz <marcin.slusarz@gmail.com> - fix find/replace bug in license header v3: Ben Skeggs <bskeggs@redhat.com> - bump indirect pushbuf size to 8KiB, 4KiB barely enough for userspace and left no space for kernel's requirements during GEM pushbuf submission. - fix duplicate assignments noticed by clang v4: Marcin Slusarz <marcin.slusarz@gmail.com> - add sparse annotations to nv04_fifo_pause/nv04_fifo_start - use ioread32_native/iowrite32_native for fifo control registers v5: Ben Skeggs <bskeggs@redhat.com> - rebase on v3.6-rc4, modified to keep copy engine fix intact - nv10/fence: unmap fence bo before destroying - fixed fermi regression when using nvidia gr fuc - fixed typo in supported dma_mask checking Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
f589be88caf32501a734e531180d5df5d6089ef3 |
|
22-Jul-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau/pageflip: kick flip handling out of engsw and into fence This is all very much a policy thing, and hence will not belong in SW after the rework. engsw now only handles receiving the event to say "can flip now" and makes a callback to perform the actual work. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
e193b1d42c390bf1bff7fa02a5a1202b98e75601 |
|
19-Jul-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau/fence: un-port from nouveau_exec_engine interfaces Still the same code, but not an "engine" anymore. The fence code is more of a policy decision rather than exposing mechanisms, so it's not appropriate to port it to the new engine subsystem. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
02a841d434513c7b3620250271c372fabce56de5 |
|
04-Jul-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau: restructure source tree, split core from drm implementation Future work will be headed in the way of separating the policy supplied by the nouveau drm module from the mechanisms provided by the driver core. There will be a couple of major classes (subdev, engine) of driver modules that have clearly defined tasks, and the further directory structure change is to reflect this. No code changes here whatsoever, aside from fixing up a couple of include file pathnames. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
d6ba6d215a538a58f0f0026f0961b0b9125e8042 |
|
28-Sep-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nvc0/fence: restore pre-suspend fence buffer context on resume Fixes some unfortunate races on resume. The G84 version of the code doesn't need this as "gpuobj"s are automagically suspended/resumed by the core code whereas pinned buffer objects are not. Cc: stable@vger.kernel.org Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
760285e7e7ab282c25b5e90816f7c47000557f4f |
|
02-Oct-2012 |
David Howells <dhowells@redhat.com> |
UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ Convert #include "..." to #include <path/...> in drivers/gpu/. Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Dave Airlie <airlied@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Acked-by: Dave Jones <davej@redhat.com>
|
c420b2dc8dc3cdd507214f4df5c5f96f08812cbe |
|
01-May-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau/fifo: turn all fifo modules into engine modules Been tested on each major revision that's relevant here, but I'm sure there are still bugs waiting to be ironed out. This is a *very* invasive change. There's a couple of pieces left that I don't like much (eg. other engines using fifo_priv for the channel count), but that's an artefact of there being a master channel list still. This is changing, slowly. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
906c033e276877c1374c9159976b05746af3c86d |
|
04-May-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau/fence: fix a race where fence->channel can disappear Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
5e120f6e4b3f35b741c5445dfc755f50128c3c44 |
|
30-Apr-2012 |
Ben Skeggs <bskeggs@redhat.com> |
drm/nouveau/fence: convert to exec engine, and improve channel sync Now have a somewhat simpler semaphore sync implementation for nv17:nv84, and a switched to using semaphores as fences on nv84+ and making use of the hardware's >= acquire operation. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|