neuer kernel - cannot load firmware [solved]

  • Ich glaub, ich gebs bald auf. *grmpf*


    Der CVS-Treiber kompiliert nicht!:


    Code
    ...
    CC [M]  drivers/media/common/saa7146_fops.o
    drivers/media/common/saa7146_fops.c: In Funktion »fops_poll«:
    drivers/media/common/saa7146_fops.c:365: Warnung: Verarbeiten des Argumentes 3 von »videobuf_poll_stream« von inkompatiblem Zeigertyp
    drivers/media/common/saa7146_fops.c:365: error: too many arguments to function `videobuf_poll_stream'
    make[3]: *** [drivers/media/common/saa7146_fops.o] Fehler 1
    make[2]: *** [drivers/media/common] Fehler 2
    make[1]: *** [drivers/media] Fehler 2
    make: *** [drivers] Fehler 2
    bash-2.05b#


    *WTF*???

  • Hi barney,
    das funktioniert bei mir auch nicht,
    habe es gerade upgedatet

    :rolleyes:
    gestern funktionierte das noch


    cu

  • auch mit einer etwas älteren cvs-version kommt derselbe fehler.
    woran könnte es noch liegen? er gibt noch immer die meldung:

    Code
    saa7146: register extension 'dvb'.
    ACPI: PCI interrupt 0000:00:0a.0[A] -> GSI 7 (level, low) -> IRQ 7
    saa7146: found saa7146 @ mem d09da000 (revision 1, irq 7) (0x13c2,0x0000).
    DVB: registering new adapter (Siemens/Technotrend/Hauppauge PCI rev1.3).
    adapter has MAC addr = 00:d0:5c:03:a3:e3
    av7110_fw_request: timeout waiting for COMMAND to complete
    dvb-ttpci: av7110_fw_query error
    dvb-ttpci: failed to boot firmware @ card 0
    saa7146: unregister extension 'dvb'.
    spurious 8259A interrupt: IRQ7.


    aus

  • hi ,
    wenn man von
    saa7146_fops.c
    saa7146_vbi.c
    saa7146_video.c
    aus dvb-kernel/linux/drivers/media/common/
    die horherigen versionen nimmt,
    laesst sichs kompilieren,die Aenderung war vor knapp 4 Std.


    Fehlt eventuell was im kernel ,was die firmware betrifft ??
    mfg

  • die firmware liegt mittlerweile in so ziemlich jedem Verzeichnis ;)


    die Treiber sind auch per makelinks /usr/src/linux verlinkt.


    Das Komische:


    ein "modprobe dvb-ttpci" will die firmware immer per hotplug laden, selbst wenn ich sie fix in den Kernel einkompiliert habe.


    Es scheint eher ein anderes Problem zu geben_:
    Er findet offenbar die Karte nicht.


    Laut Kernel-Doku sollte die Slotnummer der Karte (bei mir 0000:00:0a.0) beim Laden des dvb-ttpci-Moduls in /sys/class/firmware aufscheinen. So könnte ich auch per cat dvb-ttpci-01.fw > $DEVDIR/data die firmware manuell laden.


    die Karte scheint zwar im /sys/devices/pci0000:00-Verzeichnis auf, aber nicht in /sys/class/firmware


    Offenbar kann hotplug bzw. das Modul deswegen die firmware nicht auf die Karte laden.


    Da ich mit dem Kernel auch udev upgedatet habe, dürfte das Problem dort liegen (Obwohl alle devices richtig eingerichtet sind)


    irgendwelche Vorschläge?
    Nach zwei Tagen bin ich drauf und dran die TT-Karte zu verscherbeln und zu meiner dbox zurückzukehren..... :§$%

  • Wie kann ich testen, ob die Karte überhaupt noch funktioniert? Vielleicht ist ja der Firmware-Speicher auf der Karte geschossen?
    Vor allem scheint die Karte, wie gesagt, nicht unter /sys/class/firmware auf.
    Also kann ich die firmware auch nicht manuell aufspielen....


    Bitte um Hilfe,


    B*

  • Also zum Testen würde ich einfach mal Deine vorhandene Installation wegsichern und ein LINVDR drüberknallen - da hast Du nach kurzer Zeit das Ergebnis ob die Karte funzt. :]

    Schöne Grüße
    Thomas


    HW: Soltek QBIC SL-B8E-F2, 2.4 GHz Celeron gekühlt mit Cooltek CT8C-48 CU, TT 1.5 ff, 512 MB RAM, 160 GB Samsung SV1604N, DVD AOPEN AAP, FB All-In-One URC7030
    SW: Gentoo mit Kernel 2.6.17-r5 und separaten DVB-Treibern (v4l-dvb-db2b113ea431), VDR 1.4.4 + Big Patch, nvram-wakeup mit reboot via lilo, noad
    PLUGINS: diverse

  • Also - die Karte funktioniert ion einem anderen System (SuSE) bestens.


    Nix hilft auf meinem System.
    Ich lösche /lib/modules/entsprechenderkernel
    ich unmerge alle kernel-sourcen
    ich lösche alles aus /usr/src
    ich emerge die kernelsourcen & kompiliere & installiere den neuen Kernel.
    Weder mit den Treibern aus 2.6.8 noch 2.6.9 noch 2.6.10 noch CVS Treibern (ebuild und manuell) funktioniert das Laden der Firmware. Auch nicht manuell, weil unter /sys/class/firmware die Karte warumauchimmer nicht angezeigt wird.


    Bei CVS sagt er mir anstatt der üblichen Fehler-Meldung (s.o.):
    "dvb-ttpci-01.fw - file not found."
    DAS KANN ABER NICHT SEIN! Die firmware is richtig geschrieben und befindet sich in /lib/firmware und /usr/lib/hotplug/firmware


    Hab auch schon hotplug und udev neu installiert, hotplug config dateien gelöscht usw.usf...


    Woran liegt der Fehler?


    Danke, B.

  • Frage 1:
    Ist der *Treiber* in den Kernel kompiliert oder als Modul?
    Wenn man den Treiber fest im Kernel hat, muß man sicherstellen, daß Hotplug auch auf die Firmware zugreifen kann, da die Filesysteme i.d.R. erst später gemountet werden.


    Frage 2:
    Ist die *Firmware* jetzt in den Treiber reinkompiliert oder nicht?
    Wenn sie reinkompiliert ist, braucht man keine Hotplug-Skripte!


    CU
    Oliver

  • Hi,

    Code
    Bei CVS sagt er mir anstatt der üblichen Fehler-Meldung (s.o.):
    "dvb-ttpci-01.fw - file not found."
    DAS KANN ABER NICHT SEIN! Die firmware is richtig geschrieben und befindet sich in /lib/firmware und /usr/lib/hotplug/firmware


    habe ja schon mal gepostet,aber was solls.
    Wenn die cvs Treiber genutzt werden,
    und diese nicht per makelinks verlinkt werden ,
    gehoert die firmware ins build-2.6 Verzeichnis,
    dann dort make ausfuehren und
    anschliessend die Treiber per
    'insmod.sh load' laden.
    mfg

  • UFO:
    Ich habe beides probiert. Sowohl den Treiber und Firmware einkompiliert & auch nicht einkompiliert. Sowohl fix einkompiliert, als auch als Module. Hab schon alle Varianten durch. Und es ist bei meiner .config vor dem Kernel-Update schon gegangen.



    holymoly
    Hab ich schon beides versucht. (Ich hab alle Tipps, die jemals gegeben wurden befolgt...)
    1. mit makelinks & den Kernel neu kompiliert
    2. fw ins build-Verzeichnis, make & insmod.sh load


    nix geht, immer derselbe Fehler


    Ich hab schon sehr viel Zeit damit verbracht. Kernel ca. 20 mal neu kompiliert (auch mit make mrproper vorher) usw...


    Hier die .config:

  • Zitat

    Original von Barney
    Ich habe beides probiert. Sowohl den Treiber und Firmware einkompiliert & auch nicht einkompiliert. Sowohl fix einkompiliert, als auch als Module. Hab schon alle Varianten durch. Und es ist bei meiner .config vor dem Kernel-Update schon gegangen.


    Die Fehlermeldungen oben sahen für mich nicht so aus, als ob die Firmware einkompiliert gewesen wäre.


    Egal, Du solltest nicht wild alle Varianten durchprobieren, sondern versuchen, das Problem zu beheben. Sinnvollerweise nimmt man dazu die einfachste Variante: Also Firmware in den Treiber reinkompilieren.



    Sieht schon mal gut aus für eine Rev 1.5 oder 2.1.


    Firmware vorhanden unter "/lib/firmware/dvb-ttpci-01.fw"?


    Schlage vor, wir fangen nochmal von vorne an:
    - Welchen Kernel hast Du *jetzt* in /usr/src/linux?
    - Welchen Treiber möchtest Du verwenden?


    Um den Treiber, der mit dem Kernel mitkommt, zu verwenden, sollte es reichen, den Kernel zu übersetzen und die Module zu installieren:
    make
    make modules_install (<-- hast Du das evtl. vergessen?)


    CU
    Oliver

  • Die Karte ist eine Rev. 1.5


    Jetzt habe ich Kernel 2.6.9-gentoo-r1 in /usr/src/linux (siehe obige .config).
    Komischerweise ist kein Unterschied in der Fehlermeldung zu sehen, wenn die Firmware einkompiliert ist. (sowohl statisch, als auch als Modul)


    Ich verwende jetzt die Treiber aus 2.6.9-r1.
    make && make modules_install hab ich natürlich auch gemacht, auch den neuen Kernel & System.map nach /boot kopiert, (/boot auch vorher gemountet ;) )


    ich bin weiters draufgekommen, dass das Modul firmware_class (wenn CONFIG_HOTPLUG als Modul kompiliert ist) sich nicht laden lässt.....


    Echt strange. Vielleicht hat das mainboard einen Fehler..... Aber sonst funktioniert alles....

  • Zitat

    Original von Barney
    Die Karte ist eine Rev. 1.5


    Jetzt habe ich Kernel 2.6.9-gentoo-r1 in /usr/src/linux (siehe obige .config).
    Komischerweise ist kein Unterschied in der Fehlermeldung zu sehen, wenn die Firmware einkompiliert ist. (sowohl statisch, als auch als Modul)


    Ich verwende jetzt die Treiber aus 2.6.9-r1.
    make && make modules_install hab ich natürlich auch gemacht, auch den neuen Kernel & System.map nach /boot kopiert, (/boot auch vorher gemountet ;) )


    Ok, kann man auch mal leicht vergessen. :)
    Nehme an, Du lädst die Treiber momentan von Hand per "modprobe"?


    Zitat


    ich bin weiters draufgekommen, dass das Modul firmware_class (wenn CONFIG_HOTPLUG als Modul kompiliert ist) sich nicht laden lässt.....


    Also bei mir geht das. Was kommt denn als Fehlermeldung?


    Zitat

    Echt strange. Vielleicht hat das mainboard einen Fehler..... Aber sonst funktioniert alles....


    Aber nach dem, was Du oben geschrieben hast, hat es doch schon mal funktioniert, oder?


    Kommt immer noch diese Meldung?

    Code
    DVB: registering new adapter (Siemens/Technotrend/Hauppauge PCI rev1.3).
    Siemens/Technotrend/Hauppauge PCI rev1.3 adapter 0 has MAC addr = 00:d0:5c:03:a3:e3
    av7110_fw_request: timeout waiting for COMMAND to complete
    av7110_fw_query error
    DVB: AV7110-0: ERROR: Failed to boot firmware


    Ich habe mal im Treiber nachgesehen. Dieser Fehler hat *nichts* mit Hotplug zu tun, sondern deutet auf ein Kommunikationsproblem mit der DVB-Karte hin. Hast Du da irgendetwas geändert (anderer Slot, andere Karten eingebaut o.ä.)?


    CU
    Oliver

  • Die genaue Fehlermeldung bei modprobe firmware-class lautet:

    Code
    firmware_class_init: class_register failed


    Daraus ergeben sich offensichtlich alle anderen Fehler.
    Hab den entsprechenden kernel source-code durchforstet, sagt mir aber als nicht-programmierer ned wirklich was.
    Komischerweise funktioniert das bei keinem Kernel. Wovon ist dieser Ladeprozess abhängig? Was bedeutet die Fehlermeldung. Danach googeln hat bei mir nichts gebracht...



    p.s. umgebaut hab ich nix....

Jetzt mitmachen!

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