On Tue, Apr 14, 2009 at 11:23 AM, Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxx> wrote: > On Sun, 05 Apr 2009 20:22:33 +0200 > hermann pitton <hermann-pitton@xxxxxxxx> wrote: > >> Hi, >> >> Am Samstag, den 04.04.2009, 17:20 +0200 schrieb Ra.M.: >> > hermann pitton ha scritto: >> > > Am Samstag, den 04.04.2009, 02:45 +0200 schrieb hermann pitton: >> > > >> > >> Hi Ralph, >> > >> >> > >> Am Freitag, den 03.04.2009, 20:49 +0000 schrieb Ralph: >> > >> >> > >>> ASUSTeK Tiger LNA Hybrid Capture Device PCI - Analog/DVB-T card >> > >>> Multimedia controller: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video >> > >>> Broadcast Decoder (rev d1) >> > >>> >> > >>> Works perfectly with kernel 2.6.28.4 (or older). >> > >>> Recently, I have switched to 2.6.29 (same .config as 2.6.28.4) and now, at >> > >>> boot >> > >>> time, I get the message: >> > >>> >> > >>> IRQ 18/saa7133[0]: IRQF_DISABLED is not guaranteed on shared IRQs >> > >>> >> > >>> Signal strength is very low and Kaffeine is unable to tune in any channel. >> > >>> Same problem with kernel 2.6.29.1 >> > >>> >> > >>> ------------------------------------- >> > >>> >> > >>> Messages from /var/log/dmesg >> > >>> >> > >>> saa7134 0000:03:0a.0: PCI INT A -> Link[APC3] -> GSI 18 (level, low) -> \ >> > >>> IRQ 18 >> > >>> saa7133[0]: found at 0000:03:0a.0, rev: 209, irq: 18, latency: 32, mmio: \ >> > >>> 0xfdefe000 >> > >>> saa7133[0]: subsystem: 1043:4871, board: ASUS P7131 4871 \ >> > >>> [card=111,autodetected] >> > >>> saa7133[0]: board init: gpio is 0 >> > >>> IRQ 18/saa7133[0]: IRQF_DISABLED is not guaranteed on shared IRQs >> > >>> saa7133[0]: i2c eeprom 00: 43 10 71 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 00 01 03 08 ff 00 cf 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 22 15 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]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> saa7133[0]: i2c eeprom e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> saa7133[0]: i2c eeprom f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >> > >>> tuner' 2-004b: chip found @ 0x96 (saa7133[0]) >> > >>> tda829x 2-004b: setting tuner address to 61 >> > >>> tda829x 2-004b: type set to tda8290+75a >> > >>> saa7133[0]: registered device video0 [v4l2] >> > >>> saa7133[0]: registered device vbi0 >> > >>> dvb_init() allocating 1 frontend >> > >>> DVB: registering new adapter (saa7133[0]) >> > >>> DVB: registering adapter 0 frontend -32769 (Philips TDA10046H DVB-T)... >> > >>> tda1004x: setting up plls for 48MHz sampling clock >> > >>> tda1004x: timeout waiting for DSP ready >> > >>> tda1004x: found firmware revision 0 -- invalid >> > >>> tda1004x: trying to boot from eeprom >> > >>> tda1004x: timeout waiting for DSP ready >> > >>> tda1004x: found firmware revision 0 -- invalid >> > >>> tda1004x: waiting for firmware upload... >> > >>> saa7134 0000:03:0a.0: firmware: requesting dvb-fe-tda10046.fw >> > >>> tda1004x: found firmware revision 29 -- ok >> > >>> saa7134 ALSA driver for DMA sound loaded >> > >>> IRQ 18/saa7133[0]: IRQF_DISABLED is not guaranteed on shared IRQs >> > >>> saa7133[0]/alsa: saa7133[0] at 0xfdefe000 irq 18 registered as card -1 >> > >>> >> > >>> >> > >> thanks for your report, as announced previously, I unfortunately did not >> > >> have time to run with latest always ... (guess why ...) >> > >> >> > >> The driver always worked with shared IRQs, if not, it was always a >> > >> limitation of certain hardware or mostly in some combination with binary >> > >> only drivers. >> > >> >> > >> If the above should be the case in general now, and not only caused by >> > >> some blacklist, no print out in that direction, the driver is pretty >> > >> broken again. >> > >> >> > >> I for sure don't have all for last months, but that >> > >> "IRQF_DISABLED is not guaranteed on shared IRQs" for sure does not come >> > >> from us here. >> > >> >> > > >> > > Do use something unusual like pollirq or something? >> > > >> > > We only have in saa7134-core.c >> > > >> > > /* initialize hardware #1 */ >> > > saa7134_board_init1(dev); >> > > saa7134_hwinit1(dev); >> > > >> > > /* get irq */ >> > > err = request_irq(pci_dev->irq, saa7134_irq, >> > > IRQF_SHARED | IRQF_DISABLED, dev->name, dev); >> > > if (err < 0) { >> > > printk(KERN_ERR "%s: can't get IRQ %d\n", >> > > dev->name,pci_dev->irq); >> > > goto fail3; >> > > } >> > > >> > > and in saa7134-alsa.c >> > > >> > > err = request_irq(dev->pci->irq, saa7134_alsa_irq, >> > > IRQF_SHARED | IRQF_DISABLED, dev->name, >> > > (void*) &dev->dmasound); >> > > >> > > if (err < 0) { >> > > printk(KERN_ERR "%s: can't get IRQ %d for ALSA\n", >> > > dev->name, dev->pci->irq); >> > > goto __nodev; >> > > } >> > > >> > > Have fun ;) >> > > Hermann >> > > >> > > >> > > >> > > >> > No, I do not use pollirq. >> > >> > I have read that many users have had problems with 2.6.29 and IRQs. >> > Those problems affect WiFi cards, Ethernet cards, DVB-T cards, etc. >> > >> > For example: >> > >> > http://article.gmane.org/gmane.linux.uml.devel/12098 >> > http://www.gossamer-threads.com/lists/linux/kernel/1044282 >> > http://zen-sources.org/content/irqfshared-irqfdisabled-fix-2629-rc >> > >> > In all cases, at boot time appears the message: >> > >> > IRQ XY: IRQF_DISABLED is not guaranteed on shared IRQs >> > >> > So, probably, there is a kernel bug in the IRQs management of the >> > 2.6.29 and 2.6.29.1 >> > >> >> did build a 2.6.29.1 now and your report is correct! >> >> DVB-T on saa7134 is broken at least for all tda10046 and tda8275 stuff >> and it is not restricted to devices with LNA. >> >> For what I can see so far, it is not related to the IRQF_DISABLED print >> out, since only a warning for now and removing it from the driver >> doesn't change anything. >> >> saa7134 DVB-S, analog TV and saa7134-alsa are not affected. >> >> Installing the current mercurial v4l-dvb on 2.6.29.1 does fix it. >> >> If on that saa7134-dvb.ko and saa7134.ko are replaced with the ones from >> 2.6.29.1 the breakage is back again. The related dvb and tuner modules >> tolerate such exchange on a first rough test. >> >> As you reported, symptoms are tumbling signal and SNR between very low >> and 100%, as if tuning and AGC would never stabilize. >> >> I suspect failing i2c stuff is involved. Did not notice anything like >> that on various mercurial versions during the last months. > > Hermann, > > Could you please try to bisect the patch that broke it? The instructions for > bisecting with mercurial are available at README.patches file. > > Cheers, > Mauro > -- > To unsubscribe from this list: send the line "unsubscribe linux-media" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > Sorry for interrupt. Would your saa7134 i2c problem is due to the i2c quirk? I have problem on the saa7134 i2c quirk that I have to totally disable it on my work-in-progress card. Just a little suggestion that trying disable the i2c quirk like this change set: http://linuxtv.org/hg/~mkrufky/dmbth/rev/781ffa6c43d3 David. -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html