|
@@ -251,6 +251,10 @@ exynos_drm_crtc_mode_set(struct drm_crtc *crtc, struct drm_display_mode *mode,
|
|
|
struct drm_display_mode *adjusted_mode, int x, int y,
|
|
|
struct drm_framebuffer *old_fb)
|
|
|
{
|
|
|
+ struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(crtc);
|
|
|
+ struct exynos_drm_overlay *overlay = &exynos_crtc->overlay;
|
|
|
+ int ret;
|
|
|
+
|
|
|
DRM_DEBUG_KMS("%s\n", __FILE__);
|
|
|
|
|
|
/*
|
|
@@ -259,7 +263,13 @@ exynos_drm_crtc_mode_set(struct drm_crtc *crtc, struct drm_display_mode *mode,
|
|
|
*/
|
|
|
memcpy(&crtc->mode, adjusted_mode, sizeof(*adjusted_mode));
|
|
|
|
|
|
- return exynos_drm_crtc_update(crtc);
|
|
|
+ ret = exynos_drm_crtc_update(crtc);
|
|
|
+ if (ret)
|
|
|
+ return ret;
|
|
|
+
|
|
|
+ exynos_drm_fn_encoder(crtc, overlay, exynos_drm_encoder_crtc_mode_set);
|
|
|
+
|
|
|
+ return 0;
|
|
|
}
|
|
|
|
|
|
static int exynos_drm_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y,
|