Hallo,
habe mir, weil USB-zu-RS232-Adapter ja immer so ihre Problemchen haben, jetzt eine 2-Port PCMCIA-Karte ersteigert. Nahm an das würde einfach funktionieren, aber denkste. Es handelt sich um eine 32-Bit-Karte "CBS2000X" von Sunix; über Google habe ich schon herausgefunden, dass der Chip wahrscheinlich von Oxford Semiconductors ist und dann einen 16C950-Uart enthalte, jedoch nichts weiter womit ich was anfangen könnte (nur ein paar patches die allesamt das Zusatzfeature, dass die Teile sehr genau die Geschwindigkeit einstellen können, utilisieren). Wenn ich die Karte verwenden will passiert folgendes (der Rechner, auf dem ich es probiert habe, hat von haus aus einen RS232 auf /dev/ttyS0 und einen Infrarot auf /dev/ttyS3):
Solange ich im Kernel under Device Drivers -> Character Devices -> Serial drivers die Optionen CONFIG_SERIAL_8250_MANY_PORTS (Support more than 4 legacy serial ports) CONFIG_SERIAL_8250_SHARE_IRQ (Support for sharing serial interrupts) CONFIG_SERIAL_8250_MULTIPORT (Support special multiport boards) CONFIG_SERIAL_8250_RSA (Support RSA serial ports) nicht ausgewählt hatte, wurde das Ding als ttyS4 erkannt, nach dem Anwählen und recompile als ttyS17. In allen fällen jedoch wird nur _ein_ Port belegt, obwohl es sich um eine Zweiport-karte handelt. Lesen und schreiben auf dem Port schlägt mit einem "/dev/ttyS17: Eingabe-/Ausgabefehler" fehl. Nach dem ich manuell einen 16550 oder 8250-UART via setserial gesetzt habe (mit 16C950 kann setserial nichts anfangen) kommen zumindest die Fehler nicht mehr, aber trotzdem keine Bits über die Leitung.
Weiß jemand Rat in welche Richtung ich suchen könnte?
Hier diverse Infos:
# cardctl ident 0 product info: "PC CARD", "GENERIC", "", "" manfid: 0x0279, 0x950b function: 2 (serial)
# cardctl info 0 PRODID_1="PC CARD" PRODID_2="GENERIC" PRODID_3="" PRODID_4="" MANFID=0279,950b FUNCID=2
# cardctl config 0 Vcc 3.3V Vpp1 0.0V Vpp2 0.0V interface type is "memory and I/O" irq 3 [exclusive] [level] speaker output is enabled function 0: config base 0x00f8 option 0x41 status 0x08 pin 0x00 copy 0x00 io 0x0100-0x010f [8bit]
# cat /var/run/stab Socket 0: Serial or Modem 0 serial serial_cs 0 ttyS17 4 81
# setserial -G /dev/ttyS17 /dev/ttyS17: pcmcia controlled device (/var/run/stab) /dev/ttyS17 uart unknown port 0x0108 irq 3 baud_base 115200 spd_normal skip_test pcmcia
# tail /var/log/syslog [...] Apr 9 20:05:55 localhost cardmgr[2097]: socket 0: Serial or Modem Apr 9 20:05:56 localhost cardmgr[2097]: executing: './serial start ttyS17 2>&1' Apr 9 20:05:56 localhost cardmgr[2097]: + Default modem setup
# cat /dev/ttyS17 cat: /dev/ttyS17: Eingabe-/Ausgabefehler
# cat > /dev/ttyS17 df^D cat: Schreibfehler: Eingabe-/Ausgabefehler
Und nach cardctl eject 0:
# tail /var/log/syslog [...] Apr 9 20:05:50 localhost cardmgr[2097]: executing: './serial stop ttyS17 2>&1' Apr 9 20:05:50 localhost cardmgr[2097]: + /dev/ttyS17: Apr 9 20:05:50 localhost cardmgr[2097]: + /dev/ttyS17: Apr 9 20:05:50 localhost cardmgr[2097]: + /dev/modem:
Ciao, Felix.
On Sun, Apr 09, 2006 at 09:14:58PM +0200, Felix Becker wrote:
Hallo,
habe mir, weil USB-zu-RS232-Adapter ja immer so ihre Problemchen haben, jetzt eine 2-Port PCMCIA-Karte ersteigert. Nahm an das würde einfach funktionieren, aber denkste. Es handelt sich um eine 32-Bit-Karte "CBS2000X" von Sunix; über Google habe ich schon herausgefunden, dass
Also CardBus, nicht PCMCIA.
Weiß jemand Rat in welche Richtung ich suchen könnte?
Hier diverse Infos:
# cardctl ident 0 product info: "PC CARD", "GENERIC", "", "" manfid: 0x0279, 0x950b function: 2 (serial)
das sieht aber wieder nach PCMCIA aus. Oder nach sehr altem kernel. Welche Kernel-Version verwendest du? Userspace oder Kernel-PCMCIA? (sieht nach userspace aus)
Probiere es mal mit einem aktuellen kernel, laß den cardmgr ganz weg. Lade yenta_socket, danach sollte die Karte in lspci auftauchen. Dann das zur pci-id passende Modul laden.
Ansonsten aktuelle pcmciautils (cardctl heißt jetzt pccardctl... etc) und udev installieren, damit haben bei mir in letzter Zeit alle Karten, die irgendwie unterstützt waren, auch funktioniert.
Hallo, Am Dienstag, den 11.04.2006, 10:34 +0200 schrieb Stefan Seyfried:
On Sun, Apr 09, 2006 at 09:14:58PM +0200, Felix Becker wrote:
habe mir, weil USB-zu-RS232-Adapter ja immer so ihre Problemchen haben, jetzt eine 2-Port PCMCIA-Karte ersteigert. Nahm an das würde einfach funktionieren, aber denkste. Es handelt sich um eine 32-Bit-Karte "CBS2000X" von Sunix; über Google habe ich schon herausgefunden, dass
Also CardBus, nicht PCMCIA.
k.A. was nun was ist. Auf jeden fall eine der neueren Typen mit Goldenem Streifen mit Noppen oberhalb der Kontakte und laut Verpackung 32 Bit.
Hier diverse Infos:
# cardctl ident 0 product info: "PC CARD", "GENERIC", "", "" manfid: 0x0279, 0x950b function: 2 (serial)
das sieht aber wieder nach PCMCIA aus. Oder nach sehr altem kernel. Welche Kernel-Version verwendest du?
2.6.12.3
Userspace oder Kernel-PCMCIA? (sieht nach userspace aus)
cardmgr und den kram, also pcmcia-cs. Yenta-Treiber im Kernel.
Probiere es mal mit einem aktuellen kernel, laß den cardmgr ganz weg. Lade yenta_socket, danach sollte die Karte in lspci auftauchen. Dann das zur pci-id passende Modul laden.
Es gibt spezielle Gründe momentan keine neuere Kernelversion zu nehmen da ein bestimmter Treiber (auch open source) für ein anderes Stück Hardware da ein paar Probleme mit hat.
Ansonsten aktuelle pcmciautils (cardctl heißt jetzt pccardctl... etc) und udev installieren, damit haben bei mir in letzter Zeit alle Karten, die irgendwie unterstützt waren, auch funktioniert.
Naja wie gesagt momentan bleibt's erstmal bei 2.6.12. Ansonsten hat PCMCIA bei mir auch immer gut funktioniert. Ich vermute das Problem liegt daran, dass die Karte "komisch" ist.
lug-dd@mailman.schlittermann.de