Merge tag 'drm-intel-next-2021-05-19-1' of git://anongit.freedesktop.org/drm/drm...
[linux-2.6-microblaze.git] / drivers / gpu / drm / i915 / display / intel_lspcon.c
index 328d312..05d2d75 100644 (file)
@@ -140,10 +140,11 @@ void lspcon_detect_hdr_capability(struct intel_lspcon *lspcon)
 
 static enum drm_lspcon_mode lspcon_get_current_mode(struct intel_lspcon *lspcon)
 {
+       struct intel_dp *intel_dp = lspcon_to_intel_dp(lspcon);
        enum drm_lspcon_mode current_mode;
-       struct i2c_adapter *adapter = &lspcon_to_intel_dp(lspcon)->aux.ddc;
+       struct i2c_adapter *adapter = &intel_dp->aux.ddc;
 
-       if (drm_lspcon_get_mode(adapter, &current_mode)) {
+       if (drm_lspcon_get_mode(intel_dp->aux.drm_dev, adapter, &current_mode)) {
                DRM_DEBUG_KMS("Error reading LSPCON mode\n");
                return DRM_LSPCON_MODE_INVALID;
        }
@@ -176,11 +177,12 @@ out:
 static int lspcon_change_mode(struct intel_lspcon *lspcon,
                              enum drm_lspcon_mode mode)
 {
+       struct intel_dp *intel_dp = lspcon_to_intel_dp(lspcon);
        int err;
        enum drm_lspcon_mode current_mode;
-       struct i2c_adapter *adapter = &lspcon_to_intel_dp(lspcon)->aux.ddc;
+       struct i2c_adapter *adapter = &intel_dp->aux.ddc;
 
-       err = drm_lspcon_get_mode(adapter, &current_mode);
+       err = drm_lspcon_get_mode(intel_dp->aux.drm_dev, adapter, &current_mode);
        if (err) {
                DRM_ERROR("Error reading LSPCON mode\n");
                return err;
@@ -191,7 +193,7 @@ static int lspcon_change_mode(struct intel_lspcon *lspcon,
                return 0;
        }
 
-       err = drm_lspcon_set_mode(adapter, mode);
+       err = drm_lspcon_set_mode(intel_dp->aux.drm_dev, adapter, mode);
        if (err < 0) {
                DRM_ERROR("LSPCON mode change failed\n");
                return err;
@@ -222,7 +224,8 @@ static bool lspcon_probe(struct intel_lspcon *lspcon)
 {
        int retry;
        enum drm_dp_dual_mode_type adaptor_type;
-       struct i2c_adapter *adapter = &lspcon_to_intel_dp(lspcon)->aux.ddc;
+       struct intel_dp *intel_dp = lspcon_to_intel_dp(lspcon);
+       struct i2c_adapter *adapter = &intel_dp->aux.ddc;
        enum drm_lspcon_mode expected_mode;
 
        expected_mode = lspcon_wake_native_aux_ch(lspcon) ?
@@ -233,7 +236,7 @@ static bool lspcon_probe(struct intel_lspcon *lspcon)
                if (retry)
                        usleep_range(500, 1000);
 
-               adaptor_type = drm_dp_dual_mode_detect(adapter);
+               adaptor_type = drm_dp_dual_mode_detect(intel_dp->aux.drm_dev, adapter);
                if (adaptor_type == DRM_DP_DUAL_MODE_LSPCON)
                        break;
        }