インテルの第10世代デスクトップCPUであるComet Lake-Sとこれに対応した400シリーズマザーボードが発売されました。これでhackintoshは可能なのでしょうか。結論としては、まだ難しいようです。
追記:Redditの別の情報によると、CPU, LAN, Thunderboltなど含めて、かなり動いているようです。(2020/5/29)
Table of Contents
新CPUと新チップセット
第10世代デスクトップの最上位CPUであるCore i9-10900Kは10コア20スレッドです。i7-10700Kとi5-10600Kはそれぞれ8/16、6/12 コア/スレッドで、従来の第9世代より少し価格が安く低消費電力らしいです。400シリーズチップセットでは、メモリの対応クロックが少し上がり、LAN/WiFi周りが新しくなりました。全体的に第9世代と比べてそれほど進歩は無いとも言われていますが、その分、macOSの互換性が高いのではと期待しました。新CPUと新チップセットのmacOS互換性に関して、Redditに簡単な解説がありました。
これによると以下のようです。
CPUの互換性
現在のmacOSはモバイル用のComet Lakeはサポートしているが、デスクトップ用のComet Lake-Sはサポートしません。新型iMacがComet Lake-Sを搭載する未来が来るまで、macOSのサポートはないです。そのためか、試した人たちによると、macOSがカーネルパニックを起こすようです。今のところ、新CPUを動かすためには、Penryn CPUにフェイクする必要があるそうです。Penrynっていつの時代だろうと思って調べたら、Core 2 無印 / Duo / Quad時代のCPUでした。かなり昔のCPUに偽装する必要があるようです。詳しくはこちらをみてくださいと、ロシア語の掲示板が紹介されてます。ロシアのハッカーの皆さんに頑張ってもらいたいです。
ACPI fix
IcelakeとZ390に比べて大きな違いはないので、DSDTへの対応も同様で良いと思われるそうです。以下のSSDTを加えておけば良いようです。SSDT-PLUGに関しては、上記のようにCPUの対応ができていないので、しばらくは効果が無いそうです。
- SSDT-AWAC : AWACクロックを無効にしてい昔ながらのRTCを有効にする
- SSDT-PMC : 300と同様に400でもNVRAMが使えるようにする
- SSDT-EC-USBX : ECを無効にして偽装することで正しいUSBパワーを供給
- SSDT-PLUG : XCPMをロードして正しい電力管理を有効にする。ただしCPUがネイティブに動くようになるまでXCPMは動かないと思われる。
Firmware fix
Icelakeと同様に、OpenCoreのBooterセクションに引き続き以下が必要です。ただ、現状でもFirmware fixが全ての場合で安定しているわけではないので、カーネルパニックが治っても、問題が発生する可能性はあるそうです。
- DevirtualiseMmio: カーネルを適切にロードするため。
- ProtectUefiServices: イメージローディングのfix
iGPU
第9世代デスクトップCPUと同じUHD 630を引き続き搭載しているものの、フレームバッファが不明らしいです。これは第10世代CPU搭載iMacが出荷されるまで決まらないので、それまでは手作業で設定する必要がありそうです。
USB
残念ながら新しいUSBはネイティブに互換ではないようです。Xhci-Unsupported.kextを使い、PCI IDとして8086:06edを追加する必要があるとのことです。
Ethernet
400シリーズチップセットになってmacOSが一番影響を受けたのはLANとWiFiのようです。このプラットフォームは新しい2.5Gbe NICであるI225Vを搭載しています。これはLinuxでのE1000eドライバがサポートしていないので、それを元にしているIntelMausi.kextでも動かないです。対応待ちです。
一方で、RTL8125やI211などのNICを搭載しているメーカもあります。これらは今のIntelMausi.kextで対応しているそうです。調べてみたところ、MSIはRTL8125を、ASRockはRTL8125とI1219Vを搭載しているようです。I1219VはIntelMausi.kextのサポートリストに載ってます。一方で、GigabyteとASUSに搭載されるNICは新型のI225Vのようで、使えるまでしばらく時間がかかりそうです。
続報:tonymacx86の情報によるとIntelMausiEthernet.kext (IntelMausi.kext?) でIntel I225-V Ethernetが動いたようです。(2020/5/29)
無線カード
Z390までのマザーボードの無線カードソケットでは、チップセットが支援するCNVi方式のカードに加えて、汎用のM.2無線カードも使えました。なので、BroadcomのBCM94369NGのようなmacOSとOOBでの互換性のあるM.2無線カードが使用可能でした。でもZ490になって、多くのマザーボードでCNVi非互換カードが使用不可になってしまったようです。PCIeスロット数が多いマザーボードなら、BroadcomのApple純正カードをPCIeに変換するアダプタを使用すれば問題ありません。でもmini ITXのようにPCIeが1本しかない場合は、これをdGPUで使いたいところですので、M.2ソケットが使えないのは残念です。Redditのディスカッションによると、ASRock Z490M-ITX/acはCNVi非互換カードに対応しているそうです。WiFiの規格がaxではなくacとなっているマザーボードが狙い目らしいです。それに対して、光らない渋いマザボとして人気のMSI MEG Z490I UNIFYは、Reddit参加者がメーカのサポートに確認したところ、CNVi非互換カードは使用不可能とのことでした。
続報:Gigabyte Z490 Vision D + 10900Kの動作報告
こちらのGitHubページで2020/5/28頃に動作例が紹介されました。
OpenCoreでブートしているようで、以下が動作しているそうです。
- Wifi and Bluetooth (FenviのBCM94360CDを使用)
- Audio: Realtek ALC1220-VB (AppleALC.kext, layout-id=7, device-id=0xA170, FakeID.kext, FakePCIID_Intel_HDMI_Audio.kext)
- USB
- Thunderbolt 3 ではhot-plugも動作
- 1Gbit Ethernet (Intel I219-V)
- 2.5Gbit Ethernet (Intel I225-V)
- Sleep/Wake
- Shutdown
- Restart
EFIファイル類も公開されています。それによるとCPUを以下のようにfakeしているようです。
<key>Emulate</key> <dict> <key>Cpuid1Data</key> <data>6wYIAAAAAAAAAAAAAAAAAA==</data> <key>Cpuid1Mask</key> <data>/////wAAAAAAAAAAAAAAAA==</data> </dict>
6wYIAAAAAAAAAAAAAAAAAA==は、0x0806EBになり、第7世代と第8世代のCPUの値を使っているようです。
RedditのディスカッションでCore i9-10900KでOpenCoreを使っての報告が上がっているようです。
https://www.reddit.com/r/hackintosh/comments/gqk7b8/hackintosh_intel_i910900k_gigabyte_z490_vision_d/
情報ありがとうございます。Redditのコメントで0906EC (7AYJAAAAAAAAAAAAAAAAAA==) にfakeすれば良いと書いてありますが、これって第9世代CPUのCPUIDのようですね。Core 2じゃなくて第9世代でよければ、良い情報ですね。