em8300 und Fehlermeldung bei ./ldm

  • Hallo Leute,


    Bei der Installation bin ich gemäss der Anleitung von der HP des Treibers vorgegangen.


    http://dxr3.sourceforge.net/howto.html#getsource


    Folgendes habe ich gemacht.


    1. Source von CVS gesaugt
    2. Für mein Suse 8.2 die Source mit dem patch in /em8300/modules gepatched
    3. Dann habe ich das ganze kompiliert und installiert
    4. Ich habe überprüft ob in /dev die devices erzeugt wurden . Jo hat er gemacht..


    So aber jetzt müsste ich nach der Anleitung den Treiber laden mit dem Befehl


    ./ldm


    Dann bekomme ich die Aussage :


    insmod: adv717x.o: No such file or directory
    insmod: bt865.o: No such file or directory
    insmod: em8300.o: No such file or directory


    Wie jetzt? Was mache ich verkehrt? In /em8300/modules ist tatsächlich keine von diesen Dateien aber dafür eine adv717x.c sowie eine adv717x.h und die beiden Anderen sind auch mit anderer Endung vorhanden.


    Kann mir jemand helfen.
    Danke im Voraus

  • Moin,


    hast Du auch wirklich "make install" aufgerufen ?!
    Dabei werden die gerade kompilierten Module (em8300.o usw.) dem kernel bekannt gemacht (und auch nach /lib/modules/... kopiert).
    Anschliessend sollte ein "insmod" die module auch finden.



    Gruß
    Stefan.

  • Habe es jetzt noch 2 mal neu installiert. Ohne Erfolg. :(


    Ich schilder einfach mal die Schritte die ich gemacht habe bis ins Detail:


    1. CVS gesaugt und im Verzeichnis /em8300/modules


    patch -p1 < em8300-i2c-2.8.0.patch


    2. Danach bin ich ein Verzeichnis höher , also in em 8300, und habe folgendes gemacht:


    ./bootstrap
    ./configure
    make
    checkinstall
    ldconfig


    Dann bin ich in das Verzeichnis usr/local/share/em8300/modules gewechselt und habe dort dann


    ./ldm


    ausgeführt. Die Meldung heisst dann :


    insmod: adv717x.o: No such file or directory
    insmod: bt865.o: No such file or directory
    insmod: em8300.o: No such file or directory



    Bis jetzt habe ich immer alles installiert bekommen aber jetzt . . . ;(


    Bitte Hilfe !

  • Wenn ich make eingebe bekomme ich diesen Fehler: Das sind die letzten Zeilen der Meldung. Sie wiederholt sich dauernd


    n file included from em8300_main.c:22:
    /usr/include/linux/module.h:299: error: parse error before "UTS_RELEASE"
    em8300_main.c:38:40: missing binary operator before token "("
    em8300_main.c:41:40: missing binary operator before token "("
    In file included from /usr/include/linux/i2c.h:45,
    from em8300_main.c:60:
    /usr/include/linux/version.h:2:2: #error "======================================
    ================="
    /usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{l
    inux,asm}/ header"
    /usr/include/linux/version.h:4:2: #error "files directly for the compilation of
    kernel modules."
    /usr/include/linux/version.h:5:2: #error ""
    /usr/include/linux/version.h:6:2: #error "glibc now uses kernel header files fro
    m a well-defined"
    /usr/include/linux/version.h:7:2: #error "working kernel version (as recommended
    by Linus Torvalds)"
    /usr/include/linux/version.h:8:2: #error "These files are glibc internal and may
    not match the"
    /usr/include/linux/version.h:9:2: #error "currently running kernel. They should
    only be"
    /usr/include/linux/version.h:10:2: #error "included via other system header file
    s - user space"
    /usr/include/linux/version.h:11:2: #error "programs should not directly include
    <linux/*.h> or"
    /usr/include/linux/version.h:12:2: #error "<asm/*.h> as well."
    /usr/include/linux/version.h:13:2: #error ""
    /usr/include/linux/version.h:14:2: #error "To build kernel modules please do the
    following:"
    /usr/include/linux/version.h:15:2: #error ""
    /usr/include/linux/version.h:16:2: #error " o Have the kernel sources installed"
    /usr/include/linux/version.h:17:2: #error ""
    /usr/include/linux/version.h:18:2: #error " o Make sure that the symbolic link"
    /usr/include/linux/version.h:19:2: #error " /lib/modules/`uname -r`/build exis
    ts and points to"
    /usr/include/linux/version.h:20:2: #error " the matching kernel source directo
    ry"
    /usr/include/linux/version.h:21:2: #error ""
    /usr/include/linux/version.h:22:2: #error " o Now copy /boot/vmlinuz.version.h t
    o"
    /usr/include/linux/version.h:23:2: #error " /lib/modules/`uname -r`/build/incl
    ude/linux/version.h"
    /usr/include/linux/version.h:24:2: #error ""
    /usr/include/linux/version.h:25:2: #error " o When compiling, make sure to use t
    he following"
    /usr/include/linux/version.h:26:2: #error " compiler option to use the correct
    include files:"
    /usr/include/linux/version.h:27:2: #error ""
    /usr/include/linux/version.h:28:2: #error " -I/lib/modules/`uname -r`/build/in
    clude"
    /usr/include/linux/version.h:29:2: #error ""
    /usr/include/linux/version.h:30:2: #error " instead of"
    /usr/include/linux/version.h:31:2: #error ""
    /usr/include/linux/version.h:32:2: #error " -I/usr/include/linux"
    /usr/include/linux/version.h:33:2: #error ""
    /usr/include/linux/version.h:34:2: #error " Please adjust the Makefile accordi
    ngly."
    /usr/include/linux/version.h:35:2: #error "=====================================
    =================="
    em8300_main.c:81:2: #error "This needs the I2C Bit Banging Interface in your Ker
    nel"
    em8300_main.c: In function `em8300_irq':
    em8300_main.c:203: warning: passing arg 1 of `__wake_up' from incompatible point
    er type
    em8300_main.c: In function `find_em8300':
    em8300_main.c:262: error: structure has no member named `base_address'
    em8300_main.c:275: error: structure has no member named `base_address'
    em8300_main.c: In function `em8300_io_mmap':
    em8300_main.c:435: error: structure has no member named `vm_offset'
    em8300_main.c:504: error: wrong type argument to increment
    em8300_main.c: In function `em8300_poll':
    em8300_main.c:524: warning: passing arg 2 of `poll_wait' from incompatible point
    er type
    em8300_main.c:533: warning: passing arg 2 of `poll_wait' from incompatible point er type
    em8300_main.c:542: warning: passing arg 2 of `poll_wait' from incompatible point er type
    em8300_main.c: In function `em8300_exit':
    em8300_main.c:793: warning: unused variable `devname'
    em8300_main.c: In function `em8300_init':
    em8300_main.c:824: warning: unused variable `devname'
    make: *** [em8300_main.o] Fehler 1



    Danke für die schnelle Antwort. Hat jemand das schon mal gehabt ?

  • Hallo


    Ich habe jetzt mal die Kernelsourcen nachinstalliert und noch so ein paar Dinge . Einfach alles was auf der Suse CD mit Kernel zu tun hatte und irgendwie verdächitg war.


    Jetzt ist bei make die Fehlermeldung viel kleiner. Jetzt ist sie so kurz dass ich sie sogar ganz posten kann. Vielleicht könnt ihr damit besser etwas anfangen.
    Danke dass ihr euch nen Kopf macht.


    cc -D__KERNEL__ -DMODULE -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -g -I ../include -I /lib/modules/2.4.20-4GB-athlon/build/include/ -O2 -fomit-frame-pointer -Wall -DEM8300_VIDEOMODE_DEFAULT=EM8300_VIDEOMODE_PAL -DEM8300_AUDIOMODE_DEFAULT=EM8300_AUDIOMODE_ANALOG -DEM8300_VERSION=\""0.13.0.cvs"\" -DCONFIG_ADV717X_PIXELPORT16BIT -DCONFIG_ADV717X_PIXELPORTPAL -DCONFIG_EM8300_DICOMPAL -DCONFIG_EM8300_DICOMFIX -DCONFIG_EM8300_DICOMCTRL -c -o em8300_main.o em8300_main.c
    In file included from /lib/modules/2.4.20-4GB-athlon/build/include/linux/tqueue.h:19,
    from /lib/modules/2.4.20-4GB-athlon/build/include/linux/aio.h:4,
    from /lib/modules/2.4.20-4GB-athlon/build/include/linux/fs.h:201,
    from em8300_main.c:26:
    /lib/modules/2.4.20-4GB-athlon/build/include/asm/system.h: In function `__set_64bit_var':
    /lib/modules/2.4.20-4GB-athlon/build/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules
    /lib/modules/2.4.20-4GB-athlon/build/include/asm/system.h:189: warning: dereferencing type-punned pointer will break strict-aliasing rules
    In file included from encoder.h:4,
    from em8300_main.c:63:
    /lib/modules/2.4.20-4GB-athlon/build/include/linux/em8300.h:194:1: warning: "EM8300_VERSION" redefined
    <command line>:8:1: warning: this is the location of the previous definition
    em8300_main.c: In function `em8300_irq':
    em8300_main.c:203: error: structure has no member named `vbi_wait'
    em8300_main.c: In function `em8300_io_open':
    em8300_main.c:358: error: structure has no member named `memory'
    em8300_main.c:358: error: structure has no member named `memory'
    em8300_main.c:358: error: structure has no member named `memory'
    em8300_main.c:358: error: structure has no member named `memory'
    em8300_main.c: In function `em8300_io_mmap':
    em8300_main.c:486: error: structure has no member named `memory'
    em8300_main.c: In function `em8300_io_release':
    em8300_main.c:572: error: structure has no member named `memory'
    em8300_main.c:575: error: structure has no member named `memory'
    em8300_main.c:578: warning: comparison between signed and unsigned
    make: *** [em8300_main.o] Fehler 1

  • Hi,
    nochmals die vorgehensweise.
    1. Entpacken der dxr3-Source
    2. wechseln in em8300-x.x.x/modules
    3. die Kernelsource im Makefile angeben. Meistens steht dieser unter /usr/src/linux oder unter /usr/src/linux-$(uname -r)
    4. make && make install ausführen
    5. die Devices anlegen ./devices (heißt glaube ich so)
    6. ./ldm ausführen
    7. cd ../em8300setup
    8. das Setup noch ausführen und die gewünschten Parameter übergeben.
    Du mußt das em8300setup nicht ausführen, wenn du den Microcode selbst extrahiert hast du das microcode_upload.pl Skript ausführen möchtest.


    Achso, du mußt im Kernel Video4Linux und I2C aktiviert haben! Am besten ziehst du dir den neuen 2.4.22 Kernel unter http://kernel.org. Die Patches darfst du nicht unter einem SuSE-Kernel anwenden.


    Mike

  • Also. Ich habe es schon mal geschafft alles ohne Fehler zu kompilieren. Danke an alle die mir bis jetzt schon geholfen haben. Ich hoffe Ihr helft mir weiterhin. Ich sage euch jetzt ganz genau was ich gemacht habe . Sagt mir bitte wo der Fehler liegt und zwar für einen DAU. Danke.


    1. em8300 im home - verzeichnis entpackt und dann in das Verzeichnis /em8300/modules rein und den patch ausgeführt


    patch -p1 < em8300.v.....patch


    Danach habe ich im Makefile eine # vor I2C_LOCATION?= gesetzt da dies schon im SuSE Kernel drinnen ist. Weiterhin habe ich als Kernelsource KERNEL_LOCATION=/usr/src/linux angegeben.
    Mit diesen Änderungen lässt sich endlich das Verzeichnis kompilieren also mache ich :


    make
    make install
    ldconfig


    So jetzt hat er auch die lange vermissten Dateien adv717x.o , bt865.o ...usw.. erstellt.
    Bis dahin Yippy


    Jetzt bin ich mir nicht mehr sicher ob ich es richtig mache. Ich wechsel als ein Verzeichnis höher und kompiliere den Rest:


    cd ..
    ,/bootstrap
    ./configure
    make
    make install
    ldconfig


    So und jetzt gehe ich wieder in das verzeichnis modules und führe ldm aus . ->


    cd /modules
    ./ldm


    Daraufhin bekomme ich folgende Meldung


    adv717x.o: kernel-module version mismatch
    adv717x.o was compiled for kernel version 2.4.20-4GB
    while this kernel is version 2.4.20-4GB-athlon.
    bt865.o: kernel-module version mismatch
    bt865.o was compiled for kernel version 2.4.20-4GB
    while this kernel is version 2.4.20-4GB-athlon.
    em8300.o: kernel-module version mismatch
    em8300.o was compiled for kernel version 2.4.20-4GB
    while this kernel is version 2.4.20-4GB-athlon.


    MMhhh . Ich glaube ich habe hier einen Verständnisfehler. Habe ich ldm im richtigen Verzeichnis ausgeführt? Müsste es nicht irgendwo hinkopiert worden sein? Das kann doch nicht weiterhin in meinem home Verzeichnis liegen. Ich glaube ich bin nah dran!


    Was mache ich falsch? :( Hiiilllffeee Community . Danke an Alle im voraus.

  • Hi,
    hast du die Treiber früher schoneinmal installiert? Die Kernelversion stimmt nicht mit dem verwendetetn Kernel überein. Außerdem mußt du aufpassen, sobald beim installieren des dxr3-Treiber irgendwas mit done, nothing to do erscheint, existieren die Dateien bereits.



    Mike

  • Ich probiere es jetzt seit 4 Tagen. Ich habe es öfters schon mal installiert und deinsalliert. Aber alles mit der selben Source. Nur dass ich einmal als Kernelsource //lib/modules/2.4.20-4GB-athlon und das andere mal /usr/src/linux angegeben habe. Ich wusste nicht welche source ich nehmen soll. Weiterhin habe ich es mit den verschiedensten Änderungen im Makefile einstellungen probiert.


    Passt der Rest so wie ich es gemacht habe? Wohin wird das alles dann kopiert und wo finde ich das ldm Skript später? Wenn ich den falschen Kernel kompiliert habe wo finde ich die ganzen Sachen zum rauslöschen. Überschreibt er bei der nächsten Installation automatisch alle files?


    Danke :)

  • Hallo


    Wenn ich jetzt versuche mit dem Athlon- kernel ( Pfad : /lib/modules/2.4.20-4GB-athlon/kernel zu kompilieren bringt er mir folgende Fehlermeldung nach einiger Zeit bei make.


    adv717x.c: At top level:
    adv717x.c:121: warning: missing braces around initializer
    adv717x.c:121: warning: (near initialization for `adv717x_driver.name')
    adv717x.c:121: warning: initialization makes integer from pointer without a cast
    adv717x.c:121: error: initializer element is not computable at load time
    adv717x.c:121: error: (near initialization for `adv717x_driver.name[0]')
    adv717x.c:123: error: excess elements in struct initializer
    adv717x.c:123: error: (near initialization for `adv717x_driver.name')
    adv717x.c:124: error: excess elements in struct initializer
    adv717x.c:124: error: (near initialization for `adv717x_driver.name')
    adv717x.c:125: error: excess elements in struct initializer
    adv717x.c:125: error: (near initialization for `adv717x_driver.name')
    adv717x.c:126: error: excess elements in struct initializer
    adv717x.c:126: error: (near initialization for `adv717x_driver.name')
    adv717x.c:128: error: excess elements in struct initializer
    adv717x.c:128: error: (near initialization for `adv717x_driver.name')
    make: *** [adv717x.o] Fehler 1


    Wenn ich aber den NIcht-Athlon Kernel unter usr/src/linux nehme kompiliert er fertig.
    Hat hier jemand SUSE , DXR3 in Verbindung mit einem Athlon laufen. Welche Version des Treibers habt ihr installiert?
    Kann mir jemand helfen?

  • Jetzt hab ich einfach mal ganz bloed den Suse patch weggelassen. Und siehe da. Er kompiliert fertig. 8o Lol


    Trotzdem muss ich alles nochmal deinstallieren bis ins Detail da wenn ich ldm aufrufe er mir wieder ( obwohl mit dem richtigen kernel compiliert wurde) sagt :.
    adv717x.o: kernel-module version mismatch
    adv717x.o was compiled for kernel version 2.4.20-4GB
    while this kernel is version 2.4.20-4GB-athlon.
    bt865.o: kernel-module version mismatch
    bt865.o was compiled for kernel version 2.4.20-4GB
    while this kernel is version 2.4.20-4GB-athlon.
    em8300.o: kernel-module version mismatch
    em8300.o was compiled for kernel version 2.4.20-4GB
    while this kernel is version 2.4.20-4GB-athlon.


    Hat hier schon jemand Erfahrung im Treiber deinstallieren? Ich dachte ich hätte alles vor der Neuinstallation rausgelöscht aber anscheinend ist da noch irgendwo etwas von dem Treiber übrig.
    ;( Auf welche Dateien kommt es an bzw. Wie lösche ich am besten den DXR3 Treiber wieder???


    Bitte um Rat. Danke

  • Hi,
    schau mal unter /lib/module/Kernel-Version/misc oder driver/video nach.
    Bei einem 2.4er Kernel musst du im Makefile nur die Kernel-Location angeben. Das /usr/sr/linux nur ein Link auf einen Kernel ist, musst du mit diesem auch booten. Soweit ich mich noch an früher erinnern kann, liefert SuSE immer mehrere Kernels mit. Auf welchen /usr/src/linux letztendlich zeigt, musst du selbst kucken. Kannst aber auch einen anderen im Verzeichnis wählen.


    Falls alles nichts hilft, bau dir lieber Deinen eigenen Kernel oder installiere SuSE neu.


    Mike

  • Hallo


    Ich habe es vor einiger Zeit aufgegeben die DXR3-Treiber unter Suse 8.2 zum laufen zu überreden,
    aber neulich ist mir aufgefallen dass die DXR3 Treiber beim Suse-kernel schon
    eingebaut sind, das einfachste wird wahrscheinlich sein die kernel-teriber rauszuwerfen und die CVS-Treiber zu benutzen.


    Viel Glück

  • Die Karte läuft !! :D


    Erstmal Danke an alle die mir mit Rat zur Seite gestanden sind.


    Das Problem lag daran dass ich schon mal zuvor ein SuSE OnlineUpdate durchgeführt hatte. Mein Kernel war auf dem aktuellen Stand. Doch die Source hatte ich erst installiert als ich den Treiber installieren wollte . Die Kernel waren deshalb nicht gleich.
    Also habe ich die Kernelsource mittels "YOU" upgedatet und danach noch in dem Verzeichnis
    /usr/source/linux die Config des Kernels übernommen für meinen Athlon Prozessor mit :


    make cloneconfig
    make clean
    make dep


    Ab jetzt hatte ich keine Probleme mehr beim installieren.


    So Bild habe ich schon einmal von der Karte und auch in Farbe. Nur leider ist das Bild vier geteilt?


    Aber das bekomme ich jetzt auch noch hin.


    Also Danke nochmals an alle


    LordUndaground

Jetzt mitmachen!

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