[Tuto] Utiliser un pilote acx sous Debian Etch (WG311v2, ..)

Marche pas, mais ça avance.

[code]# touch /lib/modules/2.6.22-3-686/build/include/linux/config.h

m-a prepare

Récupération des sources du noyau de la version : 2.6.22-3-686
En-têtes du noyau disponibles dans /lib/modules/2.6.22-3-686/build
apt-get install build-essential
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances… Fait
build-essential est déjà la plus récente version disponible.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.

Fait.

m-a a-i -t acx100

.
Données de 1 paquets mises à jour
Récupération des sources du noyau de la version : 2.6.22-3-686
En-têtes du noyau disponibles dans /lib/modules/2.6.22-3-686/build
apt-get install build-essential
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances… Fait
build-essential est déjà la plus récente version disponible.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.

Fait.
unpack
Extracting the package tarball, /usr/src/acx100.tar.gz, please wait…
"/usr/share/modass/overrides/acx100-source" build KVERS=2.6.22-3-686 KSRC=/lib/modules/2.6.22-3-686/build KDREV=2.6.22-6~bpo40+1 kdist_image
touch config.mk
&& /usr/bin/make -C “/lib/modules/2.6.22-3-686/build” M="/usr/src/modules/acx100" clean
make[1]: entrant dans le répertoire « /usr/src/linux-headers-2.6.22-3-686 »
CLEAN /usr/src/modules/acx100/.tmp_versions
make[1]: quittant le répertoire « /usr/src/linux-headers-2.6.22-3-686 »
dh_clean
/usr/bin/make -f debian/rules kdist_clean kdist_config binary-modules
make[1]: entrant dans le répertoire « /usr/src/modules/acx100 »
touch config.mk
&& /usr/bin/make -C “/lib/modules/2.6.22-3-686/build” M="/usr/src/modules/acx100" clean
make[2]: entrant dans le répertoire « /usr/src/linux-headers-2.6.22-3-686 »
make[2]: quittant le répertoire « /usr/src/linux-headers-2.6.22-3-686 »
dh_clean
for templ in ; do
cp $templ echo $templ | sed -e 's/_KVERS_/2.6.22-3-686/g' ;
done
for templ in ls debian/*.modules.in ; do
test -e ${templ%.modules.in}.backup || cp ${templ%.modules.in} ${templ%.modules.in}.backup 2>/dev/null || true;
sed -e 's/##KVERS##/2.6.22-3-686/g ;s/#KVERS#/2.6.22-3-686/g ; s/KVERS/2.6.22-3-686/g ; s/##KDREV##/2.6.22-6~bpo40+1/g ; s/#KDREV#/2.6.22-6~bpo40+1/g ; s/KDREV/2.6.22-6~bpo40+1/g ’ < $templ > ${templ%.modules.in};
done

Build modules

/usr/bin/make -C “/lib/modules/2.6.22-3-686/build” M="/usr/src/modules/acx100"
make[2]: entrant dans le répertoire « /usr/src/linux-headers-2.6.22-3-686 »
LD /usr/src/modules/acx100/built-in.o
CC [M] /usr/src/modules/acx100/wlan.o
CC [M] /usr/src/modules/acx100/conv.o
CC [M] /usr/src/modules/acx100/ioctl.o
CC [M] /usr/src/modules/acx100/common.o
/usr/src/modules/acx100/common.c: In function âacx_l_rxmonitorâ:
/usr/src/modules/acx100/common.c:2753: error: âstruct sk_buffâ has no member named âmacâ
/usr/src/modules/acx100/common.c:6944:14: error: macro “INIT_WORK” passed 3 arguments, but takes just 2
/usr/src/modules/acx100/common.c: In function âacx_init_task_schedulerâ:
/usr/src/modules/acx100/common.c:6943: error: âINIT_WORKâ undeclared (first use in this function)
/usr/src/modules/acx100/common.c:6943: error: (Each undeclared identifier is reported only once
/usr/src/modules/acx100/common.c:6943: error: for each function it appears in.)
make[3]: *** [/usr/src/modules/acx100/common.o] Erreur 1
make[2]: *** [module/usr/src/modules/acx100] Erreur 2
make[2]: quittant le répertoire « /usr/src/linux-headers-2.6.22-3-686 »
make[1]: *** [binary_modules] Erreur 2
make[1]: quittant le répertoire « /usr/src/modules/acx100 »
make: *** [kdist_build] Erreur 2
BUILD FAILED!
See /var/cache/modass/acx100-source.buildlog.2.6.22-3-686.1202379362 for details.
La construction a échoué. Appuyez sur Entrée pour continuer…

uname -r

2.6.22-3-686
#[/code]

[quote=“mattotop”]Ben il en faut, temporairement ou avec des preferences, si tu veux les bons acx100-source qui vont avec le 2.6.22-3.
Pourquoi tu ne prends pas un “sources.list au carré” pour etch ?[/quote] :question:

[quote=“mattotop”][quote=“mattotop”]Ben il en faut, temporairement ou avec des preferences, si tu veux les bons acx100-source qui vont avec le 2.6.22-3.
Pourquoi tu ne prends pas un “sources.list au carré” pour etch ?[/quote] :question:[/quote]
Il me semble que vous ajoutez des dépôts de versions instables et je n’aime pas ça.

Mais merci. Finalement je suis retourné avec un noyau 2.6.18-4 qui celui de base de Eth il me semble. J’ai supprimé le merveilleux 2.6.22-3. Et ça compile.

Ouf! j’ai réussie. Il faut au minimum deux jours pour faire fonctionner cette carte et encore j’avais déjà essayé en juin 2006 et d’autres fois encore.

Je vais modifier ce post d’ici ce week-end pour expliquer ma manip et les différents liens que j’ai utilisé.

Oui, enfin il n’y a pas grand chose à dire au delà du fait qu’il faut compiler les sources avec le m-a, qu’il faut installer des firmwares, et qu’avec un noyau etch, il faut des des sources etch, avec un noyau lenny, des sources lenny, et avec un noyau sid, des sources sid. Ca tient en trois lignes.

Mes dépôts sont en Etch.

[code]# apt-get install acx100-source

m-a prepare

m-a a-i -t acx100-source

modprobe acx[/code]

Pour connaître quel firmaware installer on consulte les derniers messages du noyau dmesg | grep "acx: firmware image" etchy:/home/dmon# dmesg | grep "acx: firmware image" acx: firmware image 'tiacx111c16' was not provided. Check your hotplug scripts acx: firmware image 'tiacx111' was not provided. Check your hotplug scripts
En mode utilsateur on peut faire

[code]wget http://www.hauke-m.de/fileadmin/acx/fw.tar.bz2

tar xjvf fw.tar.bz2[/code]
Par contre je me rappelle plus dans quel répertoire que j’ai récupéré mon firmware. Maintenant on retourne en mode superviseur pour copier le firmware.

J’ai réussie la manip sur une machine par contre j’ai du mal sur une autre machine différente avec la même carte réseau d’après “lspci”.

Mes dépôts sont en Etch.(…)[/quote]Oui, ben c’est ce que je dis, tu as un noyau etch, des sources etch, tout est homogène.