MCA Linux

Micro Channel, kurz MCA genannt, ist eine von IBM entwickelte Schnittstelle, die zur Zeit des ISA-Buses relativ schnell war und hauptsächlich in Industrierechner Verwendung fand. IBM hat diese Schnittstelle aber auch in einigen Laptops implementiert.

Diese Rechner haben oft ESDI, SCSI oder beide Controllerarten an Bord.

Mit "normalen" Betriebssystemen wird man wenig Probleme mit diesen Rechnern bekommen, aber mit Linux ist das nicht so einfach !  Linux ist ja ein "freies" Betriebssystem, das von Linus Torvalds auf Basis einer Unix ähnlichen Struktur für x86-Maschinen entwickelt wurde. Mittlerweile gibt es aber auch Distributionen für Alpha, SPARC, PowerPC und wie sie alle heißen. Da auch MCA-Rechner nicht gerade für den normalen Endanwender gedacht waren, steckte hier die Linux-Unterstützung noch in den Startlöchern.

Die erste Anlaufstelle ist die MCA Linux Seite von Chris Beaureguard. Hier erhält man Kernel-Patches, Boot-Images usw. für alle möglichen MCA Modelle. Mittlerweile bieten aber einige Distributionen wie Debian oder Suse die notwendige MCA und ESDI Unterstützung an.
 

Den ersten Kontakt mit MCA hatte ich mit einem alten IBM 76i, der mit einer SCSI-Karte von Future Domain ausgestattet war. Zu dem Zeitpunkt hatte ich kaum was von Micro Channel gehört. Nach anfänglichen Versuchen mit Debian 1.3.1 kam ich übers booten nicht hinweg und nichts lief. Also ab ins Internet und suchen, suchen ... Da bin ich auf Peter Wendt's Seiten gestossen und von da auf die MCA Linux Seite.

Die Installation verlief dann mit den speziellen boot-Images von Debian 1.3.1 und der Übergabe des Parameters fdomain=0x140,5,ibm (IRQ und IO hängt von der jew. Einstellung des SCSI-Controllers ab) problemlos.
 

Im April 2000 habe ich Linux auf einem ThinkPad 700  installiert; hier gibt es zum Teil Probleme mit dem Floppylaufwerk und besagten ESDI-device. Ausserdem hatte ich nur 4MB RAM, was für einer normalen Installation nicht gerade vorteilhaft ist.

Hauptproblem ist und bleibt die unschöne Zusammenstellung MCA und ESDI ! Obwohl im Kernel mittlerweile MCA und ESDI unterstützt werden, so fehlt diese dennoch in den Installationsdisketten. Ja sogar ein fdisk -l kann mit ESDI nichts anfangen; auch lilo arbeitet hier falsch.

Ich verwende mal wieder die Debian 1.3.1, da diese Distribution noch auf der schlanken libc5 basiert. Aber die mitgelieferten Boot-/Rescuedisketten funktionieren nicht. Auf der MCA Linux page findet man einige wenige Anweisungen wie man die Debian-Installation doch zum laufen bringt, aber bei mir war nach dem ersten Neustart erstmal Schluß. Der superblock war nicht lesbar! Normalerweise kein Beinbruch (efsck -b 8193 /dev/ed*), aber die Debian-Installationsskripte waren ja noch nicht durchlaufen. Ohne "neuen Root-Passwort" läuft da gar nichts, und das System war read-only ... :(

Und mit 4MB RAM laufen die meisten Rettungsdisketten nicht.

Abhilfe schafften die versteckten  Installationsdisketten für Debian 1.2 auf den MCA Linux-Server, die aber auch mit Debian 1.3.1 funktionieren (aber nicht mit neueren Versionen ab 2.x.x). Dort befinden sich auch Patches für fdisk und lilo.

Man sollte beim Start die Hilfetexte unter F1 bis F10 gründlich lesen; dort stehen mehrere appends für den boot-Prompt!

Die lowmem-Installation startet sofort mit dem bekannten Menue und  /dev/eda wird erkannt :)) . Wenn dann alles losgeht, sollte man den Unterpunkt "X - Installation with MCA and ESDI" nicht vergessen. Die Konfiguration der Module läuft zwar nicht, da der Script auf der Diskette fehlt, aber das ist nicht weiter schlimm.

Beim ersten Neustart sollte man die Kernelmeldungen beachten, da kommt irgendwann  /dev/edb vor. Sollte man nur eine Festplatte haben, dann muß der Eintrag in einer zweiten Shell mit  rm /dev/edb* gelöscht werden. Scheinbar ist hier der Patch nicht ganz sauber...Danach habe ich sowieso den Kernel 2.2.1 für meine Bedürfnisse neu kompiliert und installiert und läuft.

Mittlerweile sollen die Probleme (Bug: #62623) der Installationsdisketten mit ESDI und fdisk in der Debian-"potato" behoben worden sein; d.h. man könnte auch die aktuelle glibc verwenden.

Mit RAM > 4MB kann man X-windows installieren; hierzu gibt es einige mini-X oder das alte MGR. Letzteres habe ich leider noch nicht zum Laufen gebracht : (

Auch hier ist der TP 700 etwas eigenwillig: die LCD Anzeige wird "zweifach" (dualscan) aufgebaut und aus welchen Gründen auch immer hat xf86config  Probleme eine vernünftige Auflösung zu finden. Es geht damit los, daß i.a. Chips der Sorte WD90C2x eingesetzt werden, dann wird der Video-Speicher nicht richtig erkannt und danach erscheint das Bild doppelt.

Um den Video-Speicher explizit freizugeben gibt es tp_dualscan von M. Steiner. Bei meinem TP arbeitet ein WD90C26, der in der XF86Config als WD90C30 mit einer Auflösung von 640x480 bei 100Hz arbeitet. Kleiner Schönheitsfehler ist das doppete Bild bei Rückkehr auf die Konsole.

Aber man kann damit arbeiten ...
 
 
 

MCA Linux