Posts by olebowle

    Am nachhaltigsten wäre es das Problem auf der linux-media Mailingliste zu schildern (mit Verweis darauf, dass es mit dem Treiberpaket von dvbsky.net funktioniert).


    Zum Thema Budget Technotrend: Welches Modul wird denn für die Karte benötigt? budget.ko? Das kann man u.a. mit lspci -v herausfinden.
    Das sollte eigentlich beim Treiberpaket von dvbsky.net mit gebaut werden. Du kannst ja mal nach DVB_BUDGET in v4l/.config suchen. Dort sollten alle Einträge als Module (=m) gebaut werden. Wie installierst du das Paket denn nach dem Bauen? Wie lautet die genaue Fehlermeldung?

    Kannst du es bei dir mal dem angehängten Patch testen? Wenn das bei dir funktioniert würde ich den Patch es zumindest im AUR aufnehmen und Max noch einmal nerven das Ganze auch wieder Upstream zu integrieren.

    Files

    • add_s850.diff

      (432 Byte, downloaded 279 times, last: )

    Soweit ich weiß bringt der closed source Treiber nix, weil die Werte aus dem closed source Teil in den Kernel eingezogen sind: siehe Commit-Kommentar. Du kannst es aber dennoch mal versuchen, wenn du magst. Für 3.19 wäre dann wohl media_build-bst-150322 das richtige. Um keine vorhandenen Module überschreiben zu müssen würde ich empfehlen

    Code
    1. # make KDIR26="/lib/modules/$(uname -r)/updates/kernel/drivers/media" media-install

    statt

    Code
    1. # make install

    auszuführen. Dann landen die neuen Module im updates Ordner und können anschließend wieder sauber entfernt werden, wenn das Treiberpaket keine Besserung ergibt.

    Naja, wenn es mit dem Patch nicht will und du mit der insmod option klar kommst ist ja gut. Ich denke es wäre das Beste, wenn du das Wiki aktualisieren würdest. Du besitzt ja schließlich die Karte.


    Du kannst versuchen Max Nibble anzuschreiben, warum der Support für die Karte raus geflogen ist. Aber erwarte keine (schnelle) Antwort. Er hatte damals nicht einmal auf einen von mir eingereichten Patch reagiert.

    Bis media_build-bst-14-141106 wurde deine Karte als "Bestunar PS8512" erkannt. Dabei nahm sie dieselben Initalisierungspfade wie eine S950 (siehe cx23885-cards.c). Das nächste Release (media_build-bst-141219.tar.gz) war ein riesiger Umbau (vermutlich ein Rebase auf einen neueren media-tree), dabei flog die Bestunar PS8512 mit der PCI-ID 14f1:8512 raus. Und eben diese ID habe ich jetzt im PKGBUILD von oben auf die S950 gemappt. Ich bin also ziemlich zuversichtlich, dass es damit dem PKGBUILD wieder ootb laufen sollte. Wenn das der Fall ist, werde ich den Patch ins AUR aufnehmen.

    Ok, dann hatte ich dich falsch verstanden. Wenn es ohne Treibepaket nicht läuft, brauchen wir auch keinen Patch Upstream schicken, um die PCI IDs der S850 bekannt zu machen.


    1. Ohne Firmware wird die Karte nicht laufen.
    2. Mit welchem media-build lief es denn noch ootb?
    3. Im Anhang findest du ein PKGBUILD das vermutlich wieder ootb laufen sollte (also ohne insmod option)


    Ohne die Entdeckung, dass man eine andere Karte angeben kann, würde ich auf dem letzten unterstützten Kernel festhängen.


    Solange das Treibepaket mit dem jeweiligen Kernel baut kann man es auch mit neueren Kerneln benutzen. Insofern verstehe ich nicht, dass du auf einem Kernel festhängst.

    Gibt es hier im Forum vielleicht irgendwo eine Anleitung, wie ich das riesige Paket auf die paar benötigten Treiber reduziere? 99% von dem, was da Minutenlang die Konsole runterläuft, brauche ich doch gar nicht.


    Ich hatte damals mit Copperhead ein Paket geschnürt, dass nur die benötigten Module baut. Das ging ein paar Releases gut, irgendwann ist die Anzahl der Patches explodiert und es war einfach viel zu viel Aufwand das noch zu maintainen. Das Problem ist, dass sich kernelinterne Schnittstellen dauernd verändern und man dementsprechend patchen muss. Wenn man jetzt einen kompletten media-tree nutzt, dann sind die Schnittstellen der Module unterhalb gleichbleibend und man hat kaum Aufwand bei einem neuen Kernelrelease. Allerdings schleppt man damit immer die alten Module mit sich rum und bekommt keine neuen Features/Bugfixes. Schön wäre es folglich den Treibersupport mal wieder auf ein neueren media-tree zu rebasen. Ich habe allerdings keine großen Hoffnungen, dass das noch einmal geschieht, da ein großer Teil der Karten ja mittlerweile von Kernel unterstützt wird.
    Man könnte versuchen mit make menuconf einige Module abzuwählen und zu schauen, ob es auf dem eigenen System noch läuft. Allerdings würde ich das dann wohl eher nicht ins AUR übernehmen, da ich keine Ahnung habe, ob das dann auch noch mit der Hardwarekonfiguration anderer Nutzer funktioniert. Für einen selbst wäre eine angepasste .config aber sicherlich nicht schlecht, wenn man das Paket öfter selber bauen muss.

    Habe ich das richtig verstanden, dass es bei dir mit Ubuntu Mainline-Kernel ohne Treiberpaket funktioniert hat (der Log-Auszug sieht gut aus), aber mit Manjaro nicht? Oder geht es bei dir prinzipiell nicht ohne Treiberpaket?

    Diese Verwirrung kenne ich. Du musst den Rechner einmal komplett ausschalten, ein Neustart reicht nicht. :wow
    Wie gesagt vermutlich Müll in den Registern durch unsaubere Initialisierung oder so. Es wäre also schön, wenn du es bei Gelegenheit noch einmal mit neuesten Kernel ohne Treiberpaket und mit Trick probierst (nach einem Kaltstart). Ich kann garantieren, dass nach Deinstallation des Treiberpaketes (media-build-dvbsky aus dem AUR) keine alten Module übrig bleiben. Das ist ja das Schöne am Pakete Schnüren und Installieren mit pacman.


    EDIT: Zur Info: Ich habe eine relative alte S952, die die älteren M88TS2020 Tuner nutzt. Damit werden ohne Treiberpaket Knoten unterhalb /dev/dvb erzeugt. Allerdings läuft das Frontend dann immer in einen Timeout rein, wenn ich versuche zu tunen (sowohl VDR, als auch w_scan, etc.). Mit dem Paket läuft es tadellos, das muss man halt immer wieder neu bauen beim Kernelwechsel. Es wäre halt interessant zu wissen, ob das bei dir ähnlich aussieht. Bei mir wird nämlich auch die MAC-Adresse ff:ff:ff:ff:ff:ff angezeigt. Neuere S952er haben da einen sinnvollen Wert.

    Hallo joohn,


    so richtig Sinn macht es nicht, ausschließen will ich es aber auch nicht. :)


    Ich hatte konkret nach lspci -nn gefragt, um die Vendor und Product IDs in Erfahrung zu bringen. Ist es tatsächlich 14f1:8512?


    Kommt es noch zu irgendwelchen Fehlermeldungen, wenn du card=49 nimmst? Beim letzten Auszug waren ja noch folgende Fehler zu erkennen:

    Code
    1. Nov 03 12:34:02 joohn kernel: cx23885_dvb_register() dvb_register failed err = -22
    2. Nov 03 12:34:02 joohn kernel: cx23885_dev_setup() Failed to register dvb on VID_C


    Da du ja einen schön aktuellen Kernel verwendest, könntest du auch einmal probieren die Karte ohne das Treiberpaket ans Laufen zu bringen? Theoretisch müsste das auch nur mit den mitgelieferten Kernelmodulen funktionieren (mit der entsprechenden modprobe option).


    BTW: Wenn du beispielsweise die Datei /etc/modprobe.d/cx23885.conf mit folgendem Inhalt anlegst, musst du nicht mehr manuell modprobe ausführen:

    Code
    1. options cx23885 card=49

    Kann ich da etwas kaputt machen? Und wenn es wirklich so einfach wäre - wieso wird die Karte immer noch nicht unterstützt?

    Ich glaube kaum, dass du dir dabei etwas kaputt machst. Es kann maximal sein, dass Register falsch gesetzt werden bzw. eine falsche Firmware geladen wird. Aber spätestens beim Ausschalten des Rechners sollten diese Daten ohnehin wieder verloren gehen.


    BTW: Wäre es nicht sinnvoller die ID der S950 (also card=49) anzugeben. Die scheint mir ähnlicher als die S952, da sie nur einen Tuner hat. Wenn es damit ohne Fehlermeldungen läuft, könnte man durchaus daran denken einen Patch an die Mailingliste zu schicken. Die Ausgabe von lspci -nn wäre dafür auch hilfreich.

    Ich hatte das Archiv von dem Link im ersten Post genommen.


    Es sind wohl noch alte, selbst gebaute Module von vorherigen Versuchen vorhanden. Die müsstest du erst einmal wieder entfernen. Deswegen installiere ich meine Module immer nach /lib/modules/$(uname -r)/updates um die selbst gebauten Module schön von den originalen zu trennen. Sprich anstatt make install ein:

    Code
    1. # make KDIR26="/lib/modules/$(uname -r)/updates/kernel/drivers/media" media-install