atv_demod: fix the CVBS output level [1/1]
authornengwen.chen <nengwen.chen@amlogic.com>
Tue, 7 May 2019 06:41:16 +0000 (14:41 +0800)
committerTao Zeng <tao.zeng@amlogic.com>
Tue, 23 Jul 2019 02:42:09 +0000 (19:42 -0700)
PD#SWPL-11581, PD#TV-5622, PD#TV-8087, PD#TV-8088, PD#TV-8089

Problem:
fix the CVBS output level.

Solution:
1.fix peak level(1Vp-p).
2.fix sync head level(300+/-10%mv).
3.fix white level(700+/-10%mv).

Verify:
Verified by x301.

Change-Id: Ie4bd6ed0bb4d6db4443acae49ef98f1f4398d973
Signed-off-by: nengwen.chen <nengwen.chen@amlogic.com>
drivers/amlogic/atv_demod/atvdemod_func.c

index 26c2c77..4ce760a 100644 (file)
@@ -242,13 +242,17 @@ void atv_dmd_misc(void)
                        == AM_TUNER_MXL661) {
                /*test in sky*/
                atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x04, 0xbffa0000);
-               atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x00, 0x6f4000);
+               atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x00, 0x764000);
                /*guanzhong@20151013 fix nonstd def is:0x0c010301;0x0c020601*/
                atv_dmd_wr_long(APB_BLOCK_ADDR_CARR_RCVY, 0x24, 0xc030901);
+       } else if (amlatvdemod_devp->tuners[amlatvdemod_devp->tuner_cur].cfg.id
+                       == AM_TUNER_ATBM2040) {
+               atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x04, 0xc8fa0000);
+               atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x00, 0x704000);
        } else {
                /*zhuangwei 0xdafa0000*/
                atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x04, 0xc8fa0000);
-               atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x00, 0x554000);
+               atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS, 0x00, 0x764000);
        }
        /*zhuangwei*/
        atv_dmd_wr_long(APB_BLOCK_ADDR_DAC_UPS_24M, 0x04, 0xdafa0000);