• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

BIOS für Acer: USB-Boot, 48-Bit-LBA, SBS getauscht mit CMB

na-cx

Hacker
WARNUNG !!!
DIE HIER VORGESTELLTEN MODIFIZIERUNGEN AM BIOS SIND INNOFFIZIELL UND WERDEN NICHT VON ACER HERAUSGEGEBEN, VERIFIZIERT ODER UNTERSTÜTZT!

ES KANN UND WIRD NICHT GARANTIERT WERDEN, DASS EINE DER HIER GENANNTEN BIOS-PATCH-DATEIEN NICHT DIE HARDWARE AUF DAUER SCHÄDIGT UND/ODER UNBRAUCHBAR MACHT.

SÄMTLICHE GEWÄHRLEISTUNG VON ACER SIND MIT DEM EINSPIELEN EINES SOLCHEN INOFFIZIELLEN PATCHES HINFÄLLIG.

WEDER EINER DER HIER GENANNTEN PERSONEN, BETREIBER VON WEBSEITEN, MODERATOREN UND/ODER ADMINISTRATOREN DES LINUX-CLUB NOCH ICH GARANTIEREN DIE VOLLE FUNKTIONSFÄHIGKEIT DER HARDWARE NACH DEM EINSPIELEN. FÜR SCHÄDEN KANN UND WIRD KEINE HAFTUNG ÜBERNOMMEN WERDEN.

ES BESTEHT DAS RISIKO, DASS DIE HARDWARE NACH DEM EINSPIELEN DES PATCHES, WIE AUCH BEI DEM EINSPIELEN VON OFFIZIELLEN BIOS-DATEIEN, NICHT MEHR FUNKTIONIERT!

DIE BENUTZUNG UND DAS EINSPIELEN ERFOLGT AUF EIGENE GEFAHR HIN.

WER DIESES RISIKO NICHT AUF EIGENE VERANTWORTUNG HIN TRAGEN KANN/MÖCHTE, SOLL DIE FINGER VON DIESEM PATCH LASSEN !!!




Worum geht es hier?

Hier stelle ich einen inoffiziellen BIOS-Patch für das Acer Travelmate 4001 mit ATI Grafik vor.
Nur versierte Benutzer sollten sich mit diesem Patch näher beschäftigen. Alle anderen sollten sich gründlich überlegen, ob ein solcher Patch etwas für sie ist!!!

Beide hier vorgestellten BIOS-Patches beheben ein für das Acer Travelmate 4001 bekanntes Problem unter Linux in Verbindung mit ACPI bzw. powersave.
Dieses Problem besteht auch mit den Notebooks der Baureihen:
Aspire 1680
Extensa 3000
Travelmate 4500

Deshalb stelle ich diese Patches hier vor, da sie in der Hauptsache ein Problem mit Linux beseitigen, welches der Hersteller geschaffen und nie behoben hat.
Denn bisher musste man als Besitzer eines TM400x immer die DSDT auslesen, patchen und in die initrd packen. Oft musste man auch den Kernel patchen.
Dieses entfällt mit den angepassten BIOS-Dateien.

Wie ich das BIOS im einzelnen verändert habe, gebe ich hier - entgegen sämtlicher Community-Gedanken - nicht bekannt.
Man kann sich leicht mit dem falschen Wert einen ziemlich großen Briefbeschwerer basteln – für was anderes taugt dann der PC bzw. das Notebook nicht mehr.
Des weiteren wäre es möglich mit einer solchen Anleitung das BIOS für illegale Zwecke zu manipulieren (Passwörter deaktivieren, SLIC, etc.).

Anfragen diesbezüglich werden von mir nicht beantwortet!


„Control Method Battery“ statt „Smart Battery System“ !

Auf meiner Suche nach einem BIOS-Patch zum Starten von USB-Stick habe ich auch die Seite von G.J. Laanstra gefunden. G.J. hat einen BIOS-Patch entwickelt, welcher das „Smart Battery System“ gegen „Control Method Battery“ austauscht.
Leider wollte er „nur“ eine volle Windows Vista bzw. 7 Unterstützung erreichen – was auch gelungen ist.
KPowersave arbeitet mit diesem Patch einwandfrei. Es ist kein SBS mehr nötig, das Anpassen der DSDT kann also entfallen, denn zum Glück beherrscht Linux ebenfalls „CMB“. ;)

Wem das reicht, der kann sich ja dieses BIOS, auf eigenes Risiko, aufspielen.

Auf der Seite von G.J. sind auch angepasste BIOS-Dateien für andere Notebooks von Acer zu finden.

Mir hat diese Modifizierung nicht gereicht und deshalb habe ich das BIOS noch weiter angepasst.


Anpassung der CPU-Frequenzen sowie der USB und 48-Bit-LBA Patch

Mein Notebook, wie auch alle anderen „originalen“ Notebooks der Travelmate 4001 Reihe, hat einen Intel Pentium M Dothan 715, mit 1,5 GHz Taktfrequenz eingebaut.
Im ACPI-Bereich des originalen bzw. oben genannten BIOS sind aber die verschiedenen und vom eingebauten Prozessor unterschiedlichen Taktfrequenzen des Intel Pentium M Dothan 725 mit 1,6 GHz einprogrammiert.
Deshalb kann KPowersave auch nur mit 600MHz, 800MHz und 1500MHz arbeiten.
Den Spezifikationen der CPU entsprechend habe ich die ACPI-Tabelle angepasst.
KPowersave kann nun mit 600-800-1000-1200-1500MHz arbeiten, was sich deutlich positiv auf das Kühlverhalten der CPU und die Laufzeit des Akku auswirkt.

Ferner wurden folgende Modifizierungen vorgenommen:

1.)„Quiet Boot“ ist standardmäßig im BIOS deaktiviert. Man sieht also nicht mehr das „tolle“ Acer-Logo nach dem Setzen der Standardeinstellungen.

2.)„F12 Boot Menu“ ist standardmäßig im BIOS aktiviert. Nach dem Laden der Standardeinstellungen kann man also das Startmedium auswählen.

3.)Die Unterstützung für 48-Bit-LBA wurde aktiviert. Festplatten mit mehr als 128GB werden vom BIOS nun unterstützt.

4.)Das Starten von USB-Medien wurde aktiviert. Man kann nun von einem USB-Stick bzw. einer USB-Festplatte starten. (Der Start von einem USB-Diskettenlaufwerk funktioniert aber ohne diesen Patch – warum auch immer.)

5.)Die Auswahl vom Netzwerkstart im „F12 Boot Menu“ wurde hinzugefügt.

6.)Das BIOS unterstützt nativ auch USB-OHCI.


Leider funktioniert das Starten von USB nur etwas umständlich. Aber es geht zumindest. :D

USB-Stick's bzw. USB-Festplatten erkennt das BIOS als Festplatten. Leider ist es (noch?) nicht möglich im „F12 Boot Menu“ die zu startende Festplatte anzuwählen, wie es modernere BIOS anbieten. Das Acer Notebook startet immer die erste im BIOS aufgelistete Festplatte. Deshalb muss man vor dem Starten das entsprechende USB-Medium anschliessen und nach dem Start in das BIOS-Menü wechseln. Dort muss man die Startreihenfolge der Festplatten so abändern, dass das entsprechende USB-Medium als erstes gestartet wird. Einfach mit „F10“ speichern und neu starten.

Von mir wurden beide Varianten (nur CMB-BIOS bzw. BIOS mit 48Bit-LBA u.a.) des BIOS getestet mit OpenSuSE 11.1 sowie Debian 5, ohne Probleme.
Bei Debian muss man allerdings einen Kernel aus dem „testing“ Zweig nehmen, da der Standardkernel noch einen Fehler bzgl. des ACPI-Systems beinhaltet. Man erhält die Fehlermeldung „ACPI: EC: non-query interrupt received, switching to interrupt mode“. Eine solche Fehlermeldung erhält man unter Lenny allerdings auch mit einer gepatchten DSDT.

Dieser „Bug“ im Kernel wurde erst später behoben. Der Kernel von Debian testing ist 2.6.30.

Wen es interessiert: ja, auch Vista bzw. Win7 laufen einwandfrei – aber das hier ist ja ein Linux-Forum. :D

Zusammenfassend das wichtigste:
- SBS durch CMB ersetzt und ACPI für korrekte CPU gepatcht
- USB-Boot hinzugefügt
- 48-Bit-LBA hinzugefügt


Welche Hardware wird unterstützt?

Die offiziellen BIOS-Updates der Version 3A08 von Acer sind identisch für die Modelle der Baureihen:
- Aspire 1680
- Extensa 3000
- Travelmate 4000
- Travelmate 4500

Die offiziellen BIOS-Updates der Version 3A10 von Acer sind identisch für die Modelle der Baureihen:
- Aspire 1680
- Travelmate 4000
- Travelmate 4500

Es könnte also durchaus sein, dass die modifizierte BIOS-Datei auch für Notebooks der Typen Aspire 1680 und Extensa 3000 mit ATI Grafikkarte funktioniert.

WARNUNG!
Bei der Umstellung von SBS auf CMB wird auch der Embedded Controller vom Typ PC97551 gepatcht. Wenn also oben genannte Notebooks einen anderen Controllerchip besitzen, dann ist das Notebook nach dem Flashen garantieret DEFEKT!


Meine Modifikation wurde NUR auf Acer Travelmate der Baureihe 4001 mit ATI Grafik getestet.

Von daher kann ich nur bestätigen, dass ein Flash bei einem Modell der TM4001'er Reihe mit ATI Grafikkarte erfolgreich sein könnte.

Was tun, wenn der Flash daneben gegangen ist ?

Beim Acer Travelmate 4001 ist garantiert etwas schief gegangen, wenn nach dem Einschalten der Bildschirm dunkel bleibt und das Notebook 1x kurz und 2x lang piept (und das ganze wiederholt sich und geht einem tierisch auf die Nerven – ich weiß wovon ich spreche :) ).

Dann ist höchstwahrscheinlich die CMOS-Checksumme falsch. Normale BIOS ignorieren dieses und geben dem Benutzer die Möglichkeit das BIOS auf die Standardeinstellungen zurückzusetzen. Nicht das Acer BIOS. Dieses Verhalten konnte ich auch nicht mit dem Patch ändern.

Aber noch ist ja nicht alles verloren. ;)

Wenn der Flash daneben geht, hat man ein paar Möglichkeiten:

1.)Crisis-Disk verwenden,
2.)BIOS (und evtl. Embedded-Controller) austauschen,
3.)Notebook als Briefbeschwerer verwenden,
4.)Wegwerfen.

Zu Lösung 2.) gibt es ein paar Händler, wie z.B. hier. Dieser bietet an, den defekten BIOS-Chip zu entfernen und eine PLLC-Fassung einzubauen, in welche der neue Chip kommt. Beim TM4001 ist Platz für eine solche Fassung. Dem Aufdruck der Platine nach war solch eine Fassung auch vorgesehen (zumindest wohl bei den Prototypen).

Um Lösung 1.) anzuwenden benötigt man die Crisis-Disk (ist im Archiv als Diskettenimage mit dem originalen Acer-BIOS enthalten) und ein USB-Diskettenlaufwerk.
Vorgehensweise:
- Diskettenimage auf Diskette per Konsole schreiben („# dd if=crisisdisk.144 of=/dev/fd0“)
- Akku aus dem Notebook entfernen, Netzkabel abziehen
- RAM reduzieren – je weniger, desto besser, aber bitte mehr als gar keinen RAM (wer noch einen funktionstüchtigen 256 MB Riegel hat, der sollte nur den in den ersten Slot packen)
- USB-Diskettenlaufwerk anschliessen (USB-Port direkt neben S-Video-Ausgang, also neben der gelben Buchse)
- Tasten „Fn“ und „B“ drücken und gedrückt halten
- Netzkabel einstecken
- Notebook einschalten
- sobald das Laufwerk hörbar Daten überträgt kann man die Tasten loslassen (nicht mit der Überprüfung beim Start verwechseln!). Der Start der Übertragung kann bis zu 2 Minuten dauern. Dieses liegt daran, das jedes MB des RAM's initialisiert wird.
- Es kann sein, dass der Schreibvorgang 5 Minuten und mehr dauert. Nachdem das BIOS komplett neu geschrieben wurde startet das Notebook „normalerweise“ neu. Startet es nicht neu, dann kann man ca. 5-10 Minuten nach dem letzten Lesevorgang (was sind schon 5-10 Minuten, wenn danach das Notebook wieder lebt) das Netzkabel ziehen. „Normalerweise“ piept das Notebook bei dem Vorgang nicht, höchstens am Ende des Vorgangs. Sollte es piepen aber gleichzeitig die Diskette einlesen, dann empfiehlt sich ein Kopfkissen zur Geräuschdämmung. :D

Es kann sein, dass diese Methode nicht auf Anhieb funktioniert.
Folgende Vorgehensweise:
- Falls es mit den Tasten „Fn“ und „B“ nicht funktioniert, dann auch mal „Fn“ & „Esc“, „Win“ & „B“ bzw. „Win“ & „Esc“ probieren.
- Einen anderen USB-Port verwenden
- Festplatte und das DVD-Laufwerk entfernen. Wie man das DVD-Laufwerk entfernt ist aus der Service-Manual ersichtlich. Wo man die herbekommt sollte wohl jedem Klar sein. ;)
- Notebook zerlegen und die CMOS-Batterie abklemmen (Service-Manual) und ohne Batterie erneut versuchen!

Wenn alles nichts hilft: Mainboard entsprechend der 2. Lösung einschicken um BIOS tauschen zu lassen, Mainboard komplett austauschen oder alles in den Müll werfen.

Ich habe hier jeden deutlich gewarnt, dass man mit diesem Flash, wie auch mit jedem anderen Flash, das Notebook komplett zerstören kann. Also Benutzung auf eigene Gefahr!


Das BIOS Flashen!

Keine Tools wie Winflash oder so verwenden. BIOS immer von einer DOS-Diskette bzw. DOS-CD flashen! Das Internet ist voll mit Seiten, wo Computerbesitzer nach einem Flash unter Windows plötzlich keinen funktionierenden Computer mehr haben!

Kurzform:
Dateien herunterladen, entpacken, MD5-Summe prüfen, Diskette beschreiben bzw. CD Brennen, Tief einatmen, nochmal überlegen ob man auch weiß was man tut, auch als Atheist ein letztes Stoßgebet gen Himmel schicken und dann Flashen.

Wie gesagt, herunterladen, entpacken und prüfen.

FreeDOS Diskettenimage auf Diskette schreiben mit:
Code:
# dd if=Acer_TM4000_ATI_BIOS.144 of=/dev/fd0

Oder eine CD anfertigen mit:
Code:
# mkisofs -o bootcd.iso -b Acer_TM4000_ATI_BIOS.144 Acer_TM4000_ATI_BIOS.144
# cdrecord -v bootcd.iso

Wem das Erstellen einer startbaren CD mit der Konsole zu schwierig erscheint, der hätte es sich ersparen können diesen Text zu lesen! Derjenige wird wohl eher nicht wissen was er da eigentlich macht!

Für die Diskette entsprechend das USB-Diskettenlaufwerk anschliessen, andernfalls CD einlegen und davon starten.
Es startet dann eine Batchdatei mit einer entsprechenden Warnung. Man kann dann entweder auf eigene Gefahr hin weitermachen oder das Notebook abschalten.


NOCHMALS IN ALLER DEUTLICHKEIT: NIEMAND WIRD FÜR DIESEN PATCH EINE VERANTWORTUNG UND/ODER HAFTUNG ÜBERNEHMEN. DAS EINSPIELEN UND/ODER VERWENDEN ERFOLGT AUF EIGENE GEFAHR!!!

Links:
Acer BIOS-Patch von G.J. Laanstra
Internetshop der auch aufgelötete BIOS-Chips repariert
Nette Anleitung, wie man einen BIOS flashen kann mit FreeDOS

Dateien zum Flashen des Acer Travelmate 4001 mit ATI-Grafikkarte:
Gesamtarchiv: Acer_TM4000_ATI_BIOS.tar.bz2 – MD5 E92CF2062713D83DC933F0E830F87C97

BIOSFLASH: Acer_TM4000_ATI_BIOS.144 - MD5 23D7864EA64173C37E4565EBF6DFA99A
CrisisDISK: crisisdisk.144 - MD5 B5CC0DCA72A5D2B2FBD89AC8A3104F74

FLASHEN AUF EIGENES RISIKO! KEIN SUPPORT UND/ODER HAFTUNG BEI EINEM "BAD-FLASH" !!!
 

NaIch

Newbie
Hallo Christian,

also mit einem standard ACER 3A10 BIOS funktioniert USB boot!!!!!!!
Allerdings auf die von Dir beschriebene etwas umständliche Art (Setup aufrufen, USB Medium als erstes Boot Device).
Deshalb frage ich mich, was Du bzgl. des USB booten geändert hast, um aus einem USB bootfähigen BIOS ein USB bootfähiges BIOS zu machen.
Nach Deinem Betrag müsste man ein - von Dir selbst als hochrisikoreiche Angelegenheit dargestelltes - Flashen mit "Deinem" BIOS vornehmen, um das BIOS USB bootfähig zu machen.
Das ist definitiv nicht notwendig!!!

Gruß,
auch Christian
 
Hello,

Excuse me for typing in english, but i'm french and i don't know German.

I have an acer travelmate 4500 (Intel) and i wish to hack the bios to have 48 bit LBA support.

Can you explain me how did you hack the bios to add this function?

Thanks,

Adrien
 
Danke für das BIOS! Getestet und funktioniert mit einem Acer Aspire 1681WLMi. Die nachgekaufte 320 GB-IDE-Festplatte (WDC WD3200BEVE) ist nun vollständig verwendbar unter Windows XP SP1 bis SP3 und unter Linux.

Frage: Warum ist der Embedded Controller PC97551 so wichtig? Ich konnte darüber eigentlich nur herausfinden, dass es sich um den Tastatur-Controller handelt. http://support.acer.com/acerpanam/manuals/acer/0000/servicemanuals/SG_AS1410_1680.pdf – “Keyboard Controller NS PC97551”.

Ich hoffe, dass es sich nicht um eine böswillige Abänderung in Form eines Keyloggers oder so handelt! Da ich nicht vom Fach bin, kann ich nur darauf vertrauen, dass na-cx kein böser Mensch ist.

Ansonsten: DANKE!
 
Oben