Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 27

Thema: software troubles mit moxa-cp168u serial multiport karte

  1. #1
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    software troubles mit moxa-cp168u serial multiport karte

    hi leute,
    os: suse 9.0 prof.
    system: athlon 2.5 gh
    hab eine moxa serielle (8x) multiport-karte (cp168u).
    hardware-maessig wurde die karte vom system erkannt. keine konflikte.
    nur beim installieren des mxser.c - treiber als -module- mit "make install" gem. moxa-linux-doc,
    gibt es nur noch fehlmeldungen.
    hab mich bereits mit dem schweizerischen distributor in verbindung gesetzt.
    hat jemand diese karte schon zum laufen gebracht, wenn ja wie.....
    waere um jeden tip froh
    mfg nomad

  2. #2
    Benutzter Registrierer
    Registriert seit
    Feb 2004
    Beiträge
    2.281
    Moin,

    Von mir n ganz heisser Tip: Poste mal die Fehlermeldungen. Vielleicht kann irgendwer was damit anfangen.

    Gruss
    WK

  3. #3
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    sw trouble mit make install & moxa-cp168u & amd-platformc

    hi

    os: suse 9.0
    system athlon 2.5 GH

    vielen dank fuer die antwort:
    unten stehen das make file und der output von make install.

    hab gerade mit dem techniker des distributors geredet:
    er meint, dass das ganze daran liegt das moxa die intel x86-platform unterstuetzt
    und nicht die amd-platform.
    der fehler liegt bei:
    gcc -c -DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -m486 -I/usr/src/linux-2.4/include -I/usr/src/linux/include -DMODVERSIONS mxser.c
    `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead.
    == m486,
    er sagt ich sollte diesen teil des make-files meinen processor anpassen.
    habe aber leider z.z. keine ahnung wie man dies am besten macht.

    waer um jeden tip und hilfe s e h r dankbar.
    mfg nomad
    -------------------------------------------------------------
    hier ist das urspruengliche make-file
    ----------------------------------------------------------------
    CC=gcc -c
    ARCH=$(shell uname -m | sed s/i.86/i86/)

    ifeq ($(ARCH),i86)
    OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -m486 -I/usr/src/linux-2.4/include \
    -I/usr/src/linux/include
    else
    OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -I/usr/src/linux/include -ffixed-8
    endif

    ifeq ($(MAKECMDGOALS), install)
    OPTS+=-DMODVERSIONS
    endif


    ifeq "$(findstring SMP, $(shell uname -a))" "SMP"
    OPTS+=-D__SMP__
    endif


    all: module

    module : mxser.o

    installmod: install

    install: module
    mkdir -p /lib/modules/$(shell uname -r)/kernel/drivers/char/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/kernel/drivers/char/
    mkdir -p /lib/modules/$(shell uname -r)/misc/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/misc/

    clean :
    rm -f *.o

    mxser.o : mxser.c
    $(CC) $(OPTS) mxser.c

    dummy:

    ----------------------------------------------------------------
    fehlermeldungen von make install ( // das sind meine kommentare
    ----------------------------------------------------------------
    // now with modversions.h

    linux:/moxa/mxser/driver # make install
    gcc -c -DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -m486 -I/usr/src/linux-2.4/include -I/usr/src/linux/include -DMODVERSIONS mxser.c
    `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead.
    In file included from /usr/include/linux/module.h:20,
    from mxser.c:44:

    // das erzeugt diesen abschnitt module.h

    /usr/include/asm/module.h:54:2: #error unknown processor family
    In file included from mxser.c:49:
    /usr/include/linux/version.h:2:2: #error "================================================= ======"
    /usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{linux,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 from 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 files - 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 exists and points to"
    /usr/include/linux/version.h:20:2: #error " the matching kernel source directory"
    /usr/include/linux/version.h:21:2: #error ""
    /usr/include/linux/version.h:22:2: #error " o Configure kernel sources:"
    /usr/include/linux/version.h:23:2: #error " - cd /usr/src/linux"
    /usr/include/linux/version.h:24:2: #error " - make mrproper"
    /usr/include/linux/version.h:25:2: #error " - make cloneconfig"
    /usr/include/linux/version.h:26:2: #error " - make dep"
    /usr/include/linux/version.h:27:2: #error ""
    /usr/include/linux/version.h:28:2: #error " o When compiling, make sure to use the following"
    /usr/include/linux/version.h:29:2: #error " compiler option to use the correct include files:"
    /usr/include/linux/version.h:30:2: #error ""
    /usr/include/linux/version.h:31:2: #error " -I/lib/modules/`uname -r`/build/include"
    /usr/include/linux/version.h:32:2: #error ""
    /usr/include/linux/version.h:33:2: #error " instead of"
    /usr/include/linux/version.h:34:2: #error ""
    /usr/include/linux/version.h:35:2: #error " -I/usr/include/linux"
    /usr/include/linux/version.h:36:2: #error ""
    /usr/include/linux/version.h:37:2: #error " Please adjust the Makefile accordingly."
    /usr/include/linux/version.h:38:2: #error "================================================= ======"
    mxser.c:50:28: linux/autoconf.h: No such file or directory
    In file included from /usr/include/linux/irq.h:19,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory
    In file included from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/linux/irq.h:67: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/irq.h:67: error: requested alignment is not a constant
    /usr/include/linux/irq.h:69: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/irq.h:71,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hw_irq.h:28: error: `NR_IRQS' undeclared here (not in a function)
    /usr/include/asm/hw_irq.h:31: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hardirq.h:13: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/asm/hardirq.h:13: error: requested alignment is not a constant
    In file included from /usr/include/linux/mm.h:205,
    from mxser.c:65:
    /usr/include/linux/page-flags.h:119: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/page-flags.h:119: error: requested alignment is not a constant
    mxser.c:362: error: field `tqueue' has incomplete type
    mxser.c:424: error: `MUTEX' undeclared here (not in a function)
    mxser.c: In function `mxser_initbrd':
    mxser.c:1034: warning: passing arg 2 of `request_irq' from incompatible pointer type
    mxser.c: In function `mxser_init':
    mxser.c:1131: warning: assignment makes integer from pointer without a cast
    mxser.c:1132: error: structure has no member named `table'
    mxser.c:1115: warning: unused variable `pdev'
    mxser.c: In function `mxser_do_softint':
    mxser.c:1346: error: void value not ignored as it ought to be
    mxser.c:1352: error: void value not ignored as it ought to be
    mxser.c: In function `mxser_open':
    mxser.c:1384: error: request for member `minor_start' in something not a structure or union
    mxser.c:1397: warning: implicit declaration of function `get_free_page'
    mxser.c:1418: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:481)
    mxser.c:1421: error: request for member `subtype' in something not a structure or union
    mxser.c: In function `mxser_close':
    mxser.c:1452: error: request for member `minor_start' in something not a structure or union
    mxser.c:1462: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1485: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1527: error: structure has no member named `timeout'
    mxser.c:1541: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1542: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1551: error: structure has no member named `timeout'
    mxser.c:1553: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1558: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1561: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c: In function `mxser_write':
    mxser.c:1585: warning: implicit declaration of function `memcpy_fromfs'
    mxser.c: In function `mxser_ioctl':
    mxser.c:1697: error: request for member `minor_start' in something not a structure or union
    mxser.c:1721: warning: implicit declaration of function `verify_area'
    mxser.c:1721: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1721: error: (Each undeclared identifier is reported only once
    mxser.c:1721: error: for each function it appears in.)
    mxser.c:1724: warning: implicit declaration of function `put_fs_long'
    mxser.c:1727: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c:1730: warning: implicit declaration of function `get_fs_long'
    mxser.c:1776: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:1778: error: wrong type argument to bit-complement
    mxser.c: In function `mxser_ioctl_special':
    mxser.c:1855: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1859: warning: implicit declaration of function `memcpy_tofs'
    mxser.c: In function `mxser_hangup':
    mxser.c:2175: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_receive_chars':
    mxser.c:2393: warning: implicit declaration of function `queue_task_irq_off'
    mxser.c:2393: error: structure has no member named `tqueue'
    mxser.c:2393: error: `tq_timer' undeclared (first use in this function)
    mxser.c: In function `mxser_transmit_chars':
    mxser.c:2448: warning: implicit declaration of function `queue_task'
    mxser.c:2448: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_check_modem_status':
    mxser.c:2470: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2474: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2487: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_block_til_ready':
    mxser.c:2532: error: variable `wait' has initializer but incomplete type
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: error: storage size of `wait' isn't known
    mxser.c:2544: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:2559: error: request for member `subtype' in something not a structure or union
    mxser.c:2602: warning: passing arg 1 of `add_wait_queue' from incompatible pointer type
    mxser.c:2632: error: wrong type argument to bit-complement
    mxser.c:2639: warning: passing arg 1 of `remove_wait_queue' from incompatible pointer type
    mxser.c:2532: warning: unused variable `wait'
    mxser.c: In function `mxser_startup':
    mxser.c:2699: warning: implicit declaration of function `suser'
    mxser.c: In function `mxser_shutdown':
    mxser.c:2782: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_change_speed':
    mxser.c:3039: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_send_break':
    mxser.c:3266: error: structure has no member named `timeout'
    mxser.c: In function `mxser_set_modem_info':
    mxser.c:3302: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c: At top level:
    mxser.c:874: warning: `CheckIsMoxaMust' defined but not used
    make: *** [mxser.o] Error 1
    --------------------------------------------------------------------------------------------
    end

  4. #4
    Benutzter Registrierer
    Registriert seit
    Feb 2004
    Beiträge
    2.281
    Moin,

    Uii, das sieht nach ner grooossen Baustelle aus.
    Statt "-m486" kannst du z.b. "-march=athlon" nehmen. Diese Meldung des gcc war aber eher als harmlos einzustufen, eher so ein dezenter Hinweis.
    Fuer welchen Kernel (Version?) willst du denn den Treiber bauen? Wenns fuer den momentan laufenden ist, kriegst du's mit
    Code:
    uname -a
    raus. Wenn das ein 2.6er sein sollte, ist die grosse Frage, ob die von dem Treiber ueberhaupt unterstuetzt werden. Angesichts des altertuemlichen -m486 flags glaub' ich das naemlich nicht. Dann wirds wahrscheinlich ziemlich aussichtslos, das ganze weiterzuverfolgen.

    Dann wird bemaengelt, dass du keine autoconf.h hast; kannst mal probieren, ob er ein leeres File, dass du so erzeugen kannst:
    Code:
    touch /tools/include/linux/autoconf.h
    schluckt.

    Dann ist mir noch aufgefallen, dass in dem Makefile MODULE gesetzt wird (mit -d MODULE). Das sollte aber afaik zumindest was die linux-kernelheader betrifft besser __MODULE__ heissen, aber da bin ich mir nicht so ganz sicher.

    Mal gucken, ob das was bringt - fehlerfrei wirds damit sicher nicht sein, aber vielleicht schon n paar Fehler weniger

    Gruss
    WK

  5. #5
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    make file troubles

    hi, leute,
    vielen dank fuer die antworten,
    aber der typ vom distributor war echt aetzrmf. kam mir vor wie der letzte mensch.
    das nennt man vermutlich service-wueste.
    werds mal ausprobieren
    nochmals vielen dank
    nomad

  6. #6
    Benutzter Registrierer
    Registriert seit
    Feb 2004
    Beiträge
    2.281
    Moin,

    Was mir grad so auffaellt: Biste sicher, dass du fuer diese Karte auch den moxa-Treiber brauchst? Kanns nicht sein, dass auf dem Ding einfach nur ne PCI-Bridge und 8x16550UARTs werkeln?
    Evtl. geht die Karte mit dem normalen seriellen Treiber von Linux (und einem kleinen Startscript, dass mittels setserial die ports (ttyS[4-7]) an den "komischen" io-adressen konfiguriert.

    Gruss
    WK

  7. #7
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    die dritte

    hi derguteweka,

    -------- hab jetzt gerade deine letze antwort gelesen. ----------
    zitat:
    Was mir grad so auffaellt: Biste sicher, dass du fuer diese Karte auch den moxa-Treiber brauchst? Kanns nicht sein, dass auf dem Ding einfach nur ne PCI-Bridge und 8x16550UARTs werkeln?
    Evtl. geht die Karte mit dem normalen seriellen Treiber von Linux (und einem kleinen Startscript, dass mittels setserial die ports (ttyS[4-7]) an den "komischen" io-adressen konfiguriert. ----

    es ist schon komisch

    1. die hw-installation ist prima verlaufen
    keinerlei conflicte mit adr oder irq,s
    alles wird eingebunden, soweit wie ich mich er innere so ungefahr cua0 bis cua7
    2. mein system hat ein "moxa.c oder sogar ein moxa.o file


    hab dann laut moxa-docu fuer linux ein ./msmknod ausgefuehrt = keine fehlermeldungen
    falls du genauere infos brauchst..... kein problem....
    koennte da was drann sein?????
    wuerde mich freuen wenn s so waer.....
    hast du noch pass so nette ideen in dieser richtung:
    was jetzt kommt bezieht sich den neubau des makefiles.
    mir waers lieber wenn auf die obengenannte methode ginge
    --------------------------------

    Fuer welchen Kernel (Version?) willst du denn den Treiber bauen?
    uame -a
    Linux linux 2.4.21-99-athlon #1 Wed Sep 24 13:34:32 UTC 2003 i686 athlon i386 GNU/Linux


    habs mal das neue makefile ausprobiert ausser:
    ne bloede frage:
    zitat: " Dann ist mir noch aufgefallen, dass in dem Makefile MODULE gesetzt wird (mit -d MODULE). "
    " betrifft besser __MODULE__ heissen,"
    meinst du damitin makefile) : OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \

    sollte es so heissen: OPTS=-DMODULE -D__MODULE__ -Wall -Wstrict-prototypes -O2 \ ?????

    zu autoconf.h. mit touch gings nicht.
    hab dann einfach mit gedit ein leeres autoconf.h - file erzeugt.
    in den fehlermeldung taucht file not found nicht mehr auf.

    unten stehen das neueste makefile und die entsprechenden fehlermeldungen
    vielen dank fuer die antworten.
    guck wieder morgen frueh rein,.........
    mfg nomad

    -----------------------------------------------------------------
    hier das neue makefile
    -----------------------------------------------------------------
    CC=gcc -c
    ARCH=$(shell uname -m | sed s/i.86/i86/)

    ifeq ($(ARCH),i86)
    OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -march=athlon -I/usr/src/linux-2.4/include \
    -I/usr/src/linux/include
    else
    OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -I/usr/src/linux/include -ffixed-8
    endif

    ifeq ($(MAKECMDGOALS), install)
    OPTS+=-DMODVERSIONS
    endif


    ifeq "$(findstring SMP, $(shell uname -a))" "SMP"
    OPTS+=-D__SMP__
    endif


    all: module

    module : mxser.o

    installmod: install

    install: module
    mkdir -p /lib/modules/$(shell uname -r)/kernel/drivers/char/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/kernel/drivers/char/
    mkdir -p /lib/modules/$(shell uname -r)/misc/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/misc/

    clean :
    rm -f *.o

    mxser.o : mxser.c
    $(CC) $(OPTS) mxser.c

    dummy:

    -----------------------------------------------------------------
    hier die passenden fehlermeldungen:
    make install
    gcc -c -DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -march=athlon -I/usr/src/linux-2.4/include -I/usr/src/linux/include -DMODVERSIONS mxser.c
    In file included from /usr/include/linux/module.h:20,
    from mxser.c:44:
    /usr/include/asm/module.h:54:2: #error unknown processor family
    In file included from mxser.c:49:
    /usr/include/linux/version.h:2:2: #error "================================================= ======"
    /usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{linux,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 from 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 files - 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 exists and points to"
    /usr/include/linux/version.h:20:2: #error " the matching kernel source directory"
    /usr/include/linux/version.h:21:2: #error ""
    /usr/include/linux/version.h:22:2: #error " o Configure kernel sources:"
    /usr/include/linux/version.h:23:2: #error " - cd /usr/src/linux"
    /usr/include/linux/version.h:24:2: #error " - make mrproper"
    /usr/include/linux/version.h:25:2: #error " - make cloneconfig"
    /usr/include/linux/version.h:26:2: #error " - make dep"
    /usr/include/linux/version.h:27:2: #error ""
    /usr/include/linux/version.h:28:2: #error " o When compiling, make sure to use the following"
    /usr/include/linux/version.h:29:2: #error " compiler option to use the correct include files:"
    /usr/include/linux/version.h:30:2: #error ""
    /usr/include/linux/version.h:31:2: #error " -I/lib/modules/`uname -r`/build/include"
    /usr/include/linux/version.h:32:2: #error ""
    /usr/include/linux/version.h:33:2: #error " instead of"
    /usr/include/linux/version.h:34:2: #error ""
    /usr/include/linux/version.h:35:2: #error " -I/usr/include/linux"
    /usr/include/linux/version.h:36:2: #error ""
    /usr/include/linux/version.h:37:2: #error " Please adjust the Makefile accordingly."
    /usr/include/linux/version.h:38:2: #error "================================================= ======"
    In file included from /usr/include/linux/irq.h:19,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory
    In file included from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/linux/irq.h:67: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/irq.h:67: error: requested alignment is not a constant
    /usr/include/linux/irq.h:69: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/irq.h:71,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hw_irq.h:28: error: `NR_IRQS' undeclared here (not in a function)
    /usr/include/asm/hw_irq.h:31: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hardirq.h:13: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/asm/hardirq.h:13: error: requested alignment is not a constant
    In file included from /usr/include/linux/mm.h:205,
    from mxser.c:65:
    /usr/include/linux/page-flags.h:119: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/page-flags.h:119: error: requested alignment is not a constant
    mxser.c:362: error: field `tqueue' has incomplete type
    mxser.c:424: error: `MUTEX' undeclared here (not in a function)
    mxser.c: In function `mxser_initbrd':
    mxser.c:1034: warning: passing arg 2 of `request_irq' from incompatible pointer type
    mxser.c: In function `mxser_init':
    mxser.c:1131: warning: assignment makes integer from pointer without a cast
    mxser.c:1132: error: structure has no member named `table'
    mxser.c:1115: warning: unused variable `pdev'
    mxser.c: In function `mxser_do_softint':
    mxser.c:1346: error: void value not ignored as it ought to be
    mxser.c:1352: error: void value not ignored as it ought to be
    mxser.c: In function `mxser_open':
    mxser.c:1384: error: request for member `minor_start' in something not a structure or union
    mxser.c:1397: warning: implicit declaration of function `get_free_page'
    mxser.c:1418: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:481)
    mxser.c:1421: error: request for member `subtype' in something not a structure or union
    mxser.c: In function `mxser_close':
    mxser.c:1452: error: request for member `minor_start' in something not a structure or union
    mxser.c:1462: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1485: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1527: error: structure has no member named `timeout'
    mxser.c:1541: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1542: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1551: error: structure has no member named `timeout'
    mxser.c:1553: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1558: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1561: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c: In function `mxser_write':
    mxser.c:1585: warning: implicit declaration of function `memcpy_fromfs'
    mxser.c: In function `mxser_ioctl':
    mxser.c:1697: error: request for member `minor_start' in something not a structure or union
    mxser.c:1721: warning: implicit declaration of function `verify_area'
    mxser.c:1721: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1721: error: (Each undeclared identifier is reported only once
    mxser.c:1721: error: for each function it appears in.)
    mxser.c:1724: warning: implicit declaration of function `put_fs_long'
    mxser.c:1727: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c:1730: warning: implicit declaration of function `get_fs_long'
    mxser.c:1776: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:1778: error: wrong type argument to bit-complement
    mxser.c: In function `mxser_ioctl_special':
    mxser.c:1855: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1859: warning: implicit declaration of function `memcpy_tofs'
    mxser.c: In function `mxser_hangup':
    mxser.c:2175: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_receive_chars':
    mxser.c:2393: warning: implicit declaration of function `queue_task_irq_off'
    mxser.c:2393: error: structure has no member named `tqueue'
    mxser.c:2393: error: `tq_timer' undeclared (first use in this function)
    mxser.c: In function `mxser_transmit_chars':
    mxser.c:2448: warning: implicit declaration of function `queue_task'
    mxser.c:2448: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_check_modem_status':
    mxser.c:2470: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2474: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2487: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_block_til_ready':
    mxser.c:2532: error: variable `wait' has initializer but incomplete type
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: error: storage size of `wait' isn't known
    mxser.c:2544: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:2559: error: request for member `subtype' in something not a structure or union
    mxser.c:2602: warning: passing arg 1 of `add_wait_queue' from incompatible pointer type
    mxser.c:2632: error: wrong type argument to bit-complement
    mxser.c:2639: warning: passing arg 1 of `remove_wait_queue' from incompatible pointer type
    mxser.c:2532: warning: unused variable `wait'
    mxser.c: In function `mxser_startup':
    mxser.c:2699: warning: implicit declaration of function `suser'
    mxser.c: In function `mxser_shutdown':
    mxser.c:2782: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_change_speed':
    mxser.c:3039: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_send_break':
    mxser.c:3266: error: structure has no member named `timeout'
    mxser.c: In function `mxser_set_modem_info':
    mxser.c:3302: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c: At top level:
    mxser.c:874: warning: `CheckIsMoxaMust' defined but not used
    make: *** [mxser.o] Error 1
    ------------------------------------------------------------------------------------------
    end

  8. #8
    Benutzter Registrierer
    Registriert seit
    Feb 2004
    Beiträge
    2.281
    Moin,

    Zitat Zitat von nomad
    es ist schon komisch

    1. die hw-installation ist prima verlaufen
    keinerlei conflicte mit adr oder irq,s
    alles wird eingebunden, soweit wie ich mich er innere so ungefahr cua0 bis cua7
    2. mein system hat ein "moxa.c oder sogar ein moxa.o file
    zu 1.) Na, is ja schon mal viel wert. Solche Konflikte sind aber seit PCI ISA abgeloest hat schon deutlich seltener geworden
    zu 2.) Yupp, das scheint mir zum Kernel zu gehoeren. Hab' bloss bei den Kernelbauoptionen noch nie den Namen "moxa" direkt auftauchen sehen, vielleicht wird der Krempel miteinkompiliert, wenn man "Support more than 4 serial ports" oder sowas in der Art aktiviert.

    Zitat Zitat von nomad
    hab dann laut moxa-docu fuer linux ein ./msmknod ausgefuehrt = keine fehlermeldungen
    falls du genauere infos brauchst..... kein problem....
    Ja, mach doch mal ein
    Code:
    ll /dev/ttyS*
    und poste was dabei rauskommt.
    Zitat Zitat von nomad
    koennte da was drann sein?????
    wuerde mich freuen wenn s so waer.....
    hast du noch pass so nette ideen in dieser richtung:
    Naja, kann schon sein. Weisst du auf welchen io-ports und irqs die ganzen seriellen liegen muessten? Ersetzt die Karte z.b. die erste und 2. serielle, die normalerweise auf dem Motherboard drauf ist, oder gehen die zusaetzlich noch? Wenn du IRQ und Portadressen weisst, kannst du die mit dem setserial Kommando den einzelnen Schnittstellen zuordnen; dann musste nur noch gucken, obs auch funktioniert hat, z.b. indem du mit
    Code:
    cp $IRGENDEINE_GROSSE_DATEI /dev/ttyS6
    was ausgibst und mit ner LED mal guckst, ob die TxD Leitung "zappelt".

    Zitat Zitat von nomad
    was jetzt kommt bezieht sich den neubau des makefiles.
    mir waers lieber wenn auf die obengenannte methode ginge
    --------------------------------

    Fuer welchen Kernel (Version?) willst du denn den Treiber bauen?
    uame -a
    Linux linux 2.4.21-99-athlon #1 Wed Sep 24 13:34:32 UTC 2003 i686 athlon i386 GNU/Linux
    Puh, na wenigstens kein 2.6er Kernel; is schonmal gut

    Zitat Zitat von nomad
    habs mal das neue makefile ausprobiert ausser:
    ne bloede frage:
    zitat: " Dann ist mir noch aufgefallen, dass in dem Makefile MODULE gesetzt wird (mit -d MODULE). "
    " betrifft besser __MODULE__ heissen,"
    meinst du damitin makefile) : OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \

    sollte es so heissen: OPTS=-DMODULE -D__MODULE__ -Wall -Wstrict-prototypes -O2 \ ?????
    So stell' ich mirs vor:
    Code:
    OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    Zitat Zitat von nomad
    zu autoconf.h. mit touch gings nicht.
    hab dann einfach mit gedit ein leeres autoconf.h - file erzeugt.
    in den fehlermeldung taucht file not found nicht mehr auf.
    Gut so.

    Zitat Zitat von nomad
    unten stehen das neueste makefile und die entsprechenden fehlermeldungen
    vielen dank fuer die antworten.
    guck wieder morgen frueh rein,.........
    mfg nomad
    OK, die #error meldungen sehen hier ziemlich zerpflueckt aus, aber was wohl mitgeteilt werden soll ist, dass der includepath zu den Kernelheadern falsch ist. Nimm nicht:
    -I/usr/src/linux-2.4/include
    sondern:
    -I/lib/modules/`uname -r`/build/include

    Die ersten 2 Fehler aus der modules.h und version.h sind mir ziemlich schleierhaft, hoffentlich gehen die durch den neuen includepath auch weg...
    Oder durch den kernelinternen seriellen Treiber

    Gruss
    WK

  9. #9
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    die vierte

    hi
    vielen dank fuer deine antworten,
    zu - ohne moxa treiber: werd ich ausprobieren,
    und einige unterlagen, und protokolle senden
    zu makeinstall werd das im laufe des tages ausprobieren.
    muss nachher zur ner sitzung,
    meld mich heute wieder
    vielen dank
    mfg nomad

  10. #10
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    die fuenfte teil 1

    die fuenfte (1.teil)

    hi.
    also ich mach das ganze in 2 teilen.
    der 1. beschaeftigt sich mit "moxa ohne treibereien.
    der 2. mit neubau make install etc.

    zusatz: 17.54 tech-stuff
    1 adressen und irq meiner onboard-schnittstellen

    parPort adr 378 irq 7
    gamePort adr 201
    midiPort adr 330 irq 10
    2. von der moxa card tecStuff
    ---------------------------------
    tec-stuff

    diese Note wurde herausgehoben:
    "Note
    each board must occupy one unique IRQ
    and four 8-byte I/O adresses, which are assignned
    automatically by the pci bios.
    however, you can select a free IRQ number
    manually via the pc.s bios setup for the pci slot,
    but normally this method is not available for
    the I/O-adresses. the possible IRQ-numbers
    are 2,3,5,7,10,11,12 and 15.
    the possible I/O-adresse are from
    0x0000 to 0xFFFF (dec 0 - 65535)

    --------------------------------------------------------------
    technical references:
    specifications:

    - bus interface 32-bit pci
    - nos of ports 8
    - i/o adresses assigned by pci bios
    - irq assigned by pci bios
    - data bits 5,6,7,8
    - stop bits 1,1.5,3
    - parity none, even, odd,space,mark
    - uart moxa uart (16c550c or compatible)
    - speed 50 bps to 230.4 bps
    - connector DB62 female
    (es gibt dazu ein octopus-kabel
    mit 8 x Db9m - anschluessen)

    pci (ausschnitt da pdf-doku)
    "die 32-bit Smartio cp168U entspricht den pci-specs 2.1.
    hardware configuration for irq and i/o-adr is automatical
    by the pci-bios.
    unlike isa slots, different pci-slots in the same pc
    may have different bus numbers and device numbers
    with respect to the pci-spec.
    the same pci-board will have different system configurations
    if moved to a different pci-slot
    == hab jetzt noch einen pci-slot frei -

    this is called slot-sensitive or slot-dependent, and may apply
    in pc,s with diffeerent motherboards, which might
    use different device number sets.
    for example: some use 17,19,20 for identifying the
    rspective pci-slot, whereas some us 11,12,13 and 14.

    noch paar sachen aus der hw-installation:
    - power on, the bios will automatically set the irq
    and the i/o adresses.

    -------------------------------------------------------
    jetzt zum 1.teil

    der 1.teil:
    also zu deiner letzen antwort

    zitat 1: hab bloss bei den kernelbauoptionen noch nie den namen "moxa" direct
    auftauchen sehen.
    == bei mir ist unter /lib/modules/2.4.21-99-athlon/kernel/driver/char/
    == moxa.o enthalten.

    zitat 2.: die karte ersetzt nicht die internen ports
    wenigstens: Onboard rs232 no 1 com1 ttyS0 irq 4
    (ist herausgefuehrt)
    rs232 no 2 com2 ttyS1 irq 3

    zitat 3: test com1: OK
    hab ein kleines communications-pgm geschrieben, Master31.c
    rs232 verbindung zu meinem linuxLaptop
    laeuft ueber ttyS0
    gesteuert wird das ganze mit MODEMDEVICE = "/dev/ttyS0"
    und mit BAUDRATE B9600
    benutz das pgm mit diversen 8-bit microcontrollern/gps-receiver
    und anderen linux-rechnern
    hab dir mal das pgm als Master31_c.txt als attachment beigelegt
    vieleicht kannst du,s mal gebrauchen.

    also vielen dank, gegen abend folgt der 2. teil
    mfg
    nomad

    zitat 4: ja mach doch mal CODE: || /dev/ttyS*
    ergebnis:
    --------------------------------------------
    ll /dev/ttyS*
    crw-rw-rw- 1 root uucp 4, 64 Oct 21 12:23 /dev/ttyS0
    crw-rw---- 1 root uucp 4, 65 Sep 23 2003 /dev/ttyS1
    crw-rw---- 1 root uucp 4, 74 Sep 23 2003 /dev/ttyS10
    crw-rw---- 1 root uucp 4, 75 Sep 23 2003 /dev/ttyS11
    crw-rw---- 1 root uucp 4, 76 Sep 23 2003 /dev/ttyS12
    crw-rw---- 1 root uucp 4, 77 Sep 23 2003 /dev/ttyS13
    crw-rw---- 1 root uucp 4, 78 Sep 23 2003 /dev/ttyS14
    crw-rw---- 1 root uucp 4, 79 Sep 23 2003 /dev/ttyS15
    crw-rw---- 1 root uucp 4, 80 Sep 23 2003 /dev/ttyS16
    crw-rw---- 1 root uucp 4, 81 Sep 23 2003 /dev/ttyS17
    crw-rw---- 1 root uucp 4, 82 Sep 23 2003 /dev/ttyS18
    crw-rw---- 1 root uucp 4, 83 Sep 23 2003 /dev/ttyS19
    crw-rw---- 1 root uucp 4, 66 Sep 23 2003 /dev/ttyS2
    crw-rw---- 1 root uucp 4, 84 Sep 23 2003 /dev/ttyS20
    crw-rw---- 1 root uucp 4, 85 Sep 23 2003 /dev/ttyS21
    crw-rw---- 1 root uucp 4, 86 Sep 23 2003 /dev/ttyS22
    crw-rw---- 1 root uucp 4, 87 Sep 23 2003 /dev/ttyS23
    crw-rw---- 1 root uucp 4, 67 Sep 23 2003 /dev/ttyS3
    crw-rw---- 1 root uucp 4, 68 Sep 23 2003 /dev/ttyS4
    crw-rw---- 1 root uucp 4, 69 Sep 23 2003 /dev/ttyS5
    crw-rw---- 1 root uucp 4, 70 Sep 23 2003 /dev/ttyS6
    crw-rw---- 1 root uucp 4, 71 Sep 23 2003 /dev/ttyS7
    crw-rw---- 1 root uucp 4, 72 Sep 23 2003 /dev/ttyS8
    crw-rw---- 1 root uucp 4, 73 Sep 23 2003 /dev/ttyS9
    crw-rw---- 1 root uucp 212, 0 Sep 23 2003 /dev/ttySL0
    ----------------------------------------------------------------------

    jetzt kommen noch die hardware infos pci moxa-teil:
    ----------------------------------------------------------------------
    1.teil
    -----------------------------------

    9400-9403 : PCI device 1393:1681 (Moxa Technologies Co Ltd)
    9800-9803 : PCI device 1393:1681 (Moxa Technologies Co Ltd)
    9c00-9c3f : PCI device 1393:1681 (Moxa Technologies Co Ltd)
    a000-a00f : PCI device 1393:1681 (Moxa Technologies Co Ltd)
    a400-a403 : PCI device 1393:1681 (Moxa Technologies Co Ltd)
    a800-a803 : PCI device 1393:1681 (Moxa Technologies Co Ltd)
    -----------------------------------
    2.teil
    ------------------------------------
    Model=Moxa Serial controller
    Configured=no
    Available=yes
    Needed=no
    Active=unknown
    Bus=0x4
    Slot=0xb
    BaseClass=0x7
    ProgIF=0x80
    VendorID=1393
    DeviceID=1681
    SubVendorID=1393
    SubDeviceID=1681
    RevisionID=0x2
    VendorName=Moxa Technologies Co Ltd
    SubVendorName=Moxa Technologies Co Ltd
    HWClassList=000000200040
    Res.IO=0x9400,0x4,1,3
    Res.IO=0x9800,0x4,1,3
    Res.IO=0x9c00,0x40,1,3
    Res.IO=0xa000,0x10,1,3
    Res.IO=0xa400,0x4,1,3
    Res.IO=0xa800,0x4,1,3
    Res.Interrupts=11,173094,1
    UniqueID=WL76.IQxIdIhhuH7
    -----------------------------------------------------------------------
    source von msmknod: von moxa
    #
    # MOXA Smartio/Industio Family Multiport Board Make Node Utility.
    #
    #
    # Usage : msmknod
    #

    #!/bin/sh

    MAXPORTS=8

    #Tty naming : ttyM[port idx]
    TTYNAME=ttyM

    #Callout device naming : cum[port idx]
    CUANAME=cum

    echo "MOXA Smartio Family Multiport Board Make Node Utility."
    echo "Please input device major number(Enter for default=30):"
    read MAJOR
    if [ ! $MAJOR ] ; then
    MAJOR=30
    fi
    echo "major=" $MAJOR
    echo ""

    echo "Please input callout device major number(Enter for default=35):"
    read CUMAJOR
    if [ ! $CUMAJOR ] ; then
    CUMAJOR=35
    fi
    echo "major=" $CUMAJOR
    echo ""

    echo "Please input total board number (1-4, Enter for default=1):"
    read BOARDS
    if [ ! $BOARDS ] ; then
    BOARDS=1
    fi
    echo "boards=" $BOARDS
    echo ""

    #
    # make special node for "msdiag", "msmon"
    #
    echo "Make special node..."
    [ -f /dev/mxser ] || rm -rf /dev/mxser
    mknod /dev/mxser c $MAJOR 32
    chmod a+wx /dev/mxser

    #
    # make node loop
    #
    echo "Make tty device..."
    board=0
    while [ $board -lt $BOARDS ]
    do
    port=0
    while [ $port -lt $MAXPORTS ]
    do
    id=`expr $board \* $MAXPORTS`
    id=`expr $id + $port`

    [ -c /dev/$TTYNAME$id ] && rm -f /dev/$TTYNAME$id
    [ -c /dev/$CUANAME$id ] && rm -f /dev/$CUANAME$id

    echo /dev/$TTYNAME$id /dev/$CUANAME$id $id
    mknod /dev/$TTYNAME$id c $MAJOR $id
    mknod /dev/$CUANAME$id c $CUMAJOR $id

    chmod a+wx /dev/$TTYNAME$id
    chmod a+wx /dev/$CUANAME$id

    port=`expr $port + 1`
    done

    board=`expr $board + 1`
    done

    -----------------------------------------------------------------------
    output von msmknod
    ./msmknod
    MOXA Smartio Family Multiport Board Make Node Utility.
    Please input device major number(Enter for default=30):

    major= 30

    Please input callout device major number(Enter for default=35):

    major= 35

    Please input total board number (1-4, Enter for default=1):

    boards= 1

    Make special node...
    Make tty device...
    /dev/ttyM0 /dev/cum0 0
    /dev/ttyM1 /dev/cum1 1
    /dev/ttyM2 /dev/cum2 2
    /dev/ttyM3 /dev/cum3 3
    /dev/ttyM4 /dev/cum4 4
    /dev/ttyM5 /dev/cum5 5
    /dev/ttyM6 /dev/cum6 6
    /dev/ttyM7 /dev/cum7 7
    linux:/moxa/mxser/driver #

    -----------------------------------------------------------------------

    end
    Geändert von nomad (21.10.04 um 16:53 Uhr)

  11. #11
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    die Fuenfte Teil 2

    hi,
    so, jetzt kommt der 2.teil mit makeInstall-stuff
    leider aber wahr..... ss.unten
    da ist das neue Makefile und der output
    hoffentlich hilfts.

    Zitat:
    So stell' ich mirs vor:
    Code: OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    == habs eingebaut

    zitat
    Nimm nicht:
    -I/usr/src/linux-2.4/include
    sondern:
    -I/lib/modules/`uname -r`/build/include

    das ganze sieht jetzt so aus:

    OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -march=athlon -I/lib/modules/`uname -r`/build/include\
    -I/usr/src/linux/include

    nun kommt das grosse aha-erlebnis:
    jetzt folgt das neue make install-file (dann der ouptut)

    also ich meld mich heute abend wieder ca. um die gleiche zeit wie gestern.
    mfg nomad
    ---------------------------------------------------
    noch paar bemerkungen zum output:
    - unknown processor....
    erzeugt durch /usr/include/asm/module.h
    -----------------------------------------------
    #ifndef _ASM_I386_MODULE_H
    #define _ASM_I386_MODULE_H

    /* x86 is simple */
    struct mod_arch_specific
    {
    };

    #define Elf_Shdr Elf32_Shdr
    #define Elf_Sym Elf32_Sym
    #define Elf_Ehdr Elf32_Ehdr

    #ifdef __KERNEL__

    #ifdef CONFIG_M386
    #define MODULE_PROC_FAMILY "386 "
    #elif defined CONFIG_M486
    #define MODULE_PROC_FAMILY "486 "
    #elif defined CONFIG_M586
    #define MODULE_PROC_FAMILY "586 "
    #elif defined CONFIG_M586TSC
    #define MODULE_PROC_FAMILY "586TSC "
    #elif defined CONFIG_M586MMX
    #define MODULE_PROC_FAMILY "586MMX "
    #elif defined CONFIG_M686
    #define MODULE_PROC_FAMILY "686 "
    #elif defined CONFIG_MPENTIUMII
    #define MODULE_PROC_FAMILY "PENTIUMII "
    #elif defined CONFIG_MPENTIUMIII
    #define MODULE_PROC_FAMILY "PENTIUMIII "
    #elif defined CONFIG_MPENTIUM4
    #define MODULE_PROC_FAMILY "PENTIUM4 "
    #elif defined CONFIG_MK6
    #define MODULE_PROC_FAMILY "K6 "
    #elif defined CONFIG_MK7
    #define MODULE_PROC_FAMILY "K7 "
    #elif defined CONFIG_MK8
    #define MODULE_PROC_FAMILY "K8 "
    #elif defined CONFIG_MELAN
    #define MODULE_PROC_FAMILY "ELAN "
    #elif defined CONFIG_MCRUSOE
    #define MODULE_PROC_FAMILY "CRUSOE "
    #elif defined CONFIG_MWINCHIPC6
    #define MODULE_PROC_FAMILY "WINCHIPC6 "
    #elif defined CONFIG_MWINCHIP2
    #define MODULE_PROC_FAMILY "WINCHIP2 "
    #elif defined CONFIG_MWINCHIP3D
    #define MODULE_PROC_FAMILY "WINCHIP3D "
    #elif defined CONFIG_MCYRIXIII
    #define MODULE_PROC_FAMILY "CYRIXIII "
    #elif CONFIG_MVIAC3_2
    #define MODULE_PROC_FAMILY "VIAC3-2 "
    #else
    #error unknown processor family
    -----------------------------------------------
    bemerkungen zu:
    In file included from /usr/include/linux/irq.h:19,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory

    irq.h ist dort wo es sein sollte:

    irq_verctors.h = befinden sich bei mir unter:

    file:/usr/include/asm/mach-default/irq_vectors.h
    file:/usr/include/asm/mach-pc9800/irq_vectors.h
    file:/usr/include/asm/mach-visws/irq_vectors.h
    file:/usr/include/asm/mach-voyager/irq_vectors.h

    ----------------------------------------------------------------
    das neue Makefile fuer "make install"
    --------------------------------------------------------------

    CC=gcc -c
    ARCH=$(shell uname -m | sed s/i.86/i86/)

    ifeq ($(ARCH),i86)
    OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -march=athlon -I/lib/modules/`uname -r`/build/include\
    -I/usr/src/linux/include
    else
    OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -I/usr/src/linux/include -ffixed-8
    endif

    ifeq ($(MAKECMDGOALS), install)
    OPTS+=-DMODVERSIONS
    endif


    ifeq "$(findstring SMP, $(shell uname -a))" "SMP"
    OPTS+=-D__SMP__
    endif


    all: module

    module : mxser.o

    installmod: install

    install: module
    mkdir -p /lib/modules/$(shell uname -r)/kernel/drivers/char/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/kernel/drivers/char/
    mkdir -p /lib/modules/$(shell uname -r)/misc/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/misc/

    clean :
    rm -f *.o

    mxser.o : mxser.c
    $(CC) $(OPTS) mxser.c

    dummy:

    --------------------------------------------------------------
    output: musste den output einwenig formatieren:
    make install
    gcc -c -DMODULE -D__MODULE__ -D__KERNEL__
    -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -march=athlon
    -I/lib/modules/`uname -r`/build/include -I/usr/src/linux/include -DMODVERSIONS mxser.c
    In file included from /usr/include/linux/module.h:20,
    from mxser.c:44:
    /usr/include/asm/module.h:54:2: #error unknown processor family
    In file included from mxser.c:49:
    /usr/include/linux/version.h:2:2: #error "================================================= ======"
    /usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{linux,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 from 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 files - 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 exists and points to"
    /usr/include/linux/version.h:20:2: #error " the matching kernel source directory"
    /usr/include/linux/version.h:21:2: #error ""
    /usr/include/linux/version.h:22:2: #error " o Configure kernel sources:"
    /usr/include/linux/version.h:23:2: #error " - cd /usr/src/linux"
    /usr/include/linux/version.h:24:2: #error " - make mrproper"
    /usr/include/linux/version.h:25:2: #error " - make cloneconfig"
    /usr/include/linux/version.h:26:2: #error " - make dep"
    /usr/include/linux/version.h:27:2: #error ""
    /usr/include/linux/version.h:28:2: #error " o When compiling, make sure to use the following"
    /usr/include/linux/version.h:29:2: #error " compiler option to use the correct include files:"
    /usr/include/linux/version.h:30:2: #error ""
    /usr/include/linux/version.h:31:2: #error " -I/lib/modules/`uname -r`/build/include"
    /usr/include/linux/version.h:32:2: #error ""
    /usr/include/linux/version.h:33:2: #error " instead of"
    /usr/include/linux/version.h:34:2: #error ""
    /usr/include/linux/version.h:35:2: #error " -I/usr/include/linux"
    /usr/include/linux/version.h:36:2: #error ""
    /usr/include/linux/version.h:37:2: #error " Please adjust the Makefile accordingly."
    /usr/include/linux/version.h:38:2: #error "================================================= ======"
    In file included from /usr/include/linux/irq.h:19,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory
    In file included from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/linux/irq.h:67: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/irq.h:67: error: requested alignment is not a constant
    /usr/include/linux/irq.h:69: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/irq.h:71,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hw_irq.h:28: error: `NR_IRQS' undeclared here (not in a function)
    /usr/include/asm/hw_irq.h:31: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hardirq.h:13: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/asm/hardirq.h:13: error: requested alignment is not a constant
    In file included from /usr/include/linux/mm.h:205,
    from mxser.c:65:
    /usr/include/linux/page-flags.h:119: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/page-flags.h:119: error: requested alignment is not a constant
    mxser.c:362: error: field `tqueue' has incomplete type
    mxser.c:424: error: `MUTEX' undeclared here (not in a function)
    mxser.c: In function `mxser_initbrd':
    mxser.c:1034: warning: passing arg 2 of `request_irq' from incompatible pointer type
    mxser.c: In function `mxser_init':
    mxser.c:1131: warning: assignment makes integer from pointer without a cast
    mxser.c:1132: error: structure has no member named `table'
    mxser.c:1115: warning: unused variable `pdev'
    mxser.c: In function `mxser_do_softint':
    mxser.c:1346: error: void value not ignored as it ought to be
    mxser.c:1352: error: void value not ignored as it ought to be
    mxser.c: In function `mxser_open':
    mxser.c:1384: error: request for member `minor_start' in something not a structure or union
    mxser.c:1397: warning: implicit declaration of function `get_free_page'
    mxser.c:1418: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:481)
    mxser.c:1421: error: request for member `subtype' in something not a structure or union
    mxser.c: In function `mxser_close':
    mxser.c:1452: error: request for member `minor_start' in something not a structure or union
    mxser.c:1462: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1485: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1527: error: structure has no member named `timeout'
    mxser.c:1541: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1542: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1551: error: structure has no member named `timeout'
    mxser.c:1553: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1558: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1561: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c: In function `mxser_write':
    mxser.c:1585: warning: implicit declaration of function `memcpy_fromfs'
    mxser.c: In function `mxser_ioctl':
    mxser.c:1697: error: request for member `minor_start' in something not a structure or union
    mxser.c:1721: warning: implicit declaration of function `verify_area'
    mxser.c:1721: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1721: error: (Each undeclared identifier is reported only once
    mxser.c:1721: error: for each function it appears in.)
    mxser.c:1724: warning: implicit declaration of function `put_fs_long'
    mxser.c:1727: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c:1730: warning: implicit declaration of function `get_fs_long'
    mxser.c:1776: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:1778: error: wrong type argument to bit-complement
    mxser.c: In function `mxser_ioctl_special':
    mxser.c:1855: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1859: warning: implicit declaration of function `memcpy_tofs'
    mxser.c: In function `mxser_hangup':
    mxser.c:2175: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_receive_chars':
    mxser.c:2393: warning: implicit declaration of function `queue_task_irq_off'
    mxser.c:2393: error: structure has no member named `tqueue'
    mxser.c:2393: error: `tq_timer' undeclared (first use in this function)
    mxser.c: In function `mxser_transmit_chars':
    mxser.c:2448: warning: implicit declaration of function `queue_task'
    mxser.c:2448: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_check_modem_status':
    mxser.c:2470: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2474: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2487: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_block_til_ready':
    mxser.c:2532: error: variable `wait' has initializer but incomplete type
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: error: storage size of `wait' isn't known
    mxser.c:2544: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:2559: error: request for member `subtype' in something not a structure or union
    mxser.c:2602: warning: passing arg 1 of `add_wait_queue' from incompatible pointer type
    mxser.c:2632: error: wrong type argument to bit-complement
    mxser.c:2639: warning: passing arg 1 of `remove_wait_queue' from incompatible pointer type
    mxser.c:2532: warning: unused variable `wait'
    mxser.c: In function `mxser_startup':
    mxser.c:2699: warning: implicit declaration of function `suser'
    mxser.c: In function `mxser_shutdown':
    mxser.c:2782: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_change_speed':
    mxser.c:3039: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_send_break':
    mxser.c:3266: error: structure has no member named `timeout'
    mxser.c: In function `mxser_set_modem_info':
    mxser.c:3302: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c: At top level:
    mxser.c:874: warning: `CheckIsMoxaMust' defined but not used
    make: *** [mxser.o] Error 1
    linux:/moxa/mxser/driver #

    -------------------------------------------------------------
    end

  12. #12
    Benutzter Registrierer
    Registriert seit
    Feb 2004
    Beiträge
    2.281
    Moin,

    Zitat Zitat von nomad
    zitat 1: hab bloss bei den kernelbauoptionen noch nie den namen "moxa" direct
    auftauchen sehen.
    == bei mir ist unter /lib/modules/2.4.21-99-athlon/kernel/driver/char/
    == moxa.o enthalten.
    OK, jetzt weiss ich bloss nicht, ob moxa.o schon der eigenstaendige Treiber ist, oder ob moxa.o noch mit anderen .o zu einem Treiber gelinkt wird und ob das Dingens als Modul oder fest in deinem Kernel ist...
    Zitat Zitat von nomad
    zitat 2.: die karte ersetzt nicht die internen ports
    wenigstens: Onboard rs232 no 1 com1 ttyS0 irq 4
    (ist herausgefuehrt)
    rs232 no 2 com2 ttyS1 irq 3
    Yepp, habbich gesehen, die moxa haengt bei viel groesseren io-adressen rum.

    Zitat Zitat von nomad
    zitat 3: test com1: OK
    hab ein kleines communications-pgm geschrieben, Master31.c
    rs232 verbindung zu meinem linuxLaptop
    laeuft ueber ttyS0
    gesteuert wird das ganze mit MODEMDEVICE = "/dev/ttyS0"
    und mit BAUDRATE B9600
    benutz das pgm mit diversen 8-bit microcontrollern/gps-receiver
    und anderen linux-rechnern
    hab dir mal das pgm als Master31_c.txt als attachment beigelegt
    vieleicht kannst du,s mal gebrauchen.
    Yep, danke. hihi, das kommt mir doch maechtig bekannt vor. Serial-programming-howto? :-)

    OK, aus dem Rest erseh' ich, dass du die noetigen device nodes schon (mit dem script) erstellt hast.
    Dann kannste ja mal probieren, obs mit dem "normalen" seriellen Treiber hinhaut. Tipp mal z.b. :
    Code:
    setserial /dev/ttyS3 uart 16550A irq 11 port 0x9400
    (statt 0x9400 gerne auch mal die anderen Adressen durchprobieren).
    Und guck', ob du dann mit ttyS3 quaken kannst. Aus den angegebenen port-adressbereichen werd' ich nicht so ganz schlau, denn die sind ja fast immer 4 byte gross, ein UART braucht aber 8.
    Beim irq 11 bin ich mir auch nicht so recht sicher. Mit
    Code:
    less /proc/pci
    kannst du auch nachgucken, welchen IRQ und welche IO Bereiche deine Karte "beansprucht". Dem wuerd' ich mehr vertrauen, als der Moxa doku. Wenn das mit einer Schnittstelle hinhaut, sollte das auch mit allen gehen. Die settings von setserial sind nach jedem Einschalten weg, da brauchst du dann ein script, dass die setserial kommandos beim hochfahren einmal abarbeitet. Ist aber dann ziemlich simpel, wenns erstmal einmal geklappt hat.

    zu den Problemen mit dem Makefile:

    Probiers mal mit diesen optionen:
    Code:
    OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -march=athlon -I/lib/modules/`uname -r`/build/include
    Du hattest noch den Pfad /usr/src/linux/include drinnen, der ist auch gaaaanz boese . Stimmen die kernelsourcen mit deinem momentan laufenden Kernel ueberein, d.h. haut alles das hin, was in den #error Meldungen ausgeben wird?
    Wenn der Kernel naemlich noch nie aus diesen sourcen gebaut wurde, koennte das imho diese Fehlermeldung hervorrufen:
    #error unknown processor family

    Ich hab bei mir im Rechner so ne 2x seriell PCI Karte, die laeuft prima, wenn man sie mit den setserial kommandos "einstellt"; vielleicht klappts ja auch mit deiner 8fach Karte.

    Gruss
    WK

  13. #13
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    die fuenfte teil 3

    hi
    vielen dank,
    sei nicht boese, ich guck mir das morgen frueh genau an.
    hab noch ne idee:
    moxa liefert den source von utilittes prog mit,
    z.b. controlle der karte
    ein kleines comprog etc. ich compilier das mal.

    zu setserial, hab auf meinen anderen rechner suse 6.4 ein fille names "serial" dort kann man solche befehle
    wie mit setserial speichern.
    suse 9.0 hat das file auch, das isst aber leer., was denkst du drueber????
    also meine augen sind schon recht quadratisch angehaucht.
    also bis morgen
    schoenen abend noch
    mfg nomad

  14. #14
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    dieSechste_teil_1_freitag

    hi,
    zuerst leider mal ne schlechte nachricht:
    hab ein recht enges zeitfenster, um die karte zum laufen zu bringen.
    da mir mein lieferant nur eine 14-taege rueckgabe-frist einraeumt.
    muesste ich bis spaetestens SonntagAbend die karte zum funzzen bringen.
    (montag frueh muss ich die karte zur post bringen)
    sonst kann ich frs 300.-- (ca.150.-- euro) ans bein streichen.
    konnte aber mit dem lieferant ausmachen, dass er mir eine ersatzkarte
    von EXSYS EX-41054 4-fach PCI karte (linux kompatibel. athlon ok.
    und laut der doku wird der ganze quark mit setserial gemacht
    es gibt auch keine verdammten treiber geschichten)

    zusatz:
    frage: falls ich die exsys-karte benutze:
    da ich die hw-config mit dem moxa-tool "msmknod" gemacht
    habe.
    was passiert, wenn ich also die karte auswechle und die exsys-karte
    einbaue ???
    ueberschreibt dann das pci-bios die werte von "msmknod"
    und verwendet dann die neuen werte (moxa ist pci-slot no 3)
    hab noch den pci-slot no 1 zu verfuegung.
    oder kommen dann wieder troubles auf mich zu.
    waere wichtig fuer mich, das zuvor zu wissen.
    end-zusatz

    also jetzt zu den mehr oder weniger guten nachrichten:
    ich machs so wie gesten:
    teil 1: ohne treiber
    teil 2: makeInstall stuff

    Antworten:

    no.1
    zitat 1: hab bloss bei den kernelbauoptionen noch nie den namen "moxa" direct
    auftauchen sehen.
    == bei mir ist unter /lib/modules/2.4.21-99-athlon/kernel/driver/char/
    == moxa.o enthalten.

    antwort: in einem frueheren googleSearch
    ist moxa.c (moxa.o)
    nur fuer folgende karten relevant:
    - CP204J
    - C218
    - C320

    -----------------------------------------------------------------------------------------------
    no.2
    zitat 2.: yepp, habbich gesehen, die moxa haengt bei viel groesseren
    io-adressen rum.

    antwort: ist das gut?????????????????
    ------------------------------------------------------------------------------------------------
    no.3
    Zitat Yep, danke. hihi, das kommt mir doch maechtig bekannt vor.
    Serial-programming-howto? :-)
    antwort: sehr bekannt ;-)
    ------------------------------------------------------------------------------------------------
    zitat: OK, aus dem Rest erseh' ich, dass du die noetigen device nodes schon
    (mit dem script) erstellt hast.
    frage: meinst du mit dem script damit "msmknod" ???
    ------------------------------------------------------------------------------------------------
    no. 4

    meine gestrige antwort: betr. "serial.sh" haengt bei suse 6.4. unter:
    /sbin/init.d/
    zitat aus suse 6.4 handbuch:
    "um die konfiguration mithilfe des -setserial- -komandos zu automatisieren
    koennen sie die datei unter /sbin/init.d/serial veraendern.
    z.b. #run_setserial /dev/ttyS3 $AUTO_IRQ autoconfig
    wird nach
    run_setserrial /dev/ttyS3 irq10
    abgeaendert"
    == steht unter suse 9.0
    1 - /lib/modules/2.4.21-99-athlon/kernel/driver/usb/
    == im serial-ordner befinden sich nur treiber
    mit der endung *.o (nix von serial oder moxa)
    2 - /proc/tty/driver/ == ist leer
    3 - /usr/lib/cups/backend/ == ist ein reines prog (nur mit hex-editor)

    da bei meinem suse 9.0 noch kein setserial ausgefuehrt worden ist,
    waere diese ev. der grund das es leer ist

    frage: waere dies ev. eine moeglichkeit????
    --------------------------------------------------------------------------------------
    no. 4a
    zitat: Dann kannste ja mal probieren,
    obs mit dem "normalen" seriellen Treiber hinhaut.

    Tipp mal z.b. :
    Code:

    setserial /dev/ttyS3 uart 16550A irq 11 port 0x9400

    yup : auf console keine fehlermeldung

    hatte mich davor mal verschrieben, da kam dann Illegal uart typ

    --------------------------------------------------------------------------
    no. 4b

    zitat: (statt 0x9400 gerne auch mal die anderen Adressen durchprobieren).

    == ok, nun das ganze mit den restlichen adressen aus: cat /proc/pci
    == Serial controller: PCI device 1393:1681 (Moxa Technologies Co Ltd)
    (rev 2). IRQ 11.
    = I/O at 0x9400 [0x9403].
    = I/O at 0x9800 [0x9803].
    = I/O at 0x9c00 [0x9c3f].
    = I/O at 0xa000 [0xa00f].
    = I/O at 0xa400 [0xa403].
    = I/O at 0xa800 [0xa803].


    setserial /dev/ttyS3 uart 16550A irq 11 port 0x9400
    setserial /dev/ttyS3 uart 16550A irq 11 port 0x9800
    setserial /dev/ttyS3 uart 16550A irq 11 port 0x9c00
    setserial /dev/ttyS3 uart 16550A irq 11 port 0xa400
    setserial /dev/ttyS3 uart 16550A irq 11 port 0xa800

    == da waeren noch die frage der ttySx - benammsung == ich denkmal in
    aufsteigender reihenfolge bin mir aber im augenblick noch nicht so
    sicher da ja ttySx mit der (hex adr) korrespondieren sollte???
    nehm ich mal an:

    ich ward mal auf deine antwort (bin eben ein angsthase ;-}
    ---------------------------------------------------------------------------------------------

    Und guck', ob du dann mit ttyS3 quaken kannst.
    == hab dazu mal ein octopus 8-fach-kabel an die moxa-card gestoepselt und
    nummer 1 verwendet
    und mein altbekanntes master31.c auf (MODEMDEVICE == ttyS3) eingestellt:
    und chmod a+rw /de v/ttyS3 zuerst laufenlassen:

    ergebnis: NOK master-pgm absturz mit seqmentation fault
    oops rechner absturz.... ;-)

    oops: jetzt mach ich mal beiden rechnern einen restart
    und probier mal deine methode aus:

    == cp $IRGENDEINE_GROSSE_DATEI /dev/ttyS6

    probier mit ttyS3 aus: also cd /root/Desktop
    cp $IRGENDEINE_GROSSE_DATEI /dev/ttyS3
    ergebnis: cp missing destination file

    also hab ich auf mein laptop unter /root/Desktop ein leeres test-file
    eingerichtet (beide files ohne extensions)
    also cp $IRGENDEINE_GROSSE_DATEI /dev/ttyS3 /root/Desktop/test
    ergebnis: cp: reading /dev/ttyS3: input/output error
    also mal mit ttyS6

    cp $IRGENDEINE_GROSSE_DATEI /dev/ttyS6 /root/Desktop/test
    == input output error
    jetzt octopus-kabel auf no6 gestellt.

    dasgleiche ergebnis.
    mmh,
    Frage: da ich ja das script von moxa benutzt habe, msmknod,
    haette es einen zweck, die karte mal auszubauen, restart
    shutdown und dann wieder die karte einzubauen ev. ohne msmknod
    vieleicht gibt es ja unter linux ein entsprechendes script dass
    die configuration der karte uebernehmen koennte

    ----------------------------------------------------------------------------------------------

    Aus den angegebenen port-adressbereichen werd' ich nicht so
    ganz schlau, denn die sind ja fast immer 4 byte gross,
    ein UART braucht aber 8.
    == ich auch nicht
    -----------------------------------------------------------------------------------------------

    Beim irq 11 bin ich mir auch nicht so recht sicher.
    Mit
    -----------------------------------------------------------------------------------------------
    Code:

    less /proc/pci
    ergebnisausschnitt)
    -----------------------------------------------------------------------------------------------
    Bus 0, device 11, function 0:
    Serial controller: PCI device 1393:1681 (Moxa Technologies Co Ltd) (rev 2).
    IRQ 11.
    I/O at 0x9400 [0x9403].
    I/O at 0x9800 [0x9803].
    I/O at 0x9c00 [0x9c3f].
    I/O at 0xa000 [0xa00f].
    I/O at 0xa400 [0xa403].
    I/O at 0xa800 [0xa803].

    ----------------------------------------------------------------------------------------------------
    kannst du auch nachgucken, welchen IRQ und welche IO Bereiche deine Karte "beansprucht".
    Dem wuerd' ich mehr vertrauen, als der Moxa doku.
    Wenn das mit einer Schnittstelle hinhaut, sollte das auch mit allen gehen.

    == ok, die adressen stehen ja oben aber wo waeren die irqs???

    ------------------------------------------------------------------------------------------------
    Die settings von setserial sind nach jedem Einschalten weg,
    da brauchst du dann ein script,
    dass die setserial kommandos beim hochfahren einmal abarbeitet.
    Ist aber dann ziemlich simpel,
    wenns erstmal einmal geklappt hat.

    == das glaubich ist zur zeit noch zukunfstmusik
    -----------------------------------------------------------------------------------------------

    der 2.teil kommt bis heut abend.
    bis spaeter,
    ps. du hast wirklich eine engelsgeduld mit mir.
    mfg nomad
    Geändert von nomad (22.10.04 um 15:47 Uhr)

  15. #15
    Registrierter Benutzer Avatar von nomad
    Registriert seit
    Sep 2000
    Ort
    ch-8408 winterthur
    Beiträge
    125

    dieSechsteTeil_2 (Freitag)

    hi,
    hier der 2.teil
    zu den Problemen mit dem Makefile:
    ------------------------------------------------------------------------------------------------------------------

    Probiers mal mit diesen optionen:
    Code:

    OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \ -fomit-frame-pointer
    -pipe -march=athlon -I/lib/modules/`uname -r`/build/include
    == also versteh ich das richtig: untenstehenden pfad rausnehmen aus dem makefile?
    ich machs so:
    1 - mit pfad
    2- ohne diesen pfad

    Du hattest noch den Pfad /usr/src/linux/include drinnen, der ist auch gaaaanz boese .
    -------------------------------------------------------------------------------------------------------------------
    makefile no.1
    CC=gcc -c
    ARCH=$(shell uname -m | sed s/i.86/i86/)

    ifeq ($(ARCH),i86)
    OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -march=athlon -I/lib/modules/`uname -r`/build/include
    -I/usr/src/linux/include
    else
    OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -I/usr/src/linux/include -ffixed-8
    endif

    ifeq ($(MAKECMDGOALS), install)
    OPTS+=-DMODVERSIONS
    endif


    ifeq "$(findstring SMP, $(shell uname -a))" "SMP"
    OPTS+=-D__SMP__
    endif


    all: module

    module : mxser.o

    installmod: install

    install: module
    mkdir -p /lib/modules/$(shell uname -r)/kernel/drivers/char/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/kernel/drivers/char/
    mkdir -p /lib/modules/$(shell uname -r)/misc/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/misc/

    clean :
    rm -f *.o

    mxser.o : mxser.c
    $(CC) $(OPTS) mxser.c

    dummy:

    -----------------------------------------------------------------------------------------------------
    output no.1
    make install
    gcc -c -DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -march=athlon -I/lib/modules/`uname -r`/build/include -I/usr/src/linux/include -DMODVERSIONS mxser.c
    In file included from /usr/include/linux/module.h:20,
    from mxser.c:44:
    /usr/include/asm/module.h:54:2: #error unknown processor family
    In file included from mxser.c:49:
    /usr/include/linux/version.h:2:2: #error "================================================= ======"
    /usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{linux,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 from 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 files - 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 exists and points to"
    /usr/include/linux/version.h:20:2: #error " the matching kernel source directory"
    /usr/include/linux/version.h:21:2: #error ""
    /usr/include/linux/version.h:22:2: #error " o Configure kernel sources:"
    /usr/include/linux/version.h:23:2: #error " - cd /usr/src/linux"
    /usr/include/linux/version.h:24:2: #error " - make mrproper"
    /usr/include/linux/version.h:25:2: #error " - make cloneconfig"
    /usr/include/linux/version.h:26:2: #error " - make dep"
    /usr/include/linux/version.h:27:2: #error ""
    /usr/include/linux/version.h:28:2: #error " o When compiling, make sure to use the following"
    /usr/include/linux/version.h:29:2: #error " compiler option to use the correct include files:"
    /usr/include/linux/version.h:30:2: #error ""
    /usr/include/linux/version.h:31:2: #error " -I/lib/modules/`uname -r`/build/include"
    /usr/include/linux/version.h:32:2: #error ""
    /usr/include/linux/version.h:33:2: #error " instead of"
    /usr/include/linux/version.h:34:2: #error ""
    /usr/include/linux/version.h:35:2: #error " -I/usr/include/linux"
    /usr/include/linux/version.h:36:2: #error ""
    /usr/include/linux/version.h:37:2: #error " Please adjust the Makefile accordingly."
    /usr/include/linux/version.h:38:2: #error "================================================= ======"
    In file included from /usr/include/linux/irq.h:19,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory
    In file included from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/linux/irq.h:67: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/irq.h:67: error: requested alignment is not a constant
    /usr/include/linux/irq.h:69: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/irq.h:71,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hw_irq.h:28: error: `NR_IRQS' undeclared here (not in a function)
    /usr/include/asm/hw_irq.h:31: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hardirq.h:13: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/asm/hardirq.h:13: error: requested alignment is not a constant
    In file included from /usr/include/linux/mm.h:205,
    from mxser.c:65:
    /usr/include/linux/page-flags.h:119: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/page-flags.h:119: error: requested alignment is not a constant
    mxser.c:362: error: field `tqueue' has incomplete type
    mxser.c:424: error: `MUTEX' undeclared here (not in a function)
    mxser.c: In function `mxser_initbrd':
    mxser.c:1034: warning: passing arg 2 of `request_irq' from incompatible pointer type
    mxser.c: In function `mxser_init':
    mxser.c:1131: warning: assignment makes integer from pointer without a cast
    mxser.c:1132: error: structure has no member named `table'
    mxser.c:1115: warning: unused variable `pdev'
    mxser.c: In function `mxser_do_softint':
    mxser.c:1346: error: void value not ignored as it ought to be
    mxser.c:1352: error: void value not ignored as it ought to be
    mxser.c: In function `mxser_open':
    mxser.c:1384: error: request for member `minor_start' in something not a structure or union
    mxser.c:1397: warning: implicit declaration of function `get_free_page'
    mxser.c:1418: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:481)
    mxser.c:1421: error: request for member `subtype' in something not a structure or union
    mxser.c: In function `mxser_close':
    mxser.c:1452: error: request for member `minor_start' in something not a structure or union
    mxser.c:1462: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1485: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1527: error: structure has no member named `timeout'
    mxser.c:1541: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1542: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1551: error: structure has no member named `timeout'
    mxser.c:1553: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1558: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1561: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c: In function `mxser_write':
    mxser.c:1585: warning: implicit declaration of function `memcpy_fromfs'
    mxser.c: In function `mxser_ioctl':
    mxser.c:1697: error: request for member `minor_start' in something not a structure or union
    mxser.c:1721: warning: implicit declaration of function `verify_area'
    mxser.c:1721: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1721: error: (Each undeclared identifier is reported only once
    mxser.c:1721: error: for each function it appears in.)
    mxser.c:1724: warning: implicit declaration of function `put_fs_long'
    mxser.c:1727: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c:1730: warning: implicit declaration of function `get_fs_long'
    mxser.c:1776: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:1778: error: wrong type argument to bit-complement
    mxser.c: In function `mxser_ioctl_special':
    mxser.c:1855: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1859: warning: implicit declaration of function `memcpy_tofs'
    mxser.c: In function `mxser_hangup':
    mxser.c:2175: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_receive_chars':
    mxser.c:2393: warning: implicit declaration of function `queue_task_irq_off'
    mxser.c:2393: error: structure has no member named `tqueue'
    mxser.c:2393: error: `tq_timer' undeclared (first use in this function)
    mxser.c: In function `mxser_transmit_chars':
    mxser.c:2448: warning: implicit declaration of function `queue_task'
    mxser.c:2448: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_check_modem_status':
    mxser.c:2470: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2474: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2487: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_block_til_ready':
    mxser.c:2532: error: variable `wait' has initializer but incomplete type
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: error: storage size of `wait' isn't known
    mxser.c:2544: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:2559: error: request for member `subtype' in something not a structure or union
    mxser.c:2602: warning: passing arg 1 of `add_wait_queue' from incompatible pointer type
    mxser.c:2632: error: wrong type argument to bit-complement
    mxser.c:2639: warning: passing arg 1 of `remove_wait_queue' from incompatible pointer type
    mxser.c:2532: warning: unused variable `wait'
    mxser.c: In function `mxser_startup':
    mxser.c:2699: warning: implicit declaration of function `suser'
    mxser.c: In function `mxser_shutdown':
    mxser.c:2782: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_change_speed':
    mxser.c:3039: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_send_break':
    mxser.c:3266: error: structure has no member named `timeout'
    mxser.c: In function `mxser_set_modem_info':
    mxser.c:3302: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c: At top level:
    mxser.c:874: warning: `CheckIsMoxaMust' defined but not used
    make: *** [mxser.o] Error 1

    -----------------------------------------------------------------------------------------------------
    makefile no.2

    CC=gcc -c
    ARCH=$(shell uname -m | sed s/i.86/i86/)

    ifeq ($(ARCH),i86)
    OPTS=-DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -march=athlon -I/lib/modules/`uname -r`/build/include
    else
    OPTS=-DMODULE -D__KERNEL__ -Wall -Wstrict-prototypes -O2 \
    -fomit-frame-pointer -pipe -I/usr/src/linux/include -ffixed-8
    endif

    ifeq ($(MAKECMDGOALS), install)
    OPTS+=-DMODVERSIONS
    endif


    ifeq "$(findstring SMP, $(shell uname -a))" "SMP"
    OPTS+=-D__SMP__
    endif


    all: module

    module : mxser.o

    installmod: install

    install: module
    mkdir -p /lib/modules/$(shell uname -r)/kernel/drivers/char/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/kernel/drivers/char/
    mkdir -p /lib/modules/$(shell uname -r)/misc/
    cp -f ./mxser.o /lib/modules/$(shell uname -r)/misc/

    clean :
    rm -f *.o

    mxser.o : mxser.c
    $(CC) $(OPTS) mxser.c

    dummy:

    ----------------------------------------------------------------------------------------------------------
    output no.2
    make install
    gcc -c -DMODULE -D__MODULE__ -D__KERNEL__ -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -march=athlon -I/lib/modules/`uname -r`/build/include -DMODVERSIONS mxser.c
    In file included from /usr/include/linux/module.h:20,
    from mxser.c:44:
    /usr/include/asm/module.h:54:2: #error unknown processor family
    In file included from mxser.c:49:
    /usr/include/linux/version.h:2:2: #error "================================================= ======"
    /usr/include/linux/version.h:3:2: #error "You should not include /usr/include/{linux,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 from 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 files - 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 exists and points to"
    /usr/include/linux/version.h:20:2: #error " the matching kernel source directory"
    /usr/include/linux/version.h:21:2: #error ""
    /usr/include/linux/version.h:22:2: #error " o Configure kernel sources:"
    /usr/include/linux/version.h:23:2: #error " - cd /usr/src/linux"
    /usr/include/linux/version.h:24:2: #error " - make mrproper"
    /usr/include/linux/version.h:25:2: #error " - make cloneconfig"
    /usr/include/linux/version.h:26:2: #error " - make dep"
    /usr/include/linux/version.h:27:2: #error ""
    /usr/include/linux/version.h:28:2: #error " o When compiling, make sure to use the following"
    /usr/include/linux/version.h:29:2: #error " compiler option to use the correct include files:"
    /usr/include/linux/version.h:30:2: #error ""
    /usr/include/linux/version.h:31:2: #error " -I/lib/modules/`uname -r`/build/include"
    /usr/include/linux/version.h:32:2: #error ""
    /usr/include/linux/version.h:33:2: #error " instead of"
    /usr/include/linux/version.h:34:2: #error ""
    /usr/include/linux/version.h:35:2: #error " -I/usr/include/linux"
    /usr/include/linux/version.h:36:2: #error ""
    /usr/include/linux/version.h:37:2: #error " Please adjust the Makefile accordingly."
    /usr/include/linux/version.h:38:2: #error "================================================= ======"
    In file included from /usr/include/linux/irq.h:19,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory
    In file included from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/linux/irq.h:67: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/irq.h:67: error: requested alignment is not a constant
    /usr/include/linux/irq.h:69: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/irq.h:71,
    from /usr/include/asm/hardirq.h:6,
    from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hw_irq.h:28: error: `NR_IRQS' undeclared here (not in a function)
    /usr/include/asm/hw_irq.h:31: error: `NR_IRQS' undeclared here (not in a function)
    In file included from /usr/include/linux/interrupt.h:10,
    from mxser.c:55:
    /usr/include/asm/hardirq.h:13: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/asm/hardirq.h:13: error: requested alignment is not a constant
    In file included from /usr/include/linux/mm.h:205,
    from mxser.c:65:
    /usr/include/linux/page-flags.h:119: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
    /usr/include/linux/page-flags.h:119: error: requested alignment is not a constant
    mxser.c:362: error: field `tqueue' has incomplete type
    mxser.c:424: error: `MUTEX' undeclared here (not in a function)
    mxser.c: In function `mxser_initbrd':
    mxser.c:1034: warning: passing arg 2 of `request_irq' from incompatible pointer type
    mxser.c: In function `mxser_init':
    mxser.c:1131: warning: assignment makes integer from pointer without a cast
    mxser.c:1132: error: structure has no member named `table'
    mxser.c:1115: warning: unused variable `pdev'
    mxser.c: In function `mxser_do_softint':
    mxser.c:1346: error: void value not ignored as it ought to be
    mxser.c:1352: error: void value not ignored as it ought to be
    mxser.c: In function `mxser_open':
    mxser.c:1384: error: request for member `minor_start' in something not a structure or union
    mxser.c:1397: warning: implicit declaration of function `get_free_page'
    mxser.c:1418: warning: `MOD_INC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:481)
    mxser.c:1421: error: request for member `subtype' in something not a structure or union
    mxser.c: In function `mxser_close':
    mxser.c:1452: error: request for member `minor_start' in something not a structure or union
    mxser.c:1462: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1485: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c:1527: error: structure has no member named `timeout'
    mxser.c:1541: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1542: error: request for member `flush_buffer' in something not a structure or union
    mxser.c:1551: error: structure has no member named `timeout'
    mxser.c:1553: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1558: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:1561: warning: `MOD_DEC_USE_COUNT' is deprecated (declared at /usr/include/linux/module.h:493)
    mxser.c: In function `mxser_write':
    mxser.c:1585: warning: implicit declaration of function `memcpy_fromfs'
    mxser.c: In function `mxser_ioctl':
    mxser.c:1697: error: request for member `minor_start' in something not a structure or union
    mxser.c:1721: warning: implicit declaration of function `verify_area'
    mxser.c:1721: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1721: error: (Each undeclared identifier is reported only once
    mxser.c:1721: error: for each function it appears in.)
    mxser.c:1724: warning: implicit declaration of function `put_fs_long'
    mxser.c:1727: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c:1730: warning: implicit declaration of function `get_fs_long'
    mxser.c:1776: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:1778: error: wrong type argument to bit-complement
    mxser.c: In function `mxser_ioctl_special':
    mxser.c:1855: error: `VERIFY_WRITE' undeclared (first use in this function)
    mxser.c:1859: warning: implicit declaration of function `memcpy_tofs'
    mxser.c: In function `mxser_hangup':
    mxser.c:2175: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_receive_chars':
    mxser.c:2393: warning: implicit declaration of function `queue_task_irq_off'
    mxser.c:2393: error: structure has no member named `tqueue'
    mxser.c:2393: error: `tq_timer' undeclared (first use in this function)
    mxser.c: In function `mxser_transmit_chars':
    mxser.c:2448: warning: implicit declaration of function `queue_task'
    mxser.c:2448: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_check_modem_status':
    mxser.c:2470: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2474: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c:2487: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_block_til_ready':
    mxser.c:2532: error: variable `wait' has initializer but incomplete type
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: warning: excess elements in struct initializer
    mxser.c:2532: warning: (near initialization for `wait')
    mxser.c:2532: error: storage size of `wait' isn't known
    mxser.c:2544: warning: passing arg 1 of `interruptible_sleep_on' from incompatible pointer type
    mxser.c:2559: error: request for member `subtype' in something not a structure or union
    mxser.c:2602: warning: passing arg 1 of `add_wait_queue' from incompatible pointer type
    mxser.c:2632: error: wrong type argument to bit-complement
    mxser.c:2639: warning: passing arg 1 of `remove_wait_queue' from incompatible pointer type
    mxser.c:2532: warning: unused variable `wait'
    mxser.c: In function `mxser_startup':
    mxser.c:2699: warning: implicit declaration of function `suser'
    mxser.c: In function `mxser_shutdown':
    mxser.c:2782: warning: passing arg 1 of `__wake_up' from incompatible pointer type
    mxser.c: In function `mxser_change_speed':
    mxser.c:3039: error: `tq_scheduler' undeclared (first use in this function)
    mxser.c: In function `mxser_send_break':
    mxser.c:3266: error: structure has no member named `timeout'
    mxser.c: In function `mxser_set_modem_info':
    mxser.c:3302: error: `VERIFY_READ' undeclared (first use in this function)
    mxser.c: At top level:
    mxser.c:874: warning: `CheckIsMoxaMust' defined but not used
    make: *** [mxser.o] Error 1

    ----------------------------------------------------------------------------------------------------------
    oopsala:
    allso mir faellt im augenblick nur 2 sachen auf:
    1 - " When compiling, make sure to use the following"
    " compiler option to use the correct include files:"
    == das sollte ja stimmen im makefile : -I/lib/modules/`uname -r`/build/include"

    2 - /usr/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory
    == im mxser.c-treiber steht: zeile 55: #include <linux/interrupt.h>
    == bei mir steht das unter: /usr/include/asm/mach-default/
    /usr/include/asm/mach-pc9800/
    /usr/include/asm/mach-visws/
    /usr/include/asm/mach-voyager/
    und in: from /usr/include/linux/interrupt.h:10,
    steht kein direktes include zu den oben genannten verzeichnissen.
    ----------------------------------------------------------------------------------------------------------
    zitat:
    Stimmen die kernelsourcen mit deinem momentan laufenden Kernel ueberein,
    d.h. haut alles das hin, was in den #error Meldungen ausgeben wird?

    == §;-( asche auf mein haupt.
    keine ahnung.
    weisst du, wo ich vor 1/2 jahren den rechner gekauft habe,
    war ich froh, dass ich windof xp raus hatte, die partionierung geklappt hat,
    und hab mich dann darum gekuemmert, dass der eth-stuff & der sound funktioniert
    hat.

    zitat:
    Wenn der Kernel naemlich noch nie aus diesen sourcen gebaut wurde,
    koennte das imho diese Fehlermeldung hervorrufen:
    #error unknown processor family

    == mmh, ich nahm bis jetzt an, dass beim installieren ev. ein athlon-spezifischer
    kernel gebaut worden ist. ss.version..
    ich muss folgendes dazu sagen:
    auch moxa bietet 2 moeglichkeiten an,
    1 - den treiber als modul einzubinden, was wir ja jetzt probieren,
    oder
    2 - den treiber als "static" einzubinden, (allso einen kernel-neubau anzustossen).

    da dieser rechner mein haupt-entwicklungs-system ist, muss er funkstionfaehig bleiben.
    ich kann mir solche experimente leider nicht leisten.
    hab auch keinerlei erfahrung im kernelbau.
    -----------------------------------------------------------------------------------------------------------
    zitat
    Ich hab bei mir im Rechner so ne 2x seriell PCI Karte, die laeuft prima,
    wenn man sie mit den setserial kommandos "einstellt";
    vielleicht klappts ja auch mit deiner 8fach Karte.

    == ss. teil 1: rueckgabe von moxa, bestellung einer anderen karte

    mein lieferant kann mir eine EXSYS EX-41054 4-fach PCI karte besorgen.
    lt. doku laeuft diese unter linux und ist AMD Athlon kompatibel
    und braucht keinen treiber,
    configuriert wird mit "setserial"

    zusatz:
    ss. teil1. auch meine frage w/msmknod
    waere wichtig fuer mich das zuvor zu wissen.


    was meinst du dazu?????
    was hast du den fuer eine karte?
    -----------------------------------------------------------------------------

    so das waers im augenblick.....
    bis heut abend
    mfg nomad
    Geändert von nomad (22.10.04 um 15:44 Uhr)

Ähnliche Themen

  1. Aiptek Pencam VGA+
    Von hydronic im Forum stationäre Hardware
    Antworten: 17
    Letzter Beitrag: 06.12.05, 13:36
  2. Vortrag über Open Source
    Von Kikone im Forum Meldungen und Mitglieder
    Antworten: 30
    Letzter Beitrag: 29.04.04, 20:51
  3. Referat über freie Software
    Von Nicolas im Forum Meldungen und Mitglieder
    Antworten: 18
    Letzter Beitrag: 01.03.04, 16:17
  4. Wo führt das hin ...
    Von kdre im Forum Linux Allgemein
    Antworten: 45
    Letzter Beitrag: 14.07.03, 12:36
  5. Antworten: 1
    Letzter Beitrag: 02.03.03, 20:10

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •