Concevoir un site comme celui-ci avec WordPress.com
Commencer

wifi Broadcom et Linux 5.18, 5.19, 6…

  1. Utiliser les modules inclus dans le noyau
    1. Blacklister les autres modules.
    2. Après redémarrage la carte fonctionne:
  2. Description des problèmes de compilation.
    1. Linux 5.18
      1. A l’installation du noyau 5.18 des erreurs relatives à Broadcom: Deprecated feature: REMAKE_INITRD. De plus la compilation échoue.
      2. Démarrer sur le précédent noyau (pour moi c’est le 5.17)
      3. Modification du fichier /usr/src/broadcom-sta-6.30.223.271/dkms.conf: supprimer la ligne REMAKE_INITRD
      4. Télécharger et appliquer le patch
      5. Réinstallation du modules dans le deuxième noyau:
      6. Vérification:
    2. Linux 5.19
      1. Avec Linux 5.19 une autre erreur dkms, problème de signature du module avec kmodsign:
    3. Linux 6
      1. Patch venant d’Archlinux disponible et fonctionnel
    4. broadcom-sta-dkms version 6.30.223.271 ok

Utiliser les modules inclus dans le noyau

Pour éviter les problèmes décrits ci-dessous il faut utiliser les modules bcma et brcmsmac inclus dans le noyau. https://wireless.wiki.kernel.org/en/users/drivers/brcm80211

Blacklister les autres modules.

Contenu du fichier /etc/modprobe.d/broadcom-sta-dkms.conf

# wl module from Broadcom conflicts with the following modules:
blacklist b43
blacklist b43legacy
blacklist b44
blacklist brcm80211
blacklist ssb
# si je veux fonctionner avec wl je commente la ligne suivante et je blacklist bcma et brcmsmac
blacklist wl
# si je veux fonctionner avec bcma je blacklist wl et je commente les deux suivantes 
#blacklist bcma
#blacklist brcmsmac
Après redémarrage la carte fonctionne:
lspci -nnk | grep -i net -A2
03:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries BCM4313 802.11bgn Wireless Network Adapter [14e4:4727] (rev 01)
	DeviceName: Broadcom 802.11n+BT combo module
	Subsystem: Hewlett-Packard Company BCM4313 802.11bgn Wireless Network Adapter [103c:1483]
	Kernel driver in use: bcma-pci-bridge
	Kernel modules: bcma

Description des problèmes de compilation.

Linux 5.18

A l’installation du noyau 5.18 des erreurs relatives à Broadcom: Deprecated feature: REMAKE_INITRD. De plus la compilation échoue.
/etc/kernel/postinst.d/dkms:
dkms: running auto installation service for kernel 5.18.0-1-amd64:Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD

Building module:
cleaning build area...
make -j2 KERNELRELEASE=5.18.0-1-amd64 KVER=5.18.0-1-amd64....(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.18.0-1-amd64 (x86_64)
Consult /var/lib/dkms/broadcom-sta/6.30.223.271/build/make.log for more information.

Application d’un palliatif issu d’Archlinux

Démarrer sur le précédent noyau (pour moi c’est le 5.17)
Modification du fichier /usr/src/broadcom-sta-6.30.223.271/dkms.conf: supprimer la ligne REMAKE_INITRD
PACKAGE_NAME="broadcom-sta"
PACKAGE_VERSION="6.30.223.271"
MAKE[0]="make KVER=$kernelver"
BUILT_MODULE_NAME[0]="wl"
DEST_MODULE_LOCATION[0]="/updates/dkms"
AUTOINSTALL="YES"
Télécharger et appliquer le patch
cd /usr/src/broadcom-sta-6.30.223.271

sudo wget https://raw.githubusercontent.com/archlinux/svntogit-community/master/broadcom-wl-dkms/trunk/013-linux518.patch

sudo patch --verbose -p1 < ./013-linux518.patch

Hmm...  Looks like a unified diff to me...
The text leading up to this was:
--------------------------
|diff -u -r a/src/shared/linux_osl.c b/src/shared/linux_osl.c
|--- a/src/shared/linux_osl.c	2022-05-24 20:51:15.662604980 +0000
|+++ b/src/shared/linux_osl.c	2022-05-24 21:13:38.264472425 +0000
--------------------------
patching file src/shared/linux_osl.c
Using Plan A...
Hunk #1 succeeded at 599.
Hunk #2 succeeded at 614.
Hunk #3 succeeded at 627.
Hunk #4 succeeded at 649.
Hunk #5 succeeded at 668.
Hunk #6 succeeded at 681.
done

Purger l’installation du noyau 5.18

sudo apt purge --autoremove linux-headers-5.18.0-1-amd64 linux-headers-5.18.0-1-common linux-image-5.18.0-1-amd64 linux-kbuild-5.18

Réinstaller le noyau 5.18

sudo apt install linux-headers-5.18.0-1-amd64 linux-headers-5.18.0-1-common linux-image-5.18.0-1-amd64 linux-kbuild-5.18
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Paquets suggérés :
  linux-doc-5.18 debian-kernel-handbook
Paquets recommandés :
  apparmor
Les NOUVEAUX paquets suivants seront installés :
  linux-headers-5.18.0-1-amd64 linux-headers-5.18.0-1-common linux-image-5.18.0-1-amd64 linux-kbuild-5.18
0 mis à jour, 4 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 80,6 Mo dans les archives.
Après cette opération, 540 Mo d'espace disque supplémentaires seront utilisés.
Réception de :1 https://cdn-aws.deb.debian.org/debian sid/main amd64 linux-headers-5.18.0-1-common all 5.18.2-1 [9 418 kB]
Réception de :2 https://cdn-aws.deb.debian.org/debian sid/main amd64 linux-kbuild-5.18 amd64 5.18.2-1 [701 kB]                     
Réception de :3 https://cdn-aws.deb.debian.org/debian sid/main amd64 linux-headers-5.18.0-1-amd64 amd64 5.18.2-1 [979 kB]          
Réception de :4 https://cdn-aws.deb.debian.org/debian sid/main amd64 linux-image-5.18.0-1-amd64 amd64 5.18.2-1 [69,5 MB]           
80,6 Mo réceptionnés en 60s (1 336 ko/s)                                                                                           
Sélection du paquet linux-headers-5.18.0-1-common précédemment désélectionné.
(Lecture de la base de données... 214491 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../linux-headers-5.18.0-1-common_5.18.2-1_all.deb ...
Dépaquetage de linux-headers-5.18.0-1-common (5.18.2-1) ...
Sélection du paquet linux-kbuild-5.18 précédemment désélectionné.
Préparation du dépaquetage de .../linux-kbuild-5.18_5.18.2-1_amd64.deb ...
Dépaquetage de linux-kbuild-5.18 (5.18.2-1) ...
Sélection du paquet linux-headers-5.18.0-1-amd64 précédemment désélectionné.
Préparation du dépaquetage de .../linux-headers-5.18.0-1-amd64_5.18.2-1_amd64.deb ...
Dépaquetage de linux-headers-5.18.0-1-amd64 (5.18.2-1) ...
Sélection du paquet linux-image-5.18.0-1-amd64 précédemment désélectionné.
Préparation du dépaquetage de .../linux-image-5.18.0-1-amd64_5.18.2-1_amd64.deb ...
Dépaquetage de linux-image-5.18.0-1-amd64 (5.18.2-1) ...
Paramétrage de linux-image-5.18.0-1-amd64 (5.18.2-1) ...
I: /vmlinuz is now a symlink to boot/vmlinuz-5.18.0-1-amd64
I: /initrd.img is now a symlink to boot/initrd.img-5.18.0-1-amd64
/etc/kernel/postinst.d/dkms:
dkms: running auto installation service for kernel 5.18.0-1-amd64:
Building module:
cleaning build area...
make -j2 KERNELRELEASE=5.18.0-1-amd64 KVER=5.18.0-1-amd64......
cleaning build area...

wl.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.18.0-1-amd64/updates/dkms/
depmod...
.
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-5.18.0-1-amd64
/etc/kernel/postinst.d/zz-update-grub:
Generating grub configuration file ...
Found background image: Lucienne-boot.png
Found linux image: /boot/vmlinuz-5.18.0-1-amd64
Found initrd image: /boot/initrd.img-5.18.0-1-amd64
Found linux image: /boot/vmlinuz-5.17.0-3-amd64
Found initrd image: /boot/initrd.img-5.17.0-3-amd64
done
Paramétrage de linux-headers-5.18.0-1-common (5.18.2-1) ...
Paramétrage de linux-kbuild-5.18 (5.18.2-1) ...
Paramétrage de linux-headers-5.18.0-1-amd64 (5.18.2-1) ...
/etc/kernel/header_postinst.d/dkms:
dkms: running auto installation service for kernel 5.18.0-1-amd64:.
cd /lib/modules/5.18.0-1-amd64/updates/dkms/
/lib/modules/5.18.0-1-amd64/updates/dkms$ ls -alrt
total 7400
drwxr-xr-x 3 root root    4096  9 juin  08:57 ..
drwxr-xr-x 2 root root    4096  9 juin  08:57 .
-rw-r--r-- 1 root root 7563816  9 juin  08:57 wl.ko
cat  /etc/modprobe.d/broadcom-sta-dkms.conf
# wl module from Broadcom conflicts with the following modules:
blacklist b43
blacklist b43legacy
blacklist b44
blacklist bcma
blacklist brcm80211
blacklist brcmsmac
blacklist ssb
#blacklist wl

Redémarrer sur le noyau 5.18

lspci -nnk | grep -i net -A2
03:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries BCM4313 802.11bgn Wireless Network Adapter [14e4:4727] (rev 01)
	DeviceName: Broadcom 802.11n+BT combo module
	Subsystem: Hewlett-Packard Company BCM4313 802.11bgn Wireless Network Adapter [103c:1483]
	Kernel driver in use: wl
	Kernel modules: bcma, wl

Du plaisir avec le wifi…

Mise à jour du paquet Broadcom version  6.30.223.271-20

La compilation est possible mais le message Deprecated feature: REMAKE_INITRD est toujours présent.

sudo apt install broadcom-sta-dkms/sid

[sudo] Mot de passe de  :       
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Version choisie « 6.30.223.271-20 » (Debian:unstable [all]) pour « broadcom-sta-dkms »
Les paquets suivants seront mis à jour :
  broadcom-sta-dkms
1 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 2 207 ko dans les archives.
Après cette opération, 1 024 o d'espace disque supplémentaires seront utilisés.
Réception de :1 https://cdn-aws.deb.debian.org/debian sid/non-free amd64 broadcom-sta-dkms all 6.30.223.271-20 [2 207 kB]
2 207 ko réceptionnés en 2s (893 ko/s)             
(Lecture de la base de données... 236298 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../broadcom-sta-dkms_6.30.223.271-20_all.deb ...
Module broadcom-sta-6.30.223.271 for kernel 5.18.0-1-amd64 (x86_64).
Before uninstall, this module version was ACTIVE on this kernel.

wl.ko:
 - Uninstallation
   - Deleting from: /lib/modules/5.18.0-1-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.
depmod...............................................
Module broadcom-sta-6.30.223.271 for kernel 5.18.0-2-amd64 (x86_64).
Before uninstall, this module version was ACTIVE on this kernel.

wl.ko:
 - Uninstallation
   - Deleting from: /lib/modules/5.18.0-2-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.
depmod.............
Deleting module broadcom-sta-6.30.223.271 completely from the DKMS tree.
Dépaquetage de broadcom-sta-dkms (6.30.223.271-20) sur (6.30.223.271-19) ...
Paramétrage de broadcom-sta-dkms (6.30.223.271-20) ...
Loading new broadcom-sta-6.30.223.271 DKMS files...
Deprecated feature: REMAKE_INITRD
Building for 5.18.0-2-amd64
Building initial module for 5.18.0-2-amd64
Deprecated feature: REMAKE_INITRD
Done.
Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD

wl.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.18.0-2-amd64/updates/dkms/
depmod…
Réinstallation du modules dans le deuxième noyau:
sudo  dkms autoinstall -k 5.18.0-1-amd64

Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD
Deprecated feature: REMAKE_INITRD

Building module:
cleaning build area...
make -j2 KERNELRELEASE=5.18.0-1-amd64 KVER=5.18.0-1-amd64...........
cleaning build area...

wl.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.18.0-1-amd64/updates/dkms/
depmod...............…
Vérification:
/usr/lib/modules/5.18.0-1-amd64/updates/dkms$ ls -alrt
total 7400
drwxr-xr-x 3 root root    4096 18 juin  14:21 ..
drwxr-xr-x 2 root root    4096 18 juin  14:21 .
-rw-r--r-- 1 root root 7563816 18 juin  14:21 wl.ko

/usr/lib/modules/5.18.0-2-amd64/updates/dkms$ ls -alrt
total 7400
drwxr-xr-x 3 root root    4096 18 juin  14:11 ..
drwxr-xr-x 2 root root    4096 18 juin  14:11 .
-rw-r--r-- 1 root root 7563816 18 juin  14:11 wl.ko
apt policy broadcom-sta-dkms
broadcom-sta-dkms:
  Installé : 6.30.223.271-20
  Candidat : 6.30.223.271-20
 Table de version :
 *** 6.30.223.271-20 500
        500 https://cdn-aws.deb.debian.org/debian sid/non-free amd64 Packages
        500 https://cdn-aws.deb.debian.org/debian sid/non-free i386 Packages
        100 /var/lib/dpkg/status
     6.30.223.271-19 990
        990 https://cdn-aws.deb.debian.org/debian bookworm/non-free amd64 Packages
        990 https://cdn-aws.deb.debian.org/debian bookworm/non-free i386 Packages
     6.30.223.271-17 500
        500 https://cdn-aws.deb.debian.org/debian bullseye/non-free amd64 Packages
        500 https://cdn-aws.deb.debian.org/debian bullseye/non-free i386 Packages

Linux 5.19

Avec Linux 5.19 une autre erreur dkms, problème de signature du module avec kmodsign:
Paramétrage de linux-kbuild-5.19 (5.19.11-1) ...
Paramétrage de linux-headers-5.19.0-2-common (5.19.11-1) ...
Paramétrage de linux-headers-5.19.0-2-amd64 (5.19.11-1) ...
/etc/kernel/header_postinst.d/dkms:
dkms: running auto installation service for kernel 5.19.0-2-amd64:Sign command: /usr/lib/linux-kbuild-5.19/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
make -j2 KERNELRELEASE=5.19.0-2-amd64 KVER=5.19.0-2-amd64......
Signing module /var/lib/dkms/broadcom-sta/6.30.223.271/build/wl.ko
/usr/sbin/dkms: ligne 1055: kmodsign : commande introuvable
Cleaning build area...

wl.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.19.0-2-amd64/updates/dkms/
depmod...
.

Cette fois ci pas d’impact au reboot. Le wifi est bien opérationnel.

Linux 6

/etc/kernel/header_postinst.d/dkms:
dkms: running auto installation service for kernel 6.0.0-1-amd64:Sign command:
/usr/lib/linux-kbuild-6.0/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
make -j2 KERNELRELEASE=6.0.0-1-amd64 KVER=6.0.0-1-amd64.......(bad exit status:
2)
Error! Bad return status for module build on kernel: 6.0.0-1-amd64 (x86_64)
Consult /var/lib/dkms/broadcom-sta/6.30.223.271/build/make.log for more
information.
Patch venant d’Archlinux disponible et fonctionnel
~/Téléchargements/linux/broadcom$ wget https://raw.githubusercontent.com/archlinux/svntogit-community/master/broadcom-wl-dkms/repos/community-x86_64/015-linux600.patch

Appliquer le patch en user root

su -
root@debian:/usr/src/broadcom-sta-6.30.223.271/src/wl/sys# patch wl_cfg80211_hybrid.c < /home/guy/Téléchargements/linux/broadcom/015-linux600.patch
patching file wl_cfg80211_hybrid.c
Hunk #1 succeeded at 2380 (offset -32 lines).
root@debian:/usr/src/broadcom-sta-6.30.223.271/src/wl/sys# 

Reconstruire le module

# dpkg-reconfigure broadcom-sta-dkms

Deleting module broadcom-sta-6.30.223.271 completely from the DKMS tree.
Loading new broadcom-sta-6.30.223.271 DKMS files...
Deprecated feature: REMAKE_INITRD (/usr/src/broadcom-sta-6.30.223.271/dkms.conf)
Building for 6.0.0-1-amd64
Building initial module for 6.0.0-1-amd64
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/broadcom-sta/6.30.223.271/source/dkms.conf)
/usr/sbin/dkms: ligne 1055: kmodsign : commande introuvable
Done.
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/broadcom-sta/6.30.223.271/source/dkms.conf)
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/broadcom-sta/6.30.223.271/source/dkms.conf)

wl.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.0.0-1-amd64/updates/dkms/
depmod........…

broadcom-sta-dkms version 6.30.223.271 ok

 sudo apt install broadcom-sta-dkms=6.30.223.271-22
[sudo] Mot de passe de guy :       
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Les paquets suivants seront mis à jour :
  broadcom-sta-dkms
1 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 2 205 ko dans les archives.
Après cette opération, 4 096 o d'espace disque seront libérés.
Réception de :1 https://cdn-aws.deb.debian.org/debian sid/non-free amd64 broadcom-sta-dkms all 6.30.223.271-22 [2 205 kB]
2 205 ko réceptionnés en 2s (1 236 ko/s)           
(Lecture de la base de données... 188481 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../broadcom-sta-dkms_6.30.223.271-22_all.deb ...
Module broadcom-sta-6.30.223.271 for kernel 6.0.0-2-amd64 (x86_64).
Before uninstall, this module version was ACTIVE on this kernel.

wl.ko:
 - Uninstallation
   - Deleting from: /lib/modules/6.0.0-2-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.
depmod.............
Deleting module broadcom-sta-6.30.223.271 completely from the DKMS tree.
Dépaquetage de broadcom-sta-dkms (6.30.223.271-22) sur (6.30.223.271-20) ...
Paramétrage de broadcom-sta-dkms (6.30.223.271-22) ...
Loading new broadcom-sta-6.30.223.271 DKMS files...
Deprecated feature: REMAKE_INITRD (/usr/src/broadcom-sta-6.30.223.271/dkms.conf)
Building for 6.0.0-2-amd64
Building initial module for 6.0.0-2-amd64
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/broadcom-sta/6.30.223.271/source/dkms.conf)
Done.
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/broadcom-sta/6.30.223.271/source/dkms.conf)
Deprecated feature: REMAKE_INITRD (/var/lib/dkms/broadcom-sta/6.30.223.271/source/dkms.conf)

wl.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/6.0.0-2-amd64/updates/dkms/
depmod.........
locate wl.ko
/usr/lib/modules/6.0.0-2-amd64/updates/dkms/wl.ko
/var/lib/dkms/broadcom-sta/6.30.223.271/6.0.0-2-amd64/x86_64/module/wl.ko
Publicité

Par Bidouille De Bian

Bidouilleur sur Linux Debian 10 (Buster). Débutant dans le blog sur Wordpress.

%d blogueurs aiment cette page :