Content
--------------------------------------------------------------
Anleitung zum einbinden einer internen PCI-Karte
mit 2 seriellen Schnittstellen in den Eisfair:
--------------------------------------------------------------
Start:
Eisfair mit 2 seriellen Schnittstellen.
Ziel:
Einbau einer PCI-Karte mit 2 seriellen Schnittstellen
sodass danach insgesamt 4 serielle Schnittstellen
zur Verfügung stehen.
Vorgehen:
A) System überprüfen
Eingabe:
> ls -al /dev/ttyS*
Ausgabe:
> crw-rw---- 1 root root 4, 64 Feb 4 14:31 /dev/ttyS0
> crw------- 1 uucp root 4, 65 Feb 4 16:10 /dev/ttyS1
> crw-rw---- 1 root root 4, 66 Feb 4 14:31 /dev/ttyS2
> crw-rw---- 1 root root 4, 67 Feb 4 14:32 /dev/ttyS3
Anmerkung:
ttyS2 und ttyS3 sind vom System reserviert
(und nicht real vorhanden)
B) Karten einbauen
- Sever runterfahren
- PCI-Karte mit den beiden seriellen Ports
in den Eisfair einbauen.
- Server hochfahren
C) Kartendaten ermitteln
Eingabe:
> lspci -v
Ausgabe:
Eine Liste aller installierten PCI-Devices.
U.a ein Eintrag der Art:
> 02:0a.0 Serial controller: NetMos Technology PCI 9835 Multi-I/O Controller (rev 01) (prog-if 02 [16550])
> Subsystem: LSI Logic / Symbios Logic 2S (16C550 UART)
> Flags: medium devsel, IRQ 9
> I/O ports at a000 [size=8]
> I/O ports at 9800 [size=8]
> I/O ports at 9400 [size=8]
> I/O ports at 9000 [size=8]
> I/O ports at 8800 [size=8]
> I/O ports at 8400 [size=16]
Anmerkung:
Dies ist unsere PCI-Karte
mit den beiden seriellen Ports.
Man sieht es wird ein UART 16550 (16550A) verwendet.
Ebenso die I/O Ports
(die ersten beiden sind die wichtigen):
0xa000 und 0x9800
D) Serielle Devices/Schnittstellen im System anlegen.
Eingabe:
> mknod -m 660 /dev/ttyS4 c 4 68
> mknod -m 660 /dev/ttyS5 c 4 69
> ls -al /dev/ttyS*
Ausgabe:
> crw-rw---- 1 root root 4, 64 Feb 4 14:31 /dev/ttyS0
> crw------- 1 uucp root 4, 65 Feb 4 16:10 /dev/ttyS1
> crw-rw---- 1 root root 4, 66 Feb 4 14:31 /dev/ttyS2
> crw-rw---- 1 root root 4, 67 Feb 4 14:32 /dev/ttyS3
> crw------- 1 uucp root 4, 68 Feb 4 15:50 /dev/ttyS4
> crw-rw---- 1 root root 4, 69 Feb 4 14:32 /dev/ttyS5
Anmerkung:
ttyS4 und ttyS5 entsprechen jetzt
den 2 neu hinzugekommen Schnittstellen.
68 und 69 sind die fortlaufenden Nummern aus A)
(64,65,66,67)
E) Parameter der Schnittstellen setzen.
Eingabe: > setserial /dev/ttyS4 port 0xa000 UART 16550A irq 9 Baud_base 115200
> setserial /dev/ttyS5 port 0x9800 UART 16550A irq 9 Baud_base 115200
Anmerkung:
0xa000 und 0x9800 sind die
unter C) ermittelten Adressen.
F) Parameter bei jedem Systemstart setzen.
Da die Parameter unter e) bei jedem Systemstart
gesetzt werden muessen, werden diese beiden Zeilen
in die Datei /etc/init.d/local eingetragen.
> case $1
> in
> start)
> setserial /dev/ttyS4 port 0xa000 UART 16550A irq 9 Baud_base 115200
> setserial /dev/ttyS5 port 0x9800 UART 16550A irq 9 Baud_base 115200
G) Ueberpruefen der Schnittstellen.
Eingabe:
> more /proc/tty/driver/serial
Ausgabe:
> serinfo:1.0 driver:5.05c revision:2001-07-08
> 0: uart:16550A port:3F8 irq:4 baud:19200 tx:12 rx:20 RTS|DTR
> 1: uart:16550A port:2F8 irq:3 baud:19200 tx:115 rx:227 RTS|CTS|DTR|DSR
> 4: uart:16550A port:A000 irq:9 baud:9600 tx:867 rx:867
> 5: uart:16550A port:9800 irq:9 baud:9600 tx:4 rx:0
Grüsse Joachim Graf