gma500: Remove psb_intel_output from ddc_probe and ddc_get_modes
authorPatrik Jakobsson <patrik.r.jakobsson@gmail.com>
Mon, 19 Dec 2011 21:40:05 +0000 (21:40 +0000)
committerDave Airlie <airlied@redhat.com>
Tue, 20 Dec 2011 10:23:06 +0000 (10:23 +0000)
Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com>
Signed-off-by: Alan Cox <alan@linux.intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/gma500/psb_intel_drv.h
drivers/gpu/drm/gma500/psb_intel_modes.c

index a4435d8371f2de638b501bf323bd77f1124bd032..af34b244606e40651a47683e1e70e2e994208b3c 100644 (file)
@@ -166,8 +166,9 @@ struct psb_intel_crtc {
 struct psb_intel_i2c_chan *psb_intel_i2c_create(struct drm_device *dev,
                                        const u32 reg, const char *name);
 void psb_intel_i2c_destroy(struct psb_intel_i2c_chan *chan);
-int psb_intel_ddc_get_modes(struct psb_intel_output *psb_intel_output);
-extern bool psb_intel_ddc_probe(struct psb_intel_output *psb_intel_output);
+int psb_intel_ddc_get_modes(struct drm_connector *connector,
+                           struct i2c_adapter *adapter);
+extern bool psb_intel_ddc_probe(struct i2c_adapter *adapter);
 
 extern void psb_intel_crtc_init(struct drm_device *dev, int pipe,
                            struct psb_intel_mode_device *mode_dev);
index bde1aff961900f3a8c5fc7722de745037518927c..4fca0d6feebe1af7f8add72ce65253514ccc2364 100644 (file)
@@ -26,7 +26,7 @@
  * psb_intel_ddc_probe
  *
  */
-bool psb_intel_ddc_probe(struct psb_intel_output *psb_intel_output)
+bool psb_intel_ddc_probe(struct i2c_adapter *adapter)
 {
        u8 out_buf[] = { 0x0, 0x0 };
        u8 buf[2];
@@ -46,7 +46,7 @@ bool psb_intel_ddc_probe(struct psb_intel_output *psb_intel_output)
                 }
        };
 
-       ret = i2c_transfer(&psb_intel_output->ddc_bus->adapter, msgs, 2);
+       ret = i2c_transfer(adapter, msgs, 2);
        if (ret == 2)
                return true;
 
@@ -59,18 +59,16 @@ bool psb_intel_ddc_probe(struct psb_intel_output *psb_intel_output)
  *
  * Fetch the EDID information from @connector using the DDC bus.
  */
-int psb_intel_ddc_get_modes(struct psb_intel_output *psb_intel_output)
+int psb_intel_ddc_get_modes(struct drm_connector *connector,
+                           struct i2c_adapter *adapter)
 {
        struct edid *edid;
        int ret = 0;
 
-       edid =
-           drm_get_edid(&psb_intel_output->base,
-                        &psb_intel_output->ddc_bus->adapter);
+       edid = drm_get_edid(connector, adapter);
        if (edid) {
-               drm_mode_connector_update_edid_property(&psb_intel_output->
-                                                       base, edid);
-               ret = drm_add_edid_modes(&psb_intel_output->base, edid);
+               drm_mode_connector_update_edid_property(connector, edid);
+               ret = drm_add_edid_modes(connector, edid);
                kfree(edid);
        }
        return ret;