disp: msm: sde: add DSC 1.2 implementation

This change adds implementation to configure DSC 1.2 block
registers to enable both dsc1.1 and dsc1.2 specifications.

Change-Id: I2307d7dace05bf20384d3221e9aca65e296b12bd
Signed-off-by: Abhijit Kulkarni <kabhijit@codeaurora.org>
此提交包含在:
Abhijit Kulkarni
2019-05-20 17:13:12 -07:00
父節點 6be579d992
當前提交 a00714beae
共有 4 個檔案被更改,包括 369 行新增2 行删除

查看文件

@@ -10,6 +10,7 @@
#include "sde_hw_pingpong.h"
#include "sde_dbg.h"
#include "sde_kms.h"
#include "sde_hw_dsc_1_2.h"
#define DSC_COMMON_MODE 0x000
#define DSC_ENC 0X004
@@ -223,7 +224,7 @@ struct sde_hw_dsc *sde_hw_dsc_init(enum sde_dsc idx,
struct sde_hw_dsc *c;
struct sde_dsc_cfg *cfg;
u32 dsc_ctl_offset;
int rc;
int rc = -EINVAL;
c = kzalloc(sizeof(*c), GFP_KERNEL);
if (!c)
@@ -237,7 +238,14 @@ struct sde_hw_dsc *sde_hw_dsc_init(enum sde_dsc idx,
c->idx = idx;
c->caps = cfg;
_setup_dsc_ops(&c->ops, c->caps->features);
if (test_bit(SDE_DSC_HW_REV_1_1, &c->caps->features)) {
_setup_dsc_ops(&c->ops, c->caps->features);
} else if (test_bit(SDE_DSC_HW_REV_1_2, &c->caps->features)) {
sde_dsc1_2_setup_ops(&c->ops, c->caps->features);
} else {
SDE_ERROR("failed to setup ops\n");
goto blk_init_error;
}
rc = sde_hw_blk_init(&c->base, SDE_HW_BLK_DSC, idx, &sde_hw_ops);
if (rc) {