summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-07-07Initial add of DVO support code. Probes my sil164.Eric Anholt
This is a mostly-untested merge of airlied's work. The I2C modules are intended to be moved into the core server or a separate driver module when they're functional and we're happy with the API.
2006-07-05Don't try to probe modes on an SDVO device with NULL sdvo_drv.Eric Anholt
2006-07-05More fixes to "choose closest mode for the pipe" code to select correct refresh.Eric Anholt
2006-07-03Bug #7375: Don't double-free the current XF86 mode after a randr reprobe.Eric Anholt
2006-07-03Only override display size with the XFree86 mode's for actual panel scaling.Eric Anholt
2006-06-28Replace i830InjectModes with i830DuplicateModes usage.Eric Anholt
The remaining functionality of DuplicateModes was OBE, and the name was bad.
2006-06-28Validate and insert user and VESA standard modes for DDC or configured fallback.Eric Anholt
This isn't really tested because I lack a good CRT to test against currently.
2006-06-28Replace xf86ValidateModes usage with a set of custom validators and pruning.Eric Anholt
This moves us to maintaining MonPtrs per pipe instead of using the EDID structure "xf86MonPtr", which is closer to what we want to be looking at when doing validation. The new validation isn't enough yet -- particularly, we aren't importing and validating the custom modelines to the pipes when applicable, but this will be easier than (for example) trying to make flat panel modes pass xf86ValidateModes through various gross hacks. Hotplug turn-on/off also happens at SwitchMode time now, instead of at randr probe time.
2006-06-27If the panel power registers are all zeroes on Mobile parts, disable LVDS.Eric Anholt
This is the case on the Mac mini, which is an i945GM but has no LVDS attached. Powering on with the power timing registers zeroed would probably be a bad idea, even if there was a panel attached.
2006-06-27Fix randr current mode reporting and mode loss/mis-configuration on re-randr.Eric Anholt
2006-06-26Clean up warnings.Eric Anholt
2006-06-26Merge branch 'master' into modesettingEric Anholt
Conflicts: src/i830.h
2006-06-26Turn on extra warning flags for GCC, and clean up the resulting fallout.Eric Anholt
2006-06-26Fix the plane/pipe disabling and turn off missing outputs when no longer DDCed.Eric Anholt
2006-06-26Fix FP scaling by using the desired mode to get at the real [HV]Display.Eric Anholt
2006-06-26Add a function to turn off unused outputs, DPLLs, planes, and pipes.Eric Anholt
2006-06-26Fix DDC probing after last (untested) commit.Eric Anholt
2006-06-26Unset pipe current mode on EnterVT, so we reprogram the mode for sure.Eric Anholt
2006-06-26Major cleanup of mode reprobing:Eric Anholt
- Don't mess with pScrn->monitor->Modes, and instead make our own availModes. - Don't re-program the pipe with the same values (no flicker at xrandr) - Move a bunch of stuff that should be exposed through the public API (probably) to i830_xf86Modes.c - Use a table with established modes plus GTF to come up with modes from EDID, instead of trying to walk and find one in pScrn->monitor->Modes. I think this is correct. - Reset clone state if we've detected new pipes, which should turn on the cursor.
2006-06-23WIP to allow re-probing and validation of modes for new heads at "xrandr" time.Eric Anholt
Now, DDC modes always end up being preferred to custom modelines, even if smaller. This should probably be fixed by inserting custom modelines into the probed mode list if they're valid according to the probed parameters of the monitor. Too much code is lifted from static functions in xf86Mode.c, and those should be made unstatic if possible. Using xf86ValidateModes is also rather hacky, and I want to break the function down, but this is a first step.
2006-06-23Split probed modes out per pipe, and union them into the available modes.Eric Anholt
This is the first stage of getting runtime monitor attachment. The old i830 GTF code is returned to use to provide suitable modelines for xf86ValidateModes in the LVDS case, even though the LVDS doesn't care about the modeline and just always programs its fixed values.
2006-06-22Move FP mode validation next to other mode validation code.Eric Anholt
2006-06-21Detect SDVO display presence at startup and default to displaying to it, too.Eric Anholt
2006-06-21Fix SDVO output at low pixel clocks.Eric Anholt
I had interpreted the docs as saying that the multiplier setting would further divide the clock and stuff dummy bytes in. Instead, we have to set the DPLL at the higher clock rate, and the pixel multiplier just controls the stuffing of dummy bytes. Also, we have to set the multiplier both in the graphics chip and on the SDVO device on the other side.
2006-06-21Add decoding of SDVO command names for debug output.Eric Anholt
2006-06-20Merge branch 'modesetting-origin' into modesettingEric Anholt
2006-06-20Add #if 0-ed code I've been using for CRT detection debugging.Eric Anholt
2006-06-20Only default to enabling CRT or LVDS output if they're actually detected.Eric Anholt
Still, if we haven't detected any outputs automatically (including CRT through DDC), default to CRT anyway.
2006-06-20Add support for CRT detection using DDC.Eric Anholt
This method is slower (~5ms), but works on older chipsets. Also, load-based detection is disabled, as it can be fooled by other outputs on the pipe being active, such as LVDS.
2006-06-20Add CRT detection function by testing for load, and clean up hotplug version.Eric Anholt
2006-06-20Remove dead DisplayInfo option.Eric Anholt
2006-06-20Add debugging info for pipe/display plane size.Eric Anholt
2006-06-19Merge branch 'modesetting-origin' into modesettingKeith Packard
2006-06-19Set vblank interrupt configuration to match pipe configurationKeith Packard
New i915 drm ioctl (in version 1.5) allows the X server to select which pipe drives vblank interrupts. Use this to drive from the 'preferred' pipe. Yes, per-window vblanks would be nice in a shared fb environment. Maybe someday.
2006-06-19Add backlight control to DPMS logic.Keith Packard
Turn backlight on and off in response to DPMS state changes.
2006-06-04Get sDVO output working on mac mini.Keith Packard
Add lots of register debugging to track delta from BIOS settings. Fix various mode settings to mirror BIOS sDVO values. Disable analog/lvds output on pipe with sDVO. Borrow Dave Airlie's I830xf86ValidateDDCModes code. Fix various sDVO I2C messages to mirror Dave's code.
2006-05-22Merge branch 'master' into modesettingEric Anholt
Conflicts: man/.gitignore
2006-05-22Replace VBE call to do DPMS with native code, and fix screensaver in clone mode.Lukáš Hejtmanek
2006-05-18fixup I830SDVOGetActiveInputs to use return values not argsDave Airlie
2006-05-12add sdvo capability reading supportDave Airlie
This reads the SDVO cap bits and uses them to figure out the input/output to save/restore
2006-05-09Video overlay gamma bounds checking must be done bytewise.Keith Packard
Also, pend bound computations to register writes to allow updates to individual values that are 'out of spec' so the client can update multiple values. (cherry picked from 190f9ad0606e96e684e0b028d576d822dc9aa3cf commit)
2006-05-09Video overlay gamma bounds checking must be done bytewise.Keith Packard
Also, pend bound computations to register writes to allow updates to individual values that are 'out of spec' so the client can update multiple values.
2006-05-04Use xf86int10Addr() when calculating an address to read the video BIOS from, outEric Anholt
of int10's copy. Fixes a crash on FreeBSD.
2006-05-01Stop doing the BIOS memory size tweaking now that we don't ask the BIOS aboutEric Anholt
what modes are available.
2006-05-01Fix non-dri build.Matthieu Herrb
2006-05-01Fix non-dri build.Matthieu Herrb
2006-04-24Correct some SDVO-related register definitions.Eric Anholt
2006-04-24Save/restore the output's SDVO reg. Note that we might be programming the otherEric Anholt
SDVO reg instead of the one assigned to the output. When trying to fix that, I ended up getting no output at all.
2006-04-24Start trying to save/restore SDVO state on VT switches.Eric Anholt
2006-04-24Clean up some argument passing, and remove extra SetTarget{In,Out}Puts that hadEric Anholt
no effect. Note that we are currently trying to program both outputs of any SDVO device the same way.