HP 820 G2变色龙安装10.11.6基本完美
初始状态:
一块ssd硬盘,MBR格式分区,安装了WIN7 64位.
不想动win系统,因此就安装在硬盘的扩展分区
电脑配置:
cpu: i7-5600u
声卡: ALC280
显卡: HD5500
有线网卡: intel 218
无线网卡: intel ac7265(无法驱动,蓝牙免驱)
压缩磁盘、分区这些都不说了,主要就是分出两块来,一个用于写懒人版的cdr镜像,一个分区用于安装系统。
启动办法是使用EasyBCD增加一个菜单,然后在菜单中启动变色龙的光盘镜像。
这么做的目的是尽量少修改windows系统。
镜像取自http://bbs.pcbeta.com/viewthread-1702502-1-2.html
文件大小:7677251584 字节
修改时间:2016年7月21日 16:27:18
MD5 :FD03267F7948DCFBF561B8E2EFD8B52A
SHA1 :4C200BEA4E57B89FF70D1239B47C1697106DEF17
CRC32 :89E0CA2B
这个镜像里面的smbios是imac,
同时在e/e目录下的FakeSMC在hp 820 g2上运行有问题,我就换成新版本的,进了安装界面
安装后,修改dsdt基本是参照大神RehabMan的github上的说明修改的
参考https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/blob/master/patches/02_DSDTPatch.txt进行修改
由于笔记本型号毕竟不一样,我基本上是看了这些修改点,然后手工修改dsdt完成整个过程。
其实这些补丁有点正则表达式知识的,都是能够看得懂的。
修改dsdtr的大致步骤如下:
Chameleon_2.3svn_r2839_Enoch_10.12_pkg+wowpc
CDR下载自
http://bbs.pcbeta.com/viewthread-1702502-1-2.html
文件名称:C:\El Capitan10.11.6Installer.cdr
文件大小:7677251584字节
修改时间:2016年7月21日16:27:18MD5 :FD03267F7948DCFBF561B8E2EFD8B52A
SHA1 :4C200BEA4E57B89FF70D1239B47C1697106DEF17
CRC32 :89E0CA2B
链接:http://pan.baidu.com/s/1bpaBXRD 密码:6tec
安装时CDR中的FakeSmc.kext在820上会kernel panic,替换最新版本的FakeSmc后OK
DSDT修改:
repair error.
Store (\_GPE.VHOV (Arg0, 0x00),0x01)
Local1=> Store (\_GPE.VHOV (Arg0, 0x00, 0x01),Local1)
参考https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/blob/master/patches/02_DSDTPatch.txt进行修改
into device label WMID remove_entry;into all code_regex Name\s*\(WSIP,[\s\S]*Name\s*\(ETYP,\s*Buffer\s*\(.*\)\s*\{\}\) remove_matched;into_all all code_regex \.AC, replaceall_matched begin .ADP1, end;into_all all code_regex \(AC, replaceall_matched begin (ADP1, end;into all label AC set_label begin ADP1 end;into device label ADP1 code_regex Name\s+\(_PRW,[\s\S]*\}\) remove_matched;into device label ADP1 insert
begin
Name (_PRW, Package() { 0x18,0x03 })
end;into method label _DSM parent_label PS2K remove_entry;into device label PS2K insert
begin
Method (_DSM, 4,NotSerialized)\n
{\n
If (LEqual (Arg2,Zero)) { Return (Buffer() { 0x03 } ) }\n
Return (Package()\n
{\n"RM,oem-id", "HPQOEM",\n"RM,oem-table-id", "167C",\n
})\n
}\n
end;# Inject Audio info
into method label _DSM parent_label HDEF remove_entry;into device label HDEF insert
begin
Method (_DSM, 4,NotSerialized)\n
{\n
If (LEqual (Arg2,Zero)) { Return (Buffer() { 0x03 } ) }\n
Return (Package()\n
{\n"hda-gfx", Buffer() { "onboard-1" },\n"layout-id", Buffer() { 0x0C, 0x00, 0x00, 0x00 },\n"PinConfigurations", Buffer() { },\n
//"MaximumBootBeepVolume", 77,\n
})\n
}\n
end;参考如下文档里layout-id应该是3或者4
# https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch/blob/master/Resources_ProBook/README.txt
# http://www.tonymacx86.com/threads/hp-elitebook-g2-alc280-combo-jack-wip.191207/#post1242688
# IRQ fix
into device name_hid PNP0000 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;into device name_hid PNP0100 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;into device name_hid PNP0B00 code_regex IRQNoFlags\s\(\)\n\s+\{(\d+)\} remove_matched;into device name_hid PNP0103 code_regex IRQNoFlags\s\(\)\n\s+\{.*\} removeall_matched;into device name_hid PNP0103 code_regex Name\s\(([^,]+),\sResourceTemplate\s\(\)\n\s+\{((?:.|\n)*)\}\) replace_matched
begin
Name (%1,ResourceTemplate()\n
{\n
IRQNoFlags() {0, 8, 11, 15}\n
%2})\n
end;# Rename all instances of GFX0 to IGPU
into_all all code_regex GFX0 replaceall_matched begin IGPU end;into_all all label GFX0 set_label begin IGPU end;GFX0 => GFX0
inject"hda-gfx"="onboard-1"into IGPU (GFX0 originally)
B0D3=> HDAU
inject"hda-gfx"="onboard-1"into HDAU
# Rename all instances of GFX0 to IGPU
into_all all code_regex GFX0 replaceall_matched begin IGPU end;into_all all label GFX0 set_label begin IGPU end;GFX0 => GFX0
inject"hda-gfx"="onboard-1"into IGPU (GFX0 originally)
# Brightness control fix
into device label PNLF remove_entry;into scope label \_SB insert
begin
Device (PNLF)\n
{\n
Name (_HID, EisaId ("APP0002"))\n
Name (_CID, "backlight")\n
Name (_UID, 10)\n
Name (_STA,0x0B)\n
}\n
end;into_all method code_regex If\s+\([\\]?_OSI\s+\(\"Windows\s2012\"\)\) replace_matched begin If(LOr(_OSI("Darwin"),_OSI("Windows 2012"))) end;# RTC fix
into device name_hid PNP0B00 code_regex (IO\s\((?:\s*[^,]+,\s*(?:\/\/\s.*)?\s*\n)+\s*)(\dx\d+)(,\s*(?:\/\/\s.*)?\s*\n\s*\)) replace_matched begin %10x02%3 end;http://www.insanelymac.com/forum/topic/289798-applertc-patch-cmos-reset-after-sleepwake/
# SMBUS fix
into device label BUS0 parent_adr 0x001F0003 remove_entry;into device name_adr 0x001F0003 insert
begin
Device (BUS0)\n
{\n
Name (_CID, "smbus")\n
Name (_ADR,Zero)\n
Device (DVL0)\n
{\n
Name (_ADR,0x57)\n
Name (_CID, "diagsvault")\n
Method (_DSM, 4,NotSerialized)\n
{\n
If (LEqual (Arg2,Zero)) { Return (Buffer() { 0x03 } ) }\n
Return (Package() {"address",0x57 })\n
}\n
}\n
}\n
end;# Add missing IMEI device
into device label IMEI parent_label PCI0 remove_entry;into device label PCI0 insert
begin
Device (IMEI)\n
{\n
Name (_ADR,0x00160000)\n
}\n
end;# HPET fix to avoid AppleIntelCPUPowerManagement panic
into method label _STA parent_hid PNP0103 remove_entry;into device name_hid PNP0103 code_regex Name\s\(_STA\,\s+0x0F\) remove_matched;into device name_hid PNP0103 insert
begin
Name (_STA,0x0F)\n
end;# repair HD5500"device-id",Buffer (0x04)
{
0x16, 0x16, 0x00,0x00
}, "AAPL,ig-platform-id",Buffer (0x04)
{
0x02, 0x00, 0x16,0x16
}, "model",Buffer (0x17)
{"Intel HD Graphics 5500"}, 2.使用UE修改AppleIntelBDWGraphicsFramebuffer的BIN文件,将其中的 4139c4 763e 改成 4139c4 eb3e3.Extra/Extensions目录下需要放FakePCIID.kext / FakePCIID_Intel_HD_Graphics.kext / FakePCIID_Intel_HDMI_Audio.kext等几个
click again on + and add:
Name* : disabled:IOAHCIBlockStorage
Find* :[HEX]: 004150504C452053534400
Replace*[HEX] : 0000000000000000000000Comment: Enable TRIM for SSD1.进入SLE目录下去找到IOAHCIBlockStorage(在IOAHCIFamily.kext\Contents\PlugIns目录下),使用UE修改\IOAHCIBlockStorage.kext\Contents\MacOS目录下的IOAHCIBlockStorage文件
修改DSDT及SSDT中涉及HDAU中的layout-id为4
在Extra/Extensions目录下需要放AppleALC.kext
将EC0下面16bit的变量拆分成两个8bit,同时修改使用这些变量的函数,添加B1B2函数(由于没有32BIT的,因此没有B1B4函数)
例如:BDC, 16, => BDC0, 8, BDC1, 8,Store (BPR, Local3) => Store (B1B2 (BPR0, BPR1),Local3)
在Extra/Extensions目录下需要放ACPIBatteryManager.kext
删除之前添加的PNLF设备
在IGPU下添加PNLF设备,相关信息从如下链接中取得
https://github.com/RehabMan/Laptop-DSDT-Patch/blob/master/graphics/graphics_PNLF_haswell.txt
在Extra/Extensions目录下需要放ACPIBacklight.kext