Keith Packard
49e8e3372a
Remove drm_driver argument to functions taking drm_gem_object.
...
Now that drm_gem_object has a drm_driver * in it, functions don't need both
parameters.
2008-05-02 10:36:00 -07:00
Keith Packard
5b5b68ffd2
Fix nouveau warning when returning pointers in uint64_t objects.
2008-05-02 10:34:46 -07:00
Keith Packard
0d547c9ed9
Add alignment to all aperture allocation requests.
...
When pinning buffers, or using execbuffer, allow the application to specify
the necessary aperture allocation alignment constraints.
2008-05-01 20:41:55 -07:00
Keith Packard
30efad5113
Fix gem ioctls to be 32/64-bit clean.
...
mixed 32/64 bit systems need 'special' help for ioctl where the user-space
and kernel-space datatypes differ. Fixing the datatypes to be the same size,
and align the same way for both 32 and 64-bit ppc and x86 environments will
elimiante the need to have magic 32/64-bit ioctl translation code.
2008-05-01 20:31:16 -07:00
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