[mythtv] Slow lock Multiproto_plus
Jacek
jacus.b at gmail.com
Fri Jun 27 23:55:21 UTC 2008
2008/6/2 Jelle De Loecker <skerit at kipdola.com>:
> Hi everyone,
>
> I finally got the MythTV working with the latest multiproto drivers (yay!)
> Unfortunately things are mighty slow:
> [...]
> On MythTV,
> however, it takes a while to lock (I can see the entire L-A-M(-C)
> process) and it doesn't always work.
I did changes in mantis driver, which working with my SkyStar HD2.
I don't know where to place, so I gave it here.
changes:
- frequency step reduced in function stb0899_search_data
[begin mantis.patch]
diff -r 0b04be0c088a linux/drivers/media/dvb/frontends/stb0899_algo.c
--- a/linux/drivers/media/dvb/frontends/stb0899_algo.c Wed May 28
13:25:23 2008 +0400
+++ b/linux/drivers/media/dvb/frontends/stb0899_algo.c Sat Jun 28
01:28:55 2008 +0200
@@ -381,7 +381,7 @@ static enum stb0899_status stb0899_check
*/
static enum stb0899_status stb0899_search_data(struct stb0899_state *state)
{
- short int derot_freq, derot_step, derot_limit, next_loop = 3;
+ short int derot_freq, derot_limit, next_loop = 3;
u8 cfr[2];
u8 reg;
int index = 1;
@@ -389,14 +389,13 @@ static enum stb0899_status stb0899_searc
struct stb0899_internal *internal = &state->internal;
struct stb0899_params *params = &state->params;
- derot_step = (params->srate / 4L) / internal->mclk;
derot_limit = (internal->sub_range / 2L) / internal->mclk;
derot_freq = internal->derot_freq;
do {
if ((internal->status != CARRIEROK) || (stb0899_check_data(state)
!= DATAOK)) {
- derot_freq += index * internal->direction * derot_step; /* next
zig zag derotator position */
+ derot_freq += index * internal->direction *
internal->derot_step; /* next zig zag derotator position */
if (ABS(derot_freq) > derot_limit)
next_loop--;
[end mantis.patch]
More information about the mythtv-dev
mailing list