summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-05-20drm/nvc0/fifo: prevent CHAN_TABLE_ERROR:CHANNEL_PENDING on fifo finiBen Skeggs1-0/+8
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-20drm/nvc0/fifo: prevent races between clients updating playlistsBen Skeggs1-0/+2
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-20drm/nve0/fifo: prevent races between clients updating playlistsBen Skeggs1-0/+3
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-20drm/nve0/ltcg: poke the partition count into yet another registerBen Skeggs1-0/+2
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-20drm/nvc0/ltcg: fix handling of disabled partitionsBen Skeggs1-7/+8
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-20drm/nvc0/ce: disable ce1 on a number of chipsetsBen Skeggs1-2/+0
The falcon is present, but the rest of the copy engine doesn't appear to be... PUNITS doesn't report disabled (maybe the bits for the copy engines got added later?), so we end up trying to use a non-functional CE1, and bust all sorts of things.. Most notably, suspend/resume.. Cc: stable@vger.kernel.org Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-20drm/nouveau/bios: fix thinko in ZM_MASK_ADD opcodeBen Skeggs1-2/+2
Cc: stable@vger.kernel.org Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-20drm/nouveau: fix build with nv50->nvc0Dave Airlie1-1/+1
Signed-off-by: Dave Airlie <airlied@redhat.com>
2013-05-02drm/nve0: recognise nvf0 as a kepler board (GK110)Ben Skeggs2-1/+36
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-02drm/nouveau: force noaccel when no PFIFO support presentBen Skeggs1-1/+2
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-05-02drm/nvf0/disp: expose display class 2.2Ben Skeggs6-0/+107
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/fifo: implement channel creation event generationBen Skeggs2-1/+9
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/core: allow non-maskable eventsBen Skeggs1-4/+8
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/timer: allow alarms to be cancelledBen Skeggs1-4/+9
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/device: tweak the device/subdev relationship a littleBen Skeggs2-88/+71
Fixes not-in-use engines not having their reset() method called on resume. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/device: enable proper constructor/destructorBen Skeggs1-1/+16
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/device: have engine object initialised before creationBen Skeggs4-5/+12
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/device: convert to engine, rather than subdevBen Skeggs15-32/+32
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv50-/disp: use self as parent for subobjectsBen Skeggs2-2/+4
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv50-/fifo: use parent as self for subobjectsBen Skeggs4-25/+31
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv20-nv30/gr: use parent as self for subobjectsBen Skeggs6-6/+6
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nvc0-/gr: use self as parent for subobjectsBen Skeggs3-9/+13
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv04-nv40/instmem: use self as parent for subobjectsBen Skeggs2-8/+13
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv04-nv40/vm: use self as parent for subobjectsBen Skeggs3-3/+3
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv50-/bar: use self as parent for subobjectsBen Skeggs2-15/+21
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv04-nv40/instmem: remove parent deref hackBen Skeggs3-12/+0
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/i2c: remove parent deref hackBen Skeggs1-5/+1
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/core: rebase object ref/use counts after ctor/init/fini eventsBen Skeggs1-6/+13
This is intended to support named (with a handle, etc) objects having children that don't have an outside reference. This will replace the various hacks around the place where subdev objects have children, and have to manually drop the self-refs so that they can be destroyed etc when all the outside refs have gone. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv50/disp: inform core when we're not creating a new contextBen Skeggs1-1/+1
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/therm: send some messages to debug levelBen Skeggs2-14/+14
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nve0/gr: add handling for a bunch of PGRAPH trapsChristoph Bumiller1-0/+222
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/mc: handle irq-related setup ourselvesBen Skeggs12-127/+75
We need to be able to process interrupts before the DRM code is able to actually enable them, set it up ourselves. Also, it's less convoluted to *not* use the DRM wrappers it appears... Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv04/disp: hide all the cruft away in its own little holeBen Skeggs24-28/+33
It'd be pretty awesome if someone would care enough to port this all properly to a class interface, perhaps submitting a command stream to the core via a sw object on PFIFO (emulating how EVO works basically, and also what nvidia have done forever..).. But, this seems unlikely given how old this hardware is now, so, lets just hide it away. There's a heap of other bits and pieces laying around that are still tangled. I'll (re)move them in pieces. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/bios: add missing newline on IO*_OR opcode debuggingBen Skeggs1-2/+2
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/bios: suppress some parser errors when dry-running scriptsBen Skeggs1-19/+33
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nve0: magic up some support for GF117Ben Skeggs6-25/+63
Seen in the wild, don't have the hardware but this hacks things up to treat it the same as GF119 for now. Should be relatively safe, I'd be very surprised if anything major changed outside of PGRAPH. PGRAPH (3D etc) is disabled by default however until it's confirmed working. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nvc0-/ltcg: Fix build on 32-bit platforms (v2)Roy Spliet1-1/+1
v2: read, don't assume.. *puts on brown paper bag* Signed-off-by: Roy Spliet <r.spliet@student.tudelft.nl> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/drm: adding support for backlight control of GT525M (NVC0)Florian Scholz1-0/+3
This patch adds support for the backlight control of the NVIDIA GT 525M, which identifies itself as a member of the NVC0 family. v2. Extended to handle Kepler too Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/drm: bump the driver version to 1.1.1 to report new featuresChristoph Bumiller1-1/+12
Signed-off-by: Christoph Bumiller <e0425955@student.tuwien.ac.at> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nvc0/gr: add software methods to control some MP regsChristoph Bumiller1-0/+29
Signed-off-by: Christoph Bumiller <e0425955@student.tuwien.ac.at> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nvc0-: support NOUVEAU_GETPARAM_GRAPH_UNITSChristoph Bumiller7-8/+47
Signed-off-by: Christoph Bumiller <e0425955@student.tuwien.ac.at> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nvc0-/ltcg: implement VRAM compressionChristoph Bumiller4-29/+220
Signed-off-by: Christoph Bumiller <e0425955@student.tuwien.ac.at> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/ttm: allow tiled memtype on system memory buffer objectsBen Skeggs1-0/+16
Compression not supported, and will be silently dropped. Original G80 can't handle this either and requires LINEAR memtype, though it's still possible to correctly texture and m2mf to/from these objects anyway. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nve0/grctx: initial attempt at unhardcoding yet more magicBen Skeggs1-4/+9
Not sure about the (gpc_nr == 1) condition, it's probably wrong but for all the examples I've seen so far it matches what NVIDIA end up poking. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nv50/therm: implement temperature readingMartin Peres1-3/+39
Signed-off-by: Martin Peres <martin.peres@labri.fr> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/therm: split the nv50 and nv84 codeMartin Peres9-164/+239
This is needed because temperature management on nv50 can be enabled and it looks about the same as nv40. Signed-off-by: Martin Peres <martin.peres@labri.fr> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/drm: fix crash in vram manager debug callbackMarcin Slusarz1-3/+6
It's probably impossible to hit it now on mainline kernel. I only noticed it because one of my debugging patches uses it. Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nvc0/fb: ignore readback page alloc failure to support userspaceBen Skeggs1-8/+9
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/nouveau/disp: fix uninitialised eq_done in error pathBen Skeggs1-1/+1
Reported-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2013-04-26drm/shmobile: Fix race condition between page flip request and handlerLaurent Pinchart1-1/+1
The page flip handler stores the page flip event pointer and then calls drm_vblank_get() to enable the vblank interrupt. Due to the vblank off delay, the vblank interrupt can be enabled in the hardware at that point, even if the vblank reference count is equal to 0. If a vblank interrupt is triggered between storing the event pointer and calling drm_vblank_get(), the page flip completion handler will process the event and call drm_vblank_put() with a reference count equal to 0. This will result in a BUG_ON. Fix the race condition by calling drm_vblank_get() before storing the event pointer. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Dave Airlie <airlied@redhat.com>