Ben Skeggs
1e96268aca
drm/nv50: initial work to allow multiple evo channels
...
This doesn't work yet for unknown reasons.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-03 15:10:54 +10:00
Ben Skeggs
18a16a768c
drm/nouveau: return error from nouveau_ramht_remove() if not found
...
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-12-03 15:05:27 +10:00
Francisco Jerez
7bb94d26ad
drm/nouveau: Avoid lock dependency between ramht and ramin spinlocks.
...
The ramht code called some gpuobj functions with the HARDIRQ-safe
RAMHT spinlock held, this could potentially lead to a dead lock
because ramin_lock is HARDIRQ-unsafe.
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-11-18 14:38:22 +10:00
Francisco Jerez
3bc14b4dca
drm/nouveau: Don't remove ramht entries from the neighboring channels.
...
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-09-24 16:25:03 +10:00
Ben Skeggs
2941482ead
drm/nouveau: protect ramht_find() from oopsing if on channel without ramht
...
This doesn't actually happen now, but there's a test case for an earlier
kernel where a GPU error is signalled on one of nv50's fake channels, and
the ramht lookup by the IRQ handler triggered an oops.
This adds a check for RAMHT's existance on a channel before looking up
an object handle.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-09-24 16:23:54 +10:00
Ben Skeggs
dac7900804
drm/nouveau: add spinlock around ramht modifications
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-09-24 16:23:30 +10:00
Ben Skeggs
e05c5a317e
drm/nouveau: tidy ram{ht,fc,ro} a bit
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-09-24 16:23:22 +10:00
Ben Skeggs
a8eaebc6c5
drm/nouveau: remove nouveau_gpuobj_ref completely, replace with sanity
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-09-24 16:20:14 +10:00
Ben Skeggs
b3beb167af
drm/nouveau: modify object accessors, offset in bytes rather than dwords
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-09-24 16:20:00 +10:00
Ben Skeggs
479dcaea09
drm/nouveau: move ramht code out of nouveau_object.c, nothing to see here
...
Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2010-09-24 16:19:55 +10:00