Re: [linux-dvb] Re : Technotrend Budget S2-3200 Digital artefacts on HDchannels

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Alex Betis wrote:
> On Tue, Jan 27, 2009 at 9:56 PM, Manu Abraham <abraham.manu@xxxxxxxxx>wrote:
> 
>>> Hmm OK, but is there by any chance a fix for those issues somewhere or
>>> in the pipe at least? I am willing to test (as I already offered), I
>>> can compile the drivers, spread printk or whatever else is needed to
>>> get useful reports. Let me know if I can help sort this problem. BTW in
>>> my case it is DVB-S2 30000 SR and FEC 5/6.
>> It was quite not appreciable on my part to provide a fix or reply in
>> time nor spend much time on it earlier, but that said i was quite
>> stuck up with some other things.
>>
>> Can you please pull a copy of the multiproto tree
>> http://jusst.de/hg/multiproto or the v4l-dvb tree from
>> http://jusst.de/hg/v4l-dvb
>>
>> and apply the following patch and comment what your result is ?
>> Before applying please do check whether you still have the issues.
> 
> Manu,
> I've tried to increase those timers long ago when played around with my card
> (Twinhan 1041) and scan utility.
> I must say that I've concentrated mostly on DVB-S channels that wasn't
> always locking.
> I didn't notice much improvements. The thing that did help was increasing
> the resolution of scan zigzags.

With regards to the zig-zag, one bug is fixed in the v4l-dvb tree.
Most likely you haven't tried that change.

> I've sent a patch on that ML and people were happy with the results.

I did look at your patch, but that was completely against the tuning
algorithm.

[..]

> I believe DVB-S2 lock suffer from the same problem, but in that case the
> zigzag is done in the chip and not in the driver.

Along with the patch i sent, does the attached patch help you in
anyway (This works out for DVB-S2 only)?


diff -r a4731ed28cac linux/drivers/media/dvb/frontends/stb0899_drv.c
--- a/linux/drivers/media/dvb/frontends/stb0899_drv.c   Tue Jan 27 23:29:44 2009 +0400
+++ b/linux/drivers/media/dvb/frontends/stb0899_drv.c   Wed Jan 28 01:08:25 2009 +0400
@@ -1461,19 +1461,16 @@
        struct stb0899_config *config = state->config;

        s32 iter_scale;
-       u32 reg;

        iter_scale = 17 * (internal->master_clk / 1000);
        iter_scale += 410000;
-       iter_scale /= (internal->srate / 1000000);
-       iter_scale /= 1000;
+       iter_scale /= (internal->srate / 1000);

        if (iter_scale > config->ldpc_max_iter)
                iter_scale = config->ldpc_max_iter;

-       reg = STB0899_READ_S2REG(STB0899_S2DEMOD, MAX_ITER);
-       STB0899_SETFIELD_VAL(MAX_ITERATIONS, reg, iter_scale);
-       stb0899_write_s2reg(state, STB0899_S2DEMOD, STB0899_BASE_MAX_ITER, STB0899_OFF0_MAX_ITER, reg);
+       stb0899_write_s2reg(state, STB0899_S2DEMOD, STB0899_BASE_MAX_ITER, STB0899_OFF0_MAX_ITER, iter_scale);
+       stb0899_write_s2reg(state, STB0899_S2DEMOD, STB0899_BASE_ITER_SCALE, STB0899_OFF0_ITER_SCALE, iter_scale);
 }

 static enum dvbfe_search stb0899_search(struct dvb_frontend *fe, struct dvb_frontend_parameters *p)

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux