pilote wifi mediatek 7902 Le sujet est résolu

Demande d'aide : c'est ici.
Répondre
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

salut,

je suis sur le point de renvoyer à LDLC leur portable qui n'a que la wifi et mes recherches au sujet du pilote pour cette carte , au moins pour l'instant, me disent qu'il n'y en a pas pour Linux et qu'il faut utiliser un adaptateur usb pour la carte wifi . D'habitude je me débrouille mais là c'est un peu urgent alors ....

maintenat que j'ai la connexion ( cf ps3 ci dessous):

Code : Tout sélectionner

oot@s250:~# lspci -nnd ::0280
0000:02:00.0 Network controller [0280]: MEDIATEK Corp. Device [14c3:7902]
root@s250:~# 

ps: jamais je n'aurais imaginé un pc sans éthernet!!

ps2: forum linux mint:
Re: Driver MediaTek Wi-Fi 6E MT7902. How to Solve?
Post by MrNewOnLinux » Sat Aug 17, 2024 10:39 am
Did you found any solution for this ?

Re: Driver MediaTek Wi-Fi 6E MT7902. How to Solve?
sleeper12 » Sat Aug 17, 2024 2:53 pm
A usb wifi adapter is the only solution right now.
ps3: les choses changent vite. En regardant dans un recoin de l'emballage j'ai trouvé une connexion éthernet sur usb. Donc je garde cet ordi et à un moment ou un autre il y aura bien un pilote wifi, non? Par contre les 3 ports usb sont occupés. Une souris bluetooth ne fonctionnera malheureusement pas. Reste le pavé tactile... ou le double amorçage.......pas cool du tout...... et adieu le ssh chez moi, au moins pour l'instant sauf si je le connecte avec la connexion usb/ethernet. J'espère que les bénévoles de Debian vont s'occuper du cas Mediatek 7902 rapidement.
Debian 12/ Xfce
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Bonjour,
il y a des solutions pour faire fonctionner ce chip, c'est un peu bricolage, mais ça semble fonctionner. Il existe un patch kernel, mais apparemment pas encore dans les kernels des distributions. Tu peux essayer le dernier kernel liquorix, c'est ce que je connais de plus récent pour debian.
Verifie aussi que tu as activé les firmware non-free dans ton sources.list
https://github.com/morrownr/USB-WiFi/bl ... dapters.md
Sinon tu peux suivre par exemple ce post qui semble correspondre à ton cas (recompilation du kernel)

https://askubuntu.com/questions/1380400 ... 0-04-3-lts
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

merci pour ces recherches que je vais regarder de plus près un peu plus tard. Le mot "recompilation" m'effraie un peu je dois dire, mais bon je dois d'abord prendre connaissance de tout ça.

J'ai bien activé "non-free-firmware"
Debian 12/ Xfce
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Regarde du coté des kernels likorix si il n'auraient pas une version plus récente que la tienne
https://liquorix.net/
Avatar de l’utilisateur
zargos
Membre
Membre
Messages : 197
Inscription : 07 juil. 2023, 13:34
Status : Hors-ligne

tony a écrit : 03 sept. 2024, 09:15 merci pour ces recherches que je vais regarder de plus près un peu plus tard. Le mot "recompilation" m'effraie un peu je dois dire, mais bon je dois d'abord prendre connaissance de tout ça.

J'ai bien activé "non-free-firmware"
La recompilation, ce n'est jamais bon signe car ça veut dire que tu peux dire adieu à la mise à jour du noyau via apt.

Pour le pilote as-tu bien installé le paquet firmware-misc-nonfree, voir en backport?

Code : Tout sélectionner

apt install firmware-misc-nonfree
ou

Code : Tout sélectionner

apt -t bookworm-backports install firmware-misc-nonfree
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Zargos, il faut y aller par étape.
- d'abord charger le module kernel qui gère le chip (wl)
- ensuite s'assurer que ce module trouve bien le firmware dont il a besoin.

Actuellement la première étape n'est pas validée, je vais chercher si il est déja implémenté dans une version récente du noyau (pour l'instant je n'ai trouvé qu'un patch).
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

piratebab a écrit : 03 sept. 2024, 12:09 Zargos, il faut y aller par étape.
- d'abord charger le module kernel qui gère le chip (wl)
- ensuite s'assurer que ce module trouve bien le firmware dont il a besoin.

Actuellement la première étape n'est pas validée, je vais chercher si il est déja implémenté dans une version récente du noyau (pour l'instant je n'ai trouvé qu'un patch).
le pilote wl est déjà chargé car j'en ai eu besoin lorsque j'ai branché ce ssd sur une machine avec une carte Broadcom
Regarde du coté des kernels likorix si il n'auraient pas une version plus récente que la tienne
https://liquorix.net/
pour avoir un noyau qui gère wl? C'est déjà le cas du noyau actuel car je l'ai déjà utilisé. Ou pour autre chose ?

@zargos
Pour le pilote as-tu bien installé le paquet firmware-misc-nonfree, voir en backport?
ça aussi c'est déjà fait mais pas en version backport. Je la testerai éventuellement plus tard car si je le peux autant être en 100% Bookworm, non?

ps: je viens de comprendre à propos du pilote wl grâce à une commande plus complète que j'ai vue recommandée par @PascalHambourg .

Code : Tout sélectionner

~$ lspci -nnkd ::0280
0000:02:00.0 Network controller [0280]: MEDIATEK Corp. Device [14c3:7902]
	DeviceName: WLAN
	Subsystem: AzureWave Device [1a3b:5520]
	Kernel modules: wl
et donc je vérifie d'abord sur le wiki:
Le pilote propriétaire Broadcom (wl ou broadcom-sta) fournit un support pour quelques périphériques PCI/PCIe basés sur les chipsets Broadcom. Il inclut un composant binaire destiné aux architectures x86 ou x86-64. Les périphériques pris en charge sont listés à la fin de cette page.
Malheureusement il n'y a que du broadcom en bas de page. Et donc malgré le bon (=?) pilote installé ça ne fonctionne pas.

Code : Tout sélectionner

~$ apt policy broadcom-sta-dkms
broadcom-sta-dkms:
  Installé : 6.30.223.271-23
  Candidat : 6.30.223.271-23
 Table de version :
 *** 6.30.223.271-23 500
        500 https://deb.debian.org/debian bookworm/non-free amd64 Packages
        100 /var/lib/dpkg/status
Debian 12/ Xfce
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

je viens d'écrire à Mediatek au sujet du pilote wl de chez Broadcom, peut-être vont-ils se donner la peine de répondre vu que j'ai bien enveloppé l'affaire. Mais je n'y crois pas beaucoup.
I reached out a couple of weeks ago, as of writing this, to them via their own "contact us" tab on their website and i still have not received any emails/responses from them.
Sur internet la recherche de "mediatek wl" ne m'a rien retourné, comme s'il n'y avait pas de rapport entre les deux.

ps: que penser de ceci:
I have the same issue on another asus laptop that uses the same wifi card, you can buy an intel wifi card from amazon for around 25 dollars, just make sure it is supported,
serait-ce une solution facile à mettre en œuvre?

ps2: une autre proposition que je ne comprends d'ailleurs pas mais qui semble intéressante mais aussi pas très abordable pour un non spécialiste:
Hi i have the same problem with a ASUS Vivobook 17 (X1704ZA).
I have a solution you may not like but dont need any extra hardware.

1. install QEMU/KVM
2. setup a new VM with "tiny11core" ( https://github.com/ntdevlabs/tiny11builder )
3. install the MT7902 driver there ( https://dlcdnets.asus.com/pub/ASUS/n...?model=X1704ZA )
4. go to the network adaptors and create a bridge between the WLAN and the vmLAN
5. configure the virtual network on the linux side ( gateway and DNS server = routerIP )

that works for me.
Debian 12/ Xfce
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Effectivement, j'ai vu un tuto qui explique comment remplacer la carte wifi à l'intérieur du portable. Si tu as des compétences en soudure, c'est jouable.
Je pense qu'il y a un piège avec cette histoire de driver wl, il me semble que sous le même nom ce cachent 2 drivers complètement différents.
Pour voir si tu as un driver de chargé, c'est la commande lsmod, et pour avoir du détail c'est modinfo.

Tout espoir n'est pas perdu avec ce chip , regarde cette page:
https://linux-hardware.org/?id=pci:14c3 ... gnes MX 23
Extrait de la doc de MX 23

Code : Tout sélectionner

AHS now uses the 6.8.9 liqourix kernel
Je t'avais proposé cette solution, l'as tu testée ?

Attention il y a un piége avec MINT , les versions live de mint ont un kernel plus ancien que si tu installes en dur.
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Je viens de me rendre compte que ce chip fait à la fois ethernet avec le reference
Network controller [0280]: MEDIATEK Corp. Device [14c3:7902]

Et wifi avec la référence
Subsystem: AzureWave Device [1a3b:5520]

Dans les recherches de driver, c'est cette 2eme reference qu'il faut cibler
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

piratebab a écrit : 03 sept. 2024, 16:41 Je viens de me rendre compte que ce chip fait à la fois ethernet avec le reference
Network controller [0280]: MEDIATEK Corp. Device [14c3:7902]

Et wifi avec la référence
Subsystem: AzureWave Device [1a3b:5520]

Dans les recherches de driver, c'est cette 2eme reference qu'il faut cibler
voilà, c'est fait:

Code : Tout sélectionner

~$ uname -a
Linux s250 6.10.7-1-liquorix-amd64 #1 ZEN SMP PREEMPT liquorix 6.10-7.1~bookworm (2024-08-30) x86_64 GNU/Linux
malheureusement la connexion wifi ne s'établit pas et ne m'est pas proposée dans le menu déroulant de la barre des tâches associé aux connexions dans Xfce. Peut-être y a-t-il quelque chose de spécial à faire? le nom du périphérique n'est peut-être plus le même? Je vais voir de ce côté là car wlp3s0 a disparu de la liste donnée par la commande ip a: il ne reste que lo et éthernet.

ps: je crois que j'ai pigé.....finalement pas tout à fait:
An AzureWave device is a wireless network controller that connects different IoT and desktop PC devices to your Wi-Fi network.
donc il me faudrait acheter cet appareil et alors le noyau Liquorix établirait la wifi, non? Ou bien est-ce simplement une couche logicielle qui connecte la carte dans le pc au réseau wifi local? Je suis un peu perdu là-dedans.
Debian 12/ Xfce
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Dans le PC, tu as une petite carte qui gère le wifi et qui est équipé d'une puce AzureWave / Mediatech MT7902, dont l'identifiant est 1a3b:5520. Elle est compatible wifi 6, donc relativement récente.
Pour la faire fonctionner, il faut:
- un module kernel (driver) qui est semble t il présent dans les noyaux récents
- Un firmware que le driver va charger dans la puce
Ensuite, pour te faciliter la tache, tu as un gestionnaire de connexion, qui te permet de te connecter à ton réseau wifi.
Redonne le résultat de

Code : Tout sélectionner

lspci -nnkd ::0280
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Sur une config qui fonctionne, la sortie de dmesg contient:

Code : Tout sélectionner

wl: loading out-of-tree module taints kernel.
[    6.543140] wl: module license 'MIXED/Proprietary' taints kernel.
[    6.543140] Disabling lock debugging due to kernel taint
[    6.543141] wl: module license taints kernel.
Je ne suis pas un expert kernel, mais "out of tree " semble indiquer que la personne à pris les drivers wl ailleurs que dans la branche officielle du kernel.
Je vais regarder ça.
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Ca se confirme, il faut installer un driver qui n'est pas dans la branche officielle du kernel.

L'équipe MX linux a fait un gros boulot d'intégration de ce driver , tu peux tester leur version live pour voir si ton wifi fonctionne. Si c'est le cas, ce sera probablement le plus simple pour toi d'installer MX en dur)
Pour debian, ça à l'air d'étre une vrai galere à installer. J'ai lu un gars qui étais aller prendre le kernel et le driver dans une MX pour le mettre sur ta debian. Je ne sais pas si tu veux te lancer la dedans.
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

voilà ce que j'obtiens:

Code : Tout sélectionner

root@s250:~# lspci -nnkd ::280
0000:02:00.0 Network controller [0280]: MEDIATEK Corp. Device [14c3:7902]
	DeviceName: WLAN
	Subsystem: AzureWave Device [1a3b:5520]
	Kernel modules: wl
root@s250:~# dmesg | grep wl
[    2.775235] wl: loading out-of-tree module taints kernel.
[    2.775245] wl: module license 'MIXED/Proprietary' taints kernel.
[    2.775250] wl: module license taints kernel.
il manque probablement la ligne la plus importante. Donc ça ne marche pas.
L'équipe MX linux a fait un gros boulot d'intégration de ce driver , tu peux tester leur version live pour voir si ton wifi fonctionne. Si c'est le cas, ce sera probablement le plus simple pour toi d'installer MX en dur)
OK, je viens de voir qu'il s'agit d'une distribution linux. Quand j'aurai le temps je l'installerai sur un ssd/usb neuf et je pourrai tester tranquillement et la distribution elle-même et la wifi6. Si de plus ça fait marcher bluetooth, je suppose qu'il doit s'agir d'une carte type "combo"(? pas sûr de l''appellation), comme ma carte broadcom sur l'un de mes 3 portables qui fonctionne justement avec le pilote wl de chez broadcom, ce serait top. En attendant une évolution de Debian à propos de ce pilote je vais continuer à utiliser ma connexion éthernet.

Merci pour toutes ces recherches.

ps: je laisse le noyau de chez liquorix en place ou il vaut mieux reprendre un noyau Debian? Quid des mises à jour pour un liquorix?
Debian 12/ Xfce
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

C'est intéressant ça, ça veux dire que le kernel liquorix embarque le driver wl non libre. On tient peut étre une piste.
que donne

Code : Tout sélectionner

lsmod | grep wl
et

Code : Tout sélectionner

modinfo wl
et aussi

Code : Tout sélectionner

dmesg | grep firmware
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

Code : Tout sélectionner

root@s250:~# lsmod | grep wl
wl                   6488064  0
cfg80211             1302528  1 wl

root@s250:~# modinfo wl
filename:       /lib/modules/6.10.7-1-liquorix-amd64/updates/dkms/wl.ko.zst
license:        MIXED/Proprietary
srcversion:     19BBE46F2FF213F8C7AB05F
alias:          pci:v*d*sv*sd*bc02sc80i*
depends:        cfg80211
retpoline:      Y
name:           wl
vermagic:       6.10.7-1-liquorix-amd64 SMP preempt mod_unload 
parm:           passivemode:int
parm:           wl_txq_thresh:int
parm:           oneonly:int
parm:           piomode:int
parm:           instance_base:int
parm:           nompc:int
parm:           intf_name:string

root@s250:~# dmesg | grep firmware
[    1.083912] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/adlp_dmc.bin (v2.18)
[    1.090995] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/adlp_guc_70.bin (70.12.1) is recommended, but only i915/adlp_guc_70.bin (70.5.1) was found
[    1.090998] i915 0000:00:02.0: [drm] GT0: Consider updating your linux-firmware pkg or downloading from https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
[    1.094186] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/adlp_guc_70.bin version 70.5.1
[    1.094192] i915 0000:00:02.0: [drm] GT0: HuC firmware i915/tgl_huc.bin version 7.9.3
[19401.692160] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/adlp_guc_70.bin version 70.5.1
[19401.692165] i915 0000:00:02.0: [drm] GT0: HuC firmware i915/tgl_huc.bin version 7.9.3
Debian 12/ Xfce
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

piratebab a écrit : 03 sept. 2024, 23:15 C'est intéressant ça, ça veux dire que le kernel liquorix embarque le driver wl non libre. On tient peut étre une piste.
pour tester cette hypothèse j'ai désinstallé le pilote wl de Broadcom et les résultats des commandes ci-dessus ne sont plus les mêmes, en particulier:

Code : Tout sélectionner

root@s250:~# lsmod | grep wl

root@s250:~# modinfo wl
modinfo: ERROR: Module wl not found.
si le noyau liquorix embarquait ce pilote ne devrait-on pas le voir même sans l'installation du wl de Broadcom?
Debian 12/ Xfce
Avatar de l’utilisateur
piratebab
Site Admin
Site Admin
Messages : 5852
Inscription : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : En ligne

Oui tu as raison.
Pourtant ce module était marqué "out of tree".
Le module wl est chargé par le module cfg80211 qui est le module noyau gérant le wifi.
Je n'arrive pas à confirmer une info que je soupçonne: mdiatek/azureware serait en fait des chips broadcom .
Réinstalle le driver broacom et donne le résultat de dmesg | grep firmware que j'avais demandé
tony
Membre
Membre
Messages : 402
Inscription : 10 juil. 2023, 00:54
Status : Hors-ligne

piratebab a écrit : 04 sept. 2024, 09:43 Oui tu as raison.
Pourtant ce module était marqué "out of tree".
Le module wl est chargé par le module cfg80211 qui est le module noyau gérant le wifi.
Je n'arrive pas à confirmer une info que je soupçonne: mdiatek/azureware serait en fait des chips broadcom .
Réinstalle le driver broacom et donne le résultat de dmesg | grep firmware que j'avais demandé
voilà le résultat demandé:

Code : Tout sélectionner

~# dmesg | grep firmware
[    1.098079] i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/adlp_dmc.bin (v2.18)
[    1.106761] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/adlp_guc_70.bin (70.12.1) is recommended, but only i915/adlp_guc_70.bin (70.5.1) was found
[    1.106763] i915 0000:00:02.0: [drm] GT0: Consider updating your linux-firmware pkg or downloading from https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
[    1.110076] i915 0000:00:02.0: [drm] GT0: GuC firmware i915/adlp_guc_70.bin version 70.5.1
[    1.110079] i915 0000:00:02.0: [drm] GT0: HuC firmware i915/tgl_huc.bin version 7.9.3
Debian 12/ Xfce
Répondre