2014年11月22日土曜日

ThinkPad R51e の BIOS アップデート

Debian Wheezy をインストールして快調に動作している ThinkPad R51e ですが、どうも BIOS が最新版になっていないようだったので、BIOS のアップデートを行うこととしました。

アップデートを行う前の BIOS のバージョンです。
BIOS Version -- 1.53 (78ET63WW)
Embedded Controller Version -- 1.00

レノボ社の ThinkPad のウェブサイトから BIOS のアップデート・プログラムをダウンロードしてきました。まだ ThinkPad R51e の各種アップデート・プログラムは、ダウンロードできるようです。
ソフトウェアとデバイスドライバーのダウンロード・ファイル一覧
 - ThinkPad R51e
http://support.lenovo.com/jp/ja/documents/ht036743#bios

なおダウンロードしたのは、フロッピーディスク版の BIOS アップデートユーティリティの他に、エンベッデッド・コントローラー・プログラムもダウンロードしてきました。

ダウンロードした二種類のプログラムは MS-DOS が稼働しているマシン上で実行すると、自動解凍されて各種ファイルが作られます。この中から .BAT のファイルを :A の引数を付けて実行します。すると問い合わせ形式でフロッピーディスクを作成してくれます。

BIOS のアップデートプログラムと MS-DOS の起動ディスクです。


まず最初に BIOS のアップデートから開始しました。USB 接続のフロッピードライブへ BIOS アップデートユーティリティをインストールしたフロッピーディスクを挿入して ThinkPad R51e を起動させます。すると BIOS アップデート・プログラムが自動的に開始されて、問い合わせ画面が表示されます。ここで「システム・プログラムの更新」を選択して実行させます。

BIOS のアップデート・プログラムを開始したところです。

すると予想はしていたのですが、バッテリの充電不足の警告が表示されて、BIOS のアップデート・プログラムは中断されてしまいました。私が入手したものは、バッテリが充電不可能な状態のものでした。古いマシンなので仕方がありません。

バッテリの充電不足で BIOS のアップデートは中断されてしまいました。

本来ならここで諦めるか、何らかの方法でバッテリを調達して BIOS をアップデートするしか方法はありません。

しかし先程作った BIOS アップデートユーティリティのフロッピーディスクの内容を調査してみたところ、QKFLASH.EXE の BIOS 用フラッシュメモリの書き換えソフトウェアが存在しているのを発見しました。過去の経験から、この QKFLASH.EXE でフラッシュメモリを書き換える ThinkPad は、バッテリの充電不足でも、書き換えることが出来ました。今回も書き換えに成功するかどうかは不明ですが、勇気を持って書き換えに挑戦してみました。なお問題なく動作している ThinkPad をこの QKFLASH.EXE で直接実行させる方法で書き換え失敗する可能性を考えると絶対にお勧めしない方法です。この後の内容は参考程度にしてください。書き換えに失敗しても当方は一切責任をもてません!

QKFLASH.EXE を直接実行させるために、別途用意した MS-DOS の起動フロッピーが必要です。さらに BIOS アップデートユーティリティに入っている日本語表示のフォントやドライバなどを MS-DOS 起動フロッピーディスクへインストールしておく必要があります。この準備を行なっていないと表示が文字化けして BIOS のアップデートを継続できないからです。
[追記:2014-11-23]
QKFLASH.EXE を実行するフロッピーディスクの作り方
http://near-unix.blogspot.jp/2014/11/qkflashexe.html

最初に MS-DOS の起動フロッピーディスクで ThinkPad R51e を起動させた後、 BIOS アップデートユーティリティのフロッピーディスクへ入れ替えます。そして QKFLASH.EXE に /U のオプションを付けて実行させます。
A:\QKFLASH.EXE /U

MS-DOS で起動した後、QKFLASH.EXE を実行するところです。

QKFLASH.EXE を実行させると、BIOS ファイルの検査の後、BIOS の書き込みが開始されました。まるでフリーズしたかのような時間が 5 分程度流れます。とても長く感じました。この間に電源を切ってはいけません。そしてビープ音と共に ThinkPad R51e の電源が自動的に切れてしまいます。

BIOS を QKFLASH.EXE で直接書き換えているところです。
書き換えが終了すると自動的に電源が切れます!
自動的に電源が切れるまでは絶対に電源を切らないでください。

念の為に電源を投入してすぐに F1 キーを押して BIOS 画面へ移行します。そして BIOS のバージョンを確認します。ちゃんと最新の 1.61 (78ET71WW) となっていて、正常に BIOS のアップデートが完了したことを確認しました。

アップデートを行った後の BIOS のバージョンです。
BIOS Version -- 1.61 (78ET71WW)

引き続きエンベッデッド・コントローラーの更新を行いました。やはり通常の方法ではバッテリの充電不足でエンベッデッド・コントローラーの更新を行なってくれませんでした。

エンベッデッド・コントローラー・プログラムもバッテリの充電不足で中断してしまいました。

そこで BIOS と同様に QKFLASH.EXE で直接書き換えを行うこととしました。

ここでちょっとしたハプニングが発生しました。どうもエンベッデッド・コントローラーの更新プログラムをインストールしたフロッピーディスクが不良だったようで、書き換え作業の途中でプログラムが異常終了してしまいました。ここで ThinkPad R51e は死んでしまった!と思いました。とても心臓に悪い表示が出てしまいました。しかし、どうもエンベッデッド・コントローラーの書き換えデータの検査で異常を発見して、書き換え作業の手前でプログラムが中断したようです。そのためエンベッデッド・コントローラーは古いバージョンのまま、正常に動作する状況でした。

フロッピーディスクに異常があったようで、プログラムが異常終了してしまいました。

新しいフロッピーディスクへエンベッデッド・コントローラーの更新プログラムをインストールして再挑戦してみました。すると今回は正常にエンベッデッド・コントローラーを書き換えできました。やはり書き換え途中はマシンがフリーズしたかのような状態が 3 分程度続いた後、画面が急に半分程度の明るさに変化するなど肝を冷やす場面がありました。最後は、書き換えプログラムが終了すると同時に電源も切れてしまいました。ただし BIOS のアップデートと違って、ビープ音なしで終了しました。

エンベッデッド・コントローラーを更新しているところです。
終了すると自動的に電源が切れます!

再度電源を投入して F1 キーで BIOS 画面でエンベッデッド・コントローラーのバージョンを確認したところ、1.00 から 1.01 へ更新されているを確認できました。

アップデートを全て行った後の BIOS のバージョンです。
BIOS Version -- 1.61 (78ET71WW)
Embedded Controller Version -- 1.01

最後は、Debian Wheezy を起動させて、ちゃんと動作することを確認しました。

BIOS のアップデートの後に Debian Wheezy を起動させて、異常の無いことを確認しました。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。