Alan Hourihane [Thu, 17 May 2007 16:00:11 +0000 (17:00 +0100)]
Grab the default mode if the preferred mode isn't available.
Fix an overflow problem.
Alan Hourihane [Thu, 17 May 2007 12:19:56 +0000 (13:19 +0100)]
Fix build problem
root [Thu, 17 May 2007 11:46:36 +0000 (12:46 +0100)]
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.
Alan Hourihane [Thu, 10 May 2007 12:16:05 +0000 (13:16 +0100)]
Just some minor cleanups.
Jakob Bornecrantz [Sat, 5 May 2007 14:08:27 +0000 (16:08 +0200)]
Cleaned up userspace interface for modesetting.
Dave Airlie [Tue, 1 May 2007 04:20:22 +0000 (14:20 +1000)]
cleanup usermodes on drm mode setting shutdown
Dave Airlie [Tue, 1 May 2007 03:16:29 +0000 (13:16 +1000)]
Add support for user defined modes
This allows userspace to specify modes and add them to the modesetting
system and attach modes to outputs
Dave Airlie [Tue, 1 May 2007 03:15:41 +0000 (13:15 +1000)]
fix unusued variable
Dave Airlie [Thu, 26 Apr 2007 05:56:21 +0000 (15:56 +1000)]
Merge branch 'origin' into modesetting-101
Dave Airlie [Thu, 26 Apr 2007 04:50:00 +0000 (14:50 +1000)]
i915: fix vblank pipe setup
Brian [Wed, 25 Apr 2007 20:52:29 +0000 (14:52 -0600)]
More detailed instructions, tips.
Stephane Marchesin [Mon, 23 Apr 2007 20:37:01 +0000 (22:37 +0200)]
nouveau: fix wacky pci id
Dave Airlie [Mon, 23 Apr 2007 01:42:29 +0000 (11:42 +1000)]
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
Dave Airlie [Sun, 22 Apr 2007 23:10:46 +0000 (09:10 +1000)]
fixup vrefresh reporting, it should now be *1000 in userspace
Jesse Barnes [Sat, 21 Apr 2007 01:00:44 +0000 (18:00 -0700)]
Oops, edid data should just be a char *, as edid.h is private to edid.c
(we can just recombine them now).
Jesse Barnes [Sat, 21 Apr 2007 00:59:30 +0000 (17:59 -0700)]
Add a monitor information structure separate from the EDID data for tracking
monitor limits, etc.
Jesse Barnes [Sat, 21 Apr 2007 00:03:50 +0000 (17:03 -0700)]
Document drm_modes.c functions.
Jesse Barnes [Fri, 20 Apr 2007 23:32:58 +0000 (16:32 -0700)]
Add a mode name generation wrapper to make name format changes easier.
Kristian Høgsberg [Fri, 20 Apr 2007 22:06:31 +0000 (18:06 -0400)]
Initialize rwlock using rwlock_init to appease lockdep validator.
Kristian Høgsberg [Fri, 20 Apr 2007 22:06:31 +0000 (18:06 -0400)]
Initialize rwlock using rwlock_init to appease lockdep validator.
Kristian Høgsberg [Fri, 20 Apr 2007 20:52:04 +0000 (16:52 -0400)]
Clean up and return if no outputs are found.
Thomas Hellstrom [Thu, 19 Apr 2007 21:25:14 +0000 (23:25 +0200)]
Avoid a fence timeout problem when a signal is pending.
Thomas Hellstrom [Fri, 20 Apr 2007 13:49:31 +0000 (15:49 +0200)]
Fix via compile error
(Reported by Benno Schulenberg.)
Dave Airlie [Wed, 18 Apr 2007 23:43:46 +0000 (09:43 +1000)]
backout SDVO control bus check and comment why this is a bad idea
Jesse Barnes [Wed, 18 Apr 2007 18:49:42 +0000 (11:49 -0700)]
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.
Thomas Hellstrom [Wed, 18 Apr 2007 14:33:28 +0000 (16:33 +0200)]
Simplify the ttm backend interface and the agp ttm backend.
Alan Hourihane [Wed, 18 Apr 2007 13:18:56 +0000 (14:18 +0100)]
Shouldn't free the mode here. It's done later on.
Alan Hourihane [Wed, 18 Apr 2007 12:52:46 +0000 (13:52 +0100)]
Fix return status
Alan Hourihane [Wed, 18 Apr 2007 11:19:16 +0000 (12:19 +0100)]
Fix build problem
Alan Hourihane [Wed, 18 Apr 2007 11:10:06 +0000 (12:10 +0100)]
free the duplicated mode.
Alan Hourihane [Wed, 18 Apr 2007 11:07:55 +0000 (12:07 +0100)]
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 ???
Alan Hourihane [Wed, 18 Apr 2007 10:55:09 +0000 (11:55 +0100)]
Merge remote branch 'origin/modesetting-101' into modesetting-101
Alan Hourihane [Wed, 18 Apr 2007 10:53:25 +0000 (11:53 +0100)]
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.
Alan Hourihane [Wed, 18 Apr 2007 10:47:21 +0000 (11:47 +0100)]
Check status after SDVO command for sdvo_set_control_bus_switch
Alan Hourihane [Wed, 18 Apr 2007 10:46:04 +0000 (11:46 +0100)]
Move SDVO PENDING check to read_response so all SDVO commands
benefit from the spin loop.
Dave Airlie [Wed, 18 Apr 2007 04:55:43 +0000 (14:55 +1000)]
make sure TMDS gets a crtc
Dave Airlie [Wed, 18 Apr 2007 04:11:49 +0000 (14:11 +1000)]
Merge branch 'origin' into modesetting-101
Conflicts:
linux-core/drm_bo.c
Merge in changes from master from Thomas fixiing TTM problems
Jesse Barnes [Wed, 18 Apr 2007 01:20:05 +0000 (18:20 -0700)]
Merge branch 'modesetting-101' of git+ssh://git.freedesktop.org/git/mesa/drm into origin/modesetting-101
Jesse Barnes [Wed, 18 Apr 2007 01:03:14 +0000 (18:03 -0700)]
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.
Dave Airlie [Wed, 18 Apr 2007 00:41:39 +0000 (10:41 +1000)]
don't crash if no desired mode
Dave Airlie [Wed, 18 Apr 2007 00:39:58 +0000 (10:39 +1000)]
backout alanh's broken commit
David Airlie [Fri, 13 Apr 2007 06:43:55 +0000 (16:43 +1000)]
clean up ring buffer and TTM in i915_driver_unload
I've commented out the framebuffer for now
Jesse Barnes [Wed, 18 Apr 2007 00:30:46 +0000 (17:30 -0700)]
Add framebuffer bo freeing to drm_mode_config_cleanup (seems like the best
place for now).
Jakob Bornecrantz [Tue, 17 Apr 2007 20:27:46 +0000 (22:27 +0200)]
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.
Jesse Barnes [Tue, 17 Apr 2007 17:14:18 +0000 (10:14 -0700)]
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
Jesse Barnes [Tue, 17 Apr 2007 17:00:37 +0000 (10:00 -0700)]
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.
Jesse Barnes [Tue, 17 Apr 2007 16:59:21 +0000 (09:59 -0700)]
Cleanup whitespace, rename macro argument.
Jesse Barnes [Tue, 17 Apr 2007 16:57:08 +0000 (09:57 -0700)]
Add prototypes for drm_bo_init_mm and drm_buffer_object_create for use by
in-kernel code.
Alan Hourihane [Tue, 17 Apr 2007 15:11:00 +0000 (16:11 +0100)]
Fix a register read that was swapped SDVOB/SDVOC
Check for the PENDING message when reading the attached
displays. Ensures the command has completed before continuing.
(probably need to check PENDING in other SDVO calls too)
Alan Hourihane [Tue, 17 Apr 2007 15:09:40 +0000 (16:09 +0100)]
Fix SDVO outputs
Alan Hourihane [Tue, 17 Apr 2007 15:08:26 +0000 (16:08 +0100)]
Correct PCI ID for i845
Thomas Hellstrom [Tue, 17 Apr 2007 12:15:37 +0000 (14:15 +0200)]
Don't always free up memory space when we unpin buffers.
Thomas Hellstrom [Tue, 17 Apr 2007 08:53:19 +0000 (10:53 +0200)]
Fix buffer object reference problems.
(Reported by Dave Airlie).
Dave Airlie [Tue, 17 Apr 2007 08:18:42 +0000 (18:18 +1000)]
I don't think this dec is necessary and my stuff all works without ..
with it everything falls over
Dave Airlie [Tue, 17 Apr 2007 08:18:25 +0000 (18:18 +1000)]
add some missing export symbols
Dave Airlie [Tue, 17 Apr 2007 08:16:38 +0000 (18:16 +1000)]
another large overhaul of interactions with userspace...
We need to keep a list of user created fbs to nuke on master exit.
We also need to use the bo properly.
Thomas Hellstrom [Tue, 17 Apr 2007 06:58:23 +0000 (08:58 +0200)]
via: Make sure we flush write-combining using a follow-up read.
Thomas Hellstrom [Tue, 17 Apr 2007 06:46:45 +0000 (08:46 +0200)]
Add a code comment.
Jakob Bornecrantz [Mon, 16 Apr 2007 18:54:24 +0000 (20:54 +0200)]
Fix offset should from pci device address
Thomas Hellstrom [Mon, 16 Apr 2007 14:23:05 +0000 (16:23 +0200)]
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.
Jesse Barnes [Sat, 14 Apr 2007 22:35:38 +0000 (15:35 -0700)]
Use drm_mem_reg_ioremap to map buffer object.
Jesse Barnes [Sat, 14 Apr 2007 22:35:21 +0000 (15:35 -0700)]
Fix PRIV0 memory initialization (mm_init takes pages, not bytes), align fb
allocation correctly, and use drm_mem_reg_iomap to map ring buffer object.
Jakob Bornecrantz [Fri, 13 Apr 2007 00:23:42 +0000 (02:23 +0200)]
Added debug messages so we know which output we are dealing with
David Airlie [Fri, 13 Apr 2007 04:33:52 +0000 (14:33 +1000)]
i915/drm: clean up a lot of the i915/drm startup/teardown sequences
When the kernel driver is loaded it sets up a lot of stuff..
it tears down the same stuff on unload.
This add a new map type called DRM_DRIVER which means the driver will clean the mapping up
and fix up the map cleaner
David Airlie [Fri, 13 Apr 2007 04:31:10 +0000 (14:31 +1000)]
export drm_bo_driver_finish symbol
David Airlie [Fri, 13 Apr 2007 04:30:44 +0000 (14:30 +1000)]
revert LVDS destroy - this oops on sysfs on sdvo init of i2c bus
Jesse Barnes [Fri, 13 Apr 2007 01:30:36 +0000 (18:30 -0700)]
Move driver load call to after AGP init, in case the load routine needs AGP stuff.
Jesse Barnes [Thu, 12 Apr 2007 21:57:07 +0000 (14:57 -0700)]
Oops, forgot to push the msleep() in the hotplug test. Wouldn't want to
spin in the kernel for a whole second w/o it...
Jesse Barnes [Thu, 12 Apr 2007 19:43:47 +0000 (12:43 -0700)]
Use crtc_from_pipe call in intel_lvds.c and add get_mode panel mode detection. Also fix up error case for when LVDS mode can't be determined. Leave placeholder code in place for BIOS mode probing and platform quirks.
Jesse Barnes [Thu, 12 Apr 2007 19:41:56 +0000 (12:41 -0700)]
Add new function for getting a CRTC pointer given a pipe number.
Jesse Barnes [Thu, 12 Apr 2007 19:40:51 +0000 (12:40 -0700)]
Fix 945+ hotplug detection, remove some unused variables.
Jesse Barnes [Thu, 12 Apr 2007 18:50:57 +0000 (11:50 -0700)]
Don't need a NULL check prior to calling kfree.
Jesse Barnes [Thu, 12 Apr 2007 18:40:12 +0000 (11:40 -0700)]
Initialize the hw lock waitqueue so we don't hang in drm_lastclose.
Jesse Barnes [Thu, 12 Apr 2007 16:01:53 +0000 (09:01 -0700)]
Don't use drm_setup, do SAREA allocation and mapping directly instead.
Jesse Barnes [Thu, 12 Apr 2007 15:57:58 +0000 (08:57 -0700)]
Move i2c init back to where it belongs and add i2c unregistration in *_destroy.
Jesse Barnes [Thu, 12 Apr 2007 15:56:34 +0000 (08:56 -0700)]
Whitespace cleanup
Jesse Barnes [Thu, 12 Apr 2007 15:55:51 +0000 (08:55 -0700)]
Merge branch 'modesetting-101' of git+ssh://git.freedesktop.org/git/mesa/drm into origin/modesetting-101
Jesse Barnes [Thu, 12 Apr 2007 15:53:03 +0000 (08:53 -0700)]
Revert "Export drm_setup for use by new driver init code.", we don't really want to use this function
This reverts commit
e114b981bc291049fa6996d487334a408acc1ce2.
Alan Hourihane [Thu, 12 Apr 2007 14:12:00 +0000 (15:12 +0100)]
Use drm_framebuffer instead of drm_crtc for fb & fbt
Alan Hourihane [Thu, 12 Apr 2007 14:11:38 +0000 (15:11 +0100)]
Remove extraneous drm_crtc.h include
Alan Hourihane [Thu, 12 Apr 2007 14:10:08 +0000 (15:10 +0100)]
Merge remote branch 'origin/modesetting-101' into modesetting-101
Jesse Barnes [Thu, 12 Apr 2007 03:41:54 +0000 (20:41 -0700)]
Merge branch 'modesetting-101' of git+ssh://git.freedesktop.org/git/mesa/drm into origin/modesetting-101
Jesse Barnes [Thu, 12 Apr 2007 03:41:27 +0000 (20:41 -0700)]
Remove debug statement about buffer objects
Dave Airlie [Thu, 12 Apr 2007 02:11:58 +0000 (12:11 +1000)]
use FB everywhere
Dave Airlie [Thu, 12 Apr 2007 01:55:10 +0000 (11:55 +1000)]
cleanup framebuffers on drm unload
Dave Airlie [Thu, 12 Apr 2007 01:54:49 +0000 (11:54 +1000)]
only initialise modes when fbcon or fbset asks for it
Dave Airlie [Thu, 12 Apr 2007 01:43:13 +0000 (11:43 +1000)]
set bracing style like Linux
Dave Airlie [Thu, 12 Apr 2007 01:28:55 +0000 (11:28 +1000)]
fix unbalanced lock and make sure mode list has modes so lvds code doesn't crash
Dave Airlie [Wed, 11 Apr 2007 22:54:31 +0000 (08:54 +1000)]
allow framebuffer changes on the crtc setup
Dave Airlie [Wed, 11 Apr 2007 22:45:40 +0000 (08:45 +1000)]
add getfb ioctl
Jesse Barnes [Wed, 11 Apr 2007 19:52:57 +0000 (12:52 -0700)]
Use new kernel buffer object type and cleanup agp probing.
Jesse Barnes [Wed, 11 Apr 2007 19:51:52 +0000 (12:51 -0700)]
Add new buffer object type for kernel allocations that don't initially have a user mapping.
Jesse Barnes [Wed, 11 Apr 2007 18:47:58 +0000 (11:47 -0700)]
Add aperture size and preallocation probing (from intelfb), cleanup load code to be more general.
Jesse Barnes [Wed, 11 Apr 2007 18:46:37 +0000 (11:46 -0700)]
Fix i2c unregistration, cleanup panel_fixed_mode assignment.
Jesse Barnes [Wed, 11 Apr 2007 18:44:54 +0000 (11:44 -0700)]
Whitespace cleanups.
Jesse Barnes [Wed, 11 Apr 2007 18:42:00 +0000 (11:42 -0700)]
Fix EDID pixel clock calculation.
Jesse Barnes [Wed, 11 Apr 2007 14:21:24 +0000 (07:21 -0700)]
fix modeset cleanup for LVDS and reenable it in i915.
Jesse Barnes [Wed, 11 Apr 2007 14:08:48 +0000 (07:08 -0700)]
export vblank routine for use by intel_display.c and intel_sdvo.c.
Jesse Barnes [Wed, 11 Apr 2007 14:08:29 +0000 (07:08 -0700)]
Fixup DDC probing. We only have one DDC bus so we have to use it only
on demand, and unregister when we're done.
Jesse Barnes [Wed, 11 Apr 2007 14:07:54 +0000 (07:07 -0700)]
Various changes for in-kernel modesetting:
- allow drm_buffer_object_create to be called w/o dev_mapping
- fixup i915 init code to allocate memory, fb and set modes right
- pass fb to drm_initial_config for setup
- change some debug output to make it easier to spot
- fixup lvds code to use DDC probing correctly