Wie Hersteller vom CI feststellen?

  • Hallo Zusammen,


    ich bastle gerade an einen Projekt, bei dem ich wissen müsste, ob es sich z.B. bei dem Device "/dev/dvb/adapter0/ci0" um ein CI von DD handelt, oder nicht.


    Gibt es da eine Möglichkeit, wie man das herausfinden kann?

  • Hast du mal geschaut, ob es für das Gerät verwertbare udev-Attribute gibt?

    Code
    udevadm info --query=all --name=/dev/dvb/adapter0/ci0

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • In c, shell oder wie?

  • Shell

    Grüße, Dieter :)

  • Hast du mal geschaut, ob es für das Gerät verwertbare udev-Attribute gibt?

    Code
    udevadm info --query=all --name=/dev/dvb/adapter0/ci0


    Also ich habe mal ein paar meiner PCs mit DD CI getestet, aber so richtig glücklich werde ich damit nicht: :(


  • Nicht so einfach..


    Normalerweise ist dort wo ein ca0 ist auch ein frontend0.
    Unter der Annahme könnte man das frontend nach dem Hersteller string fragen.


    alternativ /sys fragen:
    1) alle Verzeichnisse /sys/devices/pciXXXX.yy/XXXX.YY/dvb/dvbN.caM suchen.
    2) schauen ob dort /sys/devices/pciXXXX.yy/XXXX.YY/vendor den Wert dd01 hat

  • Nicht so einfach..


    Normalerweise ist dort wo ein ca0 ist auch ein frontend0. ...


    Das ist halt bei mir nicht überall so:



    [...] alternativ /sys fragen:
    1) alle Verzeichnisse /sys/devices/pciXXXX.yy/XXXX.YY/dvb/dvbN.caM suchen.
    2) schauen ob dort /sys/devices/pciXXXX.yy/XXXX.YY/vendor den Wert dd01 hat


    Das werde ich mal versuchen. ;)

  • Habe es jetzt mal so gelöst:


    check_ci.sh

    Bash
    #!/bin/bash
    
    
    for i in $(find /sys/devices -type d -name 'dvb*ci*') ; do
      [ "$i" == "" ] && exit
      cd $i
      if [ "$(grep 0xdd01 ../../vendor)" ] ; then
        echo  "$(echo $i |sed 's/.*\(.\{8\}\)$/\1/' |sed 's/dvb/\/dev\/dvb\/adapter/' |sed 's/\./\//') --> DD CI"
      fi
    done



    Sicherlich nicht die eleganteste Lösung, aber es funktioniert. ;)


    Falls Jemand eine bessere Lösung hat, immer her damit. :)

  • Wolltest du nicht C oder C++?

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!