# [Solved] ttyS0 verschwunden

## s.hase

Seit ca. einem Monat ist bei bei meinem Gentoo /dev/ttyS0 verschwunden (brauche ich nur um unter VMWare + Windoze meine Telefonanlage zu verwalten). Das entsprechende Modul ist im Kernel und wird auch erfolgreich geladen:

```

sulaco dev # dmesg | grep 8250

Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled

serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

sulaco dev # modinfo 8250

filename:       /lib/modules/2.6.23-gentoo-r6/kernel/drivers/serial/8250.ko

alias:          char-major-4-*

description:    Generic 8250/16x50 serial driver $Revision: 1.90 $

license:        GPL

depends:        serial_core

vermagic:       2.6.23-gentoo-r6 preempt mod_unload

parm:           share_irqs:Share IRQs with other non-8250/16x50 devices (unsafe) (uint)

parm:           nr_uarts:Maximum number of UARTs supported. (1-4) (uint)

```

Das entsprechende Device fehlt aber unter /dev:

```

sulaco dev # ls -ltr ttyS*

crw-rw---- 1 root uucp 4, 65 21. Jan 16:05 ttyS1

crw-rw---- 1 root uucp 4, 67 21. Jan 16:05 ttyS3

crw-rw---- 1 root uucp 4, 66 21. Jan 16:05 ttyS2

```

An irgendwelchen udev Rules habe ich nicht rumgespielt, die sind so wie sie installiert werden. Über die Forensuche habe ich das hier gefunden. Demnach sollte der Eintrag "CONFIG_HW_CONSOLE=y" wohl der Übeltäter sein. Dieser Punkt lässt sich bei mir aber nicht deaktivieren, über menuconfig taucht der gar nicht auf (eventuell weil ich amd64 nutze?) und wenn ich den auskommentiere ist er nach dem compilieren wieder drin. Hier mal alles Konfigurationen im Kernel die irgendwas mit VT oder CONSOLE zu tun haben:

```

sulaco linux # grep VT .config && grep CONSOLE .config

CONFIG_VT=y

CONFIG_VT_CONSOLE=y

# CONFIG_VT_HW_CONSOLE_BINDING is not set

# CONFIG_SENSORS_VT1211 is not set

# CONFIG_SENSORS_VT8231 is not set

# CONFIG_FB_VT8623 is not set

# CONFIG_NETCONSOLE is not set

CONFIG_VT_CONSOLE=y

CONFIG_HW_CONSOLE=y

# CONFIG_VT_HW_CONSOLE_BINDING is not set

CONFIG_VGA_CONSOLE=y

CONFIG_DUMMY_CONSOLE=y

CONFIG_FRAMEBUFFER_CONSOLE=y

# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set

# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set

```

Tja, wäre schön wenn da mal jemand einen Tipp für mich hätte. Z.Z. benutze ich die gentoo-sources-2.6.23-r6, das Problem ist aber auch mit den älteren Version aufgetreten. Ich kann leider nicht genau sagen mit welcher Version es genau aufgetreten ist, ich weiß nur es lief schon mal mit irgendeiner gentoo-sources-2.6.23 Version. Beim Updaten nehme ich ich immer die alte .config. Meines Wissens nach habe ich daran nichts geändert, _eigentlich_ dürfte es daran nicht liegen. Eventuell habe ich doch mal was geändert, wenn kann ich jedenfalls nicht mehr daran erinnern. Ich bin auch nochmal alles in der .config durchgegangen, mir ist dabei aber nichts weiter aufgefallen.

Also wenn jemand eine Idee hat, schon mal ein großes Danke im Voraus!

Gruß

SebastianLast edited by s.hase on Mon Jan 28, 2008 3:36 pm; edited 1 time in total

----------

## firefly

hmm also ich habe die selben Einstellungen und habe trotzdem ein /dev/ttyS0. Kann es eventuell sein, das entweder der COM-Port im bios ausgeschaltet wurde(wenn möglich) oder es könnte auch sein das der COM-port, wiso auch immer, kaputt gegangen ist.

----------

## s.hase

Also deaktiviert ist er nicht, dann lädt hal das Modul gar nicht bzw. wenn ich es von Hand lade kommt eine Meldung das die Hardware nicht vorhanden ist. Ich denke mal wenn der Port defekt wäre würde das selbe passieren. 100%-tig ausschließen das der Port defekt ist kann ich natürlich nicht. Habe sonst kein OS installiert um den zu testen. Hm, da fällt mir gerade ein ich könnte mal ne Live-CD testen. Auf die Idee bin ich natürlich noch gar nicht gekommen   :Embarassed:  Werde ich mal so schnell es geht nachholen!

----------

## s.hase

Das mit der Live-CD habe ich mal nachgeholt, dort wird /dev/ttyS0 korrekt erstellt. Getestet habe ich das mit der SystemRescueCd da die CD auf Gentoo basiert. Einzige Unterschied auf der CD den ich erkennen konnte war, dass das IRQ sharing aktiviert war. Habe das jetzt auch mal auf meinem System aktiviert, das ändert aber logischerweise eigentlich nichts an dem Problem.

----------

## s.hase

Als "Workaround" habe ich das Device-Node erstmal per Hand angelegt:

```

mknod -m 660 /dev/ttyS0 c 4 64

chown root:uucp /dev/ttyS0

```

Funktioniert so auch wunderbar, also der Port ist definitiv i.O. Nur so richtig befriedigend ist das nicht, schließlich sollte udev das ja wohl von alleine machen. Installiert ist sys-fs/udev-115-r1 und der Eintrag für die Seriellen Ports sieht auch i.O. aus:

```

sulaco rules.d # grep ttyS *

50-udev.rules:KERNEL=="ttyS[0-9]*",     NAME="%k", SYMLINK="tts/%n", GROUP="uucp", MODE="0660"

```

Ach ja, der Symlink unter /dev/tts wird komischerweise angelegt. Aber der geht dann natürlich ins Leere.

----------

## s.hase

So, Problem ist gelöst. Verursacher war udev und zwar die letzte auf amd64 stabile Version 115-r1. Ich habe mal udev-116-r1 installiert und dort wird /dev/ttyS0 korrekt angelegt.

----------

