Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) /* SPDX-License-Identifier: GPL-2.0-or-later */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3)  * stv0900_init.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5)  * Driver for ST STV0900 satellite demodulator IC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7)  * Copyright (C) ST Microelectronics.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8)  * Copyright (C) 2009 NetUP Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9)  * Copyright (C) 2009 Igor M. Liplianin <liplianin@netup.ru>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) #ifndef STV0900_INIT_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) #define STV0900_INIT_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) #include "stv0900_priv.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) /* DVBS2 C/N Look-Up table */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) static const struct stv0900_table stv0900_s2_cn = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 	55,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 	{
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 		{ -30,	13348 }, /*C/N=-3dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 		{ -20,	12640 }, /*C/N=-2dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 		{ -10,	11883 }, /*C/N=-1dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 		{ 0,	11101 }, /*C/N=-0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 		{ 5,	10718 }, /*C/N=0.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 		{ 10,	10339 }, /*C/N=1.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 		{ 15,	9947 }, /*C/N=1.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 		{ 20,	9552 }, /*C/N=2.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 		{ 25,	9183 }, /*C/N=2.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 		{ 30,	8799 }, /*C/N=3.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 		{ 35,	8422 }, /*C/N=3.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 		{ 40,	8062 }, /*C/N=4.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 		{ 45,	7707 }, /*C/N=4.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 		{ 50,	7353 }, /*C/N=5.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) 		{ 55,	7025 }, /*C/N=5.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 		{ 60,	6684 }, /*C/N=6.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 		{ 65,	6331 }, /*C/N=6.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 		{ 70,	6036 }, /*C/N=7.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 		{ 75,	5727 }, /*C/N=7.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) 		{ 80,	5437 }, /*C/N=8.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 		{ 85,	5164 }, /*C/N=8.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 		{ 90,	4902 }, /*C/N=9.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) 		{ 95,	4653 }, /*C/N=9.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 		{ 100,	4408 }, /*C/N=10.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 		{ 105,	4187 }, /*C/N=10.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) 		{ 110,	3961 }, /*C/N=11.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 		{ 115,	3751 }, /*C/N=11.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 		{ 120,	3558 }, /*C/N=12.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) 		{ 125,	3368 }, /*C/N=12.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 		{ 130,	3191 }, /*C/N=13.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 		{ 135,	3017 }, /*C/N=13.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 		{ 140,	2862 }, /*C/N=14.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 		{ 145,	2710 }, /*C/N=14.5dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 		{ 150,	2565 }, /*C/N=15.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 		{ 160,	2300 }, /*C/N=16.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 		{ 170,	2058 }, /*C/N=17.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 		{ 180,	1849 }, /*C/N=18.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 		{ 190,	1663 }, /*C/N=19.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 		{ 200,	1495 }, /*C/N=20.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 		{ 210,	1349 }, /*C/N=21.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 		{ 220,	1222 }, /*C/N=22.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 		{ 230,	1110 }, /*C/N=23.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 		{ 240,	1011 }, /*C/N=24.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 		{ 250,	925 }, /*C/N=25.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 		{ 260,	853 }, /*C/N=26.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 		{ 270,	789 }, /*C/N=27.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 		{ 280,	734 }, /*C/N=28.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 		{ 290,	690 }, /*C/N=29.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 		{ 300,	650 }, /*C/N=30.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 		{ 310,	619 }, /*C/N=31.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 		{ 320,	593 }, /*C/N=32.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 		{ 330,	571 }, /*C/N=33.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 		{ 400,	498 }, /*C/N=40.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 		{ 450,	484 }, /*C/N=45.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 		{ 500,	481 }  /*C/N=50.0dB*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 	}
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) /* RF level C/N Look-Up table */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) static const struct stv0900_table stv0900_rf = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 	14,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 	{
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 		{ -5, 0xCAA1 }, /*-5dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 		{ -10, 0xC229 }, /*-10dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 		{ -15, 0xBB08 }, /*-15dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 		{ -20, 0xB4BC }, /*-20dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 		{ -25, 0xAD5A }, /*-25dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 		{ -30, 0xA298 }, /*-30dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) 		{ -35, 0x98A8 }, /*-35dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 		{ -40, 0x8389 }, /*-40dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 		{ -45, 0x59BE }, /*-45dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 		{ -50, 0x3A14 }, /*-50dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 		{ -55, 0x2D11 }, /*-55dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 		{ -60, 0x210D }, /*-60dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 		{ -65, 0xA14F }, /*-65dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 		{ -70, 0x7AA }	/*-70dBm*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) 	}
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) struct stv0900_car_loop_optim {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) 	enum fe_stv0900_modcode modcode;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) 	u8 car_loop_pilots_on_2;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 	u8 car_loop_pilots_off_2;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) 	u8 car_loop_pilots_on_5;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) 	u8 car_loop_pilots_off_5;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 	u8 car_loop_pilots_on_10;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 	u8 car_loop_pilots_off_10;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 	u8 car_loop_pilots_on_20;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 	u8 car_loop_pilots_off_20;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) 	u8 car_loop_pilots_on_30;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 	u8 car_loop_pilots_off_30;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) struct stv0900_short_frames_car_loop_optim {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	enum fe_stv0900_modulation modulation;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	u8 car_loop_cut12_2;    /* Cut 1.2,   SR<=3msps     */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 	u8 car_loop_cut20_2;    /* Cut 2.0,   SR<3msps      */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	u8 car_loop_cut12_5;    /* Cut 1.2,   3<SR<=7msps   */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 	u8 car_loop_cut20_5;    /* Cut 2.0,   3<SR<=7msps   */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 	u8 car_loop_cut12_10;   /* Cut 1.2,   7<SR<=15msps  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 	u8 car_loop_cut20_10;   /* Cut 2.0,   7<SR<=15msps  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 	u8 car_loop_cut12_20;   /* Cut 1.2,   10<SR<=25msps */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 	u8 car_loop_cut20_20;   /* Cut 2.0,   10<SR<=25msps */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 	u8 car_loop_cut12_30;   /* Cut 1.2,   25<SR<=45msps */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 	u8 car_loop_cut20_30;   /* Cut 2.0,   10<SR<=45msps */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) struct stv0900_short_frames_car_loop_optim_vs_mod {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 	enum fe_stv0900_modulation modulation;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 	u8 car_loop_2;	  /* SR<3msps      */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 	u8 car_loop_5;	  /* 3<SR<=7msps   */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 	u8 car_loop_10;   /* 7<SR<=15msps  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 	u8 car_loop_20;   /* 10<SR<=25msps */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 	u8 car_loop_30;   /* 10<SR<=45msps */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) /* Cut 1.x Tracking carrier loop carrier QPSK 1/2 to 8PSK 9/10 long Frame */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) static const struct stv0900_car_loop_optim FE_STV0900_S2CarLoop[14] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 	/*Modcod		2MPon	2MPoff	5MPon	5MPoff	10MPon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 				10MPoff	20MPon	20MPoff	30MPon	30MPoff */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 	{ STV0900_QPSK_12,	0x1C,	0x0D,	0x1B,	0x2C,	0x3A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 				0x1C,	0x2A,	0x3B,	0x2A,	0x1B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	{ STV0900_QPSK_35,	0x2C,	0x0D,	0x2B,	0x2C,	0x3A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 				0x0C,	0x3A,	0x2B,	0x2A,	0x0B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 	{ STV0900_QPSK_23,	0x2C,	0x0D,	0x2B,	0x2C,	0x0B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 				0x0C,	0x3A,	0x1B,	0x2A,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 	{ STV0900_QPSK_34,	0x3C,	0x0D,	0x3B,	0x1C,	0x0B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 				0x3B,	0x3A,	0x0B,	0x2A,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 	{ STV0900_QPSK_45,	0x3C,	0x0D,	0x3B,	0x1C,	0x0B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 				0x3B,	0x3A,	0x0B,	0x2A,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 	{ STV0900_QPSK_56,	0x0D,	0x0D,	0x3B,	0x1C,	0x0B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 				0x3B,	0x3A,	0x0B,	0x2A,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 	{ STV0900_QPSK_89,	0x0D,	0x0D,	0x3B,	0x1C,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 				0x3B,	0x3A,	0x0B,	0x2A,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 	{ STV0900_QPSK_910,	0x1D,	0x0D,	0x3B,	0x1C,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) 				0x3B,	0x3A,	0x0B,	0x2A,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	{ STV0900_8PSK_35,	0x29,	0x3B,	0x09,	0x2B,	0x38,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 				0x0B,	0x18,	0x1A,	0x08,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	{ STV0900_8PSK_23,	0x0A,	0x3B,	0x29,	0x2B,	0x19,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 				0x0B,	0x38,	0x1A,	0x18,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 	{ STV0900_8PSK_34,	0x3A,	0x3B,	0x2A,	0x2B,	0x39,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 				0x0B,	0x19,	0x1A,	0x38,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 	{ STV0900_8PSK_56,	0x1B,	0x3B,	0x0B,	0x2B,	0x1A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 				0x0B,	0x39,	0x1A,	0x19,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 	{ STV0900_8PSK_89,	0x3B,	0x3B,	0x0B,	0x2B,	0x2A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 				0x0B,	0x39,	0x1A,	0x29,	0x39 },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 	{ STV0900_8PSK_910,	0x3B,	0x3B,	0x0B,	0x2B,	0x2A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 				0x0B,	0x39,	0x1A,	0x29,	0x39 }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) /* Cut 2.0 Tracking carrier loop carrier QPSK 1/2 to 8PSK 9/10 long Frame */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) static const struct stv0900_car_loop_optim FE_STV0900_S2CarLoopCut20[14] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 	/* Modcod		2MPon	2MPoff	5MPon	5MPoff	10MPon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 				10MPoff	20MPon	20MPoff	30MPon	30MPoff */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 	{ STV0900_QPSK_12,	0x1F,	0x3F,	0x1E,	0x3F,	0x3D,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 				0x1F,	0x3D,	0x3E,	0x3D,	0x1E },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 	{ STV0900_QPSK_35,	0x2F,	0x3F,	0x2E,	0x2F,	0x3D,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 				0x0F,	0x0E,	0x2E,	0x3D,	0x0E },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 	{ STV0900_QPSK_23,	0x2F,	0x3F,	0x2E,	0x2F,	0x0E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 				0x0F,	0x0E,	0x1E,	0x3D,	0x3D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 	{ STV0900_QPSK_34,	0x3F,	0x3F,	0x3E,	0x1F,	0x0E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 				0x3E,	0x0E,	0x1E,	0x3D,	0x3D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 	{ STV0900_QPSK_45,	0x3F,	0x3F,	0x3E,	0x1F,	0x0E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 				0x3E,	0x0E,	0x1E,	0x3D,	0x3D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 	{ STV0900_QPSK_56,	0x3F,	0x3F,	0x3E,	0x1F,	0x0E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 				0x3E,	0x0E,	0x1E,	0x3D,	0x3D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	{ STV0900_QPSK_89,	0x3F,	0x3F,	0x3E,	0x1F,	0x1E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 				0x3E,	0x0E,	0x1E,	0x3D,	0x3D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 	{ STV0900_QPSK_910,	0x3F,	0x3F,	0x3E,	0x1F,	0x1E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 				0x3E,	0x0E,	0x1E,	0x3D,	0x3D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 	{ STV0900_8PSK_35,	0x3c,	0x0c,	0x1c,	0x3b,	0x0c,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 				0x3b,	0x2b,	0x2b,	0x1b,	0x2b },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 	{ STV0900_8PSK_23,	0x1d,	0x0c,	0x3c,	0x0c,	0x2c,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 				0x3b,	0x0c,	0x2b,	0x2b,	0x2b },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) 	{ STV0900_8PSK_34,	0x0e,	0x1c,	0x3d,	0x0c,	0x0d,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 				0x3b,	0x2c,	0x3b,	0x0c,	0x2b },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 	{ STV0900_8PSK_56,	0x2e,	0x3e,	0x1e,	0x2e,	0x2d,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 				0x1e,	0x3c,	0x2d,	0x2c,	0x1d },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 	{ STV0900_8PSK_89,	0x3e,	0x3e,	0x1e,	0x2e,	0x3d,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 				0x1e,	0x0d,	0x2d,	0x3c,	0x1d },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 	{ STV0900_8PSK_910,	0x3e,	0x3e,	0x1e,	0x2e,	0x3d,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 				0x1e,	0x1d,	0x2d,	0x0d,	0x1d },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) /* Cut 2.0 Tracking carrier loop carrier 16APSK 2/3 to 32APSK 9/10 long Frame */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) static const struct stv0900_car_loop_optim FE_STV0900_S2APSKCarLoopCut20[11] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 	/* Modcod		2MPon	2MPoff	5MPon	5MPoff	10MPon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 				10MPoff	20MPon	20MPoff	30MPon	30MPoff */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 	{ STV0900_16APSK_23,	0x0C,	0x0C,	0x0C,	0x0C,	0x1D,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 				0x0C,	0x3C,	0x0C,	0x2C,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 	{ STV0900_16APSK_34,	0x0C,	0x0C,	0x0C,	0x0C,	0x0E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 				0x0C,	0x2D,	0x0C,	0x1D,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 	{ STV0900_16APSK_45,	0x0C,	0x0C,	0x0C,	0x0C,	0x1E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 				0x0C,	0x3D,	0x0C,	0x2D,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 	{ STV0900_16APSK_56,	0x0C,	0x0C,	0x0C,	0x0C,	0x1E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 				0x0C,	0x3D,	0x0C,	0x2D,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 	{ STV0900_16APSK_89,	0x0C,	0x0C,	0x0C,	0x0C,	0x2E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 				0x0C,	0x0E,	0x0C,	0x3D,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) 	{ STV0900_16APSK_910,	0x0C,	0x0C,	0x0C,	0x0C,	0x2E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 				0x0C,	0x0E,	0x0C,	0x3D,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) 	{ STV0900_32APSK_34,	0x0C,	0x0C,	0x0C,	0x0C,	0x0C,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 				0x0C,	0x0C,	0x0C,	0x0C,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) 	{ STV0900_32APSK_45,	0x0C,	0x0C,	0x0C,	0x0C,	0x0C,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) 				0x0C,	0x0C,	0x0C,	0x0C,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 	{ STV0900_32APSK_56,	0x0C,	0x0C,	0x0C,	0x0C,	0x0C,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 				0x0C,	0x0C,	0x0C,	0x0C,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 	{ STV0900_32APSK_89,	0x0C,	0x0C,	0x0C,	0x0C,	0x0C,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) 				0x0C,	0x0C,	0x0C,	0x0C,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 	{ STV0900_32APSK_910,	0x0C,	0x0C,	0x0C,	0x0C,	0x0C,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 				0x0C,	0x0C,	0x0C,	0x0C,	0x0C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) /* Cut 2.0 Tracking carrier loop carrier QPSK 1/4 to QPSK 2/5 long Frame */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) static const struct stv0900_car_loop_optim FE_STV0900_S2LowQPCarLoopCut20[3] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) 	/* Modcod		2MPon	2MPoff	5MPon	5MPoff	10MPon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) 				10MPoff	20MPon	20MPoff	30MPon	30MPoff */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) 	{ STV0900_QPSK_14,	0x0F,	0x3F,	0x0E,	0x3F,	0x2D,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) 				0x2F,	0x2D,	0x1F,	0x3D,	0x3E },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) 	{ STV0900_QPSK_13,	0x0F,	0x3F,	0x0E,	0x3F,	0x2D,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) 				0x2F,	0x3D,	0x0F,	0x3D,	0x2E },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) 	{ STV0900_QPSK_25,	0x1F,	0x3F,	0x1E,	0x3F,	0x3D,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) 				0x1F,	0x3D,	0x3E,	0x3D,	0x2E }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) /* Cut 2.0 Tracking carrier loop carrier  short Frame, cut 1.2 and 2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) static const
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) struct stv0900_short_frames_car_loop_optim FE_STV0900_S2ShortCarLoop[4] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) 	/*Mod		2Mcut1.2 2Mcut2.0 5Mcut1.2 5Mcut2.0 10Mcut1.2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) 			10Mcut2.0 20Mcut1.2 20M_cut2.0 30Mcut1.2 30Mcut2.0*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) 	{ STV0900_QPSK,		0x3C,	0x2F,	0x2B,	0x2E,	0x0B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) 				0x0E,	0x3A,	0x0E,	0x2A,	0x3D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) 	{ STV0900_8PSK,		0x0B,	0x3E,	0x2A,	0x0E,	0x0A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) 				0x2D,	0x19,	0x0D,	0x09,	0x3C },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) 	{ STV0900_16APSK,	0x1B,	0x1E,	0x1B,	0x1E,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) 				0x1E,	0x3A,	0x3D,	0x2A,	0x2D },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) 	{ STV0900_32APSK,	0x1B,	0x1E,	0x1B,	0x1E,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) 				0x1E,	0x3A,	0x3D,	0x2A,	0x2D }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) static	const struct stv0900_car_loop_optim FE_STV0900_S2CarLoopCut30[14] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) 	/*Modcod		2MPon	2MPoff	5MPon	5MPoff	10MPon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) 				10MPoff	20MPon	20MPoff	30MPon	30MPoff	*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) 	{ STV0900_QPSK_12,	0x3C,	0x2C,	0x0C,	0x2C,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) 				0x2C,	0x1B,	0x1C,	0x0B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) 	{ STV0900_QPSK_35,	0x0D,	0x0D,	0x0C,	0x0D,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) 				0x3C,	0x1B,	0x1C,	0x0B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) 	{ STV0900_QPSK_23,	0x1D,	0x0D,	0x0C,	0x1D,	0x2B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) 				0x3C,	0x1B,	0x1C,	0x0B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) 	{ STV0900_QPSK_34,	0x1D,	0x1D,	0x0C,	0x1D,	0x2B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) 				0x3C,	0x1B,	0x1C,	0x0B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) 	{ STV0900_QPSK_45,	0x2D,	0x1D,	0x1C,	0x1D,	0x2B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) 				0x3C,	0x2B,	0x0C,	0x1B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) 	{ STV0900_QPSK_56,	0x2D,	0x1D,	0x1C,	0x1D,	0x2B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) 				0x3C,	0x2B,	0x0C,	0x1B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) 	{ STV0900_QPSK_89,	0x3D,	0x2D,	0x1C,	0x1D,	0x3B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) 				0x3C,	0x2B,	0x0C,	0x1B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) 	{ STV0900_QPSK_910,	0x3D,	0x2D,	0x1C,	0x1D,	0x3B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) 				0x3C,	0x2B,	0x0C,	0x1B,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) 	{ STV0900_8PSK_35,	0x39,	0x19,	0x39,	0x19,	0x19,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) 				0x19,	0x19,	0x19,	0x09,	0x19 },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) 	{ STV0900_8PSK_23,	0x2A,	0x39,	0x1A,	0x0A,	0x39,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) 				0x0A,	0x29,	0x39,	0x29,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) 	{ STV0900_8PSK_34,	0x0B,	0x3A,	0x0B,	0x0B,	0x3A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) 				0x1B,	0x1A,	0x0B,	0x1A,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) 	{ STV0900_8PSK_56,	0x0C,	0x1B,	0x3B,	0x2B,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) 				0x3B,	0x3A,	0x3B,	0x3A,	0x1B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) 	{ STV0900_8PSK_89,	0x2C,	0x2C,	0x2C,	0x1C,	0x2B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) 				0x0C,	0x0B,	0x3B,	0x0B,	0x1B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) 	{ STV0900_8PSK_910,	0x2C,	0x3C,	0x2C,	0x1C,	0x3B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) 				0x1C,	0x0B,	0x3B,	0x0B,	0x1B }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) static	const
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) struct stv0900_car_loop_optim FE_STV0900_S2APSKCarLoopCut30[11] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) 	/*Modcod		2MPon	2MPoff	5MPon	5MPoff	10MPon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) 				10MPoff	20MPon	20MPoff	30MPon	30MPoff	*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) 	{ STV0900_16APSK_23,	0x0A,	0x0A,	0x0A,	0x0A,	0x1A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) 				0x0A,	0x3A,	0x0A,	0x2A,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) 	{ STV0900_16APSK_34,	0x0A,	0x0A,	0x0A,	0x0A,	0x0B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) 				0x0A,	0x3B,	0x0A,	0x1B,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) 	{ STV0900_16APSK_45,	0x0A,	0x0A,	0x0A,	0x0A,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) 				0x0A,	0x3B,	0x0A,	0x2B,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) 	{ STV0900_16APSK_56,	0x0A,	0x0A,	0x0A,	0x0A,	0x1B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) 				0x0A,	0x3B,	0x0A,	0x2B,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) 	{ STV0900_16APSK_89,	0x0A,	0x0A,	0x0A,	0x0A,	0x2B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) 				0x0A,	0x0C,	0x0A,	0x3B,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) 	{ STV0900_16APSK_910,	0x0A,	0x0A,	0x0A,	0x0A,	0x2B,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) 				0x0A,	0x0C,	0x0A,	0x3B,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) 	{ STV0900_32APSK_34,	0x0A,	0x0A,	0x0A,	0x0A,	0x0A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) 				0x0A,	0x0A,	0x0A,	0x0A,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) 	{ STV0900_32APSK_45,	0x0A,	0x0A,	0x0A,	0x0A,	0x0A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) 				0x0A,	0x0A,	0x0A,	0x0A,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) 	{ STV0900_32APSK_56,	0x0A,	0x0A,	0x0A,	0x0A,	0x0A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) 				0x0A,	0x0A,	0x0A,	0x0A,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) 	{ STV0900_32APSK_89,	0x0A,	0x0A,	0x0A,	0x0A,	0x0A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) 				0x0A,	0x0A,	0x0A,	0x0A,	0x0A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) 	{ STV0900_32APSK_910,	0x0A,	0x0A,	0x0A,	0x0A,	0x0A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) 				0x0A,	0x0A,	0x0A,	0x0A,	0x0A }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) static	const
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) struct stv0900_car_loop_optim FE_STV0900_S2LowQPCarLoopCut30[3] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) 	/*Modcod		2MPon	2MPoff	5MPon	5MPoff	10MPon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) 				10MPoff	20MPon	20MPoff	30MPon	30MPoff*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) 	{ STV0900_QPSK_14,	0x0C,	0x3C,	0x0B,	0x3C,	0x2A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) 				0x2C,	0x2A,	0x1C,	0x3A,	0x3B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) 	{ STV0900_QPSK_13,	0x0C,	0x3C,	0x0B,	0x3C,	0x2A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) 				0x2C,	0x3A,	0x0C,	0x3A,	0x2B },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) 	{ STV0900_QPSK_25,	0x1C,	0x3C,	0x1B,	0x3C,	0x3A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) 				0x1C,	0x3A,	0x3B,	0x3A,	0x2B }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) static	const struct stv0900_short_frames_car_loop_optim_vs_mod
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) FE_STV0900_S2ShortCarLoopCut30[4] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) 	/*Mod		2Mcut3.0 5Mcut3.0 10Mcut3.0 20Mcut3.0 30Mcut3.0*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) 	{ STV0900_QPSK,		0x2C,	0x2B,	0x0B,	0x0B,	0x3A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) 	{ STV0900_8PSK,		0x3B,	0x0B,	0x2A,	0x0A,	0x39 },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) 	{ STV0900_16APSK,	0x1B,	0x1B,	0x1B,	0x3A,	0x2A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) 	{ STV0900_32APSK,	0x1B,	0x1B,	0x1B,	0x3A,	0x2A },
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) static const u16 STV0900_InitVal[181][2] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) 	{ R0900_OUTCFG		, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) 	{ R0900_AGCRF1CFG	, 0x11	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) 	{ R0900_AGCRF2CFG	, 0x13	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) 	{ R0900_TSGENERAL1X	, 0x14	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) 	{ R0900_TSTTNR2		, 0x21	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) 	{ R0900_TSTTNR4		, 0x21	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) 	{ R0900_P2_DISTXCTL	, 0x22	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) 	{ R0900_P2_F22TX	, 0xc0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) 	{ R0900_P2_F22RX	, 0xc0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) 	{ R0900_P2_DISRXCTL	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) 	{ R0900_P2_TNRSTEPS	, 0x87	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) 	{ R0900_P2_TNRGAIN	, 0x09	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) 	{ R0900_P2_DMDCFGMD	, 0xF9	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) 	{ R0900_P2_DEMOD	, 0x08	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) 	{ R0900_P2_DMDCFG3	, 0xc4	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) 	{ R0900_P2_CARFREQ	, 0xed	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) 	{ R0900_P2_TNRCFG2	, 0x02	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) 	{ R0900_P2_TNRCFG3	, 0x02	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) 	{ R0900_P2_LDT		, 0xd0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) 	{ R0900_P2_LDT2		, 0xb8	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) 	{ R0900_P2_TMGCFG	, 0xd2	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) 	{ R0900_P2_TMGTHRISE	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) 	{ R0900_P2_TMGTHFALL	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) 	{ R0900_P2_FECSPY	, 0x88	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) 	{ R0900_P2_FSPYDATA	, 0x3a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) 	{ R0900_P2_FBERCPT4	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) 	{ R0900_P2_FSPYBER	, 0x10	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) 	{ R0900_P2_ERRCTRL1	, 0x35	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) 	{ R0900_P2_ERRCTRL2	, 0xc1	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) 	{ R0900_P2_CFRICFG	, 0xf8	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) 	{ R0900_P2_NOSCFG	, 0x1c	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) 	{ R0900_P2_DMDT0M	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) 	{ R0900_P2_CORRELMANT	, 0x70	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) 	{ R0900_P2_CORRELABS	, 0x88	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) 	{ R0900_P2_AGC2O	, 0x5b	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) 	{ R0900_P2_AGC2REF	, 0x38	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) 	{ R0900_P2_CARCFG	, 0xe4	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) 	{ R0900_P2_ACLC		, 0x1A	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) 	{ R0900_P2_BCLC		, 0x09	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) 	{ R0900_P2_CARHDR	, 0x08	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) 	{ R0900_P2_KREFTMG	, 0xc1	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392) 	{ R0900_P2_SFRUPRATIO	, 0xf0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) 	{ R0900_P2_SFRLOWRATIO	, 0x70	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) 	{ R0900_P2_SFRSTEP	, 0x58	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) 	{ R0900_P2_TMGCFG2	, 0x01	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) 	{ R0900_P2_CAR2CFG	, 0x26	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) 	{ R0900_P2_BCLC2S2Q	, 0x86	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) 	{ R0900_P2_BCLC2S28	, 0x86	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) 	{ R0900_P2_SMAPCOEF7	, 0x77	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) 	{ R0900_P2_SMAPCOEF6	, 0x85	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) 	{ R0900_P2_SMAPCOEF5	, 0x77	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) 	{ R0900_P2_TSCFGL	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) 	{ R0900_P2_DMDCFG2	, 0x3b	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) 	{ R0900_P2_MODCODLST0	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) 	{ R0900_P2_MODCODLST1	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) 	{ R0900_P2_MODCODLST2	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) 	{ R0900_P2_MODCODLST3	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) 	{ R0900_P2_MODCODLST4	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) 	{ R0900_P2_MODCODLST5	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) 	{ R0900_P2_MODCODLST6	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) 	{ R0900_P2_MODCODLST7	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) 	{ R0900_P2_MODCODLST8	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413) 	{ R0900_P2_MODCODLST9	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) 	{ R0900_P2_MODCODLSTA	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) 	{ R0900_P2_MODCODLSTB	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416) 	{ R0900_P2_MODCODLSTC	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) 	{ R0900_P2_MODCODLSTD	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) 	{ R0900_P2_MODCODLSTE	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) 	{ R0900_P2_MODCODLSTF	, 0xcf	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) 	{ R0900_P1_DISTXCTL	, 0x22	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) 	{ R0900_P1_F22TX	, 0xc0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422) 	{ R0900_P1_F22RX	, 0xc0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) 	{ R0900_P1_DISRXCTL	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) 	{ R0900_P1_TNRSTEPS	, 0x87	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) 	{ R0900_P1_TNRGAIN	, 0x09	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426) 	{ R0900_P1_DMDCFGMD	, 0xf9	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) 	{ R0900_P1_DEMOD	, 0x08	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) 	{ R0900_P1_DMDCFG3	, 0xc4	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429) 	{ R0900_P1_DMDT0M	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430) 	{ R0900_P1_CARFREQ	, 0xed	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431) 	{ R0900_P1_TNRCFG2	, 0x82	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) 	{ R0900_P1_TNRCFG3	, 0x02	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) 	{ R0900_P1_LDT		, 0xd0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) 	{ R0900_P1_LDT2		, 0xb8	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) 	{ R0900_P1_TMGCFG	, 0xd2	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) 	{ R0900_P1_TMGTHRISE	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) 	{ R0900_P1_TMGTHFALL	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) 	{ R0900_P1_SFRUPRATIO	, 0xf0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439) 	{ R0900_P1_SFRLOWRATIO	, 0x70	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) 	{ R0900_P1_TSCFGL	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) 	{ R0900_P1_FECSPY	, 0x88	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) 	{ R0900_P1_FSPYDATA	, 0x3a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) 	{ R0900_P1_FBERCPT4	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444) 	{ R0900_P1_FSPYBER	, 0x10	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) 	{ R0900_P1_ERRCTRL1	, 0x35	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) 	{ R0900_P1_ERRCTRL2	, 0xc1	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447) 	{ R0900_P1_CFRICFG	, 0xf8	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) 	{ R0900_P1_NOSCFG	, 0x1c	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) 	{ R0900_P1_CORRELMANT	, 0x70	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) 	{ R0900_P1_CORRELABS	, 0x88	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) 	{ R0900_P1_AGC2O	, 0x5b	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) 	{ R0900_P1_AGC2REF	, 0x38	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453) 	{ R0900_P1_CARCFG	, 0xe4	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) 	{ R0900_P1_ACLC		, 0x1A	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) 	{ R0900_P1_BCLC		, 0x09	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) 	{ R0900_P1_CARHDR	, 0x08	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) 	{ R0900_P1_KREFTMG	, 0xc1	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458) 	{ R0900_P1_SFRSTEP	, 0x58	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) 	{ R0900_P1_TMGCFG2	, 0x01	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460) 	{ R0900_P1_CAR2CFG	, 0x26	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) 	{ R0900_P1_BCLC2S2Q	, 0x86	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) 	{ R0900_P1_BCLC2S28	, 0x86	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463) 	{ R0900_P1_SMAPCOEF7	, 0x77	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) 	{ R0900_P1_SMAPCOEF6	, 0x85	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) 	{ R0900_P1_SMAPCOEF5	, 0x77	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) 	{ R0900_P1_DMDCFG2	, 0x3b	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) 	{ R0900_P1_MODCODLST0	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) 	{ R0900_P1_MODCODLST1	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) 	{ R0900_P1_MODCODLST2	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) 	{ R0900_P1_MODCODLST3	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) 	{ R0900_P1_MODCODLST4	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) 	{ R0900_P1_MODCODLST5	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) 	{ R0900_P1_MODCODLST6	, 0xff	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474) 	{ R0900_P1_MODCODLST7	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475) 	{ R0900_P1_MODCODLST8	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) 	{ R0900_P1_MODCODLST9	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) 	{ R0900_P1_MODCODLSTA	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) 	{ R0900_P1_MODCODLSTB	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) 	{ R0900_P1_MODCODLSTC	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480) 	{ R0900_P1_MODCODLSTD	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) 	{ R0900_P1_MODCODLSTE	, 0xcc	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482) 	{ R0900_P1_MODCODLSTF	, 0xcf	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483) 	{ R0900_GENCFG		, 0x1d	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) 	{ R0900_NBITER_NF4	, 0x37	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) 	{ R0900_NBITER_NF5	, 0x29	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486) 	{ R0900_NBITER_NF6	, 0x37	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487) 	{ R0900_NBITER_NF7	, 0x33	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) 	{ R0900_NBITER_NF8	, 0x31	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) 	{ R0900_NBITER_NF9	, 0x2f	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490) 	{ R0900_NBITER_NF10	, 0x39	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491) 	{ R0900_NBITER_NF11	, 0x3a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) 	{ R0900_NBITER_NF12	, 0x29	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493) 	{ R0900_NBITER_NF13	, 0x37	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494) 	{ R0900_NBITER_NF14	, 0x33	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) 	{ R0900_NBITER_NF15	, 0x2f	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496) 	{ R0900_NBITER_NF16	, 0x39	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497) 	{ R0900_NBITER_NF17	, 0x3a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498) 	{ R0900_NBITERNOERR	, 0x04	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499) 	{ R0900_GAINLLR_NF4	, 0x0C	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) 	{ R0900_GAINLLR_NF5	, 0x0F	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501) 	{ R0900_GAINLLR_NF6	, 0x11	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502) 	{ R0900_GAINLLR_NF7	, 0x14	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503) 	{ R0900_GAINLLR_NF8	, 0x17	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) 	{ R0900_GAINLLR_NF9	, 0x19	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505) 	{ R0900_GAINLLR_NF10	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506) 	{ R0900_GAINLLR_NF11	, 0x21	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507) 	{ R0900_GAINLLR_NF12	, 0x0D	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508) 	{ R0900_GAINLLR_NF13	, 0x0F	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) 	{ R0900_GAINLLR_NF14	, 0x13	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) 	{ R0900_GAINLLR_NF15	, 0x1A	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) 	{ R0900_GAINLLR_NF16	, 0x1F	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) 	{ R0900_GAINLLR_NF17	, 0x21	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513) 	{ R0900_RCCFG2		, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514) 	{ R0900_P1_FECM		, 0x01	}, /*disable DSS modes*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515) 	{ R0900_P2_FECM		, 0x01	}, /*disable DSS modes*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) 	{ R0900_P1_PRVIT	, 0x2F	}, /*disable puncture rate 6/7*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517) 	{ R0900_P2_PRVIT	, 0x2F	}, /*disable puncture rate 6/7*/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) 	{ R0900_STROUT1CFG	, 0x4c	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519) 	{ R0900_STROUT2CFG	, 0x4c	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520) 	{ R0900_CLKOUT1CFG	, 0x50	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521) 	{ R0900_CLKOUT2CFG	, 0x50	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522) 	{ R0900_DPN1CFG		, 0x4a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523) 	{ R0900_DPN2CFG		, 0x4a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) 	{ R0900_DATA71CFG	, 0x52	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525) 	{ R0900_DATA72CFG	, 0x52	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) 	{ R0900_P1_TSCFGM	, 0xc0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527) 	{ R0900_P2_TSCFGM	, 0xc0	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) 	{ R0900_P1_TSCFGH	, 0xe0	}, /* DVB-CI timings */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) 	{ R0900_P2_TSCFGH	, 0xe0	}, /* DVB-CI timings */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530) 	{ R0900_P1_TSSPEED	, 0x40	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) 	{ R0900_P2_TSSPEED	, 0x40	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) static const u16 STV0900_Cut20_AddOnVal[32][2] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535) 	{ R0900_P2_DMDCFG3	, 0xe8	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536) 	{ R0900_P2_DMDCFG4	, 0x10	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) 	{ R0900_P2_CARFREQ	, 0x38	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538) 	{ R0900_P2_CARHDR	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) 	{ R0900_P2_KREFTMG	, 0x5a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540) 	{ R0900_P2_SMAPCOEF7	, 0x06	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 541) 	{ R0900_P2_SMAPCOEF6	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 542) 	{ R0900_P2_SMAPCOEF5	, 0x04	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 543) 	{ R0900_P2_NOSCFG	, 0x0c	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 544) 	{ R0900_P1_DMDCFG3	, 0xe8	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 545) 	{ R0900_P1_DMDCFG4	, 0x10	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 546) 	{ R0900_P1_CARFREQ	, 0x38	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 547) 	{ R0900_P1_CARHDR	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 548) 	{ R0900_P1_KREFTMG	, 0x5a	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 549) 	{ R0900_P1_SMAPCOEF7	, 0x06	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 550) 	{ R0900_P1_SMAPCOEF6	, 0x00	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 551) 	{ R0900_P1_SMAPCOEF5	, 0x04	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 552) 	{ R0900_P1_NOSCFG	, 0x0c	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 553) 	{ R0900_GAINLLR_NF4	, 0x21	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 554) 	{ R0900_GAINLLR_NF5	, 0x21	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 555) 	{ R0900_GAINLLR_NF6	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 556) 	{ R0900_GAINLLR_NF7	, 0x1F	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 557) 	{ R0900_GAINLLR_NF8	, 0x1E	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 558) 	{ R0900_GAINLLR_NF9	, 0x1E	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 559) 	{ R0900_GAINLLR_NF10	, 0x1D	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 560) 	{ R0900_GAINLLR_NF11	, 0x1B	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 561) 	{ R0900_GAINLLR_NF12	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 562) 	{ R0900_GAINLLR_NF13	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 563) 	{ R0900_GAINLLR_NF14	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 564) 	{ R0900_GAINLLR_NF15	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 565) 	{ R0900_GAINLLR_NF16	, 0x20	},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 566) 	{ R0900_GAINLLR_NF17	, 0x21	}
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 567) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 568) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 569) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 570) #endif