[linux-dvb] Problem with remote on ASUSTek P7131 Dual

hermann pitton hermann-pitton at arcor.de
Sat Jan 20 22:06:39 CET 2007


Am Freitag, den 19.01.2007, 21:29 +0100 schrieb Vincent Penne:
> hermann pitton a écrit :
> > Am Donnerstag, den 18.01.2007, 21:24 +0100 schrieb Vincent Penne:
> >   
> >> Hi all,
> >>
> >> I'm having a problem with the ASUSTeK P7131 Dual (an saa7134 based dvb 
> >> card) pci capture card's remote IR controller , it's handled pretty well 
> >> with latest linuxtv drivers, however after a while the IR remote stop 
> >> responding completely, and unloading/reloading the whole dvb framework 
> >> modules doesn't get it back working. Everything else still works  (that 
> >> is dvb-t still works properly, I haven't used the analogic capturing 
> >> features so far)
> >>
> >> I tried to turn on debugging informations in the saa7134-input module, 
> >> but nothing special appears in there, before or after the IR remote 
> >> stops working.
> >>
> >>
> >> If you have a few pointers as to what I could try to debug the problem, 
> >> I'd be very happy. As far as I understand, that specific IR driver uses 
> >> an IRQ, so maybe that IRQ stop working for some reason ?
> >>
> >> Here are more informations on the specific model from dmesg, this is the 
> >> 1043:4876 model :
> >>
> >> saa7130/34: v4l2 driver version 0.2.14 loaded
> >> saa7133[0]: found at 0000:02:02.0, rev: 209, irq: 11, latency: 64, mmio: 
> >> 0xfddff000
> >> saa7133[0]: subsystem: 1043:4876, board: ASUSTeK P7131 Dual 
> >> [card=78,autodetected]
> >> saa7133[0]: board init: gpio is 40000
> >> input: saa7134 IR (ASUSTeK P7131 Dual) as /class/input/input3
> >> tuner 0-004b: chip found @ 0x96 (saa7133[0])
> >> tuner 0-004b: setting tuner address to 61
> >> tuner 0-004b: type set to tda8290+75a
> >> tuner 0-004b: setting tuner address to 61
> >> tuner 0-004b: type set to tda8290+75a
> >> saa7133[0]: i2c eeprom 00: 43 10 76 48 54 20 1c 00 43 43 a9 1c 55 d2 b2 92
> >> saa7133[0]: i2c eeprom 10: ff ff ff 0f ff 20 ff ff ff ff ff ff ff ff ff ff
> >> saa7133[0]: i2c eeprom 20: 01 40 01 02 03 01 01 03 08 ff 00 d5 ff ff ff ff
> >> saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> >> saa7133[0]: i2c eeprom 40: ff 21 00 c2 96 10 03 32 55 50 ff ff ff ff ff ff
> >> saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> >> saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> >> saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> >> saa7133[0]: registered device video0 [v4l2]
> >> saa7133[0]: registered device vbi0
> >> saa7133[0]: registered device radio0
> >> DVB: registering new adapter (saa7133[0]).
> >> DVB: registering frontend 1 (Philips TDA10046H DVB-T)...
> >> tda1004x: setting up plls for 48MHz sampling clock
> >> tda1004x: found firmware revision 29 -- ok
> >>
> >>
> >>
> >> Vincent Penne
> >>     
> >
> > Hi Vincent,
> >
> > the whole thing was developed on the
> > subsystem: 1043:4862, board: ASUSTeK P7131 Dual device.
> >
> > Unfortunately /me was the only tester over several months and nobody
> > else tried or gave any feed back.
> >
> > The whole story started here so far on the video4linux-list.
> > ( ... don't get the link, after all some impact of the current storm)
> >
> > To have debug output you need to enable it on the ir-common module.
> >
> > Didn't notice anything in that direction yet, but must admit that I was
> > not dedicated to long time tests. Several Sunday afternoons though.
> >
> > Your card is really different from mine one. It starts with the missing
> > firmware eeprom. Hopefully we can get the cards in sync, else yours
> > should have its own entry.
> >
> > Cheers,
> > Hermann
> >   
> 
> I made more tests, this time I display the gap as calculated in the 
> function saa7134_rc5_irq, it is interesting :
> 
> When it works, typically
> 
> ir-common: code=25da, rc5=9145449, start=2, toggle=0, address=17, instr=1a
> saa7133[0]/ir: gap   1811
> saa7133[0]/ir: gap   4466
> saa7133[0]/ir: gap   8042
> saa7133[0]/ir: gap   9847
> saa7133[0]/ir: gap  11642
> saa7133[0]/ir: gap  15184
> saa7133[0]/ir: gap  16979
> saa7133[0]/ir: gap  20542
> saa7133[0]/ir: gap  23249
> ir-common: code=25da, rc5=9145449, start=2, toggle=0, address=17, instr=1a
> ir-common: key released
> saa7134 IR (ASUSTeK P7131 Dual): key event code=28 down=0
> 
> 
> Gap values are roughly multiple of 885 as expected.
> 
> 
> However, when it stops working,  we get typically :
> 
> saa7133[0]/ir: gap   4000
> saa7133[0]/ir: gap   7997
> saa7133[0]/ir: gap  11999
> saa7133[0]/ir: gap  15998
> saa7133[0]/ir: gap  19999
> saa7133[0]/ir: gap  23998
> ir-common: code=2502, rc5=11088441, start=2, toggle=0, address=14, instr=2
> 
> Now the gaps are multiple of 4000, and even worst, no matter what button 
> I press on my remote control (or any other RC5 remote control by the 
> way), I get the exact same sequence, that is an irq every 4ms.
> 
> It stops working after a varying time, usually a few hours, sometimes I 
> have to wait a whole day ...
> 
> Anyway, I haven't tested with the provided drivers under windows, so it 
> may be my hardware that is buggy.

Hi Vincent,

please keep the video4linux-list posted.
It is the place where your report belongs.

I still have no idea what should cause the hang for you.
Here is a sample key press of mine. It never hanged in more than three
months now. Also the driver should warn and clear on IRQ18 hangs.
(saa7134-core.c) 

saa7133[1]/irq[0,34402098]: r=0x8000 s=0x00 GPIO18
saa7133[1]/irq[0,34402101]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=2658
saa7133[1]/irq[0,34402103]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=4446
saa7133[1]/irq[0,34402106]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=8042
saa7133[1]/irq[0,34402108]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=9816
saa7133[1]/irq[0,34402110]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=11605
saa7133[1]/irq[0,34402112]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=13394
saa7133[1]/irq[0,34402115]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=16989
saa7133[1]/irq[0,34402117]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=18764
saa7133[1]/irq[0,34402121]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=22358
ir-common: code=2ded, rc5=4515451, start=2, toggle=1, address=17,
instr=2d
ir-common: instruction 2d, toggle 1
saa7134 IR (ASUSTeK P7131 Dual): key event code=3 down=1
saa7133[1]/irq[0,34402210]: r=0x8000 s=0x00 GPIO18
saa7133[1]/irq[0,34402212]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=2658
saa7133[1]/irq[0,34402214]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=4447
saa7133[1]/irq[0,34402218]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=8041
saa7133[1]/irq[0,34402219]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=9816
saa7133[1]/irq[0,34402221]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=11604
saa7133[1]/irq[0,34402223]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=13393
saa7133[1]/irq[0,34402227]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=16987
saa7133[1]/irq[0,34402228]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=18761
saa7133[1]/irq[0,34402232]: r=0x8000 s=0x00 GPIO18
saa7134_rc5_irq: gap=22356
ir-common: code=2ded, rc5=4515451, start=2, toggle=1, address=17,
instr=2d
ir-common: key released
saa7134 IR (ASUSTeK P7131 Dual): key event code=3 down=0

I don't know how many testers we have now, it is also in the -mm branch
since several weeks.

Are there more people having this problem ?
BTW, I'm still on 2.6.18 with that machine.

Is this some sort of known failure behavior on the irq or does somebody
have ideas how to debug it better?

Cheers,
Hermann









More information about the linux-dvb mailing list