Optimizations galore: Blistering barnacles! The KNC1 and friends
like 90 Mhz clock much better rather than running at a higher
throttle, for almost similar hardware. he exact cause unknown,
possibly due to a lower voltage applied for the demod power supply.
Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
struct stb0899_state *state = fe->demodulator_priv;
struct stb0899_params *i_params = &state->params;
struct stb0899_internal *internal = &state->internal;
+ struct stb0899_config *config = state->config;
u32 SearchRange, gain;
}
if (i_params->srate <= 5000000)
- stb0899_set_mclk(state, 76500000);
+ stb0899_set_mclk(state, config->lo_clk);
else
- stb0899_set_mclk(state, 99000000);
+ stb0899_set_mclk(state, config->hi_clk);
switch (state->delsys) {
case DVBFE_DELSYS_DVBS:
u8 out_rate_comp;
u8 i2c_repeater;
// int inversion;
+ int lo_clk;
+ int hi_clk;
u32 esno_ave;
u32 esno_quant;
.xtal_freq = 27000000,
.inversion = IQ_SWAP_OFF, /* 1 */
+ .lo_clk = 76500000,
+ .hi_clk = 90000000,
+
.esno_ave = STB0899_DVBS2_ESNO_AVE,
.esno_quant = STB0899_DVBS2_ESNO_QUANT,
.avframes_coarse = STB0899_DVBS2_AVFRAMES_COARSE,
.xtal_freq = 27000000,
.inversion = IQ_SWAP_ON, /* 1 */
+ .lo_clk = 76500000,
+ .hi_clk = 99000000,
+
.esno_ave = STB0899_DVBS2_ESNO_AVE,
.esno_quant = STB0899_DVBS2_ESNO_QUANT,
.avframes_coarse = STB0899_DVBS2_AVFRAMES_COARSE,