Commit graph

2273 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
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
Jakob Bornecrantz
45e09ea3cf Cleaned up userspace interface for modesetting. 2007-05-05 16:08:27 +02: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
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
Brian
5c8561aae2 More detailed instructions, tips. 2007-04-25 14:52:29 -06:00
Stephane Marchesin
61477d60c4 nouveau: fix wacky pci id 2007-04-23 22:37:36 +02: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
Alan Hourihane
dc03e07f23 Move SDVO PENDING check to read_response so all SDVO commands
benefit from the spin loop.
2007-04-18 11:46:04 +01:00
Dave Airlie
20b2949e37 make sure TMDS gets a crtc 2007-04-18 14:55:43 +10:00
Dave Airlie
e46e028bd2 Merge branch 'origin' into modesetting-101
Conflicts:

	linux-core/drm_bo.c

Merge in changes from master from Thomas fixiing TTM problems
2007-04-18 14:11:49 +10:00
Jesse Barnes
c71c44bb92 Merge branch 'modesetting-101' of git+ssh://git.freedesktop.org/git/mesa/drm into origin/modesetting-101 2007-04-17 18:20:05 -07:00
Jesse Barnes
4f0841a31c Just use drm_output_destroy to cleanup LVDS failures. It'll call our cleanup
routine, which will take care of freeing our dev_priv and i2c ddc bus.
2007-04-17 18:03:14 -07:00
Dave Airlie
d20aaf4858 don't crash if no desired mode 2007-04-18 10:41:39 +10:00
Dave Airlie
2352ec9bfa backout alanh's broken commit 2007-04-18 10:39:58 +10:00
David Airlie
7c9e19ba55 clean up ring buffer and TTM in i915_driver_unload
I've commented out the framebuffer for now
2007-04-18 10:39:27 +10:00
Jesse Barnes
73b031df61 Add framebuffer bo freeing to drm_mode_config_cleanup (seems like the best
place for now).
2007-04-17 17:30:46 -07:00
Jakob Bornecrantz
a45fa264f2 Lvds now power up backlight on commit
Now saves previous power level in prepare and sets
that power level in commit, should power level
be 0 it will set maximum level.
2007-04-17 22:27:46 +02:00
Jesse Barnes
1c7f895fa6 Merge branch 'modesetting-101' of git+ssh://git.freedesktop.org/git/mesa/drm into origin/modesetting-101
Conflicts:

	shared-core/i915_init.c - reconcile with airlied's new code
2007-04-17 10:14:18 -07:00
Jesse Barnes
4e4d9cbeb3 Move initial framebuffer allocation and configuration to drm_initial_config,
remove i915_driver_load fb related stuff.  Add a small helper for setting up
outputs.
2007-04-17 10:00:37 -07:00
Jesse Barnes
eeb5de0594 Cleanup whitespace, rename macro argument. 2007-04-17 09:59:21 -07:00
Jesse Barnes
5e6c345396 Add prototypes for drm_bo_init_mm and drm_buffer_object_create for use by
in-kernel code.
2007-04-17 09:57:08 -07:00