dtv_demod: fix lock fail when switch to ATSC (V3.5.047) [1/1]

PD#SWPL-163477

Problem:
The first time locking a ATSC signal with
positive offset will fail

Solution:
set tuner params firstly,
then call tuner get if function.

Verify:
R + smith

Change-Id: I50bfb0ab1324d59670761788858c623bd0424ceb
Signed-off-by: min.yang <min.yang@amlogic.com>
This commit is contained in:
min.yang
2024-07-12 10:42:19 +08:00
committed by gerrit autosubmit
parent 4c01570805
commit f80db46357
2 changed files with 6 additions and 8 deletions
+3 -6
View File
@@ -247,9 +247,12 @@ int gxtv_demod_atsc_set_frontend(struct dvb_frontend *fe)
demod->atsc_mode = c->modulation;
demod->last_qam_mode = QAM_MODE_NUM;
tuner_set_params(fe);
if (c->modulation > QAM_AUTO) {
if (fe->ops.tuner_ops.get_if_frequency)
fe->ops.tuner_ops.get_if_frequency(fe, tuner_freq);
if (cpu_after_eq(MESON_CPU_MAJOR_ID_TL1)) {
/* bit0~3: AGC bandwidth select */
atsc_write_reg_v4(ATSC_DEMOD_REG_0X58, 0x528220d);
@@ -270,13 +273,7 @@ int gxtv_demod_atsc_set_frontend(struct dvb_frontend *fe)
atsc_write_reg_bits_v4(ATSC_AGC_REG_0X40,
atsc_agc_target ? atsc_agc_target : agc_target, 0, 8);
}
}
}
tuner_set_params(fe);
if (c->modulation > QAM_AUTO) {
if (cpu_after_eq(MESON_CPU_MAJOR_ID_TL1)) {
val_0x6a.bits = atsc_read_reg_v4(ATSC_DEMOD_REG_0X6A);
val_0x6a.b.peak_thd = 0x6;//Let CCFO Quality over 6
atsc_write_reg_v4(ATSC_DEMOD_REG_0X6A, val_0x6a.bits);
@@ -171,6 +171,7 @@
/* V3.5.044 fix atsc VBS to NTSC N+1 aci and R.1 test */
/* V3.5.045 fix low probability missing 8vsb channel */
/* V3.5.046 optimize dvb-c auto qam for T3 T5D */
/* V3.5.047 fix lock fail when switch to atsc */
/****************************************************/
/****************************************************************/
/* AMLDTVDEMOD_VER Description: */
@@ -187,8 +188,8 @@
/*->The last four digits indicate the release time */
/****************************************************************/
#define KERNEL_4_9_EN 1
#define AMLDTVDEMOD_VER "V3.5.046"
#define DTVDEMOD_VER "2024/07/10: optimize dvb-c auto qam for T3 T5D"
#define AMLDTVDEMOD_VER "V3.5.047"
#define DTVDEMOD_VER "2024/07/12: fix lock fail when switch to atsc"
#define AMLDTVDEMOD_T2_FW_VER "v1430.20240326"
#define DEMOD_DEVICE_NAME "dtvdemod"