diff options
| -rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index f3133d81fb9d..016e7bc6af0a 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
| @@ -4139,9 +4139,16 @@ static uint8_t intel_dp_autotest_edid(struct intel_dp *intel_dp) | |||
| 4139 | intel_dp->aux.i2c_defer_count); | 4139 | intel_dp->aux.i2c_defer_count); |
| 4140 | intel_dp->compliance_test_data = INTEL_DP_RESOLUTION_FAILSAFE; | 4140 | intel_dp->compliance_test_data = INTEL_DP_RESOLUTION_FAILSAFE; |
| 4141 | } else { | 4141 | } else { |
| 4142 | struct edid *block = intel_connector->detect_edid; | ||
| 4143 | |||
| 4144 | /* We have to write the checksum | ||
| 4145 | * of the last block read | ||
| 4146 | */ | ||
| 4147 | block += intel_connector->detect_edid->extensions; | ||
| 4148 | |||
| 4142 | if (!drm_dp_dpcd_write(&intel_dp->aux, | 4149 | if (!drm_dp_dpcd_write(&intel_dp->aux, |
| 4143 | DP_TEST_EDID_CHECKSUM, | 4150 | DP_TEST_EDID_CHECKSUM, |
| 4144 | &intel_connector->detect_edid->checksum, | 4151 | &block->checksum, |
| 4145 | 1)) | 4152 | 1)) |
| 4146 | DRM_DEBUG_KMS("Failed to write EDID checksum\n"); | 4153 | DRM_DEBUG_KMS("Failed to write EDID checksum\n"); |
| 4147 | 4154 | ||
