--- a/linux/drivers/media/dvb-frontends/ds3000.c	2018-09-07 10:08:41.000000000 +0300
+++ b/linux/drivers/media/dvb-frontends/ds3000.c	2019-08-19 19:33:12.908862000 +0300
@@ -1613,7 +1613,7 @@
 		/* read the number of packets with bad CRC */
 		ber_reading = (ds3000_readreg(state, 0xf8) << 8) |
 				ds3000_readreg(state, 0xf7);
-		if (lpdc_frames > 750) {
+		if (lpdc_frames > 1000) {
 			/* clear LPDC frame counters */
 			ds3000_writereg(state, 0xd1, 0x01);
 			/* clear bad packets counter */
@@ -2253,7 +2253,7 @@
 		}
 
 		if(cfg->output_mode == MtFeTsOutMode_Common) {
-			ts_clk = 6000; //8000;
+			ts_clk = 16000; //8000;
 		} else if(cfg->output_mode == MtFeTsOutMode_Parallel) {
 			ts_clk = 24000;
 		} else {
@@ -2294,7 +2294,7 @@
 		//ts_clk = 18000;//zf8471;
 
 		if(cfg->output_mode == MtFeTsOutMode_Common) {
-			ts_clk = 6000;	//8471;
+			ts_clk = 16000;	//8471;
 		} else if(cfg->output_mode == MtFeTsOutMode_Parallel) {
 			ts_clk = 24000;
 		} else {
@@ -2312,12 +2312,8 @@
 			value &= ~0x10;
 			ds3000_writereg(state, 0x30, value);
 			if((cfg->output_mode == MtFeTsOutMode_Parallel) || (cfg->output_mode == MtFeTsOutMode_Common)) {
-				if(c->symbol_rate > 18000000) {
 					target_mclk = 144000;
 				} else {
-					target_mclk = 96000;
-				}
-			} else {
 #if (MT_FE_TS_CLOCK_AUTO_SET_FOR_SERIAL_MODE != 0)
 				if(c->symbol_rate > 18000000) {
 					target_mclk = 144000;
