Jump to content

OpenHaltRestart.kext と現時点の状況


  • Please log in to reply
1 reply to this topic

#1
TennisGeek

TennisGeek

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 127 posts
  • Gender:Male
  • Location:Boston 'burb, born in Japan
  • Interests:Tennis, Computer, Mac
OpenHaltRestart は、 Control-Alt-Delete をまねすることでリスタートしています。

新しい OSXRestart.kext は ACPI でリスタートしています。

その結果は、Chameleon の中に反映されているので、 自分で Chameleon をコンパイルするか、新しいバージョンをまてばリスタートが動くようになるかもしれません。 "RestartFix"

http://www.insanelym...howtopic=199048

また、チップセットによるのですが、シャットダウンはサウスブリッジのレジスタに値を書き込むことで可能になります。
DSDT をパッチするのですが、

OperationRegion (PMRS, SystemIO, 0x1030, One)
Field (PMRS, ByteAcc, NoLock, Preserve)
{
, 4,
SLPE, 1
}

でレジスターを定義しておいて

Method (_PTS, 1, NotSerialized)
{
If (LEqual (Arg0, 0x05))
{
Store (Zero, SLPE)
Sleep (0x10)
}
}

_PTS メソッド中で書き込みます。

http://www.insanelym...p...90780&st=80

私の友人の dlach がラップトップにポートしたもので、最初は Gigabyte のボードで ICH7 などで使われたテクニックですが、 dlach によると、違うサウスブリッジでも同じようなものなので、アドレスの違いはあるものの動くはずだということです。
アドレスの違いについては、サウスブリッジがわかっていれば、スペックシートから割り出せるということです。
つまり、機種によっては 0x1030 の部分さえかえれば、 Intel サウスブリッジのマシンでは、シャットダウンが可能になるはずです。

というわけで、両方をクリアすると OpenHaltRestart.kext も不要になります。

ちなみにわたしは OSXRestart.kext を使っています。

-- TG

#2
Dreamwatcher

Dreamwatcher

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
有用な情報ありがとうございます。

RestartFix_v2.1.zip
からソースを持ってきてChameleon2.0RC4-r684のパッチを作成して適用してみました。

結果、INTELのサウスブリッジ(P55)ではreboot, shutdownともにOKでしたが、NVIDAのMCP79(GeForce 9300M, ION)ではshutdownはできるものの、rebootは効きませんでした。


<key>Kernel Flags</key>
<string>RestartFix=YES</string>

OSXRestart.kextの説明でNVIDIA Chipesetは動かないかもと制限事項があったので、Chameleonで同様にDSDTを修正している場合も同じ制限があるようです。

Attached Files







0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy