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
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
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
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
Roel Kluin
07abc3384e
missing mutex unlock bug
2007-10-25 16:50:23 +10:00
Thomas Hellstrom
3d4b32e916
Remove duplicate file.
2007-10-22 19:16:39 +02:00
Thomas Hellstrom
824330d0e6
Don't clobber the unfenced list with DONT_FENCE operations.
2007-10-22 19:09:36 +02:00
Thomas Hellstrom
4ebe7471cb
Disable i915 accelerated blit copy moves for now until we can
...
guarantee that it doesn't clash with the X server.
2007-10-21 12:31:00 +02:00
Thomas Hellstrom
3b19b50cb5
Remove the need for the hardware lock in the buffer manager.
...
Add interface entry cleaning a memory type without touching NO_EVICT buffers.
2007-10-21 12:20:56 +02:00
Thomas Hellstrom
48b5eaf303
Simple replacement for hardware lock in some cases.
...
Fix i915 since last commit.
2007-10-20 16:49:43 +02:00
Thomas Hellstrom
c0e3537e77
Some comment updates pending removal of the init mutex.
2007-10-19 16:44:12 +02:00
Thomas Hellstrom
733ff56834
No fence_class argument on drmBOSetStatus since it's not
...
associated with a particular command submission.
2007-10-19 16:28:47 +02:00
Thomas Hellstrom
cf2d1bba55
Remove the clean_unfenced function.
...
Change the restriction that non-creators can't change the buffer flags to
non-creators can't change EVICT and NO_MOVE flags.
2007-10-19 16:24:36 +02:00
Thomas Hellstrom
bb29ba7fa7
Only allow creator to change shared buffer mask.
2007-10-17 10:59:48 +02:00
Thomas Hellstrom
086c058a41
Remove the op ioctl, and replace it with a setuser ioctl.
...
Remove need for lock for now.
May create races when we clean memory areas or on takedown.
Needs to be fixed.
Really do a validate on buffer creation in order to avoid problems with
fixed memory buffers.
2007-10-17 10:59:48 +02:00
Thomas Hellstrom
0d1926d36e
Revert "Replace NO_MOVE/NO_EVICT flags to buffer objects with an ioctl to set pinning."
...
This reverts cf2d569dac
commit.
2007-10-17 10:59:48 +02:00
Thomas Hellstrom
cd276d9cab
Revert "Copy the important parts of object_validate into object_create()."
...
This reverts f9c27aa50b
commit.
2007-10-17 10:59:48 +02:00
Thomas Hellstrom
12b989a710
Revert "Remove the pinned buffer from the LRU when pinning."
...
This reverts 3a0bc518e3
commit.
2007-10-17 10:59:48 +02:00
Michel Dänzer
db1709f2f3
Revert part of earlier commit that caused an unresolved symbol for i915.
2007-10-16 15:10:22 +02:00
Kristian Høgsberg
a69c85fec8
Drop destroy ioctls for fences and buffer objects.
...
We now always create a drm_ref_object for user objects and this is then the only
things that holds a reference to the user object. This way unreference on will
destroy the user object when the last drm_ref_object goes way.
2007-10-16 22:03:05 +11:00
Kristian Høgsberg
dccefba71a
Take bo type argument out of the ioctl interface.
...
The buffer object type is still tracked internally, but it is no longer
part of the user space visible ioctl interface. If the bo create ioctl
specifies a non-NULL buffer address we assume drm_bo_type_user,
otherwise drm_bo_type_dc. Kernel side allocations call
drm_buffer_object_create() directly and can still specify drm_bo_type_kernel.
Not 100% this makes sense either, but with this patch, the buffer type
is no longer exported and we can clean up the internals later on.
2007-10-16 22:03:05 +11:00
[utf-8] Kristian Høgsberg
440fc5113e
Eliminate support for fake buffers.
2007-10-16 21:59:38 +11:00
Arthur Huillet
9d779e2c88
nouveau: mandatory "oops I forgot half of the files" commit
2007-10-12 22:40:08 +02:00
Dave Airlie
604f02ff61
i915: check mask instead of flags for buffer fence types
2007-10-12 09:46:11 +10:00
Ian Romanick
fc7d4d19d3
Eliminate trailing whitespace from last commit.
2007-10-10 15:27:07 -07:00
Ian Romanick
83da774b19
Fix command list submission on big-endian.
2007-10-10 15:25:47 -07:00
Thomas Hellstrom
d4680333dc
Only add native-type on EXE signals. Otherwise flush flags may
...
get out of sync.
2007-10-10 09:31:51 +02:00
Dave Airlie
19b7cc3444
Merge branch 'pre-superioctl-branch'
2007-10-05 12:11:43 +10:00
Maarten Maathuis
b510517d59
nouveau: Switch over to using PMC_BOOT_0 for card detection.
2007-10-04 09:31:46 +02:00
Maarten Maathuis
5ca12104f8
linux-drm: Obey device class requirements when detecting devices.
2007-10-04 09:24:48 +02:00
Dave Airlie
495bbbaadc
drm: fix page count calculation
...
Also no need to do pre-populate work on single page
2007-10-04 16:13:22 +10:00
Ian Romanick
0379919e99
Use 'ifdef __BIG_ENDIAN' instead of 'if __BIG_ENDIAN'
2007-10-03 14:12:16 -07:00
Ian Romanick
7f99fd5d7a
First round of byte-ordering fixes for PowerPC.
...
This isn't 100% as command submission via PCI-e GART buffers doesn't work.
I've hacked around that for the time being. This is essentially the code
that was used at the POWER.org event to show Bimini.
2007-10-03 14:08:29 -07:00
Dave Airlie
b0473699ed
ttm: returning into dummy causes a buffer object leak
...
as nobody ever derefs dummy, however not returning does the deref
correctly.
2007-10-02 15:48:28 +10:00
Pekka Paalanen
aa135ba8e8
nouveau: rename nv30_graph.c to nv20_graph.c
2007-09-30 22:16:01 +03:00
Pekka Paalanen
205403aea8
nouveau: nv30 graph function renames, removed nv20_graph.c
...
All nv30 functions in nv30_graph.c that can be used on nv20 are renamed
as accordingly. nv20 specific parts from nv20_graph.c are moved into
nv30_graph.c.
2007-09-30 22:16:01 +03:00
Michel Dänzer
215eab6ccf
Don't build without any optimization on Linux.
...
Building without optimization causes the drm module not to link correctly on
ppc.
2007-09-29 18:07:55 +02:00
Keith Packard
24cdd2f8c4
Allow parallel module compile
2007-09-26 14:25:13 -07:00
Alan Hourihane
b44925b2a5
Add brackets
2007-09-26 16:18:19 +01:00
Alan Hourihane
6671ad1917
don't copy back if an error was returned.
2007-09-26 15:38:54 +01:00
Thomas Hellstrom
c4b3a0f602
Merge branch 'master' into pre-superioctl-branch
...
Conflicts:
linux-core/drm_bo.c
linux-core/drm_fence.c
linux-core/drm_objects.h
shared-core/drm.h
2007-09-25 18:03:31 +02:00
Dave Airlie
bb5516f4f4
drm/ttm: fixup fence class naming and interfaces
...
This is some code for nouveau that Ben Skeggs worked on, and also
fixes the naming (having class in a system header file == C++ keyword == bad plan)
2007-09-25 16:17:17 +10:00
Thomas Hellstrom
54df1b9ff3
Fix pinned buffer fence class.
2007-09-22 14:30:55 +02:00
Thomas Hellstrom
0774090d5b
Fix drm_bo.c compiling.
2007-09-22 13:59:56 +02:00
Thomas Hellstrom
bea727b838
Make nouveau compile on older kernels.
2007-09-22 13:57:21 +02:00