[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Debian] LBA/Bios/LPT [was: hdparm]



> Hallo Andreas,
> habe jetzt eine Platte formatiert und die Parameter per Lilo übergeben:
> append="pci_autoirq hdd=1232/255/63"
> 
> Gab nur ne Fehlermeldung: BAD OPTION.

Tausche mal den "/" gegen ein ",", dann sollte es funzen. Zumindest der
IDE-Treiber vom Kernel 2.2.x möchte seine Werte auf diese Art haben,
den 2.4.x habe ich noch nicht getestet.
Bei dem einen Rechner hier sieht die lilo-append-Zeile übrigens so aus:
 append="parport=0x378,7 hdc=1650,255,63"
da das Bios der Kiste zwar auch LBA meldet, das am zweiten IDE-Kanal aber
nicht funktioniert. Wenn ich die Platte z.B. an den ersten Kanal hänge,
funktioniert das komischerweise.
LPT:
Wirf mal einen Blick in die /usr/src/linux/drivers/char/lp.c (Kernel
2.2.18, weiß nicht ob das beim 2.4.x auch noch so ist...), da steht
ziemlich am Anfang ein Abschnitt "LP OPTIMIZATIONS" und da steht die
Sache mit dem tunelp-Aufruf. Den Aufruf selbst habe ich in meine
/etc/init.d/localconfig geschmissen, welche von /etc/rc.S aus mit einem
Link (S19localconfig) aufgerufen wird, also unabhängig vom Runlevel
immer ausgeführt wird...

> Dann ist mir noch aufgefallen:
> Der CHS-Wert(Kernel) von hdb stimmt mit den LBA-Werten des BIOS überein.
> Der CHS-Wert(Kernel) von hdd stimmt mit den Auto-Werten des BIOS überein.
> Für hda und hdc gab es keine Übereinstimmungen.
Keine Ahnung, das kann Dir wohl nur entweder der NMC-Bios-Programmierer
oder der Progger des Linux-IDE-Treiber erklären, wie schon geschrieben,
bei der einen Kiste hier laufen die Platten nur am ersten Kanal mit
LBA-Übersetzung, für den zweiten brauche ich den Kernel-Parameter, obwohl
das Bios immer "LBA" meldet...

> Was passiert eigentlich, wenn ich
> 1. Mode im BIOS auf AUTO setze?
Dann werden die Platten bei jedem Rechnerstart neu erkannt (kostet nur
Zeit...) - achso, Mode, tja, wahrscheinlich abhängig vom Bios, meines
hier macht dann automatisch LBA draus, wenn die physikalische Zylinder-
anzahl der Platte >1024 ist...

> 2. Im Mode AUTO die CHS-Parameter im BIOS denen des Kernels anpasse?
Nee, lieber nicht. Also entweder LBA oder CHS im Bios (vorzugsweise LBA).
Das neue "80MB-Platten-Bios" sollte die Teile doch richtig erkennen...
Genau genommen ist das so: Die Platte hat echte physikalische Werte,
nämlich C (Zylinder), H (Köpfe), S (Sektoren). Weil die Zylinderanzahl
aber früher nicht größer als 1024 sein durfte, hat man sich LBA ("Logical
Block Adressing" oder so ähnlich) als "Übersetzung" der echten CHS-Werte
einfallen lassen, damit die gemeldete Zylinderanzahl nicht größer als 1024
wird (504 MB-Grenze bei "echten" CHS-Werten). Dann kamen aber noch größere
Platten (> 8 GB) und dann war man wieder bei dem Zylinder-Dilemma.
Inzwischen spielt wahrscheinlich Zylinderanzahl keine Rolle mehr, zumindest
bis zur nächsten Plattengeneration :-)
Die Platte in dem o.g. Rechner ist z.B. eine 13 GB-Platte. Die echten
(physikalischen) Werte sind: C/H/S 26310/16/63. Mit LBA-Übersetzung
wäre das dann C/H/S 1650/255/63. Praktisch versucht also das Bios das
Betriebssystem zu verscheissern und täuscht eine größere Kopfanzahl vor,
damit die Anzahl der Zylinder kleiner wird. Doch wie schon gesagt, seitdem
die Platten größer als 8 GB sind, hilft auch (das alte) LBA nicht mehr, die
Zylinderanzahl kleiner als 1024 zu halten. 
Dem Linux-IDE-Treiber ist es inzwischen wohl irgendwie egal, wie die
Plattengeometrie aussieht, nur der LILO hatte Probleme, wenn der Kernel
nicht innerhalb der ersten 1024 Zylinder gelegen hat. Doch das hat sich
inzwischen auch geklärt, ein "lba32" in der lilo.conf schafft Abhilfe.

Gruesse,
Andreas

-- 
To err is human; effective mayhem requires the root password :-)
--

Sent through GMX FreeMail - http://www.gmx.net

--
-----------------------------------------------------------
Um sich aus der Liste auszutragen schicken Sie bitte eine
E-Mail an debian-user-de-request@lehmanns.de die im Subject
"unsubscribe <deine_email_adresse>" enthaelt.
Bei Problemen bitte eine Mail an: Jan.Otto@Lehmanns.de
-----------------------------------------------------------

674 eingetragene Mitglieder in dieser Liste.


Reply to: