Forum Linux.général clé usb wifi (dongle wifi) supportée mais pas détecté par le pilote

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
2
13
sept.
2023

Bonjour

Je tente de faire marcher une clé usb wifi TP-Link qui normalement tourne sous Linux avec le pilote rtl8xxxu. Firmware et driver sont bien là. La clef n'est pas détectée, même après modprobe rtl8xxxu. Je ne sais même pas si c'est un bug. Des idées ? sinon je vais devoir faire comme tout le monde, tenter d'utiliser le pilote officiel Realtek un peu ancien.

Voilà les infos :

    |__ Port 2: Dev 7, If 0, Class=Vendor Specific Class, Driver=, 480M
        ID 2357:0107 TP-Link TL-WN821N v5/v6 [RTL8192EU]
        /sys/bus/usb/devices/1-1.2  /dev/bus/usb/001/007
  • et lshw me sort
             *-usb:0 NON-RÉCLAMÉ
                  description: Périphérique USB générique
                  produit: 802.11n NIC
                  fabriquant: Realtek
                  identifiant matériel: 2
                  information bus: usb@1:1.2
                  version: 2.00
                  numéro de série: 00e04c000001
                  fonctionnalités: usb-2.10
                  configuration: maxpower=500mA speed=480Mbit/s
  • pourtant la clé figure bien dans la liste des IDs connus du noyau
  • le firmware est à la place attendue par le pilote rtl8xxxu (vérifié avec modinfo rtl8xxxu)
  • # Avec une autre distribution ?

    Posté par  (site web personnel) . Évalué à 1.

    As-tu essayé avec une clé USB d'une autre distribution type Ubuntu, Fedora ou autre ?

    C'est peut-être un bug spécifique à Debian ?

  • # T'es sûr de ton driver ?

    Posté par  (Mastodon) . Évalué à 3.

    Sur le site de TP-Link, les instructions d'installation sous Linux parlent plutôt de 88x2bu

    En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.

    • [^] # Re: T'es sûr de ton driver ?

      Posté par  . Évalué à 2.

      Ça c'est le driver de Realtek, qui ne marche plus avec noyaux récents (mais y'a des fork pour le garder en vie)

  • # Identifiants dans le pilote

    Posté par  . Évalué à 3.

    Le truc que j'ai oublié de faire c'est d'ajouter les id USB (vid et pid) dans /sysfs au cas où le pilote ne les aurait pas. Mais j'ai vérifié elles sont dans le pilote.

    • [^] # Re: Identifiants dans le pilote

      Posté par  (site web personnel) . Évalué à 7.

      Je ne sais pas quelles vérifications tu as faites, mais je ne suis pas d'accord avec tes conclusions.

      kibi@anchorage:~$ sudo modinfo rtl8xxxu|grep 2357
      alias:          usb:v2357p0109d*dc*dsc*dp*icFFiscFFipFFin*
      alias:          usb:v2357p0108d*dc*dsc*dp*icFFiscFFipFFin*
      

      On voit bien 0109 et 0108 mais pas 0107.

      Côté drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c (au moins dans stable/linux-6.1.y), il y a bien cette entrée :

      {USB_DEVICE_AND_INTERFACE_INFO(0x2357, 0x0107, 0xff, 0xff, 0xff),
              .driver_info = (unsigned long)&rtl8192eu_fops},
      

      mais elle est gardée par ceci :

      #ifdef CONFIG_RTL8XXXU_UNTESTED
      

      or le packaging du noyau Debian dans la branche bookworm définit ces options de configuration :

      debian/config/config:CONFIG_RTL8XXXU=m
      debian/config/config:# CONFIG_RTL8XXXU_UNTESTED is not set
      

      Donc non, l'information VID/PID pour ta carte n'est pas dans le module, et c'est normal que charger manuellement le module ne change rien.

      C'est également le cas dans la branche master (v6.6-rc1-33-g3669558bdf354 actuellement).

      Si tu veux contribuer aux tests, je t'invite à sortir les identifiants de ta carte du #ifdef et à compiler un noyau avec cette modification. Si ta carte fonctionne avec le module ainsi modifié, tu pourras envoyer un patch indiquant les tests effectués, pour une éventuelle activation par défaut (dès lors que CONFIG_RTL8XXXU est activée, quelle que soit l'état de CONFIG_RTL8XXXU_UNTESTED).

      Bons tests !

      Debian Consultant @ DEBAMAX

      • [^] # Re: Identifiants dans le pilote

        Posté par  . Évalué à 3. Dernière modification le 13 septembre 2023 à 16:12.

        ça sert d'avoir dieu dans les forums !
        merci beaucoup.

        Envoyer les ids dans /sys/bus/usb/drivers/rtl8xxxu/new_id ça peut "forcer" le pilote pour un test?

  • # Firmware ?

    Posté par  (site web personnel) . Évalué à 5.

    Le pilote nécessite peut-être un firmware. As-tu regardé dans les logs du noyau pour vérifier ce qu'il raconte lorsque tu charges le pilote ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.