Tag auch, ich habe hier seit ein paar Tagen ein ASUS P4S8X Mainboard mit sis900 Lanchip on Board (mit neustem BIOS). Weder SuSE 7.2 (Professional) noch 8.0 oder 8.1 (beides FTP-Versionen) erkennen diese Netzwerkkarte. Der Kernel gibt nach dem erfolglosen Versuch das Modul zu laden (z.B. während der 8.1 Installation) folgende Fehlermeldung: sis900.c v.108.04 4/25/2002 eth0:Error EERPOM read 0 Das ist bitter, da ich meine Client-Installation über unser Heimnetz machen muß, was bisher ja auch immer gut funktioniert hat. Im Archiv der Liste habe ich zwar Beiträge aber keine Lösungen gefunden. Bei einigen anderen Listenteilnehmer scheint der Treiber zu funktionieren. Was ich erfolglos probiert habe: 1. Deaktivieren aller "unnötigen" Geräte und Schnittstellen im BIOS 2. Lokale Instalation von SuSE 7.2 (Die Karte wird von YaST richtig erkannt, das Modul kann aber eben nicht initialisiert werden.) Der Artikel in der SuSE- Hilfe traf auf mich nicht zu, der Eintrag in der modules.conf war korrekt, ein manuelles Laden des Treibers scheiterte (s.o.). 3. Google-Newsgroupsuche Helfen würde mir, ob andere Listenteilnehmer ähliche Erfahrungen (vorallem mit der 8.1) gemacht haben. Vielleicht läßt sich der Treiber ja wenigstens bei der 8.1 nachträglich einbinden. Ich würde eigentlich ungern eine zweite Netzwerkarte in den Rechner einbauen, weil D A S Netzwerkbetriebssystem auf diesem Planeten nicht in der Lage ist, meine sis900 einzubinden. Danke - Klaus Brekau P.S. Die Windows-Treiber funktionieren (nach dem Setup).
Hallo Klaus, On Saturday 02 November 2002 04:28, Klaus Brekau wrote:
ich habe hier seit ein paar Tagen ein ASUS P4S8X Mainboard mit sis900 Lanchip on Board (mit neustem BIOS). Weder SuSE 7.2 (Professional) noch 8.0 oder 8.1 (beides FTP-Versionen) erkennen diese Netzwerkkarte. Der Kernel gibt nach dem erfolglosen Versuch das Modul zu laden (z.B. während der 8.1 Installation) folgende Fehlermeldung:
sis900.c v.108.04 4/25/2002 eth0:Error EERPOM read 0
Die Meldung gibt das Modul bei der Initialisierung aus, wenn er die MAC-Adresse des SiS900 nicht aus dem EEPROM lesen kann.
Helfen würde mir, ob andere Listenteilnehmer ähliche Erfahrungen (vorallem mit der 8.1) gemacht haben. Vielleicht läßt sich der Treiber ja wenigstens bei der 8.1 nachträglich einbinden.
Da muss ich Dich enttäuschen, bei mir (ASUS TUSI-M) läuft das Modul ohne Probleme.
Ich würde eigentlich ungern eine zweite Netzwerkarte in den Rechner einbauen, weil D A S Netzwerkbetriebssystem auf diesem Planeten nicht in der Lage ist, meine sis900 einzubinden. : P.S. Die Windows-Treiber funktionieren (nach dem Setup).
Das ist doch schon mal ein Anfang. Funktioniert das Laden des Moduls nach einem Warmstart, nachdem Du Windows laufen hattest? Vielleicht hat sich das Board da etwas und muss vorher durch einen Trick (Windows-Treiber) initialisiert werden. Kannst Du mal lspci -n | grep "Class 0200" von Deinem Rechner posten? Ich tippe, da das P4S8X noch ziemlich neu ist und der Chipsatz SiS648 auch, darauf, dass da noch ein paar Anpassungen im Kernel nötig sind. Stefan -- Stefan Schmidt jsj-hb at t-online dot de
----- Original Message -----
From: "Stefan Schmidt"
Kannst Du mal lspci -n | grep "Class 0200" von Deinem Rechner posten?
Hallo Stefan, danke für deine Reaktion ... sobald ich die 8.1 auf meine Linuxplatte kopiert und installiert habe werde ich es posten. Gruss - klaus
Hallo, Nach dem ich wie unten beschrieben vorgegangen bin läufts. Auszug aus einem Newsgroup-Beitrag: ---8<----Schnipp----- I think there should be a bug in sis900.c driver file (with Windoze works fine). Driver couldn't read signature and other info stored in the EEPROM. My workaround was : 1) Download kernel sources 2) Edit path-of-your-source/drivers/net/sis900.c (ver 1.08.02) 3) Comment lines from 226 to 230 (there sould be this code portion : if (signature == 0xffff || signature == 0x0000) { printk (KERN_INFO "%s: Error EERPOM read %x\n", net_dev->name, signature); return 0; } 4) Rebuild and install your modules and if you want your kernel. 5) Remind that MAC Adress on your card will be FF:FF:FF:FF:FF:FF , you can change it with: # ifconfig eth0 hw ether "REAL MAC ADDRESS" --->8----Schnapp------ Ich habe nach dem Editieren der sis900.c, lediglich die Module aus den SuSE-Kernelquellen neu übersetzt und dann sis900.o in /lib/modules/2.4.19-4GB/kernel/drivers/net ersetzt. Entgegen den obrigen Angaben ist sogar die MAC-Adresse korrekt. Gruß - Klaus P.S. Vielleicht liest das ja jemand von SuSE mit ..... ?
Hallo Klaus, On Sunday 03 November 2002 12:42, Klaus Brekau wrote:
Nach dem ich wie unten beschrieben vorgegangen bin läufts.
Auszug aus einem Newsgroup-Beitrag:
---8<----Schnipp-----
I think there should be a bug in sis900.c driver file (with Windoze works fine).
Ob das ein Bug ist, wage ich _wirklich_ noch zu bezweifeln.
Driver couldn't read signature and other info stored in the EEPROM.
Ja, daher kommt die Fehlermeldung.
My workaround was :
[radikaler Workaround mit Auskommentieren des Lesens der MAC-Adresse gelöscht]
Ich habe nach dem Editieren der sis900.c, lediglich die Module aus den SuSE-Kernelquellen neu übersetzt und dann sis900.o in /lib/modules/2.4.19-4GB/kernel/drivers/net ersetzt.
Entgegen den obrigen Angaben ist sogar die MAC-Adresse korrekt.
Merkwürdig. Wo holt er die denn her, denn lesen tut er die nicht mehr...
Gruß - Klaus
P.S. Vielleicht liest das ja jemand von SuSE mit ..... ?
Das tut vielleicht jemand, nur werden die da nicht blind die Zeilen im Kernel auskommentieren. Interessanter wäre doch herauszufinden, warum die Initialisierung nicht klappt. Poste doch bitte mal lspci mit dem kompletten Kommando von gestern Mittag. Ich tippe schwer darauf, dass der Chip eine Sonderbehandlung, wie auch der SiS900 im SiS635er-Chipsatz braucht. Stefan -- Stefan Schmidt jsj-hb at t-online dot de
Hallo, Am Mon, 2002-11-04 um 07.31 schrieb Stefan Schmidt u.a.:
Poste doch bitte mal lspci mit dem kompletten Kommando von gestern Mittag.
Nun gut .. ;-) lspci -n | grep "Class 0200" --> 00:04.0 Class 0200: 1039:0900 (rev 91) <--
Entgegen den obrigen Angaben ist sogar die MAC-Adresse korrekt.
Merkwürdig. Wo holt er die denn her, denn lesen tut er die nicht mehr...
ifconfig eth0 --> Protokoll:Ethernet Hardware Adresse 00:E0:18:A3:1C:14 inet Adresse:192.168.0.31 Bcast:192.168.0.255 Maske:255.255.255.0 inet6 Adresse: fe80::2e0:18ff:fea3:1c14/10 Gültigkeitsbereich:Verbindung UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1 RX packets:58671 errors:0 dropped:0 overruns:0 frame:0 TX packets:64175 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:100 RX bytes:19930190 (19.0 Mb) TX bytes:5522138 (5.2 Mb) Interrupt:9 Basisadresse:0x9800 <-- Vielleicht ist die MAC-Adresse ja nicht im EERPOM sondern "fest eingebrannt"? Da sie weltweit einzigartig sein soll, wäre das ja auch sinnvoller. Die Revision 91 ist wohl auch neuer. In den Newsgroups war immer von einer Revision 8x die Rede.
P.S. Vielleicht liest das ja jemand von SuSE mit ..... ?
Das tut vielleicht jemand, nur werden die da nicht blind die Zeilen im Kernel auskommentieren
Nein natürlich nicht. Aber dieses Vorgeghen, als eine mögliche (vorläufige) Lösung in die SuSE-DB einzutragen wäre vielleicht nicht schlecht. Der sis900-Chip wird nicht gerade selten verbaut. Und ich habe wie gesagt den Chip erstmal mit drei "SuSE's" nicht zum Laufen gebracht. Eine Diskette mit diesem Modul kommt jedenfalls in den Safe ;-) Gruss - Klaus P.S. Das Modul konnte ich dann übrigens problemlos während der 2. Installation von Diskette nachladen. Der "normale" Treiber brachte trotz Warmstart die bekannte Fehlermeldung. Die FTP-Installation lief dann problemlos.
Hi Klaus, [sorry für lange Zeilen, sonst klappt der Patch nicht] On Monday 04 November 2002 15:40, Klaus Brekau wrote:
Am Mon, 2002-11-04 um 07.31 schrieb Stefan Schmidt u.a.:
Poste doch bitte mal lspci mit dem kompletten Kommando von gestern Mittag.
Nun gut .. ;-)
lspci -n | grep "Class 0200" -->
00:04.0 Class 0200: 1039:0900 (rev 91)
Dachte ich's mir doch. Rev 91 wird im SuSE-Kernel noch nicht berücksichtigt.
<--
Entgegen den obrigen Angaben ist sogar die MAC-Adresse korrekt.
Merkwürdig. Wo holt er die denn her, denn lesen tut er die nicht mehr...
Vielleicht ist die MAC-Adresse ja nicht im EERPOM sondern "fest eingebrannt"? Da sie weltweit einzigartig sein soll, wäre das ja auch sinnvoller. Die Revision 91 ist wohl auch neuer. In den Newsgroups war immer von einer Revision 8x die Rede.
Genau. Im Patch ist auch irgendwo erwähnt, das das im EEPROM nicht mehr stattfindet.
P.S. Vielleicht liest das ja jemand von SuSE mit ..... ?
Das tut vielleicht jemand, nur werden die da nicht blind die Zeilen im Kernel auskommentieren
Nein natürlich nicht. Aber dieses Vorgeghen, als eine mögliche (vorläufige) Lösung in die SuSE-DB einzutragen wäre vielleicht nicht schlecht. Der sis900-Chip wird nicht gerade selten verbaut. Und ich habe wie gesagt den Chip erstmal mit drei "SuSE's" nicht zum Laufen gebracht. Eine Diskette mit diesem Modul kommt jedenfalls in den Safe ;-)
Hast Du schon mal einen aktuellen Hubert-Kernel probiert?
Bei kernel.org habe ich den Patch gefunden, der macht das ganze rund:
====
diff -Nru a/drivers/net/sis900.c b/drivers/net/sis900.c
--- a/drivers/net/sis900.c Tue Oct 1 14:18:34 2002
+++ b/drivers/net/sis900.c Tue Oct 1 14:18:34 2002
@@ -1,6 +1,6 @@
/* sis900.c: A SiS 900/7016 PCI Fast Ethernet driver for Linux.
Copyright 1999 Silicon Integrated System Corporation
- Revision: 1.08.04 Apr. 25 2002
+ Revision: 1.08.06 Sep. 24 2002
Modified from the driver which is originally written by Donald Becker.
@@ -18,6 +18,8 @@
preliminary Rev. 1.0 Jan. 18, 1998
http://www.sis.com.tw/support/databook.htm
+ Rev 1.08.06 Sep. 24 2002 Mufasa Yang bug fix for Tx timeout & add SiS963 support
+ Rev 1.08.05 Jun. 6 2002 Mufasa Yang bug fix for read_eeprom & Tx descriptor over-boundary
Rev 1.08.04 Apr. 25 2002 Mufasa Yang
Hallo, On Mon, 04 Nov 2002, Stefan Schmidt wrote:
On Sunday 03 November 2002 12:42, Klaus Brekau wrote:
Driver couldn't read signature and other info stored in the EEPROM.
Ja, daher kommt die Fehlermeldung.
Und die ist wohl auch korrekt.
My workaround was :
[radikaler Workaround mit Auskommentieren des Lesens der MAC-Adresse gelöscht]
Nein, auskommentiert wird nur die Ueberpruefung, ob das EEPROM eine "gescheite" Signatur hat -- und das ist offenbar nicht der Fall. Allerdings wuerde ich vermulich nur die Zeile 'return 0;' im fraglichen if-Block auskommentieren / aus-ifdef-en, denn die EEPROM Sig. wird dadurch nicht korrekter.
Ich habe nach dem Editieren der sis900.c, lediglich die Module aus den SuSE-Kernelquellen neu übersetzt und dann sis900.o in /lib/modules/2.4.19-4GB/kernel/drivers/net ersetzt.
Entgegen den obrigen Angaben ist sogar die MAC-Adresse korrekt.
Merkwürdig. Wo holt er die denn her, denn lesen tut er die nicht mehr...
Doch, tut er, wie immer, (genau) lesen bildet: ==== drivers/net/sis900.c:218 (Kernel 2.4.16) ==== /* check to see if we have sane EEPROM */ signature = (u16) read_eeprom(ioaddr, EEPROMSignature); if (signature == 0xffff || signature == 0x0000) { printk (KERN_INFO "%s: Error EERPOM read %x\n", net_dev->name, signature); return 0; } /* get MAC address from EEPROM */ for (i = 0; i < 3; i++) ((u16 *)(net_dev->dev_addr))[i] = read_eeprom(ioaddr, i+EEPROMMACAddr); ==== Wie man sieht, wenn man ein wenig C _lesen_ kann, wird die Mac-Adresse ausgelesen, wenn das 'return' nicht "zuschlaegt". -dnh -- SuSE verscheuert eine Bastardisierung eines zusammenkopierten Softwarehaufens, wo zufällig auch der Linux Kernel drin vorkommt. -- fefe in dcsm
Hi, On Monday 04 November 2002 21:04, David Haller wrote:
On Mon, 04 Nov 2002, Stefan Schmidt wrote:
On Sunday 03 November 2002 12:42, Klaus Brekau wrote:
Driver couldn't read signature and other info stored in the EEPROM.
Ja, daher kommt die Fehlermeldung.
Und die ist wohl auch korrekt.
My workaround was :
[radikaler Workaround mit Auskommentieren des Lesens der MAC-Adresse gelöscht]
Nein, auskommentiert wird nur die Ueberpruefung, ob das EEPROM eine "gescheite" Signatur hat -- und das ist offenbar nicht der Fall. Allerdings wuerde ich vermulich nur die Zeile 'return 0;' im fraglichen if-Block auskommentieren / aus-ifdef-en, denn die EEPROM Sig. wird dadurch nicht korrekter.
Ok, da habe ich nicht so genau reingeschaut.
Ich habe nach dem Editieren der sis900.c, lediglich die Module aus den SuSE-Kernelquellen neu übersetzt und dann sis900.o in /lib/modules/2.4.19-4GB/kernel/drivers/net ersetzt.
Entgegen den obrigen Angaben ist sogar die MAC-Adresse korrekt.
Merkwürdig. Wo holt er die denn her, denn lesen tut er die nicht mehr...
Doch, tut er, wie immer, (genau) lesen bildet:
[Quelltext, in dem die MAC-Adresse gelesen wird, gelöscht]
Wie man sieht, wenn man ein wenig C _lesen_ kann, wird die Mac-Adresse ausgelesen, wenn das 'return' nicht "zuschlaegt".
Jaja, hack nur auf mir rum ;-) Ich habe halt früh morgens nicht so viel Zeit... MIr war eher wichtig rauszufinden, warum das Modul nicht out-of-the-box läuft, und das liegt knallhart an der Revision des Chips und der (noch) nicht erfolgten Anpassung des Quelltextes. Und wenn ich mir den Patch genau ansehe, passiert da doch noch ein bischen mehr, denn === The EEPROM map of SiS962 or SiS963 is different to SiS900. ===(aus dem Patch)
-dnh
Stefan -- Stefan Schmidt jsj-hb at t-online dot de
jsj-hb@t-online.de (Stefan Schmidt) writes: Hallo, [...]
MIr war eher wichtig rauszufinden, warum das Modul nicht out-of-the-box läuft, und das liegt knallhart an der Revision des Chips und der (noch) nicht erfolgten Anpassung des Quelltextes. [...]
das ist allerdings nicht ganz richtig. Auch wenn ich keine SuSE mehr fahre, kann ich auf meinm Gericom mit dem SIS9000 und der Rev 91 kann ich von SuSE CD 8.0/8.1 booten und das Moduln problemlos laden. Pozdrawiam/Gruß/Regards Robert Rakowicz -- Robert Rakowicz E-Mail: b9001@rjap.de URL: www.rjap.de
participants (4)
-
David Haller
-
jsj-hb@t-online.de
-
Klaus Brekau
-
Robert Rakowicz