martedì 1 febbraio 2011

bttv and fglrx

After installed the Linux display driver for an ATI Radeon HD 3450 on Ubuntu Lucid Lynx, bttv stopped to work properly. As said in a previous post, unloading and reloading bttv is a temporary fix that works. It makes me think that something wrong happens when modules are loaded. So I decided to blacklist bttv and load it at the end of each multiuser runlevel through rc.local. Using rc.local requires us to place the right command before the exit status.  I used this command:

/sbin/modprobe bttv card=1 tuner=0 radio=0 pll=0  gbuffers=4 gpiomask=0x23000f audiomux=0x230002,0x230002,0x230000,0x230000

at the top of the file. After that, bttv works fine but it's not a permanent solution.
As a matter of fact, an older kern.log lists this error (boot time):

(bttv0) irq 17: nobody cared (try booting with the "irqpoll" option)
...
(bttv_irq+0x0/0x4a0 [bttv])
 Disabling IRQ #17

Loading bttv at the end of each multiuser runlevel doesn't fix the problem forever but just hides it from me.

 stefano@ARAGORN:~$ dmesg | grep bttv
[      27.447360] bttv: driver version 0.9.18 loaded
...
[     27.448437] IRQ 17/bttv0: IRQF_DISABLED is not guaranteed on shared IRQs

I suspect that a different pci slot for my tv card would solve the problem. We'll see...

Best regards