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>
此提交包含在:
@@ -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) {
|
||||
|
新增問題並參考
封鎖使用者