Commit graph

2259 commits

Author SHA1 Message Date
Jesse Barnes
b7bf317f42 Merge branch 'modesetting-101' of git+ssh://git.freedesktop.org/git/mesa/drm into origin/modesetting-101
Conflicts:

	linux-core/drm_crtc.c
	linux-core/drm_fb.c

Lots of changes to merge with alanh's latest stuff:
  o fix use of fb->pitch now that it has the right value
  o add new helper for finding the CRTC given an FB
  o fix new fb_probe/fb_remove functions to take a CRTC
  o fixup callers of new FB routines
  o port drm_fb changes to intel_fb
  o check for errors after creating fb buffer object
  o go back to using cfb_imageblit since the accel stubs aren't ready
2007-05-17 10:35:07 -07:00
Alan Hourihane
fd63ea9713 Grab the default mode if the preferred mode isn't available.
Fix an overflow problem.
2007-05-17 17:00:11 +01:00
Jesse Barnes
a18b4befb9 Fix FB pitch value (we had it wrong and were working around it in a few
places).
Add new FB hooks to the drm driver structure and make i915 use them for an
Intel specific FB driver.  This will allow acceleration and better handling
of the command stream.
2007-05-17 09:00:06 -07:00
Stephane Marchesin
ea98d7e796 nouveau: don't build the module by default 2007-05-17 17:35:51 +02:00
Alan Hourihane
2222bd767f Fix build problem 2007-05-17 13:19:56 +01:00
root
5ce8aaae72 Large changes for fbdev support.
Change from DIRECTCOLOR to TRUECOLOR, and enable
support for PSEUDOCOLOR. DIRECTCOLOR support needs more work.

Add the ability to change the mode on the fbdev device.

Support depth 8, 15, 16 and 24 (and 32).

Add a /dev/fbX device per CRTC, but there's some code which
doesn't allocate the fbX device unless the output is actually
enabled. Read the code on this as it impacts the fbcon map flags.

Pick CRTC's based on the available outputs. More work could
be done here to match modes, so cloning could be achieved on
outputs. This fits more inline with what the X code does.
2007-05-17 12:46:36 +01:00
Alan Hourihane
eba00df120 Just some minor cleanups. 2007-05-10 13:16:05 +01: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
3a69e2484a cleanup usermodes on drm mode setting shutdown 2007-05-01 14:20:22 +10:00
Dave Airlie
89231953d1 Add support for user defined modes
This allows userspace to specify modes and add them to the modesetting
system and attach modes to outputs
2007-05-01 13:16:29 +10:00
Dave Airlie
8e8e37515e fix unusued variable 2007-05-01 13:15:41 +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
Dave Airlie
b589b846e7 Merge branch 'origin' into modesetting-101 2007-04-26 15:56:21 +10:00
Dave Airlie
34be91fe4e i915: fix vblank pipe setup 2007-04-26 14:50:00 +10:00
Dave Airlie
ceb44021ad drm: make mode numbers no change by comparing probed modes
The mode list sets all the output modes to UNVERIFIED, then probes a new list,
If a mode is on the new list and not on the old, it adds it to the old,
if a mode is on the new list and old, it just updates the status to the new
mode status.
If a mode is on the old list and not on the new, prune invalid modes should
remove all UNVERIFIED modes
2007-04-23 11:42:29 +10:00
Dave Airlie
0f3c5148f0 fixup vrefresh reporting, it should now be *1000 in userspace 2007-04-23 09:10:46 +10:00
Jesse Barnes
97b5599982 Oops, edid data should just be a char *, as edid.h is private to edid.c
(we can just recombine them now).
2007-04-20 18:00:44 -07:00
Jesse Barnes
eb892fb09d Add a monitor information structure separate from the EDID data for tracking
monitor limits, etc.
2007-04-20 17:59:30 -07:00
Jesse Barnes
a21ff375c6 Document drm_modes.c functions. 2007-04-20 17:03:50 -07:00
Jesse Barnes
9ca4932054 Add a mode name generation wrapper to make name format changes easier. 2007-04-20 16:32:58 -07:00
Kristian Høgsberg
2d1de1fc6b Initialize rwlock using rwlock_init to appease lockdep validator. 2007-04-20 18:12:18 -04:00
Kristian Høgsberg
af3ffcd822 Initialize rwlock using rwlock_init to appease lockdep validator. 2007-04-20 18:06:31 -04:00
Kristian Høgsberg
6238ebee21 Clean up and return if no outputs are found. 2007-04-20 16:52:04 -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
Dave Airlie
8d893e49ec backout SDVO control bus check and comment why this is a bad idea 2007-04-19 09:43:46 +10:00
Jesse Barnes
5587961cfe Document main drm_crtc.c functions, and rename drm_crtc_mode_create to
drm_mode_create to be consistent with the other functions.  Also document
where we need locking fixes and what the locks are for.
2007-04-18 11:49:42 -07:00
Thomas Hellstrom
2df2c70e20 Simplify the ttm backend interface and the agp ttm backend. 2007-04-18 16:33:28 +02:00
Alan Hourihane
dfc02547ff Shouldn't free the mode here. It's done later on. 2007-04-18 14:18:56 +01:00
Alan Hourihane
b642ced083 Fix return status 2007-04-18 13:52:46 +01:00
Alan Hourihane
0207b51acc Fix build problem 2007-04-18 12:19:16 +01:00
Alan Hourihane
87b46bd436 free the duplicated mode. 2007-04-18 12:10:06 +01:00
Alan Hourihane
191594ebd5 When no valid EDID modes are available, we bail.
This snippet adds a standard 640x480 @ 60Hz mode when
that occurs, so we can continue with a basic mode.

Should we do this here though ???
2007-04-18 12:07:55 +01:00
Alan Hourihane
ef2bce3a16 Merge remote branch 'origin/modesetting-101' into modesetting-101 2007-04-18 11:55:09 +01:00
Alan Hourihane
51e867c578 Support the RGB outputs of SDVO cards, which are essentially
VGA outs.

The drm_initial_config path has specific handling code to name
match for VGA, TMDS or LVDS. This is pretty restrictive and should
probably be dealt with to be more generic.
2007-04-18 11:53:25 +01:00
Alan Hourihane
ea8bcb466b Check status after SDVO command for sdvo_set_control_bus_switch 2007-04-18 11:47:21 +01:00