Commit graph

2262 commits

Author SHA1 Message Date
Roland Scheidegger
1f71b8d7a4 do a TCL state flush before accessing VAP_CNTL to prevent lockups on r200 when enabling/disabling vertex programs 2006-09-20 19:44:57 +02:00
Thomas Hellstrom
fa511a3ff5 Allow for 64-bit map handles of ttms and buffer objects. 2006-09-20 16:31:15 +02:00
Thomas Hellstrom
aac918e7c7 Fence handler fix 2006-09-18 21:50:00 +02:00
Thomas Hellstrom
ca1b15d645 Alternative implementation of page table zeroing using zap page_range.
(Disabled for now)
Fix bo_wait_idle bug.
Remove stray debug message.
2006-09-18 20:43:31 +02:00
Thomas Hellstrom
c4fad4c961 More verbose error reporting in some cases.
Add a buffer object waitIdle user-space function.
Fix some names and minor glitches.
2006-09-18 16:02:33 +02:00
Dave Airlie
ef98a8e20d drm: put domain number back to 0, domain support is seriously fubar.. 2006-09-18 21:23:34 +10:00
Ben Skeggs
22382bd8c5 Add pciid for GeForce Go 6150 (0x0244). 2006-09-17 13:00:27 +10:00
Michel Dänzer
6ba9127753 Use register writes instead of BITBLT_MULTI packets for buffer swap blits.
This takes up two more ring buffer entries per rectangle blitted but makes sure
the blit is performed top to bottom, reducing the likelyhood of tearing.
2006-09-15 16:55:40 +02:00
Thomas Hellstrom
f613022cee Allow a "native type" to be associated with a fence sequence.
In the intel case, we can associate a flush with a sequence.
2006-09-15 16:47:09 +02:00
Thomas Hellstrom
49fbeb339c Some bugfixes.
Change the fence object interface somewhat to allow some more flexibility.
Make list IOCTLS really restartable.
Try to avoid busy-waits in the kernel using immediate return to user-space with an -EAGAIN.
2006-09-15 11:18:35 +02:00
Thomas Hellstrom
7223b4e264 Simplify ttm alloc and free. 2006-09-14 16:42:00 +02:00
Thomas Hellstrom
682c6ed029 Remove the use of reserved pages, and use locked pages instead.
Update compatibility for latest linux versions.
2006-09-14 12:17:38 +02:00
Thomas Hellstrom
9adc9584a7 Fix some debug messages. 2006-09-12 17:39:44 +02:00
Thomas Hellstrom
861b26578c Use lazy fence wait when possible even for RW fences. Saves some CPU.
Lindent.
2006-09-12 16:28:34 +02:00
Thomas Hellstrom
191e284709 More bugfixes.
Disable the i915 IRQ turnoff for now since it seems to be causing problems.
2006-09-12 12:01:00 +02:00
Dave Airlie
3cc64a943a drm: use radeon specific names for radeon flags 2006-09-12 06:13:14 +10:00
Ben Skeggs
aa80e2f48f Add copyright notices while I still remember.. 2006-09-09 07:35:55 +10:00
Thomas Hellstrom
99acb79366 Various bugfixes. 2006-09-08 17:24:38 +02:00
Ben Skeggs
0ef29768ca Fix second start of X server without module reload beforehand, and a couple of other fixes.
- Mark the correct RAMIN slots as free (oops)
- Remove a VRAM alloc that shouldn't have been there (oops)
- Move HT init out of firstopen() and into dma_init()
- Setup PFIFO_RAM{HT,FC,RO} in pfifo_init()
2006-09-07 23:59:19 +10:00
Eric Anholt
dddacd7a3a Use the DRM_INIT_WAITQUEUE argument (needed on Linux) to avoid a warning. 2006-09-06 23:26:50 -07:00
Eric Anholt
55057660f0 Put the PCI device/vendor id in the drm_device_t.
This helps us unbreak FreeBSD DRM from the 965 changes.
2006-09-06 23:25:14 -07:00
Eric Anholt
d572676185 Add a typedef for u64. 2006-09-06 23:08:29 -07:00
Stephane Marchesin
d89c623f8e Remove a 64 bit div. 2006-09-07 00:35:17 +02:00
Wang Zhenyu
e2ea72187e Adding pci id for Crestline 2006-09-06 22:57:17 +08:00
Thomas Hellstrom
e3f54ecdd9 Multithreaded application note. 2006-09-05 19:36:45 +02:00
Thomas Hellstrom
6042153968 Fence all unfenced buffers function. 2006-09-05 18:00:25 +02:00
Thomas Hellstrom
034fc31292 i915: Only turn on user IRQs when they are needed. 2006-09-05 14:23:18 +02:00
Thomas Hellstrom
8c613a8363 Fix memory cache initialization. 2006-09-05 11:00:52 +02:00
Thomas Hellstrom
f88c32fd4c Libdrm function headers. Some renaming. 2006-09-04 22:05:21 +02:00
Thomas Hellstrom
550f51b4bf Buffer object wait IOCTL operation.
Remove option to wait for fence / buffers and block signals.
2006-09-04 21:50:12 +02:00
Thomas Hellstrom
a6b8e3eaf4 Make memory caches global so that they can be used with
multiple heads.
2006-09-04 16:57:20 +02:00
Ben Skeggs
b119966ae6 Allow cmdbuf location(AGP,VRAM) and size to be configured. 2006-09-03 06:36:06 +10:00
Ben Skeggs
97291a6ad0 Use DMA_IN_MEMORY for DMA objects. This is needed for a DDX change that will
be committed soon after this.  Without the change, MEMFORMAT_DMA_OUT appears
to have no effect.
2006-09-02 22:25:26 +10:00
Thomas Hellstrom
a96b61fdc4 Lindent drm_bo.c 2006-09-01 18:11:34 +02:00
Thomas Hellstrom
405b5d9ca8 Flag bit pattern bugfixes. Remove some error messages. 2006-09-01 18:11:05 +02:00
Thomas Hellstrom
ef8e618cf3 Export buffer info on map and validate ioctls.
Add an info ioctl operation.
2006-09-01 16:38:06 +02:00
Thomas Hellstrom
11f51a9a87 Bugfixes,
Memory allocation optimizations.
Buffer manager takedown.
2006-09-01 15:41:55 +02:00
Thomas Hellstrom
4edb95d6e0 Various bugfixes. 2006-09-01 11:23:21 +02:00
Thomas Hellstrom
44f6d08988 Validation and fencing. 2006-08-31 21:42:29 +02:00
Thomas Hellstrom
03c137c5f8 Remove the buffer manager mutex. Use dev->struct_mutex instead.
Add a function to free buffers on hold for destruction if their
  fence object has expired.
Add a timer to periodically call that function when there are
  buffers pending deletion.
2006-08-31 15:36:40 +02:00
Thomas Hellstrom
ec8c79b79d More mapping synchronization.
libdrm validate and fencing functions.
2006-08-31 14:10:13 +02:00
Thomas Hellstrom
ed9de124cc Lindenting drm_bo.c and drm_ttm.c 2006-08-30 21:31:38 +02:00
Thomas Hellstrom
914a77a15a Buffer object binding.
Some code reordering.
2006-08-30 21:30:47 +02:00
Thomas Hellstrom
611662ab28 Buffer eviction.
Reworked map refcounting so that any process waiting on buffer object unmap
will allow in other processes to unmap the buffer object.
2006-08-30 20:23:40 +02:00
Thomas Hellstrom
d39055174b Remove the buffer object hint field and use it only
as an argument.
Validate stub.
2006-08-30 17:40:07 +02:00
Thomas Hellstrom
ff95ea5536 Add missing map flags. 2006-08-30 15:11:50 +02:00
Thomas Hellstrom
14a835be61 Buffer object mapping and mapping synchronization for multiple clients. 2006-08-30 15:08:40 +02:00
Thomas Hellstrom
e47a4fda2e Memory manager init and takedown. 2006-08-30 13:04:08 +02:00
Thomas Hellstrom
033bda07e9 Buffer object reply fill in.
Lindent of drm_bo.c drm_ttm.c
2006-08-30 09:57:35 +02:00
Ben Skeggs
24dddc2754 Add stub {get,set}param ioctls. 2006-08-30 16:55:02 +10:00