Keith Packard
abc896638f
Use krefs for refcounting.
...
krefs are way easier than a custom-coded spinlock+int combo.
2008-05-01 20:12:39 -07:00
Eric Anholt
c10695bb7a
Unbind objects when freeing, fix some error paths, and warn in others.
2008-05-01 17:31:57 -07:00
Eric Anholt
ddc80651d5
Fix offset passed to AGP to be pages instead of bytes.
...
Fix some utterly bonged loop while we were staring at it.
2008-05-01 17:31:29 -07:00
Eric Anholt
3f641b56c7
Fix missing member settings in obj/obj_priv, and some error paths.
2008-05-01 16:48:25 -07:00
Eric Anholt
7d5f783eca
Make GEM object handles be nonzero.
2008-05-01 16:38:37 -07:00
Eric Anholt
c530011aaa
Update mm tests for GEM rename.
2008-05-01 16:38:25 -07:00
Eric Anholt
d2529d1396
Remove _args from gem ioctl argument structure tags.
2008-05-01 16:27:03 -07:00
Eric Anholt
793549116e
Add pin/unpin object ioctls for gem.
2008-05-01 15:40:02 -07:00
Eric Anholt
ccd1bae0f6
checkpoint: relocations support.
2008-05-01 15:22:21 -07:00
Eric Anholt
5af87acbc2
checkpoint: gtt binding written.
2008-05-01 14:20:44 -07:00
Eric Anholt
2140e102f9
checkpoint: rename to GEM and a few more i915 bits.
2008-05-01 11:39:20 -07:00
Ben Skeggs
3ac74f3208
nv50: enable 0x400500 bit 0 after PGRAPH exception also
...
No solid idea about what these 2 bits do, but nv50 can now survive a few
PGRAPH exceptions just as nv40 does :)
2008-05-02 01:36:30 +10:00
Ben Skeggs
6d8062ac1e
nouveau: guard against channels potentially not having a context, fix nv50
2008-05-02 01:36:08 +10:00
Ben Skeggs
77d20928b3
nouveau: disable all card interrupts when unknown PFIFO IRQ occurs.
...
This is possibly temporary. I can trigger an unending IRQ storm on G8x
in some circumstances, and have no idea how to handle that particular PFIFO
exception correctly yet.
2008-05-02 00:53:42 +10:00
Ben Skeggs
5c4c778c0d
nouveau: restore original NV_PFIFO_CACHES_REASSIGN value in fifo handler
...
Doesn't fix any issue I've seen, but is a potential issue if a FIFO IRQ
occurs during channel creation/takedown.
2008-05-02 00:52:21 +10:00
Ben Skeggs
bfbe4ade32
nouveau: gather nsource in trap_info()
...
The IRQ handling stuff really is a mess.. On the TODO :)
2008-05-02 00:51:00 +10:00
Ben Skeggs
e317dfdabf
nv50: PGRAPH exception handling completely different from earlier chips
2008-05-02 00:06:22 +10:00
Ben Skeggs
b92efd5956
nv50: I cave... Add nv84 initial context values.
...
I swore I'd actually do this properly and not go the horrible route
we did with nv4x, but I won't get around to it just yet with so many
*actually* interesting things to do first.. One day.
Since someone already added nv86, why not!
2008-05-01 23:50:44 +10:00
Eric Anholt
1a84067950
Hacking towards hooking up execbuffer.
2008-04-30 16:03:15 -07:00
Eric Anholt
81ba8ded7e
Remove the remainder of the mmfs device.
2008-04-29 13:48:51 -07:00
Eric Anholt
3148c16364
Move mmfs tests over to be drm tests.
2008-04-29 13:45:43 -07:00
Eric Anholt
dabd056bf3
Move mmfs ioctls into the DRM. Untested.
2008-04-29 13:32:52 -07:00
Jesse Barnes
cb33133ef3
i915: fix off by one in VGA save/restore of AR & CR regs
...
Turns out it's important to save/restore AR14 in particular.
2008-04-29 12:39:38 -07:00
Maarten Maathuis
f31e04a960
nouveau: NV9x cards exist as well.
2008-04-29 19:34:22 +02:00
Eric Anholt
3ad8db2071
Rename drm_mm.c and its fuctions to drm_memrange.
...
It's not really a graphics memory allocator, just something to track ranges
of address space. It doesn't involve actual allocation, and was consuming
some desired namespace.
2008-04-28 16:54:53 -07:00
Thomas Hellstrom
7f269bec7e
Merge branch 'master' into modesetting-101
...
Conflicts:
linux-core/Makefile.kernel
linux-core/drm_compat.c
linux-core/drm_fops.c
linux-core/drm_lock.c
shared-core/drm.h
shared-core/i915_dma.c
shared-core/i915_drv.h
shared-core/i915_irq.c
2008-04-28 12:10:44 +02:00
Jesse Barnes
7f8e406085
Use fixed sized types in new ioctls
...
Make both crtc and the command argument 32 bits to avoid any 32-on-64 compat
issues.
2008-04-27 09:42:17 -07:00
Jesse Barnes
b45fe49bcd
Enum-ectomy of vblank modesetting ioctl
...
Enum can be of pretty much any size since C leaves the choice of size up to the implementation. So avoid using it in new interfaces like the vblank pre- & post-modeset ioctl. Thanks to hch for spotting this.
2008-04-26 17:11:18 -07:00
Eric Anholt
22877864c2
Add mmap ioctl to mmfs.
2008-04-23 16:22:09 -07:00
Eric Anholt
8c741ed54e
Add pread/pwrite ioctls to mmfs.
2008-04-23 14:25:54 -07:00
Eric Anholt
c1fec43b55
Extend the mmfs basic test to do a couple of ioctls.
2008-04-23 11:36:03 -07:00
Eric Anholt
8665b666c7
Move mmfs.h userland interface to shared-core.
2008-04-23 11:23:40 -07:00
Eric Anholt
47a2b7dc03
Initial add of mmfs module.
2008-04-23 10:42:06 -07:00
Eric Anholt
c82894034f
Clarify that drm_agp_ttm_backend is associated with a drm_ttm.
...
On first looking at it I assumed it was an aspect of the ttm backend as a
whole rather than specific allocations from a backend.
2008-04-23 10:42:06 -07:00
Kristian Høgsberg
55a9941977
Make via compile.
...
Chase the lock to it's new location.
2008-04-23 12:43:52 -04:00
Kristian Høgsberg
33fa02f2d8
Make radeon_ms compile.
...
Remove lock functions and use pci_map_rom() instead of pci_map_rom_copy().
2008-04-23 12:42:26 -04:00
Thomas Hellstrom
10b9a116a7
Don't disable IRQs, just tasklets, when taking the drm lock spinlock.
2008-04-23 17:34:21 +02:00
Jakob Bornecrantz
9ba3aaaa1a
Fixed unlock check on EAGAIN
2008-04-23 12:43:45 +02:00
Xiang, Haihao
feff72929e
i915: fix for compatibility mode
2008-04-23 17:17:16 +08:00
Jesse Barnes
8dc4d4fa1f
i915: allocate devname at init time
...
Since it'll be freed at unload time, we should alloc devname rather than
pointing to the DRIVER_NAME string.
2008-04-22 18:41:28 -07:00
Hong Liu
b57e1f7efd
add sysfs entry for DVO output
...
forget to add it in the previous DVO porting patch.
Signed-off-by: Hong Liu <hong.liu@intel.com>
2008-04-22 18:35:26 -07:00
Hong Liu
8a390e058f
clear interrupt status before install irq
...
On my 865G machine, it seems the CPU will receive interrupt before
irq_postinstall is called. This will cause kernel oops because vblank is not
inited at that time. Clear interrupt status before install seems fixing this
problem.
Signed-off-by: Hong Liu <hong.liu@intel.com>
2008-04-22 18:34:11 -07:00
Hong Liu
c250104c8f
fix removing output_attrs
...
fix a typo in removing output sysfs.
Signed-off-by: Hong Liu <hong.liu@intel.com>
2008-04-22 18:32:39 -07:00
Pekka Paalanen
b3967765c0
linux-core Makefile: add GIT_REVISION
...
This tries to automatically fetch a git revision string and if succeeds,
it #defines GIT_REVISION string macro. Packagers can override it by
'make GIT_REVISION=foo'.
Update Nouveau to use GIT_REVISION, if defined, instead of DRIVER_DATE
in struct drm_driver.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-04-22 22:07:21 +03:00
Dave Airlie
ce8c842518
i915: gfx hw and i945gme fixes from upstream
...
From Jesse and Zhenyu originally.
2008-04-22 16:08:17 +10:00
Keith Packard
f0e38f5217
[I915] Handle tiled buffers in vblank tasklet
...
The vblank tasklet update code must build 2D blt commands with the
appropriate tiled flags.
2008-04-20 16:10:05 -07:00
Keith Packard
21dbba5a22
On I965, use correct 3DSTATE_DRAWING_RECTANGLE command in vblank
...
The batchbuffer submission paths were fixed to use the 965-specific command,
but the vblank tasklet was not. When the older version is sent, the 965 will
lock up.
2008-04-20 01:56:02 -07:00
Hong Liu
21a93915d8
Porting DVO stuff
...
Ported from Xorg intel 2d driver. Changed interfaces definitions, which needed
to be changed later if other device wants to use these DVO stuff.
2008-04-17 11:43:28 -07:00
Thomas Hellstrom
1ad1bd5bd9
Fix buffer object map wait error.
...
Add some branch prediction hints.
2008-04-14 13:52:33 +02:00
Thomas Hellstrom
c5955c6523
Fix buffer object creation validation.
...
BO lock fixes.
2008-04-14 12:14:20 +02:00