Hallo Liste, Ich hab ne SMC Etherpower II 10/100 im Einsatz, die mit dem epic100.o Treiber unter dem Kernel 2.4.18-SuSE (SuSE 8.0) und als zweites auf auf nem RedHat 7.3 2.4.18-3 läuft. Die Performance ist jedoch nicht gerade so doll. Durch eine Mail bin ich auf einen Original-Treiber von SMC aufmerksam gemacht worden, der sich jedoch bei mir nicht installieren läßt. Beim einbinden mit modprobe oder insmod erhalte ich nur eine Fehlermeldung, daß der Treiber für Kernel 2.4.1 compiliert ist. Laut readme Datei soll man die heruntergeladenen Dateien in ein eigenes Verzeichnis kopieren und als root den make Befehl aufrufen. Dies verursacht bei mir aber nur einen Abbruch mit der Meldung, daß folgende Dateien nicht gefunden werden konnten: fixmap.h hardirq.h softirq.h delay.h Ich habe nun die Dateien gesucht und durch Anlegen von symbolischen Links das Auffinden gesichert, was mir aber nur noch mehr Fehlermeldungen bescherte. Frage: Wer kann mir beim compilieren helfen bzw. einen compilierten Treiber für zumindest ein System zur Verfügung stellen ? Vielen Dank schon mal im voraus. MfG Schorsch
Am 11.07.2002 um 20:00 schrieb Georg Pötting:
Ich habe nun die Dateien gesucht und durch Anlegen von symbolischen Links das Auffinden gesichert, was mir aber nur noch mehr Fehlermeldungen bescherte.
Welche? -- Dennis Stosberg eMail: dennis@stosberg.net gpg key: http://stosberg.net/dennis.asc icq: 63537718
Am 11.07.2002 um 20:00 schrieb Georg Pötting:
Ich habe nun die Dateien gesucht und durch Anlegen von symbolischen Links das Auffinden gesichert, was mir aber nur noch mehr Fehlermeldungen bescherte.
Welche? [root@tux smc]# make cc -D__KERNEL__ -DMODULE -DLINUX -O -Wall -I/usr/include -c -o um.o um.c In file included from /usr/include/linux/fs.h:23, from /usr/include/linux/capability.h:17, from /usr/include/linux/binfmts.h:5, from /usr/include/linux/sched.h:9, from /usr/include/linux/skbuff.h:19, from mm.h:25, from um.h:22, from um.c:20: /usr/include/linux/string.h:8:2: warning: #warning Using kernel
Am Donnerstag, 11. Juli 2002 18:05 schrieb Dennis Stosberg: header in userland! In file included from /usr/include/linux/bitops.h:69, from /usr/include/asm/system.h:7, from /usr/include/linux/sched.h:16, from /usr/include/linux/skbuff.h:19, from mm.h:25, from um.h:22, from um.c:20: /usr/include/asm/bitops.h:333:2: warning: #warning This includefile is not available on all architectures. /usr/include/asm/bitops.h:334:2: warning: #warning Using kernel headers in userspace. In file included from /usr/include/asm/hw_irq.h:16, from /usr/include/linux/irq.h:69, from /usr/include/asm/hardirq.h:6, from /usr/include/linux/interrupt.h:44, from mm.h:26, from um.h:22, from um.c:20: /usr/include/asm/atomic.h:40:2: warning: #warning Using kernel header in userland program. BAD! In file included from /usr/include/linux/irq.h:69, from /usr/include/asm/hardirq.h:6, from /usr/include/linux/interrupt.h:44, from mm.h:26, from um.h:22, from um.c:20: /usr/include/asm/hw_irq.h:236:2: warning: #warning Including kernel header in userspace! In file included from /usr/include/linux/sched.h:14, from /usr/include/linux/skbuff.h:19, from mm.h:25, from um.h:22, from um.c:20: /usr/include/linux/timex.h:173: field `time' has incomplete type In file included from /usr/include/linux/signal.h:4, from /usr/include/linux/sched.h:25, from /usr/include/linux/skbuff.h:19, from mm.h:25, from um.h:22, from um.c:20: /usr/include/asm/signal.h:107: parse error before `sigset_t' /usr/include/asm/signal.h:107: warning: no semicolon at end of struct or union /usr/include/asm/signal.h:110: parse error before `}' In file included from /usr/include/linux/timer.h:18, from /usr/include/linux/sched.h:81, from /usr/include/linux/skbuff.h:19, from mm.h:25, from um.h:22, from um.c:20: /usr/include/linux/spinlock.h:131: parse error before `*' In file included from /usr/include/asm/pgalloc.h:6, from /usr/include/linux/highmem.h:5, from /usr/include/linux/skbuff.h:26, from mm.h:25, from um.h:22, from um.c:20: /usr/include/asm/fixmap.h:77: parse error before `pgprot_t' In file included from /usr/include/linux/highmem.h:5, from /usr/include/linux/skbuff.h:26, from mm.h:25, from um.h:22, from um.c:20: /usr/include/asm/pgalloc.h:57: parse error before `*' /usr/include/asm/pgalloc.h:58: warning: return type defaults to `int' /usr/include/asm/pgalloc.h: In function `get_pgd_slow': /usr/include/asm/pgalloc.h:59: `pgd_t' undeclared (first use in this function) /usr/include/asm/pgalloc.h:59: (Each undeclared identifier is reported only once /usr/include/asm/pgalloc.h:59: for each function it appears in.) /usr/include/asm/pgalloc.h:59: `pgd' undeclared (first use in this function) /usr/include/asm/pgalloc.h:59: parse error before `)' /usr/include/asm/pgalloc.h:62: `USER_PTRS_PER_PGD' undeclared (first use in this function) /usr/include/asm/pgalloc.h:63: `swapper_pg_dir' undeclared (first use in this function) /usr/include/asm/pgalloc.h:63: `PTRS_PER_PGD' undeclared (first use in this function) /usr/include/asm/pgalloc.h:66: warning: control reaches end of non-void function /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:70: parse error before `*' /usr/include/asm/pgalloc.h:71: warning: return type defaults to `int' /usr/include/asm/pgalloc.h: In function `get_pgd_fast': /usr/include/asm/pgalloc.h:80: `pgd_t' undeclared (first use in this function) /usr/include/asm/pgalloc.h:80: parse error before `)' /usr/include/asm/pgalloc.h:81: warning: control reaches end of non-void function /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:83: parse error before `*' /usr/include/asm/pgalloc.h: In function `free_pgd_fast': /usr/include/asm/pgalloc.h:85: `pgd' undeclared (first use in this function) /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:90: parse error before `*' /usr/include/asm/pgalloc.h: In function `free_pgd_slow': /usr/include/asm/pgalloc.h:99: warning: implicit declaration of function `free_page' /usr/include/asm/pgalloc.h:99: `pgd' undeclared (first use in this function) /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:103: parse error before `*' /usr/include/asm/pgalloc.h:104: warning: return type defaults to `int' /usr/include/asm/pgalloc.h: In function `pte_alloc_one': /usr/include/asm/pgalloc.h:105: `pte_t' undeclared (first use in this function) /usr/include/asm/pgalloc.h:105: `pte' undeclared (first use in this function) /usr/include/asm/pgalloc.h:105: invalid lvalue in assignment /usr/include/asm/pgalloc.h:106: parse error before `int' /usr/include/asm/pgalloc.h:109: parse error before `)' /usr/include/asm/pgalloc.h:111: warning: implicit declaration of function `clear_page' /usr/include/asm/pgalloc.h:113: warning: implicit declaration of function `schedule_timeout' /usr/include/asm/pgalloc.h:114: `count' undeclared (first use in this function) /usr/include/asm/pgalloc.h:116: warning: control reaches end of non-void function /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:118: parse error before `*' /usr/include/asm/pgalloc.h:119: warning: return type defaults to `int' /usr/include/asm/pgalloc.h: In function `pte_alloc_one_fast': /usr/include/asm/pgalloc.h:127: `pte_t' undeclared (first use in this function) /usr/include/asm/pgalloc.h:127: parse error before `)' /usr/include/asm/pgalloc.h:128: warning: control reaches end of non-void function /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:130: parse error before `*' /usr/include/asm/pgalloc.h: In function `pte_free_fast': /usr/include/asm/pgalloc.h:132: `pte' undeclared (first use in this function) /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:137: parse error before `*' /usr/include/asm/pgalloc.h: In function `pte_free_slow': /usr/include/asm/pgalloc.h:139: `pte' undeclared (first use in this function) /usr/include/asm/pgalloc.h: In function `flush_tlb_mm': /usr/include/asm/pgalloc.h:183: `current' undeclared (first use in this function) /usr/include/asm/pgalloc.h:184: warning: implicit declaration of function `__flush_tlb' /usr/include/asm/pgalloc.h: At top level: /usr/include/asm/pgalloc.h:188: warning: `struct vm_area_struct' declared inside parameter list /usr/include/asm/pgalloc.h:188: warning: its scope is only this definition or declaration, which is probably not what you want. /usr/include/asm/pgalloc.h: In function `flush_tlb_page': /usr/include/asm/pgalloc.h:190: dereferencing pointer to incomplete type /usr/include/asm/pgalloc.h:190: `current' undeclared (first use in this function) /usr/include/asm/pgalloc.h:191: warning: implicit declaration of function `__flush_tlb_one' /usr/include/asm/pgalloc.h: In function `flush_tlb_range': /usr/include/asm/pgalloc.h:197: `current' undeclared (first use in this function) In file included from /usr/include/linux/skbuff.h:26, from mm.h:25, from um.h:22, from um.c:20: /usr/include/linux/highmem.h: At top level: /usr/include/linux/highmem.h:68: warning: `struct page' declared inside parameter list /usr/include/linux/highmem.h: In function `kmap': /usr/include/linux/highmem.h:68: warning: implicit declaration of function `page_address' /usr/include/linux/highmem.h:68: warning: return makes pointer from integer without a cast /usr/include/linux/highmem.h: At top level: /usr/include/linux/highmem.h:83: warning: `struct page' declared inside parameter list /usr/include/linux/highmem.h: In function `clear_user_highpage': /usr/include/linux/highmem.h:85: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h:86: warning: implicit declaration of function `clear_user_page' /usr/include/linux/highmem.h: At top level: /usr/include/linux/highmem.h:90: warning: `struct page' declared inside parameter list /usr/include/linux/highmem.h: In function `clear_highpage': /usr/include/linux/highmem.h:92: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h: At top level: /usr/include/linux/highmem.h:96: warning: `struct page' declared inside parameter list /usr/include/linux/highmem.h: In function `memclear_highpage': /usr/include/linux/highmem.h:101: warning: implicit declaration of function `BUG' /usr/include/linux/highmem.h:102: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h: At top level: /usr/include/linux/highmem.h:110: warning: `struct page' declared inside parameter list /usr/include/linux/highmem.h: In function `memclear_highpage_flush': /usr/include/linux/highmem.h:116: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h:118: warning: implicit declaration of function `flush_page_to_ram' /usr/include/linux/highmem.h: At top level: /usr/include/linux/highmem.h:122: warning: `struct page' declared inside parameter list /usr/include/linux/highmem.h: In function `copy_user_highpage': /usr/include/linux/highmem.h:126: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h:127: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h:128: warning: implicit declaration of function `copy_user_page' /usr/include/linux/highmem.h: At top level: /usr/include/linux/highmem.h:133: warning: `struct page' declared inside parameter list /usr/include/linux/highmem.h: In function `copy_highpage': /usr/include/linux/highmem.h:137: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h:138: warning: passing arg 1 of `kmap' from incompatible pointer type /usr/include/linux/highmem.h:139: warning: implicit declaration of function `copy_page' In file included from mm.h:25, from um.h:22, from um.c:20: /usr/include/linux/skbuff.h: At top level: /usr/include/linux/skbuff.h:120: parse error before `atomic_t' /usr/include/linux/skbuff.h:120: warning: no semicolon at end of struct or union /usr/include/linux/skbuff.h:124: parse error before `}' /usr/include/linux/skbuff.h:183: parse error before `atomic_t' /usr/include/linux/skbuff.h:183: warning: no semicolon at end of struct or union /usr/include/linux/skbuff.h:215: parse error before `}' In file included from /usr/include/asm/hardirq.h:6, from /usr/include/linux/interrupt.h:44, from mm.h:26, from um.h:22, from um.c:20: /usr/include/linux/irq.h:65: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/linux/irq.h:65: requested alignment is not a constant In file included from /usr/include/linux/irq.h:69, from /usr/include/asm/hardirq.h:6, from /usr/include/linux/interrupt.h:44, from mm.h:26, from um.h:22, from um.c:20: /usr/include/asm/hw_irq.h:78: parse error before `(' /usr/include/asm/hw_irq.h: In function `x86_do_profile': /usr/include/asm/hw_irq.h:212: `prof_pid' undeclared (first use in this function) /usr/include/asm/hw_irq.h:212: `current' undeclared (first use in this function) /usr/include/asm/hw_irq.h:224: warning: implicit declaration of function `atomic_inc' In file included from /usr/include/linux/interrupt.h:44, from mm.h:26, from um.h:22, from um.c:20: /usr/include/asm/hardirq.h: At top level: /usr/include/asm/hardirq.h:16: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/asm/hardirq.h:16: requested alignment is not a constant In file included from mm.h:26, from um.h:22, from um.c:20: /usr/include/linux/interrupt.h:77: parse error before `(' /usr/include/linux/interrupt.h:78: parse error before `(' /usr/include/linux/interrupt.h:127: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/linux/interrupt.h:127: requested alignment is not a constant /usr/include/linux/interrupt.h:154: parse error before `(' /usr/include/linux/interrupt.h: In function `tasklet_schedule': /usr/include/linux/interrupt.h:159: warning: implicit declaration of function `__tasklet_schedule' /usr/include/linux/interrupt.h: At top level: /usr/include/linux/interrupt.h:162: parse error before `(' /usr/include/linux/interrupt.h: In function `tasklet_hi_schedule': /usr/include/linux/interrupt.h:167: warning: implicit declaration of function `__tasklet_hi_schedule' /usr/include/linux/interrupt.h: In function `tasklet_disable_nosync': /usr/include/linux/interrupt.h:174: warning: implicit declaration of function `smp_mb__after_atomic_inc' /usr/include/linux/interrupt.h: In function `tasklet_disable': /usr/include/linux/interrupt.h:181: warning: implicit declaration of function `barrier' /usr/include/linux/interrupt.h: In function `tasklet_enable': /usr/include/linux/interrupt.h:186: warning: implicit declaration of function `smp_mb__before_atomic_dec' /usr/include/linux/interrupt.h:187: warning: implicit declaration of function `atomic_dec' um.c: In function `init_module': um.c:78: warning: unused variable `dev' um.c:77: warning: unused variable `AdapterIndex' um.c:76: warning: unused variable `Retcode' um.c:75: warning: unused variable `DeviceNum' um.c:74: warning: unused variable `BusNum' um.c:73: warning: unused variable `LmStatus' um.c:72: warning: unused variable `pAdapter' um.c:71: warning: unused variable `pDevice' um.c:70: warning: unused variable `pUmDevice' um.c: In function `cleanup_module': um.c:233: warning: implicit declaration of function `unregister_netdev' um.c:235: dereferencing pointer to incomplete type um.c:242: warning: implicit declaration of function `kfree' um.c: In function `um_open': um.c:268: dereferencing pointer to incomplete type um.c:279: warning: implicit declaration of function `udelay' um.c:302: warning: implicit declaration of function `request_irq' um.c:302: `SA_SHIRQ' undeclared (first use in this function) um.c:303: dereferencing pointer to incomplete type um.c:329: union has no member named `usecount' um.c:259: warning: `pUmDevice' might be used uninitialized in this function um.c: In function `um_close': um.c:352: dereferencing pointer to incomplete type um.c:369: union has no member named `usecount' um.c:344: warning: `pUmDevice' might be used uninitialized in this function um.c: In function `um_xmit': um.c:391: dereferencing pointer to incomplete type um.c:385: warning: `pUmDevice' might be used uninitialized in this function um.c: In function `um_get_stats': um.c:435: dereferencing pointer to incomplete type um.c:431: warning: `pUmDevice' might be used uninitialized in this function um.c: In function `um_set_rx_mode': um.c:468: dereferencing pointer to incomplete type um.c:472: dereferencing pointer to incomplete type um.c:476: dereferencing pointer to incomplete type um.c:480: dereferencing pointer to incomplete type um.c:484: dereferencing pointer to incomplete type um.c:463: warning: `pUmDevice' might be used uninitialized in this function um.c: In function `UM_FreeSkbs': um.c:528: dereferencing pointer to incomplete type um.c:534: warning: implicit declaration of function `dev_kfree_skb_any' um.c: In function `UM_FreeResources': um.c:589: warning: implicit declaration of function `free_irq' um.c: In function `UM_GetResourceDesc': um.c:623: warning: implicit declaration of function `kmalloc' um.c:623: `GFP_KERNEL' undeclared (first use in this function) um.c: In function `um_isr': um.c:677: dereferencing pointer to incomplete type um.c:670: warning: `pUmDevice' might be used uninitialized in this function um.c: At top level: um.c:258: warning: `um_open' defined but not used um.c:384: warning: `um_xmit' defined but not used um.c:343: warning: `um_close' defined but not used um.c:430: warning: `um_get_stats' defined but not used um.c:462: warning: `um_set_rx_mode' defined but not used um.c:502: warning: `um_ioctl' defined but not used make: *** [um.o] Fehler 1 [root@tux smc]#
Am 11.07.2002 um 20:26 schrieb Georg Pötting:
cc -D__KERNEL__ -DMODULE -DLINUX -O -Wall -I/usr/include -c -o um.o um.c
Ich hatte damals im Makefile das Include-Dir auf /usr/src/linux geändert. Dort lag der konfigurierte und kompilierte Kernel. So ging es problemlos. MfG, Dennis -- Dennis Stosberg eMail: dennis@stosberg.net gpg key: http://stosberg.net/dennis.asc icq: 63537718
participants (2)
-
Dennis Stosberg
-
Georg Pötting