Ian Romanick
8fa24c53f5
Minor clean up of variable declarations in xgi_find_pcie_virt.
2007-06-28 22:32:11 -07:00
Ian Romanick
9c85fb866d
Clean up debug log messages in xgi_find_pcie_block.
2007-06-28 22:26:39 -07:00
Ian Romanick
11ffe4632a
Convert comment header of xgi_find_pcie_virt to kernel doc format.
2007-06-28 22:20:13 -07:00
Ben Skeggs
ce0d528d3c
nouveau/nv50: skeletal backend
2007-06-28 03:26:43 +10:00
Ben Skeggs
695599f18d
nouveau: Nuke DMA_OBJECT_INIT ioctl (bumps interface to 0.0.7)
...
For various reasons, this ioctl was a bad idea.
At channel creation we now automatically create DMA objects covering
available VRAM and GART memory, where the client used to do this themselves.
However, there is still a need to be able to create DMA objects pointing at
specific areas of memory (ie. notifiers). Each channel is now allocated a
small amount of memory from which a client can suballocate things (such as
notifiers), and have a DMA object created which covers the suballocated area.
The NOTIFIER_ALLOC ioctl exposes this functionality.
2007-06-28 03:26:43 +10:00
Ian Romanick
8cee7dca95
Clean up warnings about unused variables and functions.
2007-06-26 13:46:36 -07:00
Ian Romanick
b9ef1467fe
Clean up mixed declarations and code.
2007-06-26 13:39:01 -07:00
Ian Romanick
3547fbda63
Revert over-zealous change from previous commit.
2007-06-26 13:29:28 -07:00
Ian Romanick
3a776fa01e
Add XGI driver to Makefiles.
2007-06-26 13:26:10 -07:00
Ian Romanick
47bf6239aa
Clean up compile-time kernel feature detection.
2007-06-26 13:20:15 -07:00
Ian Romanick
7a053306a9
linux/config.h is deprecated or gone.
2007-06-26 13:16:04 -07:00
Ian Romanick
ec9e494eb9
Gut support for pre-2.6 kernels.
2007-06-26 13:15:22 -07:00
Ian Romanick
434657a258
dos2unix and Lindent
2007-06-26 13:10:30 -07:00
Ian Romanick
7af9d67037
Initial XP10 code drop from XGI.
...
See attachment 10246 on https://bugs.freedesktop.org/show_bug.cgi?id=5921
2007-06-26 13:05:29 -07:00
Ben Skeggs
341bc78207
nouveau: NV1X/2X/3X PFIFO engtab functions
...
Earlier NV1X chips use the NV04 code, see previous commits about NV10 RAMFC
entry size.
2007-06-24 18:58:14 +10:00
Ben Skeggs
05d86d950a
nouveau: NV04 PFIFO engtab functions
2007-06-24 18:57:09 +10:00
Ben Skeggs
f2e64d5276
nouveau: NV4X PFIFO engtab functions
2007-06-24 18:56:01 +10:00
David Woodhouse
638ebbab54
fix radeon setparam on 32/64 systems, harder.
...
Commit 9b01bd5b284bbf519b726b39f1352023cb5e9e69 introduced a
compat_ioctl handler for RADEON_SETPARAM, the sole purpose of which was
to handle the fact that on i386, alignof(uint64_t)==4.
Unfortunately, this handler was installed for _all_ 64-bit
architectures, instead of only x86_64 and ia64. And thus it breaks
32-bit compatibility on every other arch, where 64-bit integers are
aligned to 8 bytes in 32-bit mode just the same as in 64-bit mode.
Arnd has a cunning plan to use 'compat_u64' with appropriate alignment
attributes according to the 32-bit ABI, but for now let's just make the
compat_radeon_cp_setparam routine entirely disappear on 64-bit machines
whose 32-bit compat support isn't for i386. It would be a no-op with
compat_u64 anyway.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
2007-06-18 12:46:00 +10:00
Michel Dänzer
3d5d41fa98
i915: Fix handling of breadcrumb counter wraparounds.
2007-06-15 17:13:11 +02:00
Thomas Hellstrom
84bea38353
Fix i915 sequence mask.
2007-06-15 10:35:52 +02:00
Thomas Hellstrom
3ee31a1f35
Indentation fixes.
2007-06-15 10:31:32 +02:00
Thomas Hellstrom
d34b2c7b9e
Fix refcounting / lock race.
...
Reported by Steve Wilkins / Michel Dnzer.
2007-06-15 10:26:51 +02:00
Thomas Hellstrom
e1b8eabeee
Locking fixes and instrumentation.
2007-06-15 10:26:51 +02:00
Thomas Hellstrom
62082ab3e6
Make sure we read fence->signaled while spinlocked.
2007-06-13 15:38:59 +02:00
Thomas Hellstrom
5156f1c897
Fix fence object deref race.
2007-06-13 15:19:30 +02:00
Thomas Hellstrom
f984b1b8d1
Fix some obvious bugs.
2007-06-12 12:30:33 +02:00
Thomas Hellstrom
b6b5df24b9
Try to make buffer object / fence object ioctl args 64-bit safe.
...
Introduce tile members for future tiled buffer support.
Allow user-space to explicitly define a fence-class.
Remove the implicit fence-class mechanism.
64-bit wide buffer object flag member.
2007-06-12 12:21:38 +02:00
Dave Airlie
280083d4a2
use krh's idr mods to remove lists from idr code
2007-06-10 15:40:21 +10:00
Dave Airlie
7426da7538
oops must fix this properly at some point
2007-06-07 18:45:00 +10:00
Dave Airlie
e22f428f5f
drm: fix radeon setparam alignment issues on 32/64-bit
2007-06-07 18:41:18 +10:00
Dave Airlie
5bd0ca125e
remove include of linux ioctl32.h from drm drivers
2007-06-05 18:16:44 +10:00
root
a4cddc6596
Revert "drm: add new drm_wait_on function to replace macro"
...
This reverts commit 6e860d08d0
.
As I said not a good plan - this macro will have to stay for now,
trying to do the vbl code with the inline was a bit messy - may need specialised
drm wait on functions
2007-06-03 18:12:28 +10:00
Dave Airlie
4e9d215bdf
radeon: add support for vblank on crtc2
...
This add support for CRTC2 vblank on radeon similiar to the i915 support
2007-06-03 16:28:21 +10:00
Dave Airlie
638c8087de
drm: fixup initialisation of list heads and idr
2007-06-01 19:00:24 +10:00
Dave Airlie
056c2f249a
drm: move context handling code to use linux idr
2007-05-27 08:44:38 +10:00
Dave Airlie
f64674743a
drm: convert drawable handling to use Linux idr
...
This cleans this code up a lot and uses the generic Linux idr which is
designed for this.
Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-05-27 07:26:52 +10:00
Michel Dänzer
8e083c522e
drm: make sure the drawable code doesn't call malloc(0).
...
Signed-off-by: Michel Dänzer <michel@tungstengraphics.com>
Signed-off-by: Dave Airlie <airlied@linux.ie>
2007-05-26 04:35:54 +10:00
Dave Airlie
58b2ed7832
Revert "drm/ttm: cleanup mm_ioctl ioctls to be separate ioctls."
...
This reverts commit 3fdef0dc20
.
ditto not on master yet
2007-05-26 03:48:08 +10:00
Dave Airlie
375f3f2884
Revert "drm/ttm: cleanup most of fence ioctl split out"
...
This reverts commit 3dfc1400e9
.
this shouldn't have gone on master yet
2007-05-26 03:47:48 +10:00
Dave Airlie
ce58e53a01
whitespace fixups from kernel
2007-05-26 03:32:34 +10:00
Dave Airlie
adee6f52e6
ati_pcigart: cut to 80 chars
2007-05-26 03:32:34 +10:00
Dave Airlie
3dfc1400e9
drm/ttm: cleanup most of fence ioctl split out
2007-05-26 03:32:34 +10:00
Dave Airlie
3fdef0dc20
drm/ttm: cleanup mm_ioctl ioctls to be separate ioctls.
...
This is the first bunch of ioctls
2007-05-26 03:32:34 +10:00
Dave Airlie
7b48f0022a
drm: cleanup use of Linux list handling macros
...
This makes the drms use of the list handling macros a lot cleaner
and more along the lines of how they should be used.
2007-05-26 04:26:24 +10:00
Stephane Marchesin
ea98d7e796
nouveau: don't build the module by default
2007-05-17 17:35:51 +02:00
Dave Airlie
b2a875ba89
ttm: complete drm buffer object ioctl split
...
retain the op operation for validate/fence operations
2007-05-08 18:25:15 +10:00
Dave Airlie
ae677472af
drm/ttm: remove old fence ioctl
2007-05-08 17:55:57 +10:00
Dave Airlie
25c51f539f
drm/ttm: ioctl cleanup for buffer object - user side only
...
This just cleans up the xf86drm.c to what I want and drm.h,
I need to fix up the kernel internals to suit these changes now.
I've moved to using struct instead of typedefs for the bo and it doesn't look
that bad so I'll do the same thing for mm and fence..
2007-05-08 17:53:58 +10:00
Brian
c4e2caec44
s/OJBECTS/OBJECTS/
2007-05-06 10:09:59 -06:00
Dave Airlie
6a62941eca
drm/ttm: cleanup most of fence ioctl split out
2007-05-06 11:35:11 +10:00
Dave Airlie
ee8954cb53
drm/ttm: cleanup mm_ioctl ioctls to be separate ioctls.
...
This is the first bunch of ioctls
2007-05-06 11:17:30 +10:00
Dave Airlie
c9cd2c768b
drm: remove unused define DRM_HAS_TTM
2007-05-06 10:50:10 +10:00
Dave Airlie
6e860d08d0
drm: add new drm_wait_on function to replace macro
2007-04-28 15:07:43 +10:00
Dave Airlie
e9b3acd257
remove register usage
2007-04-28 15:07:43 +10:00
Dave Airlie
9f9c19065c
remove DRM_GETSAREA and replace with drm_getsarea function
2007-04-28 15:07:43 +10:00
George Sapountzis
3a2c9f4621
linux: minor indent.
2007-04-26 14:16:28 +03:00
Dave Airlie
afc029e935
whitespace cleanup
2007-04-26 16:25:43 +10:00
Dave Airlie
e5c1f1caa2
remove some whitespace violation
2007-04-26 16:22:28 +10:00
Dave Airlie
4b72759b30
drm: nopfn warning on 64-bit
2007-04-26 16:22:11 +10:00
Jesse Barnes
71d44cda52
drm/ttm: allow drm_buffer_object_create to be used in-kernel
2007-04-26 16:09:24 +10:00
Jesse Barnes
3c384a9ad5
Add new buffer object type for kernel allocations that don't initially have a user mapping.
...
(cherry picked from commit 2e21779992
)
2007-04-26 16:04:09 +10:00
Kristian Høgsberg
af3ffcd822
Initialize rwlock using rwlock_init to appease lockdep validator.
2007-04-20 18:06:31 -04:00
Thomas Hellstrom
a8a8108e45
Avoid a fence timeout problem when a signal is pending.
2007-04-20 15:57:41 +02:00
Thomas Hellstrom
1ce9c09231
Fix via compile error
...
(Reported by Benno Schulenberg.)
2007-04-20 15:49:31 +02:00
Thomas Hellstrom
2df2c70e20
Simplify the ttm backend interface and the agp ttm backend.
2007-04-18 16:33:28 +02:00
Thomas Hellstrom
5a96d59ce9
Don't always free up memory space when we unpin buffers.
2007-04-17 14:15:37 +02:00
Thomas Hellstrom
5432cc4abf
Fix buffer object reference problems.
...
(Reported by Dave Airlie).
2007-04-17 10:53:19 +02:00
Thomas Hellstrom
e91ceff6c9
Add a code comment.
2007-04-17 08:46:45 +02:00
Thomas Hellstrom
e6e4946c82
Require the hardware lock for buffer creation
...
(since that implies a validate).
Fix drm_bo_wait_unfenced error messages and codes.
Fix some return codes from libdrm.
2007-04-16 16:23:05 +02:00
Dave Airlie
a70f8e0ab2
radeon: add support for reverse engineered xpress200m
...
The IGPGART setup code was traced using mmio-trace on fglrx by myself
and Phillip Ezolt <phillipezolt@gmail.com> on dri-devel.
This code doesn't let the 3D driver work properly as the card has no
vertex shader support.
Thanks to Matthew Garrett + Ubuntu for providing me some hardware to do this
work on.
2007-04-09 21:52:59 +10:00
Dave Airlie
b25558bb73
fixup install target, not sure what I was smokin...
2007-04-07 07:21:05 +10:00
Dave Airlie
9c79371659
add an install target to the drm modules makefile
2007-04-05 11:18:00 +10:00
Thomas Hellstrom
c496827921
Fix user object reference when caller is not object creator.
...
(Reported by Dave Airlie).
2007-04-03 10:54:23 +02:00
Thomas Hellstrom
38d18acb8f
Add a fence flush event to each fence-signaled check when lazy-waiting
...
to make sure we don't lose any sequence numbers if, for some reason,
they don't generate an IRQ.
2007-04-03 10:29:15 +02:00
Thomas Hellstrom
7743af9449
Evicted no-move buffers can get lost if they end up in another
...
memory type than local.
2007-04-03 10:29:14 +02:00
Thomas Hellstrom
d85e243259
Fix an oops when trying to clean a not yet initialized memory type.
2007-04-03 10:29:14 +02:00
Thomas Hellstrom
72d457fc19
Make sure CMA (Can't map aperture) pages are mapped uncached.
...
(Should really make this write-combined using PATs, at some point).
2007-04-03 10:29:14 +02:00
Dave Airlie
3f70518f0b
drm/bo: avoid oops if the memory manager for this type isn't initialised
2007-03-29 09:25:04 +10:00
Dave Airlie
81b811da37
drm/i915: set the bo up at firstopen time not after DMA init
...
This is required to use TTM to allocate the ring buffer.
2007-03-27 18:01:31 +10:00
Dave Airlie
72a1190f6d
drm/ttm: make sure dev_mapping is set-up for the first opener of the drm
...
This was causing an oops in my miniglx code to try and use a TTM-only setup.
2007-03-27 17:59:30 +10:00
Ben Skeggs
674cefd4fe
nouveau: move card initialisation into the drm
...
The PGRAPH init for the various cards will need cleaning up at some point,
a lot of the values written there are per-context state left over from the
all the hardcoding done in the ddx.
It's possible some cards get broken by this commit, let me know.
Tested on: NV5, NV18, NV28, NV35, NV40, NV4E
2007-03-26 20:59:37 +10:00
Dave Airlie
5ad43f4675
vm: cleanup drm_vm.c along lines of cleanups queued for kernel
2007-03-24 17:58:27 +11:00
Dave Airlie
8d918b0b63
cleanup more whitespace from ttm merge
2007-03-23 14:56:39 +11:00
Dave Airlie
39795501a8
drm: remove second spinlock init for tasklet lock
2007-03-23 14:56:28 +11:00
Dave Airlie
209870a882
rename badly named define
2007-03-20 10:13:58 +11:00
Alan Hourihane
ef71b6230b
remove i830 reference
2007-03-19 11:46:35 +00:00
Alan Hourihane
cbe31d0dc7
Remove old i830 kernel driver.
2007-03-19 11:46:35 +00:00
Dave Airlie
1e77e52755
more return values fixup
2007-03-19 09:20:04 +11:00
Dave Airlie
46fac17082
fixup return values in drm ioctl
2007-03-19 09:12:08 +11:00
Dave Airlie
c991f8e049
cleanup ioctl expansion code
2007-03-19 08:46:39 +11:00
Dave Airlie
a2e3bae8e2
oops missing else
2007-03-19 08:46:25 +11:00
Dave Airlie
bbb6fc9307
make drm fops const from kernel
2007-03-19 08:36:01 +11:00
Dave Airlie
483f6a113d
use ARRAY_SIZE
2007-03-19 08:32:25 +11:00
Dave Airlie
2d7ecb8422
more tab/space conversion
2007-03-19 08:29:07 +11:00
Dave Airlie
2463b03cb4
whitespace cleanup pending a kernel merge
2007-03-19 08:23:43 +11:00
Dave Airlie
6c4428d40c
clean up more of inline functions agp_remap/drm_lookup_map
2007-03-19 08:09:21 +11:00
Dave Airlie
27197d7836
deinline agp_remap along lines of kernel
2007-03-18 21:45:07 +11:00
Dave Airlie
c4808e206b
remove drm_lookup_map unused now
2007-03-18 21:42:48 +11:00
Maarten Maathuis
6a60b47d12
replace instance of SA_SHIRQ with IRQF_SHARED
...
backwards compat added by airlied
2007-03-11 12:13:58 +11:00
Dave Airlie
c9178c3d01
ati: make pcigart code able to handle variable size PCI GART aperture
...
This code doesn't enable a variable aperture it just modifies the codebase
to allow me fix it up later
2007-03-04 18:16:29 +11:00
Jay Estabrook
6a51da7325
Fix Alpha domain/bus issue
2007-02-27 08:56:20 +00:00
Thomas Hellstrom
80468e7532
Fix build for 2.6.21-rc1.
...
The vm subsystem of 2.6.21 is fully compatible with the buffer object
vm code.
2007-02-26 18:17:54 +01:00
Thomas Hellstrom
2b7a9afa09
Some fencing cleanup.
2007-02-22 17:04:20 +01:00
Dave Airlie
a253de2fcf
drm: remove last usage of VM_OFFSET
2007-02-18 17:59:40 +11:00
Thomas Hellstrom
6d8ed5aedd
Leftover files from previous commit.
2007-02-16 20:25:26 +01:00
Thomas Hellstrom
e0f53e59be
Simple fence object sample driver for via, based on idling the GPU.
...
Buffer object driver for via.
Some changes to buffer object driver callbacks.
Improve fence flushing.
2007-02-16 20:22:24 +01:00
Thomas Hellstrom
7766378d97
Initial support for fence object classes.
...
(Fence objects belonging to different command submission mechanisms).
2007-02-15 12:11:38 +01:00
Michel Dänzer
7803977aa9
Fix build against older kernels.
2007-02-15 09:26:16 +01:00
Thomas Hellstrom
a78f70faad
Merge branch 'ttm-vram-0-1-branch'
2007-02-14 15:33:40 +01:00
Thomas Hellstrom
35eb12d8bf
Fix multiple spinlock unlocking
2007-02-14 15:32:08 +01:00
Thomas Hellstrom
1345076c8f
Rename drm_ttm.h to drm_objects.h
...
Fix up some header incompatibilities in drm_fence.c caused by the previous
commit.
2007-02-14 14:10:10 +01:00
Thomas Hellstrom
8ffc1844b0
Move fence- and buffer-object related header stuff to drm_ttm.h
2007-02-14 14:05:40 +01:00
Thomas Hellstrom
5c9a7b0f94
Remove an intel-specific hack and replace it with a fence driver callback.
2007-02-14 13:31:35 +01:00
Thomas Hellstrom
04760563b8
Set the drm bus map type for each buffer object memory type.
2007-02-14 12:39:02 +01:00
Thomas Hellstrom
7bcb62b45d
Rework buffer object vm code to use nopfn() for kernels >= 2.6.19.
2007-02-14 10:49:37 +01:00
Thomas Hellstrom
6b289db054
Remove debug printout.
2007-02-13 20:47:30 +01:00
Thomas Hellstrom
e1460426b8
Bugzilla Bug #9457
...
Add refcounting of user waiters to the DRM hardware lock, so that we can use the
DRM_LOCK_CONT flag more conservatively.
Also add a kernel waiter refcount that if nonzero transfers the lock for the kernel context,
when it is released. This is useful when waiting for idle and can be used
for very simple fence object driver implementations for the new memory manager.
It also resolves the AIGLX startup deadlock for the sis and the via drivers.
i810, i830 still require that the hardware lock is really taken so the deadlock remains
for those two. I'm not sure about ffb. Anyone familiar with that code?
2007-02-13 20:47:30 +01:00
Thomas Hellstrom
9efdae317c
More bugfixes.
...
Fixed memory, pinned buffers and unmappable memory now seems
fully functional.
2007-02-13 20:05:32 +01:00
Adam Jackson
5bd13c5e15
Fix some outdated URLs, remove others.
2007-02-12 15:45:51 -05:00
Thomas Hellstrom
398913dc0e
Lindent.
2007-02-12 20:34:50 +01:00
Thomas Hellstrom
b0c5339ed6
More bugfixes.
2007-02-12 20:32:03 +01:00
Thomas Hellstrom
f02f83ee08
Cleanup and fix support for pinned buffers.
2007-02-12 17:47:57 +01:00
Thomas Hellstrom
85ee2a8d04
Various bugfixes.
2007-02-10 12:06:36 +01:00
Thomas Hellstrom
53aee3122a
I915 accelerated blit copy functional.
...
Fixed - to System memory copies are implemented by
flipping in a cache-coherent TTM,
blitting to it, and then flipping it out.
2007-02-09 16:36:53 +01:00
Thomas Hellstrom
57df398072
Reinstate some LRU handling.
2007-02-09 12:43:18 +01:00
Thomas Hellstrom
d32b21e016
Remove some code that should have gone in
...
commit 6a49d9a8ab
2007-02-09 00:11:53 +01:00
Thomas Hellstrom
99acdaee48
Fix copyright statements.
2007-02-09 00:07:29 +01:00
Thomas Hellstrom
6a49d9a8ab
Fix evict_mutex locking range.
...
Implement unmappable buffers. (fault moves them to mappable when needed).
Various bugfixes.
2007-02-09 00:02:02 +01:00
Thomas Hellstrom
b2bcbf874b
Add an accelerated buffer copy cleanup helper.
...
Export helper functions and make some important buffer-object functions non-static.
Add an i915 accelerated blit buffer move for pci memory buffers.
2007-02-08 21:28:33 +01:00
Thomas Hellstrom
a0ed808d05
Don't create a ttm just to copy from.
2007-02-08 19:06:39 +01:00
Thomas Hellstrom
bf8f46d4c6
Fix mm_block leak.
...
Some other minor fixes.
2007-02-08 18:59:02 +01:00
Thomas Hellstrom
e4b2da4406
A minor function interface change and some memcpy bugfixing.
...
Hooray!! it sort of works with a fixed AGP area as faked VRAM.
2007-02-08 16:21:38 +01:00
Thomas Hellstrom
1257907fa9
Simplify external ttm page allocation.
...
Implement a memcpy fallback for copying between buffers.
2007-02-08 13:29:08 +01:00
Thomas Hellstrom
09984ad77b
Update memory compatibility tests.
...
Now only pinned buffers are broken.
2007-02-08 11:55:24 +01:00
Thomas Hellstrom
c1fbd8a566
Checkpoint commit.
...
Flag handling and memory type selection cleanup.
glxgears won't start.
2007-02-07 17:25:13 +01:00
Thomas Hellstrom
af24465b2e
Fix a stray unlock_kernel() in drm_vm.c
...
Add a file for memory move helpers, drm_bo_move.c
Implement generic memory move.
Cached, no_move and unmapped memory temporarily broken.
2007-02-07 12:52:23 +01:00
Thomas Hellstrom
71b9e876f9
Simplify pci map vs no pci map choice.
2007-02-06 16:59:45 +01:00
Thomas Hellstrom
40ce53dfde
Implement a drm_mem_reg_t substructure in the buffer object type.
2007-02-06 15:56:43 +01:00
Thomas Hellstrom
609e3b0375
Implement a policy for selecting memory types.
2007-02-06 14:20:33 +01:00
Thomas Hellstrom
2d962332de
i915: Add copy-blit operation.
2007-02-05 16:13:32 +01:00
Stephane Marchesin
ebf22aed9a
nouveau: add missing nv04_graph.c symlink.
2007-02-03 06:02:12 +01:00
Stephane Marchesin
d69902db3b
nouveau: fix nv04 graph routines for new register names.
2007-02-03 05:25:36 +01:00
Thomas Hellstrom
63f2abd721
Make also later kernels work with buffer object vm
...
and clean up some function names.
2007-02-02 19:49:11 +01:00
Thomas Hellstrom
c269d560e4
Make vm handle buffer objects instead of ttm objects.
...
Remove ttm objects.
Make vm aware of PCI memory type buffer objects.
(Only works for pre 2.6.16 kernels for now).
2007-02-02 14:47:44 +01:00
Thomas Hellstrom
dd733dea38
Fix missing ttm_open_vma call from previous commit.
...
Honour the ttm backend cant-use-aperture flag.
2007-02-01 13:19:05 +01:00
Thomas Hellstrom
9677c5ecc6
Prepare for removal of the ttm_object type.
2007-02-01 10:53:55 +01:00
Thomas Hellstrom
333c6af47a
Protect drm_mmap against disappearing maps.
...
The map lists and hash tables are protected using dev->struct_mutex,
but drm_mmap strangely never locked this mutex.
2007-02-01 00:38:57 +01:00
Thomas Hellstrom
3024f23c65
memory manager: Make device driver aware of different memory types.
...
Memory types are either fixed (on-card or pre-bound AGP) or not fixed
(dynamically bound) to an aperture. They also carry information about:
1) Whether they can be mapped cached.
2) Whether they are at all mappable.
3) Whether they need an ioremap to be accessible from kernel space.
In this way VRAM memory and, for example, pre-bound AGP appear
identical to the memory manager.
This also makes support for unmappable VRAM simple to implement.
2007-01-31 14:50:57 +01:00
Thomas Hellstrom
36d50687dd
Fix an error-path oops.
2007-01-31 11:03:53 +01:00
Thomas Hellstrom
d399fcf46f
Add a buffer object transfer function.
...
Creates a placeholder for the old buffer contents
when it is transfered to / from static memory like VRAM.
2007-01-30 16:20:23 +01:00