diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_display.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 373c2a005ec1..228621d07743 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c | |||
@@ -5481,10 +5481,10 @@ static struct drm_display_mode load_detect_mode = { | |||
5481 | 704, 832, 0, 480, 489, 491, 520, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC), | 5481 | 704, 832, 0, 480, 489, 491, 520, 0, DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC), |
5482 | }; | 5482 | }; |
5483 | 5483 | ||
5484 | struct drm_crtc *intel_get_load_detect_pipe(struct intel_encoder *intel_encoder, | 5484 | bool intel_get_load_detect_pipe(struct intel_encoder *intel_encoder, |
5485 | struct drm_connector *connector, | 5485 | struct drm_connector *connector, |
5486 | struct drm_display_mode *mode, | 5486 | struct drm_display_mode *mode, |
5487 | int *dpms_mode) | 5487 | int *dpms_mode) |
5488 | { | 5488 | { |
5489 | struct intel_crtc *intel_crtc; | 5489 | struct intel_crtc *intel_crtc; |
5490 | struct drm_crtc *possible_crtc; | 5490 | struct drm_crtc *possible_crtc; |
@@ -5517,7 +5517,7 @@ struct drm_crtc *intel_get_load_detect_pipe(struct intel_encoder *intel_encoder, | |||
5517 | crtc_funcs->dpms(crtc, DRM_MODE_DPMS_ON); | 5517 | crtc_funcs->dpms(crtc, DRM_MODE_DPMS_ON); |
5518 | encoder_funcs->dpms(encoder, DRM_MODE_DPMS_ON); | 5518 | encoder_funcs->dpms(encoder, DRM_MODE_DPMS_ON); |
5519 | } | 5519 | } |
5520 | return crtc; | 5520 | return true; |
5521 | } | 5521 | } |
5522 | 5522 | ||
5523 | /* Find an unused one (if possible) */ | 5523 | /* Find an unused one (if possible) */ |
@@ -5537,7 +5537,8 @@ struct drm_crtc *intel_get_load_detect_pipe(struct intel_encoder *intel_encoder, | |||
5537 | * If we didn't find an unused CRTC, don't use any. | 5537 | * If we didn't find an unused CRTC, don't use any. |
5538 | */ | 5538 | */ |
5539 | if (!crtc) { | 5539 | if (!crtc) { |
5540 | return NULL; | 5540 | DRM_DEBUG_KMS("no pipe available for load-detect\n"); |
5541 | return false; | ||
5541 | } | 5542 | } |
5542 | 5543 | ||
5543 | encoder->crtc = crtc; | 5544 | encoder->crtc = crtc; |
@@ -5561,10 +5562,11 @@ struct drm_crtc *intel_get_load_detect_pipe(struct intel_encoder *intel_encoder, | |||
5561 | encoder_funcs->mode_set(encoder, &crtc->mode, &crtc->mode); | 5562 | encoder_funcs->mode_set(encoder, &crtc->mode, &crtc->mode); |
5562 | encoder_funcs->commit(encoder); | 5563 | encoder_funcs->commit(encoder); |
5563 | } | 5564 | } |
5565 | |||
5564 | /* let the connector get through one full cycle before testing */ | 5566 | /* let the connector get through one full cycle before testing */ |
5565 | intel_wait_for_vblank(dev, intel_crtc->pipe); | 5567 | intel_wait_for_vblank(dev, intel_crtc->pipe); |
5566 | 5568 | ||
5567 | return crtc; | 5569 | return true; |
5568 | } | 5570 | } |
5569 | 5571 | ||
5570 | void intel_release_load_detect_pipe(struct intel_encoder *intel_encoder, | 5572 | void intel_release_load_detect_pipe(struct intel_encoder *intel_encoder, |