From a612851e7a30a5e35e692891232cd316e7a6f0e4 Mon Sep 17 00:00:00 2001 From: Jin-young Jeon Date: Tue, 15 Aug 2017 17:07:33 +0900 Subject: [PATCH] drm/tgm: tdm/pp: add shift setting operation during set size. add shift setting operation during set size This patch comes from product kernel. Change-Id: I98692214aaec340db6efecbcb240288d86e14241 Signed-off-by: Jin-young Jeon Signed-off-by: Inki Dae --- drivers/gpu/drm/tgm/tdm_pp_msc.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/gpu/drm/tgm/tdm_pp_msc.c b/drivers/gpu/drm/tgm/tdm_pp_msc.c index 2adc879..40eece6 100644 --- a/drivers/gpu/drm/tgm/tdm_pp_msc.c +++ b/drivers/gpu/drm/tgm/tdm_pp_msc.c @@ -62,6 +62,7 @@ #define SC_COEF_V_4T 4 #define SC_COEF_DEPTH 3 #define SC_POS_ALIGN 2 +#define SC_FMT_SHIFT 1 #define SC_UP_MAX SC_RATIO(1, 16) #define SC_DOWN_MIN SC_RATIO(4, 1) #define SC_DOWN_SWMIN SC_RATIO(16, 1) @@ -711,6 +712,10 @@ static int sc_src_set_size(struct device *dev, int swap, SCALER_SRC_YY(pos->y)); sc_write(cfg, SCALER_SRC_Y_POS); + cfg = (SCALER_SRC_YX(pos->x >> SC_FMT_SHIFT) | + SCALER_SRC_YY(pos->y >> SC_FMT_SHIFT)); + sc_write(cfg, SCALER_SRC_C_POS); + /* cropped size */ cfg = (SCALER_SRC_W(pos->w) | SCALER_SRC_H(pos->h)); -- 2.7.4