diff options
author | Fabien DESSENNE <fabien.dessenne@st.com> | 2017-01-12 11:27:37 -0500 |
---|---|---|
committer | Vincent Abriou <vincent.abriou@st.com> | 2017-02-10 03:34:39 -0500 |
commit | 6801723b0187c0bb0803758b7b7ef14ba22fdcf2 (patch) | |
tree | 7696405c5238cb7d041bc64a6c7eb337adf295c8 | |
parent | c62052d1469d283aff31527bfdccd9da08a46005 (diff) |
drm/sti: do not check hw scaling if mode is not set
Fix a division by 0 case : in some cases, when the HQVDP plane is being
disabled atomic_check() is called with "mode->clock = 0".
In that case, do not check for scaling capabilities.
Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
Acked-by: Vincent Abriou <vincent.abriou@st.com>
-rw-r--r-- | drivers/gpu/drm/sti/sti_hqvdp.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/gpu/drm/sti/sti_hqvdp.c b/drivers/gpu/drm/sti/sti_hqvdp.c index 4376fd8a8e52..66f843148ef7 100644 --- a/drivers/gpu/drm/sti/sti_hqvdp.c +++ b/drivers/gpu/drm/sti/sti_hqvdp.c | |||
@@ -1037,9 +1037,9 @@ static int sti_hqvdp_atomic_check(struct drm_plane *drm_plane, | |||
1037 | src_w = state->src_w >> 16; | 1037 | src_w = state->src_w >> 16; |
1038 | src_h = state->src_h >> 16; | 1038 | src_h = state->src_h >> 16; |
1039 | 1039 | ||
1040 | if (!sti_hqvdp_check_hw_scaling(hqvdp, mode, | 1040 | if (mode->clock && !sti_hqvdp_check_hw_scaling(hqvdp, mode, |
1041 | src_w, src_h, | 1041 | src_w, src_h, |
1042 | dst_w, dst_h)) { | 1042 | dst_w, dst_h)) { |
1043 | DRM_ERROR("Scaling beyond HW capabilities\n"); | 1043 | DRM_ERROR("Scaling beyond HW capabilities\n"); |
1044 | return -EINVAL; | 1044 | return -EINVAL; |
1045 | } | 1045 | } |