diff options
author | Fabien DESSENNE <fabien.dessenne@st.com> | 2017-01-12 19:27:37 +0300 |
---|---|---|
committer | Vincent Abriou <vincent.abriou@st.com> | 2017-02-10 11:34:39 +0300 |
commit | 6801723b0187c0bb0803758b7b7ef14ba22fdcf2 (patch) | |
tree | 7696405c5238cb7d041bc64a6c7eb337adf295c8 | |
parent | c62052d1469d283aff31527bfdccd9da08a46005 (diff) | |
download | linux-6801723b0187c0bb0803758b7b7ef14ba22fdcf2.tar.xz |
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, src_w = state->src_w >> 16; src_h = state->src_h >> 16; - if (!sti_hqvdp_check_hw_scaling(hqvdp, mode, - src_w, src_h, - dst_w, dst_h)) { + if (mode->clock && !sti_hqvdp_check_hw_scaling(hqvdp, mode, + src_w, src_h, + dst_w, dst_h)) { DRM_ERROR("Scaling beyond HW capabilities\n"); return -EINVAL; } |