From 8e04534d8c7c2115fe20911c7c554a54f161bd3c Mon Sep 17 00:00:00 2001 From: Damon Ding Date: Tue, 22 Mar 2022 19:28:47 +0800 Subject: [PATCH] drm/rockchip: vop: assign crtc atomic API mode_valid In order to avoid the invalid settings of display mode, assign crtc atomic API mode_valid as vop_crtc_mode_valid. Signed-off-by: Damon Ding Change-Id: I9abc1e93308d18bde55027163b4c01f32a8429a4 --- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index 4e679e7e61d8..d0f267eb58db 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c @@ -2651,10 +2651,10 @@ remove: } static enum drm_mode_status -vop_crtc_mode_valid(struct drm_crtc *crtc, const struct drm_display_mode *mode, - int output_type) +vop_crtc_mode_valid(struct drm_crtc *crtc, const struct drm_display_mode *mode) { struct vop *vop = to_vop(crtc); + struct rockchip_crtc_state *s = to_rockchip_crtc_state(crtc->state); const struct vop_data *vop_data = vop->data; int request_clock = mode->clock; int clock; @@ -2674,8 +2674,8 @@ vop_crtc_mode_valid(struct drm_crtc *crtc, const struct drm_display_mode *mode, /* * Hdmi or DisplayPort request a Accurate clock. */ - if (output_type == DRM_MODE_CONNECTOR_HDMIA || - output_type == DRM_MODE_CONNECTOR_DisplayPort) + if (s->output_type == DRM_MODE_CONNECTOR_HDMIA || + s->output_type == DRM_MODE_CONNECTOR_DisplayPort) if (clock != request_clock) return MODE_CLOCK_RANGE; @@ -2957,7 +2957,6 @@ static const struct rockchip_crtc_funcs private_crtc_funcs = { .debugfs_init = vop_crtc_debugfs_init, .debugfs_dump = vop_crtc_debugfs_dump, .regs_dump = vop_crtc_regs_dump, - .mode_valid = vop_crtc_mode_valid, .bandwidth = vop_crtc_bandwidth, .crtc_close = vop_crtc_close, .crtc_send_mcu_cmd = vop_crtc_send_mcu_cmd, @@ -3946,6 +3945,7 @@ static void vop_crtc_atomic_flush(struct drm_crtc *crtc, static const struct drm_crtc_helper_funcs vop_crtc_helper_funcs = { .mode_fixup = vop_crtc_mode_fixup, + .mode_valid = vop_crtc_mode_valid, .atomic_check = vop_crtc_atomic_check, .atomic_flush = vop_crtc_atomic_flush, .atomic_enable = vop_crtc_atomic_enable,