summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorZhenyu Wang <zhenyu.z.wang@intel.com>2009-03-12 16:32:02 +0800
committerCarl Worth <cworth@cworth.org>2009-03-16 14:12:57 -0700
commite87bcd19a608aa964d6ea43ca5a19aed2efc818d (patch)
treeb765a9497a52ac3f605bead91fd63728de31cc8c /src
parent53b10efdb78c19d73689bff85f8d11863139b8b8 (diff)
Revert "SDVO: Switch control bus only before DDC access"
This reverts commit ddedf19f889da2ce6d69a3afce4665e2245682fa. After i2c STOP, control bus will return back to internal registers. So this brings back to origin code that we switch to DDC bus before START. But it's ideal to only issue DDC bus switch after STOP, not before every START, which might eliminate some complains from SDVO device, that will be another patch later. (cherry picked from commit dc3ff0b514b609448025680778f0e95e1980a5d8)
Diffstat (limited to 'src')
-rw-r--r--src/i830_sdvo.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/i830_sdvo.c b/src/i830_sdvo.c
index 004d5c4c..254b866f 100644
--- a/src/i830_sdvo.c
+++ b/src/i830_sdvo.c
@@ -1390,7 +1390,9 @@ i830_sdvo_ddc_i2c_start(I2CBusPtr b, int timeout)
xf86OutputPtr output = b->DriverPrivate.ptr;
I830OutputPrivatePtr intel_output = output->driver_private;
I2CBusPtr i2cbus = intel_output->pI2CBus;
+ struct i830_sdvo_priv *dev_priv = intel_output->dev_priv;
+ i830_sdvo_set_control_bus_switch(output, dev_priv->ddc_bus);
return i2cbus->I2CStart(i2cbus, timeout);
}
@@ -1718,11 +1720,9 @@ i830_sdvo_get_ddc_modes(xf86OutputPtr output)
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
DisplayModePtr modes = NULL;
xf86OutputPtr crt;
- I830OutputPrivatePtr intel_output = output->driver_private;
+ I830OutputPrivatePtr intel_output;
xf86MonPtr edid_mon = NULL;
- struct i830_sdvo_priv *dev_priv = intel_output->dev_priv;
-
- i830_sdvo_set_control_bus_switch(output, dev_priv->ddc_bus);
+ struct i830_sdvo_priv *dev_priv;
modes = i830_ddc_get_modes(output);
if (modes != NULL)