author | qiyao.zhou <qiyao.zhou@amlogic.com> | 2018-11-01 11:14:35 (GMT) |
---|---|---|
committer | Bencheng Jing <bencheng.jing@amlogic.com> | 2018-11-13 06:46:11 (GMT) |
commit | b3381238429e5b93c6ddf58807f49b8fee6bdd9d (patch) | |
tree | 945c294bef72c9fc1d63213453a2292f565467fc | |
parent | 812222a3570125bb28a565cace8d2d3ac8db4b63 (diff) | |
download | common-b3381238429e5b93c6ddf58807f49b8fee6bdd9d.zip common-b3381238429e5b93c6ddf58807f49b8fee6bdd9d.tar.gz common-b3381238429e5b93c6ddf58807f49b8fee6bdd9d.tar.bz2 |
amvecm: fix sr debanding issue
118506361
PD#OTT-302
Problem:
debanding enable in pc mode case
Solution:
close debanding in pc mode case
Verify:
none
Signed-off-by: qiyao.zhou <qiyao.zhou@amlogic.com>
Change-Id: I49f039275e3e6d52c3fba10830c76de26aa17db2
-rw-r--r-- | drivers/amlogic/media/enhancement/amvecm/amvecm.c | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/drivers/amlogic/media/enhancement/amvecm/amvecm.c b/drivers/amlogic/media/enhancement/amvecm/amvecm.c index 6f5dc9e..d98b3ae 100644 --- a/drivers/amlogic/media/enhancement/amvecm/amvecm.c +++ b/drivers/amlogic/media/enhancement/amvecm/amvecm.c @@ -72,7 +72,7 @@ #define AMVECM_MODULE_NAME "amvecm" #define AMVECM_DEVICE_NAME "amvecm" #define AMVECM_CLASS_NAME "amvecm" -#define AMVECM_VER "Ref.2018/07/03" +#define AMVECM_VER "Ref.2018/11/07" struct amvecm_dev_s { @@ -3131,6 +3131,17 @@ void pc_mode_process(void) VSYNC_WR_MPEG_REG_BITS(SRSHARP1_SR3_DERING_CTRL, 1, 28, 3); } + if (cpu_after_eq(MESON_CPU_MAJOR_ID_TXLX)) { + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 4, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 5, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 22, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 23, 1); + + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 4, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 5, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 22, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 23, 1); + } VSYNC_WR_MPEG_REG(VPP_VADJ_CTRL, 0xd); pc_mode_last = pc_mode; } else if ((pc_mode == 0) && (pc_mode != pc_mode_last)) { @@ -3179,6 +3190,17 @@ void pc_mode_process(void) VSYNC_WR_MPEG_REG_BITS(SRSHARP1_SR3_DERING_CTRL, 0, 28, 3); } + if (cpu_after_eq(MESON_CPU_MAJOR_ID_TXLX)) { + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 4, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 5, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 22, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP0_DB_FLT_CTRL, 0, 23, 1); + + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 4, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 5, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 22, 1); + VSYNC_WR_MPEG_REG_BITS(SRSHARP1_DB_FLT_CTRL, 0, 23, 1); + } VSYNC_WR_MPEG_REG(VPP_VADJ_CTRL, 0x0); pc_mode_last = pc_mode; } |