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

Re: bttv et plantage du noyau



Jean-Yves F. Barbier a écrit :

...
>> Feb  3 01:06:03 altair kernel: bttv0: OCERR @ 1eccb008,bits: HSYNC OFLOW
>> FBUS FDSR OCERR*
>
> Dixit les sources du drv:
>
> H||VSYNC: synchros. H||V
> OFLOW: Chroma/luma AGC overflow
> FBUS:  Pixel data fifo dropped data (Hi PCI bus latency)
> FDSR:  Fifo data stream resync.
> OCERR: RISC instruction error
>
> ........
>
> Apparemment, ta carte serait une MIRO PCTV, mais est-ce bien cela?
>
> J'en ai une (une *vraie* MIRO PCTV) qui n'a jamais fonctionnée
> correctement
> à moins de donner les options voulues au drv. (et qui *nécessite* le
> mode de
> compatibilité v4l-1, sinon elle plante); /etc/modprobe.d/zzz_BTTV:
> ###   BTTV
> # i2c
> alias           char-major-89   i2c-dev
> # bttv
> alias           char-major-81   videodev
> alias           char-major-81-0 bttv
> options         bttv    card=1 tuner=3 bttv_debug=1 full_luma_range=1
> chroma_agc=1 v4l2=0
> options         tuner   tuner_debug=1 show_i2c=1
> ###   /BTTV
>
> Mon fils et moi avons passé 3H avant de trouver son type de carte TV
> (on a été obligé d'essayer chaque type de carte ET de tuner (rien de
> visible
> dessus) un par un) sur une carte de récup.
>
> Tout ça pour dire qu'il semble qu'il faille absolument la désigner.
>
J'ai retiré cette carte de mon enregistreur numérique à la maison sur
lequel j'en avais 2 identiques, je n'ai jamais eu ce genre de difficulté.
>> Feb  4 09:42:12 altair kernel: Linux video capture interface: v2.00
>> Feb  4 09:42:12 altair kernel: bttv: driver version 0.9.16 loaded
>> Feb  4 09:42:12 altair kernel: bttv: using 8 buffers with 2080k (520
>> pages) each for capture
>> Feb  4 09:42:12 altair kernel: bttv: Bt8xx card found (0).
>> Feb  4 09:42:12 altair kernel: ACPI: PCI Interrupt 0000:00:0a.0[A] ->
>> GSI 18 (level, low) -> IRQ 201
>> Feb  4 09:42:12 altair kernel: bttv0: Bt878 (rev 17) at 0000:00:0a.0,
>> irq: 201, latency: 32, mmio: 0xdfdfe000
>
> semble dire que ton bus est par défaut @ 32 de latence, c'est trop peu
> pour
> la video; 64 est la moyenne, 128 fonctionne bien chez moi (CPU=
> CEL-2.4GHz)
> Ca correspond à la tranche de temps minimale accordée par process.
>
Il y a effectivement une piste à explorer de ce coté là... en même temps
c'était pareil sur l'autre machine et je pouvais enregistrer 2
programmes simultanément sans problème.
>> Feb  4 09:42:12 altair kernel: bttv0: detected: Pinnacle PCTV [card=39],
>> PCI subsystem ID is 11bd:0012
>> Feb  4 09:42:12 altair kernel: bttv0: using: Pinnacle PCTV Studio/Rave
>> [card=39,autodetected]
>
> l'auto-détection _semble_ correcte
>
>> Feb  4 09:42:12 altair kernel: bttv0: gpio: en=00000000, out=00000000
>> in=00ff27ff [init]
>> Feb  4 09:42:12 altair kernel: bttv0: i2c: checking for MSP34xx @
>> 0x80... not found
>> Feb  4 09:42:12 altair kernel: bttv0: miro: id=9 tuner=3 radio=no
>> stereo=no
>> Feb  4 09:42:12 altair kernel: bttv0: using tuner=3
>
> Ca, par contre, ça ne va pas: id=9 c'est pour une MIRO PCTV, il semble
> que la tienne (auto-détect V.+haut) soit id=39 (Pinnacle PCTV
> Studio/Rave)
>
Oui, bon elles ont toujours bien fonctionné comme ça.
>> Feb  4 09:42:12 altair kernel: bttv0: i2c: checking for MSP34xx @
>> 0x80... not found
>> Feb  4 09:42:12 altair kernel: bttv0: i2c: checking for TDA9875 @
>> 0xb0... not found
>> Feb  4 09:42:12 altair kernel: bttv0: i2c: checking for TDA7432 @
>> 0x8a... not found
>> Feb  4 09:42:12 altair kernel: bttv0: i2c: checking for TDA9887 @
>> 0x86... not found
>> Feb  4 09:42:12 altair kernel: tuner 0-0060: All bytes are equal. It is
>> not a TEA5767
>> Feb  4 09:42:12 altair kernel: tuner 0-0060: chip found @ 0xc0 (bt878 #0
>> [sw])
>> Feb  4 09:42:12 altair kernel: tuner 0-0060: type set to 3 (Philips
>> (SECAM+PAL_BG) (FI1216MF, FM1216MF, FR1216MF))
>
> c'est le type std des cartes TV CE
>
> .....
>> Feb  4 09:42:12 altair kernel: PCI: Setting latency timer of device
>> 0000:00:11.5 to 64
>
> le kernel remet le bus PCI en 64 de latence
>
Non, en fait 11.5 c'est la carte son mais effectivement il le fait aussi
pour le bus pci (0000:00:11.5)
> a vue de nez, je dirais: remettre 64 (mini) de latence dans le BIOS;
Je ne sais pas si c'est vraiment utile vu que linux le fait déjà.
> et renseigner le driver sur le type correct de carte/tuner/radio
> (ou laisser l'auto(detect pour voir si ça le fait)
>
Ben en fait ça fonctionne nickel comme ça... d'ailleurs c'est bien la
seule chose qui fonctionnait encore ce matin !
> Les différences entre cartes Miro et Pinnacle sont généralement minimes,
> mais peuvent quand même facilement planter le micro.

Du coup j'ai regardé un peu les logs de la machine sur laquelle la carte
était avant. J'avais déjà des message du driver bttv mais ça ne nuisait
pas à la stabilité du système :
Jan 18 22:25:58 recorder [111107.469000] bttv0: OCERR @ 0fcb4014,bits:
HSYNC OFLOW OCERR*
La configuration du driver, la latence, etc. étaient les mêmes.

Je note que je n'avais pas de FBUS et FDSR...

En fait la machine venait d'entamer la vérification hebdomadaire des
raid1 qui est très coûteuse en ressources donc c'est probablement ça qui
a provoqué la surcharge... maintenant ce qui me gène c'est que seule la
tv ait continué à fonctionner alors que j'aurais préféré le contraire.
En fait je m'en fiche pas mal que l'image saccade un peut ou même que
mplayer ou le framebuffer plante complètement. Cette application n'a
rien de critique. Par contre tout le reste du réseau repose entièrement
sur ce serveur...

J'essaierais de reproduire le problème en lançant mplayer puis
checkarray demain soir. Si c'est bien ça qui la met en carafe je verrais
ce que ça donne en augmentant la latence du bus pci dans le bios.
Pour la carte en particulier ça va pas être possible :
        *-multimedia:0
             description: Multimedia video controller
             product: Bt878 Video Capture
             vendor: Brooktree Corporation
             physical id: a
             bus info: pci@00:0a.0
             version: 11
             width: 32 bits
             clock: 33MHz
             capabilities: bus_master cap_list
             configuration: driver=bttv latency=32 maxlatency=40 mingnt=16
             resources: iomemory:dfdfe000-dfdfefff irq:201


Y a-t-il une option de boot genre "debug" qui permette d'avoir plus de
détails dans les logs en cas de plantage ?

Je vais aussi tenter de voir si je peux avoir quelque-chose sur une
console série si je retrouve mon câble nul-modem et que j'arrive à faire
fonctionner ça...

@+

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: