[linux-dvb] [PATCH 1/3] Fix a problem during the access to the
IER and ISR registers of the SA7146
Dominik Strasser
dominik at die-strassers.de
Sun Dec 17 20:55:59 CET 2006
e9hack schrieb:
> Dominik Strasser wrote:
>
Hartmut,
>> Here is the debug output (some lines, I can give you more if you want
>> :-) )
>>
>> Dec 17 17:09:43 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
>> waiting for end of xfer
>>
> It comes from your FuSi FF card.
>
I assumed this due to the PCI id.
>> Dec 17 17:09:43 VDR kernel: EIO after saa7146_i2c_writeout:
>> count=1(2), data=0x86000040, addr=0x09, R/W=W, buf[0]=0x00
>>
> I think that this comes from ves1820_readreg(). The failing transfer is
> always the second message. I would like to see the affected register,
> but for the ves1820 the first value is the sub-address. I've modified
> the patch a little bit. Now it prints also the register.
>
> If your kernel is configured with a timer frequency of 100Hz or if your
> pc runs with a high load, the timeout value of 10ms may be to small. The
> second patch increases the timeout value to 50ms.
>
This is a standard Suse 10.2 kernel which is built with CONFIG_HZ=250
The load is rather low, only VDR is running <10% CPU.
Unfortunately the increased timeout didn't change anything.
But with CONFIG_HZ=250, the timeout was still at 10ms. I now changed it
to 20*HZ/100, now the frequency of the message has decreased, but it
still occurs. I'll retry with increased values. 50*HZ seems to work.
I'll try to find a minimum. No 50 isn't enough. Still messages occur ...
Regards
Dominik
Here the new output:
Dec 17 20:39:59 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x69000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x00
Dec 17 20:40:01 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:01 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x43000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x08
Dec 17 20:40:06 VDR vdr: [8268] frontend 2 timed out while tuning to
channel 39, tp 338
Dec 17 20:40:09 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:09 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x1e000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x0c
Dec 17 20:40:10 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:10 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x43000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x08
Dec 17 20:40:10 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:10 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x52000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x34
Dec 17 20:40:12 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:12 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x52000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x34
Dec 17 20:40:13 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:13 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x86000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x0d
Dec 17 20:40:15 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:15 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x86000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x0d
Dec 17 20:40:21 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:21 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x43000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x0e
Dec 17 20:40:22 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:22 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x1e000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x0c
Dec 17 20:40:23 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:23 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x6a000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x09
Dec 17 20:40:24 VDR kernel: saa7146_i2c_writeout(13c2,0000): timed out
waiting for end of xfer
Dec 17 20:40:24 VDR kernel: EIO after saa7146_i2c_writeout: count=1(2),
data=0x43000040, addr=0x09, R/W=W, len=3, buf[0]=0x00, buf[1]=0x0e
More information about the linux-dvb
mailing list