|
@@ -1,6 +1,6 @@
|
|
|
// SPDX-License-Identifier: GPL-2.0-only
|
|
|
/*
|
|
|
- * Copyright (c) 2012, 2015-2019, The Linux Foundation. All rights reserved.
|
|
|
+ * Copyright (c) 2012, 2015-2020, The Linux Foundation. All rights reserved.
|
|
|
*/
|
|
|
#define pr_fmt(fmt) "%s: " fmt, __func__
|
|
|
|
|
@@ -250,8 +250,8 @@ u32 sde_mdp_get_ot_limit(u32 width, u32 height, u32 pixfmt, u32 fps, u32 is_rd)
|
|
|
* If (total_source_pixels <= 124416000 && YUV) -> RD/WROT=4 //1080p60
|
|
|
* If (total_source_pixels <= 2160p && YUV && FPS <= 30) -> RD/WROT = 32
|
|
|
*/
|
|
|
- switch (mdata->mdss_version) {
|
|
|
- case SDE_MDP_HW_REV_540:
|
|
|
+ if (IS_SDE_MAJOR_MINOR_SAME(mdata->mdss_version,
|
|
|
+ SDE_MDP_HW_REV_540)) {
|
|
|
if (is_yuv) {
|
|
|
if (res <= (RES_1080p * 30))
|
|
|
ot_lim = 2;
|
|
@@ -264,18 +264,13 @@ u32 sde_mdp_get_ot_limit(u32 width, u32 height, u32 pixfmt, u32 fps, u32 is_rd)
|
|
|
} else if (fmt->bpp == 4 && res <= (RES_WQXGA * 60)) {
|
|
|
ot_lim = 16;
|
|
|
}
|
|
|
-
|
|
|
- break;
|
|
|
- default:
|
|
|
- if (is_yuv) {
|
|
|
- if (res <= (RES_1080p * 30))
|
|
|
- ot_lim = 2;
|
|
|
- else if (res <= (RES_1080p * 60))
|
|
|
- ot_lim = 4;
|
|
|
- }
|
|
|
- break;
|
|
|
+ } else if (IS_SDE_MAJOR_SAME(mdata->mdss_version,
|
|
|
+ SDE_MDP_HW_REV_600) || is_yuv) {
|
|
|
+ if (res <= (RES_1080p * 30))
|
|
|
+ ot_lim = 2;
|
|
|
+ else if (res <= (RES_1080p * 60))
|
|
|
+ ot_lim = 4;
|
|
|
}
|
|
|
-
|
|
|
exit:
|
|
|
SDEROT_DBG("ot_lim=%d\n", ot_lim);
|
|
|
return ot_lim;
|