Forum Linux.debian/ubuntu Cherche driver linux : TNT5004

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
10
avr.
2019

Bonsoir,

Je cherche un driver linux (debian) pour une carte PCI-GPIB numéro de série 188513E-01L.

D'après ce que j'ai pu lire, le driver serait TNT5004 plutôt que TNT4882.

La norme est le GPIB.

Je me suis déjà servis du projet suivant : https://linux-gpib.sourceforge.io/

J'ai compilé et installé linux-kernel-gpib et linux-user-gpib.

J'ai essayé de me servir des modules tnt4882 et agilent sans succès de détection avec lspci et ibtest.

Si vous-avez eu une expérience avec des cartes propriétaire NAtional Instrument sous Linux, n'hésitez pas.

Je cherche le driver TNT5004.

Merci d'avance.

  • # Vraiment présente ?

    Posté par  . Évalué à 3.

    Hello,

    Ça risque de pas aider beaucoup, c'est plus pour préciser les chose : lspci voit-il la carte, sans la reconnaître, ou bien ne la voit-il pas du tout ?
    Si la carte est fonctionnelle, elle doit figurer dans la liste donnée par lspci, même si on y trouve que ses vendor ID et product ID.

    Et le kernel, avec dmesg peut-être ? Pas un mot de sa part à propos de cette carte ?

    La carte présente-t-elle des signes de fonctionnement, mis à part les difficultés sous Linux ? Ne serait-elle pas en panne ?

    Ceci dit, content de ne pas avoir à faire à NI ! Au taff, on a failli se lancer dans LabView pour contrôler du Hioki et du EA. Heureusement, on a compris assez vite que faire du LabView avec autre chose que du matos NI, c'était des années de galère garanties !

    Bon courage !

    • [^] # Re: Vraiment présente ?

      Posté par  . Évalué à 1.

      Merci, he bien pour le moment pas de signe de la carte du tout sans le bon driver.

      Voir cette liste :

      https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019LSwSAM&l=fr-FR

      Je ne souhaite pas me lancer dans labview, HELP !^

      Je pense avoir des éléments pour le driver.

      Je tente demain

      • [^] # Re: Vraiment présente ?

        Posté par  . Évalué à 1.

        J'ai continué à chercher.

        Un projet NI-488.2 existe pour linux mais à adapter à Debian, est-ce que c'est possible ?

        http://www.ni.com/download/ni-488.2---linux/6902/en/

        Pourriez-vous jeter un coup d'oeil ?

        Merci d'avance

        • [^] # Re: Vraiment présente ?

          Posté par  . Évalué à 2.

          J'ai voulu regarder …

          Déjà, un .iso pour distribuer un driver, c'est peu commun.

          Mais en plus, il s'avère que pour récupèrer l'iso en question, il faut créer un compte… Et c'est la qu'on a atteint les limites de ma bonne volonté :-)

          Si tu peux nous lister le contenu de ce .iso, alors on pourra peut être t'en dire plus.

          Cependant, je crains que le driver soit livré sous forme binaire (.ko) et, de fait, pas recompilable pour une target debian…

          Si c'est le cas, tu devrais pouvoir utiliser le driver binaire compilé à l'origine pour CentOS/Redhat en:

          1. Récupérant le même noyau que celui utilisé par Redhat.
          2. Récupérant le fichier de configuration du noyau.
          3. Recompilant le noyau avec la config …
      • [^] # Re: Vraiment présente ?

        Posté par  . Évalué à 1.

        Ouais, mais le lspci, il donne quoi ? Elle est bien là la carte ?

        • [^] # Re: Vraiment présente ?

          Posté par  . Évalué à 1. Dernière modification le 11 avril 2019 à 13:07.

          A priori elle n'est pas reconnu.

          Il faut compiler le driver et le charger avec modprobe.

          A priori dedans, il y a un binaire qui permet de recompiler les drivers en fonction du noyau que tu possède.

          Une fois le fichier .iso monté, tu executes " ./INSTALL --nodeps "

          Ensuite, executer " sudo ./updateNIDrivers ". Ici je suis coincé car l'executable ne voit pas les kernel sources. Je ne vois pas comment avancer sur ce point !

          https://framadrop.org/r/i7CdsxGMVo#5eTkGi+30fV2Z5XWhgECUAJGgJjkqM1KGU1O552CtDU=

          • [^] # Re: Vraiment présente ?

            Posté par  . Évalué à 1.

            As root, run "/usr/local/bin/updateNIDrivers". By default, the
            updateNIDrivers utility rebuilds the driver for the currently
            running kernel using the kernel sources and copies it to the
            appropriate location.

            • [^] # Re: Vraiment présente ?

              Posté par  . Évalué à 1.

              J'ai avancé.

              J'ai pu lancer l'installer de mon fichier .iso.

              Mon souci est qu'au moment de recompiler les drivers avec la commande updateNIdriver, je suis coincé sur la partie programme suivante :

              # This is needed for the ./configure script, when it gets run
              if ! withVersioning nikalGetRequestedKernelSourcesDir; then
                 error "Error locating kernel sources for the requested kernel version (${kernelVersion})."
                 if [ "${promptUser}" = "0" ]; then
                    echoUsage
                 fi
                 exit 1
              fi
              
          • [^] # Re: Vraiment présente ?

            Posté par  . Évalué à 2.

            A priori elle n'est pas reconnu.

            Oups

            Il faut compiler le driver et le charger avec modprobe.

            Non, n’importe quelle carte sur le BUS PCI doit donner son vendorID et son ID. C’est une fois en possession de cette information que le noyau peut charger le bon driver.

            Si la carte n’est pas reconnu :

            • Vérifier qu’elle est correctement enfoncée dans le connecteur PCI.
            • Changer la carte de slot au cas où une soudure ait sautée (peu probable)
            • La remplacer par une carte que tu sais fonctionner.
            • Vérifier si la carte est reconnue sur un autre PC (Windows)
              • Oui :
              • Redémarrer avec un live CD linux et refaire un lspci.

            Voila mes idées là, maintenant, tout de suite.

            Bonne chance.

            • [^] # Re: Vraiment présente ?

              Posté par  . Évalué à 2.

              Sur ma machine Virtuelle :

              $ lspci
              00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
              00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
              00:01.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)
              00:02.0 VGA compatible controller: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter
              00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 02)
              00:04.0 System peripheral: InnoTek Systemberatung GmbH VirtualBox Guest Service
              00:05.0 Multimedia audio controller: Intel Corporation 82801AA AC'97 Audio Controller (rev 01)
              00:06.0 USB controller: Apple Inc. KeyLargo/Intrepid USB
              00:07.0 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
              $

              Il liste tous ce que le noyau détecte, mais ça ne veut pas dire qu’il sache les prendre en compte.

            • [^] # Re: Vraiment présente ?

              Posté par  . Évalué à 1.

              Merci pour tes réponses. Je vais voir ça. Elle donne son IDVendor sous windows avec lspciutil.

              Je vais revoir sous sudo dmesg.


              J'ai avancé.

              J'ai pu lancer l'installer de mon fichier .iso.

              Mon souci est qu'au moment de recompiler les drivers avec la commande updateNIdriver, je suis coincé sur la partie programme suivante :

              if ! withVersioning nikalGetRequestedKernelSourcesDir; then
                 error "Error locating kernel sources for the requested kernel version (${kernelVersion})."
                 if [ "${promptUser}" = "0" ]; then
                    echoUsage
                 fi
                 exit 1
              fi
              

              Le programme ci-dessus se trouve ligne 134 du fichier updateNIdriver : https://debian-facile.org/paste-BABC841E70

              Fait appel à la fonction nikalGetRequestedKernelSourcesDir() du fichier installerUtility.sh : https://debian-facile.org/paste-9CAA1DEBCB

              J'ai toujours mon erreur alors que j'ai configuré mes 3 variables d'environnements.

              export INSTALL_MOD_PATH=""
              export KERNELTARGET=4.19.0-0.bpo.2-amd64
              export KERNELHEADERS=$KERNELHEADERS:$INSTALL_MOD_PATH/lib/modules/$KERNELTARGET/...
              
              • [^] # Re: Vraiment présente ?

                Posté par  . Évalué à 1.

                J'ai encore avancé mais cette fois pas sur que je trouve la solution.

                zcat /boot/symvers-4.19.0-0.bpo.2-amd64.gz > Module.symvers

                Pas de trace en /boot du fichier symvers-4.19.0-0.bpo.2-amd64.gz sous debian stretch

                • [^] # Re: Vraiment présente ?

                  Posté par  . Évalué à 1.

                  Actuellement :

                  /usr/src/linux-headers-4.19.0-0.bpo.2-amd64# make cloneconfig
                  /usr/src/linux-headers-4.19.0-0.bpo.2-common/scripts/Makefile.build:45: /usr/src/linux-headers-4.19.0-0.bpo.2-common/scripts/basic/Makefile: Aucun fichier ou dossier de ce type
                  make[3]: *** Aucune règle pour fabriquer la cible « /usr/src/linux-headers-4.19.0-0.bpo.2-common/scripts/basic/Makefile ». Arrêt.
                  make[2]: *** [/usr/src/linux-headers-4.19.0-0.bpo.2-common/Makefile:465: scripts_basic] Error 2
                  make[1]: *** [Makefile:146: sub-make] Error 2
                  make: *** [Makefile:8: all] Error 2
                  
                  • [^] # Re: Vraiment présente ?

                    Posté par  . Évalué à 2. Dernière modification le 11 avril 2019 à 17:22.

                    Il faut que tu installes les headers du noyau.

                    Par contre, je suis intéressé par le résultat du lspci.

                    • [^] # Re: Vraiment présente ?

                      Posté par  . Évalué à 1.

                      La carte n'est pas repéré :

                      00:00.0 Host bridge [0600]: Intel Corporation 440FX - 82441FX PMC [Natoma] [8086:1237] (rev 02)
                      00:01.0 ISA bridge [0601]: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II] [8086:7000]
                      00:01.1 IDE interface [0101]: Intel Corporation 82371AB/EB/MB PIIX4 IDE [8086:7111] (rev 01)
                      00:02.0 VGA compatible controller [0300]: InnoTek Systemberatung GmbH VirtualBox Graphics Adapter [80ee:beef]
                      00:03.0 Ethernet controller [0200]: Intel Corporation 82540EM Gigabit Ethernet Controller [8086:100e] (rev 02)
                      00:04.0 System peripheral [0880]: InnoTek Systemberatung GmbH VirtualBox Guest Service [80ee:cafe]
                      00:05.0 Multimedia audio controller [0401]: Intel Corporation 82801AA AC'97 Audio Controller [8086:2415] (rev 01)
                      00:06.0 USB controller [0c03]: Apple Inc. KeyLargo/Intrepid USB [106b:003f]
                      00:07.0 Bridge [0680]: Intel Corporation 82371AB/EB/MB PIIX4 ACPI [8086:7113] (rev 08)
                      00:0d.0 SATA controller [0106]: Intel Corporation 82801HM/HEM (ICH8M/ICH8M-E) SATA Controller [AHCI mode] [8086:2829] (rev 02)
                      

                      La carte PCI-GPIB sous windows avec lspci :

                      Communication Controller [0780]  ->   National Instruments PCI-GPIB [1093:c801]
                      
                      • [^] # Re: Vraiment présente ?

                        Posté par  . Évalué à 1.

                        Je dois effectuer les opérations suivante :
                        1-Configure the sources for the currently running kernel.
                        2-Prepare the headers for compilation.

                        Pour cela, ils disent en :
                        1-make cloneconfig
                        2-make modules_prepare

                        Sauf qu'à la base ces remarques sont pour OpenSuse plutôt que pour debian !

                        Est-ce que c'est correcte ou il y a une autre manière de s'y prendre pour Debian Stretch ?

                        Merci

                      • [^] # Re: Vraiment présente ?

                        Posté par  . Évalué à 1.

                        Oh la bonne blague !

                        Tu essayes d'accéder à cette carte à partir d'une machine virtuelle (VirtualBox) ???
                        Sauf erreur, c'est juste impossible. Tu pourras installer tous les drivers de l'univers, à ma connaissance, le bus PCI(e) est inaccessible à la VM.

                        Je me trompe ?

                        • [^] # Re: Vraiment présente ?

                          Posté par  (site web personnel) . Évalué à 2. Dernière modification le 11 avril 2019 à 21:47.

                          Je me trompe ?

                          bin non.

                          c'est d'une débilité sans nom d'essayer d'utiliser son matériel directement d'une VM (qui fournit une abstraction et non l'accès direct au matériel…).

                          au moins, utiliser une distribution Live sur clé USB aurait plus de sens si l'on ne souhaite pas perdre son windows (le syndrome de Stockholm étant avéré).

                          PS : la bonne commande pour obtenir vendor id/product id est lspci -nn

Suivre le flux des commentaires

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