Keith Packard
56a96841d0
[intel-gem] Add explicit throttle ioctl
...
Instead of throttling and execbuffer time, have the application ask to
throttle explicitly. This allows the throttle to happen less often, and
without holding the DRM lock.
2008-06-06 13:00:46 -07:00
Keith Packard
329e086225
[libdrm/intel] Eliminate extra dri_gem_bo_bucket_entry structure
...
Place the buffer reuse links right into the dri_bo_gem object.
2008-06-06 13:00:46 -07:00
Keith Packard
5a55b48a41
[libdrm/intel] Remove unused intel_validate_entry structure
2008-06-06 13:00:46 -07:00
Keith Packard
a919ff5d5e
[libdrm/intel] Reuse entire dri_bo_gem structure
...
The code was discarding the dri_bo_gem structure and saving only the kernel
handle. This lost the mmap address, causing pain when the next buffer user
wanted to map the buffer.
2008-06-06 13:00:46 -07:00
Keith Packard
5f5badb26f
[intel] Allocate hardware status page at driver load time
...
I couldn't get the re-allocated HWS to work on my 965GM, so I just gave up
and made it persist across the lifetime of the driver instead.
2008-06-06 13:00:46 -07:00
Keith Packard
84162ccb7d
Ignore X server provided mmio address
2008-06-06 13:00:46 -07:00
Keith Packard
118baeee18
[intel-gem] Dump error status on wait_request failure
2008-06-06 13:00:46 -07:00
Dave Airlie
6d4ffd12cd
drm: fix up fb resize again
2008-06-06 16:24:27 +10:00
Dave Airlie
00bb548c61
intel: don't set the mode on the framebuffer if isn't set to scanout our framebuffer
2008-06-06 15:38:53 +10:00
Dave Airlie
ec774e4d72
Merge remote branch 'origin/modesetting-101' into modesetting-101-fb
2008-06-06 15:21:57 +10:00
Dave Airlie
be501f00a3
intelfb: add multi fb paths
2008-06-06 15:21:22 +10:00
Dave Airlie
e6a3a1fdad
intelfb: remove duplicate define
2008-06-06 14:55:03 +10:00
Dave Airlie
fc08877b17
intelfb: admit fbdev is crap and punt on trying to resize to a larger fbdev.
2008-06-06 14:53:34 +10:00
Dave Airlie
8387a232a3
intelfb: move mode sets into the intel crtcs
...
better place to store them.
2008-06-06 12:02:51 +10:00
Dave Airlie
25c1bb334f
drm/intel: make hotplug just be an event
2008-06-06 10:39:58 +10:00
Dave Airlie
5f94172f81
intel: if no spare crtc exists don't just take one.
2008-06-06 10:31:36 +10:00
Jesse Barnes
03bf1fba67
sysfs registration/teardown fixups
...
A check in drm_sysfs_connector_remove was supposed to allow it to be called
even with unregistered objects, to make cleanup paths a little simpler.
However, device_is_regsitered didn't always seem to return what we thought it
would, so we'd sometimes end up leaving objects lying around rather than
unregistering them.
Fix this situation up by requiring devices to be registered before being
removed. Any problems resulting from this change should be easier to track
down than the alternative (which is leaving kobjects registered after unload).
2008-06-05 15:58:43 -07:00
Eric Anholt
d198e9b091
Add a function to bufmgr_fake to evict all buffers in the GTT.
...
This will be used by the X Server for VT switch.
2008-06-05 08:45:39 -07:00
Dave Airlie
d9ead89c79
drm/modeset: add more debugging and fixup some fb enable/disabe bits
2008-06-05 16:32:41 +10:00
Dave Airlie
b31adb005a
drm/modesetting: more fb interface cleanups
2008-06-05 15:55:03 +10:00
Dave Airlie
efcf066eff
drm/modesetting: attempt to make fb code more sane
2008-06-05 15:21:07 +10:00
Dave Airlie
f73e54bbf0
drm: modesetting unify the hotplug init paths a lot.
...
remove fb callbacks, just probe into the driver to sort it out
2008-06-05 13:40:08 +10:00
Dave Airlie
56a1293184
modesetting: fix fb clearing up
2008-06-05 11:43:48 +10:00
Dave Airlie
1495dd31d6
modesetting: use surface width height for buffer allocs
2008-06-05 11:24:57 +10:00
Dave Airlie
1d980669e6
modesetting: add surface width/heights
2008-06-05 11:20:52 +10:00
Dave Airlie
967bd21911
modesetting: initial attempt at debonging fb
2008-06-05 11:11:22 +10:00
Jesse Barnes
e90716671d
i915: use kzalloc to allocate intel_output for lvds
...
Better to initialize all the struct fields to 0. Also more consistent with
other output init routines.
2008-06-04 12:50:03 -07:00
Jesse Barnes
52183fb05b
Fix crash in drm_mode_connector_update_edid_property
...
We need to initialize the edid_blob_ptr to NULL when we init a connector,
otherwise drm_mode_connector_update_edid_property may think there's a valid
EDID lying around and try to destroy it, causing a crash.
2008-06-04 09:38:44 -07:00
Dave Airlie
cf1964f971
drm: fix hotplug oops
2008-06-04 15:17:13 +10:00
Dave Airlie
a8725d95bc
intel: report a known connector
2008-06-04 15:17:00 +10:00
Keith Packard
0903de0c8f
Drop struct_mutex while waiting in drm_client_lock_take
...
struct_mutex cannot be held while blocking on DRM lock.
2008-06-03 21:49:57 -07:00
Dave Airlie
9390bdab7c
libdrm: shouldn't rely on this
2008-06-04 13:53:33 +10:00
Dave Airlie
382aa3ceeb
drm: introduce generation counter to interface.
...
Idea being if you want to add new crtc/output/encoder dynamically later,
you just increase the generation counter and userspace should re-read
all the resources
2008-06-04 13:50:51 +10:00
Dave Airlie
9f31bd09c1
drm/sysfs: don't try an unregister if not registered
2008-06-04 13:16:49 +10:00
Dave Airlie
8e4c61e526
intel: use kzalloc
2008-06-04 13:09:20 +10:00
Dave Airlie
8690ad8ae0
drm/modesetting: bo not used anymore
2008-06-04 13:09:05 +10:00
Dave Airlie
58aca7485a
drm: remove sysfs in driver for now.. should probably be in helper
2008-06-04 13:03:23 +10:00
Dave Airlie
fd27591c6c
drm/modesetting: pass object handle to driver !bo
2008-06-04 13:00:31 +10:00
Dave Airlie
76a44f14d6
drm/modesetting: overhaul the fb create/delete.
...
Move TTM code into the driver
2008-06-04 11:59:28 +10:00
Dave Airlie
40229b6ad5
drm: make mode comparison more betterer.
...
This compares the clocks after converting to fb pico timings so we
get the same answer if the X and fb modes are the same.
2008-06-04 10:36:58 +10:00
Eric Anholt
8a3b510405
Fix libdrm to actually include the new code instead of just building it.
2008-06-03 14:44:53 -07:00
Eric Anholt
c4857429c7
Fix and hook up bufmgr code to the build.
2008-06-03 14:44:53 -07:00
Eric Anholt
6a9eb08a87
Import bufmgr code to libdrm. Not yet hooked up to the build.
2008-06-03 14:44:53 -07:00
Keith Packard
867c2bb461
[intel-gem] reloc_and_validate_object → object_bind_and_relocate
...
Just renaming this function and related parameters to match terminology used
elsewhere in the driver.
2008-06-02 12:37:10 -07:00
Keith Packard
1cb2940a25
[intel-gem] Propagate set_domain errors.
...
set_domain can block waiting for rendering to complete. If that process is
interrupted by a signal, it can return -EINTR. Catch this error in all
callers and correctly deal with the result.
2008-06-02 10:59:15 -07:00
Alan Hourihane
3ed17803d8
more checks for NULL encoder so we don't segfault.
2008-06-02 10:44:29 +01:00
Alan Hourihane
dc022084cd
Fix warnings
2008-06-02 10:03:28 +01:00
Dave Airlie
149b17311a
drm: initial mode object groups.
...
This creates a default group attached to the legacy drm minor nodes.
It covers all the objects in the set. make set resources only return
objects for this set. Need to fix up other functions to only work on
objects in their allowed set.
2008-06-02 16:45:44 +10:00
Dave Airlie
50d3e5bd02
drm/modesetting: redo object handles around a core object.
...
handle crtc/encoders/connectors/fb/mode/property/blob using this system.
2008-06-02 16:19:21 +10:00
Dave Airlie
c321bc4f92
drm: only report framebuffers available on this fd.
...
Not 100% sure this is a good idea, but I think I'd rather things
communicate with bo handles not fb ids.
2008-06-02 14:33:42 +10:00