Commit graph

3603 commits

Author SHA1 Message Date
Ben Skeggs
6abbbb2f4f Fill fence sequence after emit ioctl. 2007-11-05 04:44:40 +11:00
Ben Skeggs
0a2ab1a900 nouveau: cleanups 2007-11-05 03:53:46 +11:00
Ben Skeggs
c1008104ad nouveau: only pass annoying messages if irq isn't handled fully. 2007-11-05 02:48:50 +11:00
Ben Skeggs
dfa449cf9a nouveau: vram is bar1 2007-11-05 02:32:46 +11:00
Ben Skeggs
173a5be28f nouveau: hook up an inital fence irq handler 2007-11-05 02:20:35 +11:00
Ben Skeggs
9a999e57af nouveau: crappy ttm mm init, disabled for now. 2007-11-05 01:20:32 +11:00
Dave Airlie
a2e8e294d8 drm: fix oops since user objects.. 2007-11-04 11:01:27 +11:00
Jeremy Kolb
998d120a47 nouveau: add darktama's email address to authors section. 2007-11-02 19:47:48 -04:00
Jeremy Kolb
2dc2ee7a5a nouveau: put it all together. 2007-11-02 19:47:48 -04:00
Jeremy Kolb
c1aa08106e nouveau: Add darktama's fencing code. Restructure some stuff. 2007-11-02 19:47:48 -04:00
Jeremy Kolb
2c6cbea7de nouveau: incorporate darktama's buffer object work. 2007-11-02 19:47:47 -04:00
Jeremy Kolb
239e81093f nouveau: more filling in for ttm. Change copyright since it's based off of radeon code. 2007-11-02 19:47:47 -04:00
Thomas Hellstrom
9906c7e54b Merge branch 'master' into modesetting-101 2007-11-02 16:07:36 +01:00
Thomas Hellstrom
94c22c3349 User buffer support. 2007-11-02 16:05:25 +01:00
Thomas Hellstrom
c06808fb65 Return fence errors.
Time out properly in the presence of signals.
2007-11-02 15:52:00 +01:00
Dave Airlie
bb5f2158db radeon: set the address to access the aperture on the CPU side correctly
This code relied on the CPU and GPU address for the aperture being the same,
On some r5xx hardware I was playing with I noticed that this isn't always true.
I wonder if this will fix some of those r4xx DRI issues we've seen in the past.
2007-11-03 00:39:44 +10:00
Jesse Barnes
629c8b0dbf Merge branch 'master' into modesetting-101
Conflicts:

	linux-core/Makefile.kernel
	linux-core/drm_stub.c
	linux-core/i915_drv.c
	shared-core/i915_dma.c
	shared-core/i915_drv.h

Fixup suspend/resume conflicts (basically use what's in DRM master for now).
Also fix up a few other conflicts that snuck in (i915_dma changes etc.).
2007-11-01 15:27:55 -07:00
Jesse Barnes
128a8f7ea2 Use unsigned long instead of u64 in drm_modeset_ctl_t
A bad idea, ABI-wise, but we're going to be changing this structure anyway
before we merge upstream, so just fix the build for now.
2007-11-01 15:02:26 -07:00
Jesse Barnes
00d6026557 Cleanup vblank_init and fix drm_irq_install
The vblank_init function wanted a couple of cleanups.

Also, drm_irq_install wasn't checking the new return value of irq_postinstall.
If it returns a failure, assume IRQs didn't get set up and take appropriate
action.
2007-11-01 12:50:03 -07:00
Stephane Marchesin
5766d81074 nouveau: don't use AGP on PPC. It's a hopeless case. 2007-11-01 15:49:10 +01:00
Jeremy Kolb
1b176e7613 nouveau: add missing file. 2007-10-31 21:27:00 -04:00
Jeremy Kolb
9416541fb2 Merge branch 'master' of git+ssh://git.freedesktop.org/git/mesa/drm 2007-10-31 20:14:48 -04:00
Jeremy Kolb
31847b4b62 nouveau: ttm stubs 2007-10-31 20:13:01 -04:00
Dave Airlie
61cbcb5dbe drm/ttm: add support for cached un-snooped mappings.
This mapping allows cached objects to be mapped in/out of the TT space
with the appropriate flushing calls.

It should put back the old CACHED functionality for snooped mappings
2007-11-01 10:34:53 +11:00
Dave Airlie
6b0b2546c2 i915: fix compat code on 965/g33 2007-11-01 02:00:36 +10:00
Dave Airlie
17f0882d50 drm: add chipset flushing via agp support 2007-10-31 11:33:34 +11:00
Dave Airlie
2489062a33 i915: add backwards compat chipset flushing code 2007-10-31 11:27:44 +11:00
Dave Airlie
c106a7d8b9 drm: call driver load after initing agp subsystem 2007-10-31 11:21:05 +11:00
Jesse Barnes
91aae7e683 Merge branch 'master' into vblank-rework, fixup remaining drivers
Conflicts:

	linux-core/drmP.h
	linux-core/drm_drv.c
	linux-core/drm_irq.c
	shared-core/i915_drv.h
	shared-core/i915_irq.c
	shared-core/mga_drv.h
	shared-core/mga_irq.c
	shared-core/radeon_drv.h
	shared-core/radeon_irq.c

Merge in the latest master bits and update the remaining drivers (except
mach64 which math_b is working on).  Also remove the 9xx hack from the i915
driver; it seems to be correct.
2007-10-30 12:52:46 -07:00
Stephane Marchesin
79744d730c Nouveau: add a comment about SKIPS for next API breakage. 2007-10-30 16:55:17 +01:00
Stephane Marchesin
0cebcd43dd Nouveau: fold some loops. 2007-10-30 16:54:57 +01:00
Dave Airlie
50dec29c80 drm/i915: add driver cache flush entry point
Use clflush on Intel hardware to flush cached objects.
2007-10-30 17:52:13 +10:00
Kristian Høgsberg
ff5889f831 Move struct drm_drawable_info out of public header file. 2007-10-29 19:32:46 -04:00
Jesse Barnes
6342e0507b Remove unused memory save areas
These need to be kmalloc'd separately anyway or we may hit kmalloc size
limits.
2007-10-29 10:51:11 -07:00
Stephane Marchesin
cc745fcc3a nouveau: don't touch PMC_BOOT_1 on x86, it seems to be undefined on some early cards. 2007-10-28 01:59:39 +02:00
Jerome Glisse
90d8f79279 Merge branch 'radeon-ttm' of git://people.freedesktop.org/~airlied/drm into modesetting-101
Conflicts:

	linux-core/Makefile.kernel
	linux-core/drmP.h
	shared-core/radeon_cp.c
	shared-core/radeon_drv.h
	shared-core/radeon_irq.c

	modified:   linux-core/Makefile.kernel
	modified:   linux-core/ati_pcigart.c
	modified:   linux-core/drmP.h
	new file:   linux-core/radeon_buffer.c
	modified:   linux-core/radeon_drv.c
	new file:   linux-core/radeon_fence.c
	modified:   shared-core/radeon_cp.c
	modified:   shared-core/radeon_drm.h
	modified:   shared-core/radeon_drv.h
	modified:   shared-core/radeon_irq.c
	modified:   tests/ttmtest/src/ttmtest.c
2007-10-28 00:55:27 +02:00
Jesse Barnes
1e2a2babab i915: suspend/resume support
Add suspend/resume support to the i915 driver.  Moves some of the
initialization into the driver load routine, and fixes up places where we
assumed no dev_private existed in some of the cleanup paths.  This allows
us to suspend/resume properly even if X isn't running.
2007-10-26 16:10:02 -07:00
Jesse Barnes
6707ab8626 update DRM sysfs support
Make DRM devices use real Linux devices instead of class devices, which are
going away.  While we're at it, clean up some of the interfaces to take
struct drm_device * or struct device * and use the global drm_class where
needed instead of passing it around.
2007-10-26 16:08:54 -07:00
Stephane Marchesin
b9d8ddd3ca nouveau: flip the CHECK_STATE bit off on nv30. This lets you do 8-bit surface destination. 2007-10-26 15:12:04 +02:00
Thomas Hellstrom
343696583c Merge branch 'master' into modesetting-101 2007-10-26 10:33:42 +02:00
Thomas Hellstrom
a4c87d3796 Minor libdrm fixes. 2007-10-26 10:31:14 +02:00
Thomas Hellstrom
1681189e11 Buffer flags and masks are 64-bit.
don't mask off the high dword.
Signed-off-by: Thomas Hellstrom <thomas-at-tungstengraphics-dot-com>
2007-10-26 10:27:30 +02:00
Thomas Hellstrom
26c32a3d79 Buffer flags and masks are 64-bit.
don't mask off the high dword.
2007-10-26 10:25:57 +02:00
Ian Romanick
7e9ea55a2f Initial pass at porting MGA to vblank-rework
This is currently only compile tested.
2007-10-25 17:14:53 -07:00
Thomas Hellstrom
9adf8c0256 Merge branch 'master' into modesetting-101
Conflicts:

	linux-core/Makefile.kernel
	linux-core/drm_bo.c
	linux-core/drm_objects.h
2007-10-25 11:00:45 +02:00
Thomas Hellstrom
b9d9c30474 Tighten permissions on some buffer manager ioctls.
Set bo init minor to 0.
Add the version function to header.
2007-10-25 10:29:15 +02:00
Thomas Hellstrom
11f3e5e53f Buffer manager:
Implement a version check IOCTL for drivers that don't use
drmMMInit from user-space.
Remove the minor check from the kernel code. That's really up
to the driver.
Bump major.
2007-10-25 10:12:21 +02:00
Thomas Hellstrom
b5cad27e05 Fix buffer object flag / mask checking. 2007-10-25 09:49:33 +02:00
Thomas Hellstrom
07706c9b79 Merge branch 'master' into drm-ttm-finalize 2007-10-25 09:24:45 +02:00
Dave Airlie
a70fe82baf i915: relocate buffers before validation add memory barrier between two 2007-10-25 16:53:18 +10:00