From 8303bc26691198c4771658d73d882081eb04ed79 Mon Sep 17 00:00:00 2001 From: Krishna Manikandan Date: Thu, 25 Jun 2020 11:53:28 +0530 Subject: [PATCH] disp: rotator: add rev checks for rotator for holi target Add revision checks required for rotator for holi target. Change-Id: Ie35d888d7681c97d681e2b2d6b564e0a7e1f11f2 Signed-off-by: Krishna Manikandan --- rotator/sde_rotator_base.h | 3 ++- rotator/sde_rotator_r3.c | 15 +++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/rotator/sde_rotator_base.h b/rotator/sde_rotator_base.h index de6512043e..620bf94ade 100644 --- a/rotator/sde_rotator_base.h +++ b/rotator/sde_rotator_base.h @@ -1,6 +1,6 @@ /* SPDX-License-Identifier: GPL-2.0-only */ /* - * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved. + * Copyright (c) 2015-2020, The Linux Foundation. All rights reserved. */ #ifndef __SDE_ROTATOR_BASE_H__ @@ -47,6 +47,7 @@ #define SDE_MDP_HW_REV_540 SDE_MDP_REV(5, 4, 0) /* sdmtrinket v1.0 */ #define SDE_MDP_HW_REV_600 SDE_MDP_REV(6, 0, 0) /* msmnile+ v1.0 */ #define SDE_MDP_HW_REV_630 SDE_MDP_REV(6, 3, 0) /* bengal v1.0 */ +#define SDE_MDP_HW_REV_660 SDE_MDP_REV(6, 6, 0) /* holi */ #define SDE_MDP_VBIF_4_LEVEL_REMAPPER 4 #define SDE_MDP_VBIF_8_LEVEL_REMAPPER 8 diff --git a/rotator/sde_rotator_r3.c b/rotator/sde_rotator_r3.c index ec4ac03d11..8959f188d2 100644 --- a/rotator/sde_rotator_r3.c +++ b/rotator/sde_rotator_r3.c @@ -3500,6 +3500,21 @@ static int sde_rotator_hw_rev_init(struct sde_hw_rotator *rot) ARRAY_SIZE(sde_hw_rotator_v4_outpixfmts); rot->downscale_caps = "LINEAR/1.5/2/4/8/16/32/64 TILE/1.5/2/4 TP10/1.5/2"; + } else if (IS_SDE_MAJOR_MINOR_SAME(mdata->mdss_version, + SDE_MDP_HW_REV_660)) { + SDEROT_DBG("Sys cache inline rotation not supported\n"); + set_bit(SDE_CAPS_PARTIALWR, mdata->sde_caps_map); + set_bit(SDE_CAPS_HW_TIMESTAMP, mdata->sde_caps_map); + rot->inpixfmts[SDE_ROTATOR_MODE_OFFLINE] = + sde_hw_rotator_v4_inpixfmts; + rot->num_inpixfmt[SDE_ROTATOR_MODE_OFFLINE] = + ARRAY_SIZE(sde_hw_rotator_v4_inpixfmts); + rot->outpixfmts[SDE_ROTATOR_MODE_OFFLINE] = + sde_hw_rotator_v4_outpixfmts; + rot->num_outpixfmt[SDE_ROTATOR_MODE_OFFLINE] = + ARRAY_SIZE(sde_hw_rotator_v4_outpixfmts); + rot->downscale_caps = + "LINEAR/1.5/2/4/8/16/32/64 TILE/1.5/2/4 TP10/1.5/2"; } else { rot->inpixfmts[SDE_ROTATOR_MODE_OFFLINE] = sde_hw_rotator_v3_inpixfmts;