[gull] Module cx88_dvb - Contourner un probleme de suspend to RAM

Frederic Dumas f.dumas at ellis.siteparc.fr
Sun Aug 25 16:47:20 CEST 2019


Salut Yann,


> j'avais contourné en déchargeant le module avant la mise en veille 
> (c'était sur disque et pas en RAM dans mon cas) et en le rechargeant au 
> réveil.
> 
> Ca fonctionnait, malheureusement, je ne me souviens plus des détails.


Merci pour cet encouragement à chercher une solution du coté du 
déchargement du (des) module(s) avant mise en veille.


Questions pratiques à ceux qui savent (lsmod en post-scriptum.) :

Dans quel fichier de configuration ajouter l'ordre de déchargement du 
module avant de passer en Suspend to RAM, et le recharger au réveil ?

Encore plus basique, est-il suffisant de décharger cx88_dvb ? Les autres 
modules dont il dépend, propres aux composants de la carte, suivent-ils 
automatiquement ?

Pour recharger, même question: un modprobe sur le module de tête 
suffit-il, ou faut-il tous les citer ? Si oui, j'ai le vague souvenir 
que l'ordre d'insertion n'est pas indifférent. Autre vague souvenir: 
udev est impliqué dans l'affaire...



En parallèle, j'ai posté un rapport de bug sur la liste de discussion 
des développeurs de pilotes Video4Linux/DVB.

https://www.mail-archive.com/linux-media@vger.kernel.org/msg149468.html

Pronostique: 50% de chances de recevoir une réponse affirmant que c'est 
mon BIOS/chipest/PC qui est fautif et que le pilote n'y peut rien. Même 
si en pratique, bien des pilotes sont modifiés pour fonctionner malgré 
les bugs hardware.

J'ouvre les paris. :-)


> Le TDA9887 est le contrôleur de bus I2C de la carte.

Erreur de ma part, pour avoir d'abord rapidement lu les titres des 
résultats de recherche sur Google. J'ai préparé le rapport de bug de 
façon plus sérieuse. Vérification faite, le TDA9887 est un démodulateur 
TV PAL/SECAM/NTSC et radio FM:

> The TDA9887 is an alignment-free multistandard (PAL, SECAM and NTSC) vision and sound IF signal PLL demodulator for positive and negative modulation, including sound AM and FM processing. A special function is implemented for the demodulation of FM radio signals (fRIF = 10.7 MHz).

Source:http://pdf.datasheetcatalog.com/datasheet/philips/TDA9887T_V4.pdf

L'erreur I2C I/O à propos du TDA9887 rapporté dans syslog n'était donc 
qu'un symptôme parmi d'autres et pas une cause du dysfonctionnement.


A suivre, mais ça ira lentement. :-/


--
Frédéric Dumas
f.dumas at ellis.siteparc.fr



Le 13/08/2019 à 15:03, Yann Lehmann a écrit :
> Am 13.08.2019 um 14:27 schrieb Frederic Dumas:
>>
>> > Que me conseillez-vous pour diagnostiquer plus loin, ou peut-être 
>> simplement pour appliquer une mesure de contournement. Interdire au 
>> kernel de décharger le module cx88 avant son passage en veille 
>> serait-il la bonne solution ?
>>
>>
> 
> J'avais eu un problème similaire (avec une carte DigitalDevices), que 
> j'avais contourné en déchargeant le module avant la mise en veille 
> (c'était sur disque et pas en RAM dans mon cas) et en le rechargeant au 
> réveil.
> 
> Ca fonctionnait, malheureusement, je ne me souviens plus des détails.



$ lsmod
Module                  Size  Used by
serial_cs              24576  1
nvidia_uvm             36864  0
cx22702                16384  1
isl6421                16384  1
cx24116                20480  1
cx88_dvb               36864  11
cx88_vp3054_i2c        16384  1 cx88_dvb
videobuf2_dvb          16384  1 cx88_dvb
dvb_core              106496  2 videobuf2_dvb,cx88_dvb
snd_soc_wm8776         20480  0
snd_soc_core          204800  1 snd_soc_wm8776
snd_compress           20480  1 snd_soc_core
snd_pcm_dmaengine      16384  1 snd_soc_core
wm8775                 16384  1
ir_rc5_decoder         16384  0
rc_hauppauge           16384  0
ir_lirc_codec          16384  0
lirc_dev               16384  2 ir_lirc_codec
tuner_simple           20480  2
tuner_types            20480  1 tuner_simple
tda9887                16384  1
snd_hda_codec_hdmi     45056  4
tda8290                24576  0
tuner                  28672  2
snd_hda_intel          36864  1
serio_raw              16384  0
cx8802                 20480  1 cx88_dvb
cx8800                 28672  0
snd_hda_codec         106496  2 snd_hda_intel,snd_hda_codec_hdmi
cx88_alsa              20480  1
joydev                 20480  0
cx88xx                 81920  4 cx88_alsa,cx88_dvb,cx8802,cx8800
snd_intel8x0           36864  3
input_leds             16384  0
snd_hda_core           65536  3 
snd_hda_intel,snd_hda_codec,snd_hda_codec_hdmi
videobuf2_dma_sg       16384  2 cx88_dvb,cx8800
tveeprom               20480  1 cx88xx
snd_ac97_codec        106496  1 snd_intel8x0
rc_core                32768  6 
rc_hauppauge,ir_lirc_codec,lirc_dev,cx88xx,ir_rc5_decoder
videobuf2_memops       16384  1 videobuf2_dma_sg
snd_hwdep              16384  1 snd_hda_codec
v4l2_common            16384  4 tuner,wm8775,cx88xx,cx8800
ac97_bus               16384  2 snd_ac97_codec,snd_soc_core
videobuf2_v4l2         20480  2 cx88_dvb,cx8800
xpad                   32768  0
videobuf2_core         36864  6 
videobuf2_dvb,cx88_dvb,cx8802,cx88xx,videobuf2_v4l2,cx8800
snd_pcm                86016  11 
snd_hda_intel,snd_soc_wm8776,snd_hda_codec,cx88_alsa,snd_pcm_dmaengine,snd_hda_core,snd_ac97_codec,snd_hda_codec_hdmi,snd_intel8x0,snd_soc_core
ff_memless             16384  1 xpad
nvidia               9535488  72 nvidia_uvm
snd_seq_midi           16384  0
videodev              155648  8 
tuner,v4l2_common,cx88_alsa,wm8775,videobuf2_core,cx88xx,videobuf2_v4l2,cx8800
snd_seq_midi_event     16384  1 snd_seq_midi
media                  32768  2 tuner,videodev
snd_rawmidi            28672  1 snd_seq_midi
i2c_algo_bit           16384  2 cx88_vp3054_i2c,cx88xx
snd_seq                57344  2 snd_seq_midi_event,snd_seq_midi
snd_seq_device         16384  3 snd_seq,snd_rawmidi,snd_seq_midi
pcmcia                 57344  1 serial_cs
drm                   344064  3 nvidia
snd_timer              28672  2 snd_seq,snd_pcm
yenta_socket           40960  0
snd                    69632  23 
snd_compress,snd_hda_intel,snd_hwdep,snd_seq,snd_hda_codec,cx88_alsa,snd_ac97_codec,snd_timer,snd_rawmidi,snd_hda_codec_hdmi,snd_intel8x0,snd_seq_device,snd_soc_core,snd_pcm
pcmcia_rsrc            20480  1 yenta_socket
pcmcia_core            24576  3 yenta_socket,pcmcia,pcmcia_rsrc
soundcore              16384  1 snd
shpchp                 32768  0
mac_hid                16384  0
sch_fq_codel           20480  2
parport_pc             32768  0
ppdev                  20480  0
lp                     20480  0
parport                45056  3 lp,parport_pc,ppdev
ip_tables              20480  0
x_tables               28672  1 ip_tables
autofs4                40960  2
btrfs                1089536  1
xor                    28672  1 btrfs
zstd_compress         151552  1 btrfs
raid6_pq              106496  1 btrfs
dm_mirror              24576  0
dm_region_hash         20480  1 dm_mirror
dm_log                 20480  2 dm_mirror,dm_region_hash
uas                    20480  0
usb_storage            57344  1 uas
hid_generic            16384  0
usbhid                 49152  0
hid                    98304  2 hid_generic,usbhid
cb710_mmc              20480  0
b44                    36864  0
psmouse               131072  0
cb710                  16384  1 cb710_mmc
ssb                    57344  1 b44
mii                    16384  1 b44
sis_agp                16384  1
pata_acpi              16384  0
i2c_sis96x             16384  0





More information about the gull mailing list