ホーム › フォーラム › User Builds › [電力管理不能]Pentium G3258/GT730/Sonoma
- このトピックは空です。
-
投稿者投稿
-
-
廃物君ゲスト
2年ほど前に使わなくなったパーツで組んだジャンク機でBig Sur/Montereyの
動作報告をしたものです(https://bootmacos.com/forums/topic/13872)その後Montereyをアップデートしたら起動しなくなったため放置していたの
ですが、最近暇が出来たので再挑戦してみましたとりあえずOpenCcoreを0.7.5から0.9.7(途中から0.9.8)にアップデートしました
config.plistの修正はここにバージョン毎の差分があったので大変助かりました
各種kextも最新のものに差し替えた後、OpenCoreやOCLPの解説等で古いCPU対策を
調査して、Montereyが動作しなくなった原因はAPFSがAVX命令を使うようになった
ことが原因と解り、対応パッチNoAVXFSCompressionTypeZlib-AVXpel.kextを追加
Ventura/Sonoma用のAVX2.0未対応CPU用のパッチ?のCryptexFixup.kextも追加
未対応機種でのインストールと実行が出来るようにRestrictEvents.kextを追加
最期にboot_argsにrevpatch=sbvmm -no_compat_checkを追加しましたこれでVentura(13.6.4)はうまく動いたのですが、Sonoma(14.3.1)ではCPUの
PowerManagementが効かず常時最大クロックで動きます。NullPowerManagement
利用時とたぶん同じです。G3258はIvy BridgeにCPUIDを偽装してxcpmカーネルを
強制ロードすることで動作させる手法が使われていて、初めのころはboot-argsに
-xcpmを追加するだけでできたのですが、これがSierraで廃止された後はCloverの
オプションやOpenCore用パッチで強制ロード手段は提供されてきました
しかしついにこのパッチがSonomaでは効かなくなったようです。Venturaから
AICPUPMが外されたのでカーネルのPluginのロードのコードが変わったのでしょうか
だとしたらVenturaでもいつまでパッチが使えるか不安が残りますそういえば少し前までOCLPの解説でVentura以降でIvy BridgeでPowerManagement
を有効にする方法として、非推奨だがxcpmカーネルを強制使用する方法がパッチと共に
記載されていたのですが消えていました。Sonomaでは利用できないことに気が付いたの
かな?だとしたら新しいパッチと共に再公開されないものだろうか?なお、GT730についてはOCLPを適用して利用できています
その他気になる点
・アップデートが大変
作業中Sonoma14.3->14.3.1のアップデート通知が来たのですが、OCLP利用なので
フルサイズでした。OCLPパッチを無効にすると差分アップデートが表示されるの
ですが、これを実行しても「ソフトウェアアップデートの準備が出来ませんでした」
というエラーになります。CryptexFixupは「Delta Updates will not be supported」
とあるので当然ではありますが。OCLPパッチを再適用してフルサイズのアップデート
は出来ましたが、毎回13GB強は少々厳しいです・HDDで移行アシスタント不調
ジャンク環境なのでSSDではなくHDDなのですが、Ventura/Sonoma共HDDでは移行
アシスタントがほぼ失敗します(1回だけ成功しました)別機のSSDを持ってきて
それにインストールした場合は100%成功するのでHDDが問題っぽいです
まあ今のmacOSをHDDにインストールすることは想定されてないのでしょうけど -
RaMaTcHゲスト
こんばんは。
これでSSDT作れませんでしょうか?
https://olarila.com/files/Utils/SSDT PM Gen.app.zip
Montereyの時ですが、Insanelyで紹介してもらって自分は成功しました。-
RaMaTcHゲスト
自分はIvybridge-EN(E5-2420v2)でSSDTPRGen.shがうまく使えなかったので、上記アプリで生成しました。
Sonomaについてはまた別のマザーボードとCPU(E5-1410v2)で、下記のEFIをごっそり持ってきて、DSDTをちょい改変(多コアの削除)した上でPowerManagementが動いてます。
Haswellと世代は違いますが、OSネイティブサポート外のCPUという意味でヒントになれば良いのですが。
-
-
廃物君ゲスト
RaMaTcH様
ご助言ありがとうございます。
ご提示してくださったSSDT PM Gen.appはssdtPRGen.shのダウンロード、実行、結果ファイルのデスクトップへのコピーを実行するスクリプトをapp化したもののようですね
ssdtPRGenによるSSDT.amlの作成と組み込みはすでに試しており、効果が無いことを確認しております以下は私が理解していると思っているmacOSの電力管理方式からの判断です
誤りがあればご指摘いただければ幸いです
・Sandy Bridge以前
AppleIntelCPUPowerManagement.kextとAppleIntelCPUPowerManagementClient.kextを使用する
VenturaでOSからkextが削除されたため、電力管理を有効にするにはOpenCoreでパッチを当てたAICPUPMをロードしなければならない
・Haswell以降
カーネルが直接管理するのでVentura以降もそのまま動く
・Ivy Bridge
どちらの方式でも動作するが、Sierra以降公式にはカーネル直接管理方式を使う方法が無くAICPUPM方式のみ使用されるのでVentura以降は通常Sandy Bridge以前のCPUと同じ手法を使うご提示いただいたEFIはIvy Bridge-E用とのことですが、やはりkextフォルダ内にAppleIntelCPUPowerManagement.kextとAppleIntelCPUPowerManagementClient.kextがあり、config.plistでロードしているようなのでHaswellのG3258で必要なカーネルで直接電力制御を行うための手法は存在しておらず、残念ながら流用は出来ないものと判断しました。悪しからずご了承下さい
-
脱Sandyおじさんゲスト
より最新メンテナンスされてるようなSSDTTimeを使ってみてはどうでしょうか?
-
廃物君ゲスト
脱Sandyおじさん様
ご助言ありがとうございますSSDTTimeを試してみました。電力管理にかかわる部分といえばSSDT-PLUG.amlだと思いますが、これを変更しても変化はありませんでした。残念です
-
廃物君ゲスト
電力管理を有効にできました
非サポートCPUを無理やり動作させるという意味ではPentiumなど比較にならない
レベルで困難なはずのRyzenを動かすパッチの中になら、使えるものがあるのでは
ないだろうかと考えて、Ryzen用カーネルパッチを探ってみたところalgrey | _cpuid_set_cpufamily | Force CPUFAMILY_INTEL_PENRYN | 11.3+
というコメントのパッチを適用し、Kernel/QuirksのProvideCurrentCpuInfoをtrue
にすることでCPUのクロックが下がるようになりました。sysctlで確認してみるとmachdep.cpu.brand_string: Intel(R) Pentium(R) CPU G3258 @ 3.20GHz
machdep.cpu.family: 6
machdep.cpu.model: 60
machdep.cpu.signature: 198339 (0x0306C3)と、PenrynではなくちゃんとHaswell Pentiumとして認識しています。Emulateの
Cpuiddata1でIvy Bridgeに偽装している場合はmachdep.cpu.brand_string: Intel(R) Pentium(R) CPU G3258 @ 3.20GHz
machdep.cpu.family: 6
machdep.cpu.model: 58
machdep.cpu.signature: 198304 (0x0306A0)とIvy Brigeとして認識しますので、このパッチはCPUIDを書き換えるわけでは無いよう
です。CPUIDの内容を維持したままカーネルにPenrynと誤認させてKPを避け、その後は
本来のCPU情報で動くということなのでしょうか?うまくいく理屈がよくわかりません
何せパッチの内容がいったい何をやっているのかさっぱりわからないので
単にロジックのスキを突いただけの偶然で成功したのであれば、すぐ使えなくなるで
しょうから理由は知っておきたいものですが、いかんせん能力が伴わないのが悲しいなお、Sonoma(14.3.1および14.4Beta5で確認)でのみ有効で、Venturaでは常時最大
クロック状態になります。VenturaまではIvy Bridge偽装+既存のパッチで行けるので
それらのMaxKernelを22.9.9にして、Ryzen用パッチのMinKernelを23.0.0にすることで
各バージョンで電力管理が有効なOpenCore用config.plistを作ることが出来ましたなお弊害として、システム環境設定で表示されるCPU名が不明になってしまいました
RestrictEventsで指定してもProvideCurrentCpuInfoがtrueだと反映されないようです
まあ「プロセッサ表示なんて飾りです」なので良しとします一方、移行アシスタントは相変わらず成功しません。動作確認の為とかで別バージョン
のmacOSをインストールする時に現行環境を引き継げると楽なのですが、失敗します移行アシスタント実行後に再起動されると、プログレスバーの割と初期段階で再度
再起動になり(Big Surではこの再起動がありません)、その後最後まで起動します
成功する場合はここで移行完了でログインできるのですが、失敗の場合はここで
もう一度「コンピュータはxx秒後に自動的に再起動します」とか表示され再起動され
立ち上がった時は移行されたはずのデータは何も残っていません
英語モードにするとか、OCLP用に緩めたSIPを有効にするとかWI-FI/Bluetoothを無効
にするとかいろいろ試しましたが全滅。もうお手上げです
どなたかこの現象とその解消に心当たりがございませんでしょうか
-
-
投稿者投稿