ASUSのBIOSを1105に更新すると起動しない

ASUSのZ390マザーボード、ROG MAXIMUS XI HERO WiFiのBIOSを最新版1105にアップデートしたところmacOSが起動しなくなりました。1005にダウングレードしたら復活しました。

BIOSアップデートで起動しない

ASUSの最新BIOS 1105が公開されていますが、これにアップデートするとmacOSが起動しなくなるとのことです。こちらのコメントで教えていただきました。検索すると色々なところで紹介されていました。

ならば試してみようということで、こちらのビルドで紹介したASUS ROG MAXIMUS XI HERO WiFiのBIOSをアップデートしてみました。

ちょくちょくアップデートしていたつもりでしたが、だいぶ古いバージョンでした。ROG MAXIMUS XI HEROは、BIOSからネットワーク接続してBIOSアップデートできます。最新の1105にアップデートします。するとやはりmacOSが起動しませんでした。-vで起動すると起動途中で文字表示が止まってそのまま動かなくなります。apfs.efiなのかVirtualSMCのあたりのメッセージで止まります。

BIOSでRTCを設定する

この記事へのコメント欄で教えていただいた情報によると、原因はRTC (リアルタイムクロック)の関係のようです。BIOS設定でレガシーなRTCを使うように指定すれば解決するようです。RTCは、システムの日付や時計を管理しているだけでなく、割り込みでプログラムを制御するような使い方もされているようです。起動時に、RTC割り込みがある事を前提に作業を始めたプログラムが動作継続できなくなって起動が止まってしまうようです。

上記のサイトでは以下のような設定画面の写真が紹介されていました。ASUSのBIOSメニューの、Advanced–>PCH Configuration–>System Time and Alarm SourceをLegacy RTCにすれば良いようです。メニューの内容などから判断すると、ACPI経由でタイマー・アラーム機能へアクセスする方式がデフォルトになったためClover + macOSが対応できなくなったようです。従来型のRTCとしてアクセスするよう設定すれば良いようです。

ところがどういうわけか、ROG MAXIMUS XI HEROのBIOS画面にこの選択肢が出てきません。

IOAPICのエントリーの選択肢は、以前のBIOSでは表示されていました。今回は、それも無くなっていました。もしかしたら次のバージョンでRTCの選択肢が出てくるようになるのかもしれません。という事で、BIOSでLegacy RTCを指定する方法は使えませんでした。

パッチを当てる

ASRockのマザーボードなどでに必要とされていたDSDTへのパッチ

を当てることでも対応できるようです。これで新しいBIOSでもmacOSが起動したそうです。以下のパッチをconfig.plistに書き込めば良いようです。

<dict>
  <key>Comment</key>
    <string>Fix Z390 BIOS DSDT Device(RTC) bug</string>
  <key>Disabled</key>
    <false/>
  <key>Find</key>
    <data>
      oAqTU1RBUwE=
    </data>
  <key>Replace</key>
    <data>
      oAqRCv8L//8=
    </data>
</dict>

ただ、パッチを当ててまで新しいBIOSが使いたいわけでなないです。そこで、ダウングレードすることにしました。ところが…

BIOSダウングレード出来ない

失敗したら古いバージョンにダウングレードすすれば良いと思って、気楽に手がけたのですが、実は簡単ではありませんでした。実際に試したところ、1105より古いBIOSでは、BIOS画面からEzFlashというツールを起動して、古いBIOSイメージを指定すれば、簡単にBIOSダウングレードできました。しかし最新の1105では、1105より古いバージョンのBIOSイメージを指定すると、適切なBIOSでは無いと言われてインストールしてくれません。

USB BIOS Flashbackでダウングレード

MAXIMUS XI HEROにはUSB BIOS Flashbackという機能があります。ネットワークやUSBメモリからBIOSを更新できるEzFlashはBIOSのメニューから起動するツールで、搭載したCPUやメモリーを使用して動いています。これに対してUSB BIOS Flashbackは、CPUやメモリーを搭載していなくても動く更新ツールです。おそらくマザーボード上に専用のマイクロコンピュータを搭載していて、CPUの力を借りずにBIOS更新する仕組みかと思います。BIOS更新のためにわざわざコンピュータを搭載していると考えると、とても贅沢に思えます。上位機種のマザーボードにしか搭載されていません。これでBIOSダウングレードを試しました。

USB BIOS Flashbackを使用するには、FATでフォーマットしたUSBメモリーのルートに、更新したいBIOSイメージをM11HW.CAPという名前で置いておきます。これをバックパネルの、USB BIOS Flashback用のUSBポートに挿しておきます。PS/2コネクタ下にあります。次に、電源を切った状態で、バックパネル左端のUSB BIOS Flashボタンを3秒ほど長押しします。するとこのボタンが点滅を始めます。あとは点滅が終了するまで待つだけです。2-3回再起動した後、インストールしたバージョンのBIOS画面になります。ここでmacOS向けの設定をすれば良いです。ちなみに現在の設定は、工場出荷状態に加えて、

  • Intel (VMX) Virtualization Technology –> [Enabled]
  • Memory Remap –> [Disabled]
  • iGPU Multi-Monitor –> [Enabled]
  • Connectivity mode (Wi-Fi & Bluetooth) –> [Disabled]
  • XHCI Hand-off –> [Enabled]

です。

まとめ

ということで、ACPIのタイマー・アラーム機能を使うようになった最新のマザーボードでは、BIOSで古い形式のRTCを使うように設定する必要があります。ASUSのBIOSメニューでは、Advanced–>PCH Configuration–>System Time and Alarm SourceをLegacy RTCにすれば良いです。この設定ができない場合は、config.plistにパッチを書き込むことでも解決します。今回は、BIOS設定ができなかったので、パッチを当ててまで新しいBIOSを利用する必要はないと判断して、古いBIOSに戻しました。

マザーボードにとってBIOSを復活させる機能が重要だと思い知らされました。今回使用したUSB BIOS Flashbackならば、BIOSが徹底的に破壊されても復活できると思われます。再びマザーボードを買い換えるときには、この種の機能を重視していきたいと思います。

3件のコメント

  1. B360 H370でもASUSマザーボードで同様なことが起きてましたね。
    ASUS ROG Strix B360-i Gaming motherboardでもRTC周りに問題がありました。
    https://www.tonymacx86.com/threads/a-solution-of-asus-new-bios-ver-2012-not-downgrading.273151/
    では、
    I changed the option from “ACPI Time and Alarm Device” to “Legacy RTC”.
    という、解があり、私の安いマザー(ASUS PRIME H370-A)では助かりました。
    多くの、指南書では、BIOSを新しくすることと書いてあるものが多いので、気を付けたいですねぇ。

    1. ありがとうございます。これは週末に試してみます。そういえばASRockのマザボの話でレガシーRTC設定にして解決できるってのを読んだ記憶がありました。リンク先にあるように、私のところの-vのログでも確かにSMCRTC:startのメッセージの後で落ちていました。BIOS設定の定石の一つになりそうですね。

    2. 私も週末が来たので、試してみました、基本的に上のパッチは、Z390向けということでしたが、
      https://www.tonymacx86.com/threads/fix-for-boot-hangs-after-bios-update-acpi-patch.275091/
      にあるように、
      「Its for my motherboard, can work with other z370,h370,b360 motherboards. I didnt had other systems to test.」
      ということなので、ASUS PRIME H370-A (BIOS 1402)で試したところ動きましたね(RTCをLegacyにしなくても動きました。)
      いちおう、各所に報告の一文を入れておきました。
      今のところは、簡便なのでBIOS設定の解法で行っています。

返信を残す

メールアドレスが公開されることはありません。

「名前」「メールアドレス」「サイト」は空白でも投稿できますが、日本語が含まれない投稿は無視されます。(スパム対策)