6세대 Skylake 노트북에서X86Platform 로드 하기
- goldbat
- 1183
- 9
goldbat님의 기기정보
한성 A46X ,엘지 그램 15zd960, Dell XPS 15 9550
위 노트북을 커스텀맥 하여 사용해오면서 X86Platform을 로드할려고 하였으나 잘 안되었습니다.
대안으로 HWPEnable 을 이용하여 스피드스텝은 잡을수 있었습니다.
ssdtPRGen 을 이용하여 ssdt 를 추출 (use _DSM) 을 사용 Plugin-Type “one” 을 inject 하여 리부팅하면
노트북 3대 모두 CPU(0) panic이 발생하여 사용할수 없었고 , _DSM 을 XDSM 으로 변경하여 리부팅하면 정상 부팅이 되지만,
Plugin-Type “one” inject 가 되질 않아 X86Platform 을 로드 할수가 없더군요~~
저의 풀지 못한 숙제였습니다.
그러다,
Dell XPS 15 9550 안정화 하면서 마침내 찾아 냈습니다.
X86Platform 이 로드 된걸 보실수 있습니다. 파워냅도 활성화 되었구요~~~
엘지 그램 15zd960 도 X86Platform을 로드 되었습니다.
한성 a46x 는 동생이 windows10만 사용하고 있어서 확인 못했습니다만, 로드 될꺼로 봅니다.
로드 방법 :
1. SSDT-pr.aml 을 다운 받습니다. (_DSM 을 사용할수 있도록 해줍니다.) EFI - Clover - ACPI -patched 폴더에 넣어 줍니다.
2. Config.plist 수정
• HWPEnable = Yes
• Piker's MSR 0xE2 lock patch to fix instant reboot(in KernelToPatch)
MatchOS: 10.12
Find: 20b9e200 00000f30
Replace: 20b9e200 00009090
<array>
<dict>
<key>Comment</key>
<string>MSR 0xE2 _xcpm_idle instant reboot(c) Pike R. Alpha</string>
<key>Disabled</key>
<false/>
<key>Find</key>
<data>
ILniAAAADzA=
</data>
<key>MatchOS</key>
<string>10.12</string>
<key>Replace</key>
<data>
ILniAAAAkJA=
</data>
</dict>
</array>
• HWP support model, e.g. MacBook9,1, MacBookPro13,1, MacBookPro13,2, MacBookPro13,3
단, 아이뱅크님의 [끝판왕] 당신의 CPU에 휴식시간을 부여하라! [Rev 16.03.08] 참조 하셔서 X86Platform 이 로드 될수 있는 kext 를 잡아 주셔야 해요
이 글의 출처는 [GUIDE] HWP(Intel Speed Shift) enable with full power management https://www.insanelymac.com/forum/topic/321021-guide-hwpintel-speed-shift-enable-
goldbat
댓글 9
dsdt에 넣지 않고 다른 방법을 찾았습니다.
ssdt만 넣고도 가능했습니다.
https://x86.co.kr/tip/1104585
SSDT.aml.zip
샘풀 기준 i2500k용입니다.
DefinitionBlock ("", "SSDT", 1, "APPLE ", "CpuPm", 0x00001000)
{
External (_PR_.CPU0, DeviceObj) // (from opcode)
External (_PR_.CPU1, DeviceObj) // (from opcode)
External (_PR_.CPU2, DeviceObj) // (from opcode)
External (_PR_.CPU3, DeviceObj) // (from opcode)
Scope (_PR.CPU0)
이런식으로 _PR.CPU0값을 넣어주면 ksj님의 같은 값이 되었습니다. 다른 부분은 동일합니다. 반드시 확인
Scope (\_SB.CPU0)값이 아닌
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
Store ("Method _PR_.CPU0._DSM Called", Debug)
If (LEqual (Arg2, Zero))
{
Return (Buffer (One)
{
0x03
})
}
Return (Package (0x02)
{
"plugin-type",
One
})
}
}
당연히 dsm값 플러그인 추가
저의 경우가 이부분때문에 cpu0 panic 이 발생하였기에 그동안 plugin type one 을 injection 못했던 이유입니다.
SSDT-pr.aml 에서도 _DSM 부분이 있습니다.
plugin type one 을 injection이 문제가 있었군요...
제가 댓글 ssdt만으로도 가능할 수 있다는 것을 알리고 싶어서..
dsdt는 초보가 손되기 어렵잖아요...
ssdt는 기본 패치 문제는 없으니까...
에러잡기도 편하고 ..
문제의 원인도 쉽게 알 수 가 있어서..
감사합니다.
아무리 AGPM 올리려해도 못올렸는데 덕분에 올렸습니다.
이 때문은 아니고 잠자기는 잘 되는데 AppleIntelCPUPowerManagement 가 로딩되지 않는데
괜찮은 것인지 궁금합니다.
Model Identifier: MacBookPro11,2 , Processor Name: Intel Core i7, Processor Speed: 2.10 GHz, Total Number of Cores: 4
미리 감사드립니다.
AppleIntelCPUPowerManagement:
Version: 220.0.0
Last Modified: 11/08/2017, 10:04 AM
Bundle ID: com.apple.driver.AppleIntelCPUPowerManagement
Loaded: No
Obtained from: Apple
Kind: Intel
Architectures: x86_64
64-Bit (Intel): Yes
Location: /System/Library/Extensions/AppleIntelCPUPowerManagement.kext
Kext Version: 220.0.0
Loadable: Yes
Dependencies: Satisfied
Signed by: Software Signing, Apple Code Signing Certification Authority, Apple Root CA