Comment "compiler un noyau" pour intégrer le module raw1394

Bonjour =)
Voila avant j’étais sous Ubuntu, mais le passage a Gutsy m’a tout fait planter, et j’ai juré de ne plus jamais toucher à une Ubuntu. Donc me voila sous Debian en unstable, mais je ne peux plus utiliser Kino, car iol me manque le module raw. J’ai vu sur ce forum qu’un utilisateur avait résolu le problème en compilant le noyau, et je me suis renseigné sur Google pour savoir comment faire. MAIS C’EST UN BORDEL MONSTRE!!! JE SUIS CASI SUR DE ME PLANTER QUELQUE PART :cry: Donc voila comme j’ai assez peu de temps, et que je ne peux pas me permettre d’en perdre trop à faire mumuse avec l’ordi, je voulais savoir si vous pouviez me guider pas à pas, me dire quoi faire, par où commencer etc…

Merci :smt006

Tu as quoi comme noyau? Tu es sous quelle configuration? Le module raw1394 est déjà compilé en général…

bogo@dell:~$ uname -a
Linux dell 2.6.22-2-686 #1 SMP Fri Aug 31 00:24:01 UTC 2007 i686 GNU/Linux

La configuration matérielle tu veux? J’en sais trop rien :
CPU : P4 3.2GHz
Ram : 512Mo (c’est de la DDR2 je sais pas si c’est important)
Disques durs : Deux disques SATA (Windows sur le premier, Debian sur le second)
Sinon mon pc est un DELL Dimension 4700

Il faut autre chose ou c’est suffisant? Parce que j’ai aucune idée de la marque de ma carte mère ou détails dans ce genre =/ Il y a pas un logiciel qui permet de connaitre ça?

Que te donne
~$ find /lib -name 1394ko

bogo@dell:~$ find /lib -name 1394ko
/lib/modules/2.6.18-4-686/kernel/drivers/ieee1394/eth1394.ko
/lib/modules/2.6.18-4-686/kernel/drivers/ieee1394/dv1394.ko
/lib/modules/2.6.18-4-686/kernel/drivers/ieee1394/ohci1394.ko
/lib/modules/2.6.18-4-686/kernel/drivers/ieee1394/raw1394.ko
/lib/modules/2.6.18-4-686/kernel/drivers/ieee1394/video1394.ko
/lib/modules/2.6.18-4-686/kernel/drivers/ieee1394/ieee1394.ko

ça veut dire quoi?

[quote=“moi”]Ça veut dire que ton module est déjà là:

et qu’il suffit de faire

modprobe raw1394[/quote]

est une stupidité, tu es en 2.6.22, je regarde un peu mieux…

ah oui c’est un peu bizzard. Je sais pas si je l’ai précisé mais j’ai ceci
dell:/home/bogo# modprobe raw1394
FATAL: Module raw1394 not found.

Bon, après renseignements, le noyau 2.6.22 a basculé sur une autre gestion du firewire (cf http://article.gmane.org/gmane.linux.debian.devel.bugs.general/325872) donc soit tu utilises la nouvelle pile firewire (incomplète, cf http://wiki.linux1394.org/JujuMigration) soit tu recompiles effectivement ton noyau. Pour cela, il y a plusieurs tutos, http://forum.debian-fr.org/viewtopic.php?t=1806 par exemple)

Avant tout essayes quand même

modprobe firewire-ohci firewire-sbp2

la pile firewire a totalement été reconstruite avec le 2.6.22.
Je cherche de la doc.

Salut mattotop merci de ton aide aussi ^^
Bon je suis en train de lire pour la compilation. ça me parait pas si terrible, mais il y a pleins de remarques, et j’en comprends pas la moitié. Puis-je me contenter de suivre le tuto, ou dois-je tenir compte de tous les commentaires qui suivent???

ashgenesis.debian-fr.net/tutorial/kernel/
Ach… Ce tuto déchire :smt003

Bon, j’ai rien trouvé, mais clairement, le firewire est un point totalement refondu avec le 2.6.22, et ça ne sert à rien de recompiler.
AMA, le device est bien détecté et le bon module doit déjà être chargé (même si ce n’est pas raw1394), et il faut juste dire à kino d’attaquer le bon device (qui doit avoir changé de nom au passage).

Ouch… Et comment puis-je connaitre le nom du “device”?

lspci

fouille. regarde dans /dev ce qui te parait pertinent.
Chez moi, je n’ai pas de firewire donc je ne peux pas te dire.

lspci me donne ceci
00:00.0 Host bridge: Intel Corporation 82915G/P/GV/GL/PL/910GL Memory Controller Hub (rev 04)
00:01.0 PCI bridge: Intel Corporation 82915G/P/GV/GL/PL/910GL PCI Express Root Port (rev 04)
00:1c.0 PCI bridge: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express Port 1 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 03)
00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d3)
00:1e.2 Multimedia audio controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC’97 Audio Controller (rev 03)
00:1f.0 ISA bridge: Intel Corporation 82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 03)
00:1f.2 IDE interface: Intel Corporation 82801FB/FW (ICH6/ICH6W) SATA Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 03)
01:00.0 VGA compatible controller: ATI Technologies Inc RV370 5B60 [Radeon X300 (PCIE)]
01:00.1 Display controller: ATI Technologies Inc RV370 [Radeon X300SE]
03:00.0 Multimedia controller: Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder (rev d0)
03:01.0 Modem: Intel Corporation FA82537EP 56K V.92 Data/Fax Modem PCI (rev 04)
03:08.0 Ethernet controller: Intel Corporation 82562ET/EZ/GT/GZ - PRO/100 VE (LOM) Ethernet Controller (rev 03)

Mais il s’agit juste d’une liste de matériel non? Je vois pas trop le rapport =/

Dans /dev j’ai ceci :

[quote]adsp
audio
bus
cdrom
cdrw
console
core
disk
dri
dsp
dvb
dvd
dvdrw
fd
full
hda
hpet
initctl
input
kmem
kmsg
log
loop
loop0
loop1
loop2
loop3
loop4
loop5
loop6
loop7
lp0
MAKEDEV
mapper
mem
mixer
net
null
parport0
port
ppp
psaux
ptmx
pts
radio0
ram0
ram1
ram10
ram11
ram12
ram13
ram14
ram15
ram2
ram3
ram4
ram5
ram6
ram7
ram8
ram9
random
rtc
sda
sda1
sda2
sdb
sdb1
sdb2
sdb5
shm
snapshot
snd
sndstat
stderr
stdin
stdout
tty
tty0
tty1
tty10
tty11
tty12
tty13
tty14
tty15
tty16
tty17
tty18
tty19
tty2
tty20
tty21
tty22
tty23
tty24
tty25
tty26
tty27
tty28
tty29
tty3
tty30
tty31
tty32
tty33
tty34
tty35
tty36
tty37
tty38
tty39
tty4
tty40
tty41
tty42
tty43
tty44
tty45
tty46
tty47
tty48
tty49
tty5
tty50
tty51
tty52
tty53
tty54
tty55
tty56
tty57
tty58
tty59
tty6
tty60
tty61
tty62
tty63
tty7
tty8
tty9
ttyS0
ttyS1
ttyS2
ttyS3
urandom
usbdev1.1_ep00
usbdev1.1_ep81
usbdev2.1_ep00
usbdev2.1_ep81
usbdev2.3_ep00
usbdev2.3_ep01
usbdev2.3_ep82
usbdev2.3_ep83
usbdev3.1_ep00
usbdev3.1_ep81
usbdev3.2_ep00
usbdev3.2_ep81
usbdev3.2_ep82
usbdev3.3_ep00
usbdev3.3_ep81
usbdev4.1_ep00
usbdev4.1_ep81
usbdev5.1_ep00
usbdev5.1_ep81
vbi0
vcs
vcs1
vcs2
vcs3
vcs4
vcs5
vcs6
vcs7
vcsa
vcsa1
vcsa2
vcsa3
vcsa4
vcsa5
vcsa6
vcsa7
video0
watchdog
xconsole
zero
[/quote]
C’est normal d’avoir autant de trucs? je croyais qu’il n’y avait que 7 ou 8 tty par exemple??? Chui désolé de pas faire avancer les choses, mais je suis complètement pommé là…

Pour revenir à la compilation du noyau, tu peux également t’inspirer d’un tuto de scorpio810 sauf qu’au lieu de désactiver la paravirtualisation, tu ajoute le module raw1394.

L’important est que tu récupères le fichier de config de ton noyau actuel, c’est indiqué dans les tutos de scorpio et ashgenesis.

Lorsque tu seras au menu de configuration de noyau (make menuconfig), tu as juste à aller dans Device Drivers --> IEEE 1394 (firewire support) --> et là tu actives Raw IEEE1394 I/O support.

Pour activer, tu appuies sur la barre d’espace et un devrait apparaître.
Si tu appuies sur la touche M de ton clavier, ça passe également.
Puis tu quittes (exit) et tu sauvegardes ta nouvelle configuration.

Il ne te reste plus qu’à suivre les instructions pour la compilation elle-même dans le tuto de ton choix.

Je t’ai donné la doc:

[quote]Out of the box, udevd and udev scripts automatically create and remove

* /dev/fw* devices exposed by firewire-core (for use by libraries like libraw1394 and libdc1394, provided the libraries are updated),
* /dev/{sd,sg,sr,st}* devices exposed by SCSI command set drivers (sd_mod, sg, sr_mod, st) with firewire-sbp2 underneath. 

[/quote]
Sinon, désactives la nouvelle pile si tu utilises l’ancienne

OUlaaaah Oubliez pas que vous avez affaire à un boulet :open_mouth: La doc elle est en anglais fran.b =/ J’ai déjà du mal en Francais, j’essaye même pas en Anglais :unamused: C’est quoi une pile?

Sinon Anatomic JC si je comprends bien , tu proposes de compiler le noyau, jusque la je te suis. Mais c’est quoi cette histoire de paravirtualisation, et comment j’intègre le module raw dans mon nouveau noyau???

j’espère que mes questions ne vous paraissent pas trop cons, mais je me pomme vite… Et surtout j’aimerai bien pouvoir utiliser mon caméscope =D

Petite question: tu es sous quel window manager ? gnome ou kde ?
Tu as essayé de brancher ton camescope ?
Que donne ifconfig -a (oui oui, ça m’interresserait de savoir ce que tu as comme dispositif reseau)?