both crtc_state->adjusted_mode.hdisplay and crtc_state->adjusted_mode.vdisplay are 0 when switch dpms off, return -EINVAL cause switch dpms off fail.
Signed-off-by: Zhihui Chen chenzhihui4@huawei.com --- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c index 6527a97f68a3..722e369f30d4 100644 --- a/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c +++ b/drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c @@ -80,6 +80,9 @@ static int hibmc_plane_atomic_check(struct drm_plane *plane, return -EINVAL; }
+ if (!crtc_state->enable) + return 0; + if (state->crtc_x + state->crtc_w > crtc_state->adjusted_mode.hdisplay || state->crtc_y + state->crtc_h >