Commit graph

190 commits

Author SHA1 Message Date
Thomas Hellstrom
c97149b45b Fix tt fixed size that slipped through in previous commit. 2006-09-27 09:31:39 +02:00
Thomas Hellstrom
235f6fc650 Adapt to architecture-specific hooks for gatt pages. 2006-09-27 09:27:31 +02:00
Thomas Hellstrom
273eb7833d Add /proc filesystem buffer / fence object accounting.
Check for NULL pointer in the i915 flush handler.
Remove i915_sync_flush declaration.
2006-09-25 11:51:08 +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
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
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
Thomas Hellstrom
99acb79366 Various bugfixes. 2006-09-08 17:24:38 +02:00
Thomas Hellstrom
6042153968 Fence all unfenced buffers function. 2006-09-05 18:00:25 +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
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
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
Thomas Hellstrom
23f01c9fe8 Checkpoint commit. Buffer object flags and IOCTL argument list. 2006-08-29 18:40:08 +02:00
Thomas Hellstrom
0dedfc2cd0 Checkpoint ttm addition to buffer objects. 2006-08-29 14:52:02 +02:00
Thomas Hellstrom
279e8d26c6 64-bit IOCTL integer (Michel Dänzer & Brian Paul) 2006-08-29 10:45:34 +02:00
Thomas Hellstrom
2057406470 Buffer object creation. 2006-08-28 17:51:53 +02:00
Thomas Hellstrom
0d67356de4 Proper TTM dereferencing
Initial buffer object creation.
2006-08-28 16:36:37 +02:00
Thomas Hellstrom
05536a6478 Buffer object idle and mapping synchronization. 2006-08-28 13:51:39 +02:00
Thomas Hellstrom
480ea65ee4 Checkpoint buffer object IOCTL stub. 2006-08-28 10:58:21 +02:00
Thomas Hellstrom
b4b7b99760 Remove the ioctl multiplexing, and instead allow for generic
drm ioctls 0x80 - 0xFF.
2006-08-27 21:16:13 +02:00
Thomas Hellstrom
65e7274008 ttm create / destroy / ref / unref ioctl. 2006-08-27 19:03:20 +02:00
Thomas Hellstrom
c488e25ceb More ioctl stubs.
Buffer object locking order documentation.
2006-08-25 20:03:39 +02:00
Thomas Hellstrom
35c8ce6c29 ttm and buffer objects ioctl stubs. 2006-08-25 19:03:42 +02:00
Thomas Hellstrom
4c03030b12 Checkpoint commit
Buffer object code.
2006-08-25 18:05:35 +02:00