[安裝手冊] HP ProBook/EliteBook/Zbook using Clover UEFI hotpatch (10.11)

[安裝手冊] HP ProBook/EliteBook/Zbook using Clover UEFI hotpatch (10.11)

原文鏈接:
http://www.tonymacx86.com/threads/guide-hp-probook-elitebook-zbook-using-clover-uefi-hotpatch-10-11.189416/

(本翻譯僅供參考,建議配合原文一起使用)

本手冊一步一步的教你安裝 EI Captian/Yosemite到你的使用Intel顯卡的ProBook/EliteBook/Zbook機器。

提示:Broadwell和Skylake平臺,你必須安裝10.11。Broadwell對10.10支持的并不好。Skylake只支持10.11,且在10.11.4版本運行的足夠完美。

提示:本手冊同樣適用于Mavericks(需要硬件支持)雖然我沒怎么測試。事實上,我用同樣的方法將老舊的10.6.8安裝到了我的4530s上。當然,許多最新的 kexts 并不支持老版本的 OSX,無線網卡在老系統上也沒那么容易驅動,你可能要去找老驅動或者換網卡。

我有倆筆記本,一個ProBook 4530s,一個ProBook 4540s,使用本文中所采用的 hotpatch 方法用了有一陣子。這些資料和配置也在其他型號的機器上測試過了,當然你認為這是測試版也沒啥問題。

ProBook Install 已經不再受支持,所以本文同樣也是對nguyenmac安裝手冊(http://www.tonymacx86.com/el-capita...-hp-elitebook-probook-others-clover-uefi.html)的一個替代。

What you need

折騰必備

兼容的筆記本型號:

  • 6系主板的型號: HP Probook 4x30s, 6x60b, Elitebook 2x60p, 8x60p, 8x60w

  • 7系主板的型號: HP Probook 4x40s, 4x0 G0, 6x70b, Elitebook 8x70p, 2x70p, 9470m

  • 8系主板的型號: HP 3x0 G1, Probook 4x0 G1/G2, Elitebook 8x0 G1, ZBook G1, Folio 1040 G1

  • 9系主板的型號: HP Probook 4x0/6x0/8x0/ZBook G2

  • 100系主板的型號: HP ProBook 4x0 G3 目前不是很確定,你可以試試,歡迎反饋。

  • OS X Yosemite 或者 El Capitan 的鏡像,可以從 Mac App Store 下載

  • 8GB 以上U盤

  • 兼容無的d線網卡

  • BIOS 從 HP 網站升級到最新型號

Intel 以外的顯卡暫時不被支持。雖然能找到一些方法去使用,但是這些都需要單獨修改顯示方面的配置,加入其他的kext,調整ACPI,本文不討論這些。

兼容網卡

  • HP Probook 4x30s: the laptop has whitelist BIOS, so only usable card is HP-branded Atheros AR5B195. You can also use a rebranded AR5BHB92 (AR9280).
  • HP Probook 6x60b/5330m, HP Elitebook 8x60p/2x60p: the laptop has whitelist BIOS, so only usable card is HP-branded Broadcom 43224HMS (582564-001/582564-002)
  • For laptops with NGFF/M.2 WiFi slot: BCM94352Z
  • Other laptop:
    WIFI ONLY: Atheros AR9280/9285, Broadcom 4322/43224 (better OS X feature support)
    WIFI+BT: AR5B195 (not recommended), Broadcom 43225HMB/4352HMB (better OS X feature support)

提示:HP 6x70b/8x70/2x70/9470m 內置藍牙模塊,所以如果你插的是帶藍牙模塊的無線網卡,那么藍牙不被使用。

關于 OSX 無線網卡的 FAQ:http://www.tonymacx86.com/el-capita...faq-read-first-laptop-frequent-questions.html

提示:USB 網卡不推薦,速度慢,不穩定

BIOS 設置

開始之前,先將 BIOS 恢復一下默認設置。

然后確認以下設置:

  • UEFI boot is enabled (hybrid/with CSM for best result)
  • secure boot is disabled
  • disable fast boot
  • IGPU graphics memory set to 64mb (Broadwell and Skylake)

提示:如果你的筆記本有switchable graphics相關的設置,打開它。這樣在 Windows 下,它能正確的切換,在 Mac 下,獨立顯卡會被通過ACPI patches禁用掉。如果你也想在 Windows 中禁用屌,你得通過DGPU設置來完成。(譯注:感覺這塊兒沒啥用,后面還有幾句,沒翻譯)

準備 USB 安裝和初始化

安裝 OS X 之前,你可以通過 HP 提供的工具創建一個恢復 U 盤,這樣當你想恢復回 Windows 的時候,可以通過它來恢復。

(譯注:不太確定是不是 HP 提供的,反正是做個恢復 U 盤)

有一個不影響 Windows 安裝 OSX 的奇技淫巧: http://www.tonymacx86.com/multi-booting/133940-mavericks-windows-8-same-drive-without-erasing.html ,有需求的自己看。

然后這是份關于筆記本創建Clover UEFI的指南:http://www.tonymacx86.com/el-capita...de-booting-os-x-installer-laptops-clover.html

重要提示:

  • 安裝完成后,拷貝RealtekRTL8111.kextIntelMausiEthernet.kextClover/kexts/Other目錄,是必須的,否則沒以太網。如果你確定你的無線網卡兼容,你也可以選擇拷貝FakePCIID.kext, FakePCIID_Broadcom_WiFi.kext, 和 ProBookAtheros.kextClover/kexts/Other

提示:
FakePCIID.kextFakePCIID_Broadcom_WiFi.kext 在: https://github.com/RehabMan/OS-X-Fake-PCI-ID. ProBookAtheros.kext 在4x30s DSDT patch github: https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch

  • 使用createinstallmedia。它工作的很好,同時也可以作為 OS X recovery 分區來使用。

  • 最好使用USB2的介質。?USB3 在六系準系統上,可能會有問題。

  • 一些筆記本需要使用替換DropTables。比如使用 Sandy Bridge CPU turbo boost enabled 的型號(如Core i5-2xxx, Core i7-2xxx, but not Core i3-2xxx等)。

安裝之后

按照上一節提到的方式安裝 Clover UEFI。安裝完畢并正確配置(config.plist, kexts, 就像你做啟動盤時那樣)后,你就能從硬盤引導啦。這時你的引導文件應該是和你的U盤 Clover 是一樣的。注意別忘了HFSPlus.efiHPFanReset.efi

(譯注:這時可以把U盤里的Clover目錄整個拷貝到硬盤的EFI分區,我就是這么干的。)

此時雖然系統被啟動起來了,但還是有許多硬件沒有被正確驅動。我們需要打補丁(patch DSDT),合理配置config.plist,安裝必要的驅動文件。

在此之前,你已經將RealtekRTL8111kext/IntelMausiEthernet.kext注入到了 Clover,你應該已經能上網了。不管 WIFI 還是有線網,連接它,然后繼續往下看。

補丁和所用到的工具很容易得到:https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch
(譯注:像 RehabMan 大神致敬,本文以及這個 Repo 都是大神的作品)

To start, the developer tools must be installed. Run Terminal, and type:

開始之前,Mac 的開發工具必須被安裝。打開終端( Terminal ),然后輸入:

git

系統會提示你安裝開發者工具包。如果你的系統已經能上網,它將會自動安裝。確認你已經安裝好了它們,繼續往下看。

這時可以把剛剛提到的補丁和工具包從 github 拉回來了。

終端中輸入:

mkdir ~/Projects
cd ~/Projects
git clone https://github.com/RehabMan/HP-ProBook-4x30s-DSDT-Patch probook.git

接著安裝驅動和工具:

cd ~/Projects/probook.git
./download.sh
./install_downloads.sh

download.sh腳本將會自動把所有需要的資源的最新版拉回來(patchmatic,aisle,MaciASL)以及所有依賴的驅動(FakeSMC.kext及其他)從bitbucket。install_downloads.sh將會自動安裝它們到相應位置。

這時你可以重啟計算機驗證剛剛步驟的成果。重啟可能有點慢,不要緊張,這是因為kexts(驅動)被安裝好了,但是 ACPI 沒有被正確配置。

下面需要給系統打補丁了,這是關鍵的一步。

剛剛下載的補丁文件,不再使用 DSDT/SSDTs 方法打補丁,而是采用 Clover hotpatches 技術來打補丁,這么做的好處是侵略性更小,依賴額外準備好的 SSDTs 文件,。這種方式比之前的補丁方式侵略性小,也更容易操作一些,不再extract/disassemble/patch/compile這些步驟。(在 HP ProBook Installer 時代,這些步驟是自動化完成的)。

(譯注:這段翻譯的不是很準確,是根據自己的理解翻譯的,歡迎改正)

終端下輸入:

cd ~/Projects/probook.git
./build.sh

build.sh腳本將所依賴的 SSDT 文件編譯出來(通過 iasl ),生成后的文件在./build目錄。它也會生成一些稍后會用到的配置文件。

看看都生成了些啥:

cd ~/Projects/probook.git
ls build

正確的返回結果類似:


SSDT-1040-G1-Haswell.aml    SSDT-8x70.aml            SSDT-PRW.aml
SSDT-2x70.aml            SSDT-9x70.aml            SSDT-SATA.aml
SSDT-3x0-G1.aml            SSDT-BATT-G2.aml        SSDT-SMBUS.aml
SSDT-4x0-G0.aml            SSDT-BATT-G3.aml        SSDT-USB-4x0-G3.aml
SSDT-4x0-G1-Haswell.aml        SSDT-BATT.aml            SSDT-USB-4x0s-G2.aml
SSDT-4x0-G1-Ivy.aml        SSDT-FAN-MOD.aml        SSDT-USB-4x30s.aml
SSDT-4x0-G2-Broadwell.aml    SSDT-FAN-ORIG.aml        SSDT-USB-4x40s.aml
SSDT-4x0-G2-Haswell.aml        SSDT-FAN-QUIET.aml        SSDT-USB-6x60.aml
SSDT-4x0-G3-Skylake.aml        SSDT-FAN-READ.aml        SSDT-USB-6x70.aml
SSDT-4x30s.aml            SSDT-FAN-SMOOTH.aml        SSDT-USB-820-G2.aml
SSDT-4x40s.aml            SSDT-HACK.aml            SSDT-USB-840-G2.aml
SSDT-6x60.aml            SSDT-IGPU-HIRES.aml        SSDT-USB-850-G2.aml
SSDT-6x70.aml            SSDT-IGPU.aml            SSDT-USB-8x0s-G1.aml
SSDT-8x0-G1-Haswell.aml        SSDT-KEY102.aml            SSDT-USB-8x60.aml
SSDT-8x0-G1-Ivy.aml        SSDT-KEY87.aml            SSDT-USB.aml
SSDT-8x0-G2-Broadwell.aml    SSDT-LANC_PRW.aml        SSDT-XOSI.aml
SSDT-8x0-G2-Haswell.aml        SSDT-LPC.aml            SSDT-ZBook-G2-Haswell.aml
SSDT-8x60.aml            SSDT-PNLF.aml            readme.txt

這些文件你不是全都用的上,需要根據你的配置和準系統型號來選擇。它們最終會被安裝到 EFI/Clover/ACPI/patched

To mount your EFI partition, use the mount_efi.sh shell script
from the project:

首先使用mount_efi.sh掛載 EFI 分區:

cd ~/Projects/probook.git
sudo ./mount_efi.sh /

所有的準系統型號都需要以下文件:

SSDT-HACK.aml
SSDT-LPC.aml
SSDT-PNLF.aml
SSDT-PRW.aml
SSDT-SATA.aml
SSDT-SMBUS.aml
SSDT-USB.aml
SSDT-XOSI.aml

其他依賴:

One of the model specific SSDTs such as SSDT-4x30s.aml or SSDT-4x40s.aml, etc.

準系統需要特定的依賴,比如SSDT-4x30s.amlSSDT-4x40s.aml這種和型號相關的文件。基于此,你需要指定:

使用 SSDT-IGPU.aml 還是 SSDT-IGPU-HIRES.aml
使用 SSDT-BATT.aml, SSDT-BATT-G2.aml, 還是 SSDT-BATT-G3.aml.
使用 SSDT-KEY102.aml 還是 SSDT-KEY97.aml
指定 USB customizations SSDT-USB-*.aml

還有你的風扇控制,使用SSDT-FAN-READ.aml, SSDT-FAN-SMOOTH.aml, SSDT-FAN-ORIG.aml, 還是 SSDT-FAN-QUIET.aml

如果沒有自定義 USB SSDT,不要使用相關的文件,參考 USB customization 章節。

If there is not a system specific SSDT, you can try to use one that is close, but it is better if you provide the materials requested in "Unsupported laptops", so a correct SSDT can be created.

如果沒有找到和你準系統相關的 SSDT,可以選擇一個接近的型號試試。更好的選擇是參考 ”Unsupported laptops” 部分,創建一個符合你系統的 SSDT。

舉個例子,我使用ProBook 4530s1366x768屏幕,那么依賴:

SSDT-HACK.aml
SSDT-LPC.aml
SSDT-PNLF.aml
SSDT-PRW.aml
SSDT-SATA.aml
SSDT-SMBUS.aml
SSDT-USB.aml
SSDT-XOSI.aml
SSDT-4x30s.aml
SSDT-IGPU.aml
SSDT-BATT.aml
SSDT-KEY102.aml
SSDT-USB-4x30s.aml
SSDT-FAN-MOD.aml

在我的ProBook 4540s1080p屏幕上,我使用:

SSDT-HACK.aml
SSDT-LPC.aml
SSDT-PNLF.aml
SSDT-PRW.aml
SSDT-SATA.aml
SSDT-SMBUS.aml
SSDT-USB.aml
SSDT-XOSI.aml
SSDT-4x40s.aml
SSDT-IGPU-HIRES.aml
SSDT-BATT.aml
SSDT-KEY102.aml
SSDT-USB-4x40s.aml
SSDT-FAN-MOD.aml

在更新的機器,比如 Skylake 的ProBook 4x0 G3,使用:

SSDT-HACK.aml
SSDT-LPC.aml
SSDT-PNLF.aml
SSDT-PRW.aml
SSDT-SATA.aml
SSDT-SMBUS.aml
SSDT-USB.aml
SSDT-XOSI.aml
SSDT-4x0-G3-Skylake.aml
SSDT-IGPU.aml
SSDT-BATT-G3.aml
SSDT-KEY102.aml
SSDT-USB-4x0-G3.aml
SSDT-FAN-MOD.aml

根據你的硬件,選擇你的文件(別拉下風扇控制)

You could copy them with Finder or you can use Terminal.

從 Finder 復制這些文件,或者終端。

install_acpi.sh文件提供了一些配置好的文件,讓這個步驟更容易。

舉個例子,我的4530s1366x768分辨率的屏幕:

./install_acpi.sh install_4x30s

我的4540s1080p分辨率屏幕:

./install_acpi.sh install_4x40s_hires

想知道所有的可選項,可以輸入:

./install_acpi.sh help

默認使用SSDT-FAN-READ.aml,從 BIOS 中讀取風扇控制參數。如果你想改變這個設置,你需要在調用install_acpi.sh的時候指定第二個參數。可選的參數有:READQUIETSMOOTHMOD

在我的4540s,我喜歡用MOD作為參數。

./install_acpi install_4x40s_hires MOD

如果你的準系統型號沒有在安裝腳本找到,那是因為這個型號還沒被支持。查看Unsupported laptops部分。

電源管理

使用Pike R. AlphassdtPRgen.sh腳本:https://github.com/Piker-Alpha/ssdtPRGen.sh

使用方法參看這個項目的README

復制生成的SSDT.amlEFI分區的/EFI/Clover/ACPI/patched/SSDT.aml

當前版本使用步驟縮水版大概是:

cd ~/Projects/probook.git
curl --fail -o ./ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/master/ssdtPRGen.sh
chmod +x ./ssdtPRGen.sh

如果你使用更新型號(Broadwell, Skylake 和未來其他型號的 CPU 芯片),你需要使用 beta 分支:

cd ~
curl --fail -o ./ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/Beta/ssdtPRGen.sh
chmod +x ./ssdtPRGen.sh

然后運行腳本:

./ssdtPRGen.sh

問你啥你都回答n

生成的文件默認在:~/Library/ssdtPRgen/SSDT.aml

拷貝這個文件到 EFI 目錄,/EFI/Clover/ACPI/patched/SSDT.aml

cd ~/Projects/probook.git
sudo ./mount_efi.sh /
cp ~/Library/ssdtPRgen/ssdt.aml /Volumes/EFI/EFI/Clover/ACPI/patched/SSDT.aml

hibernation模式不被黑蘋果支持,你需要關掉它:

sudo pmset -a hibernatemode 0
sudo rm /var/vm/sleepimage
sudo mkdir /var/vm/sleepimage

在系統升級后,hibernatemode會被重新打開,需要手動關閉。最后一行創建sleepimage目錄,可能會幫助。

Note: It is common with certain Ivy computers with ULV CPUs and MacBookAir5,x SMBIOS to need kernel flag -xcpm. If you get a panic upon boot, add the -xcpm kernel flag to config.plist/Boot/Arguments.

提示:

最終config.plist

到現在為止,你還在使用最初用于安裝引導的那個config.plst。現在所有必須的 ACPI 文件已經放好了,可以更新一下這個 config.plist 了。

首先,掛載EFI分區:

cd ~/Projects/probook.git
sudo ./mount_efi.sh /

config.plist和你的硬件有關系。所有的 plist 文件在./config目錄下。你能瀏覽到它們:

cd ~/Projects/probook.git
ls config

文件信息為:

config_1040_G1_Haswell.plist    config_4x0s_G2_Haswell.plist    config_8x0s_G1_Ivy.plist
config_2x70p.plist        config_4x0s_G3_Skylake.plist    config_8x0s_G2_Broadwell.plist
config_3x0_G1.plist        config_4x30s.plist        config_8x0s_G2_Haswell.plist
config_4x0s_G0.plist        config_4x40s.plist        config_8x60p.plist
config_4x0s_G1_Haswell.plist    config_6x60p.plist        config_8x70p.plist
config_4x0s_G1_Ivy.plist    config_6x70p.plist        config_9x70m.plist
config_4x0s_G2_Broadwell.plist    config_8x0s_G1_Haswell.plist    config_ZBook_G2_Haswell.plist

拷貝適合你硬件的 plist 文件到你EFI分區的EFI/Clover/config.plist

提示:如果你安裝過程總,自定義了 DropTables,你可能需要引入它們在你最終的config.plist 中。

拿我的 ProBook 4530s 再舉個例子:

cd ~/Projects/probook.git
cp ./config/config_4x30s.plist /Volumes/EFI/EFI/Clover/config.plist

你也可以使用 Finder 拷貝這些文件。

After copying the config.plist from the repo to EFI/Clover/config.plist, you should customize the SMBIOS so you have a unique serial. You can use Clover Configurator to do this (use google to find/download it). DO NOT use Clover Configurator to edit your actual config.plist. Instead edit a "dummy" config.plist to create the SMBIOS data and then use copy/paste with a plist editor (I use Xcode) to copy the SMBIOS section into my active config.plist. Clover Configurator is too buggy and cannot be trusted with edits to your real config.plist. Make sure you use the same SMBIOS model as the original plist used.

把正確的 config.plist 放到 EFI/Clover/config.plist 之后,你可能有根據個人信息自定義 SMBIOS 的需求。你可以使用Clover Configuration生成這些信息,然后把SMBIOS的內容拷貝到你自己的config.plist中。注意,千萬不要直接編輯你的config.plistClover Configuration 太多 Bug,不可信,它會抹掉你的重要信息。

不要停止閱讀

安裝過程大部分已經完成,但不要停止閱讀本手冊。下面有一些重要信息你需要知道。

確認已經看到了Known Problems,特別是Audio:章節。如果完成安裝之后你重啟電腦發現沒有聲音,不要驚慌,照著那部分內容重建緩存。

當遇到問題無法解決需要問的時候,不要忽略Problem Reporting章節中所說的必要文件,帶上它們,問題才更有可能解決。

更新補丁

From time to time, updates may become available to the project repository. In the event of such updates, you may want to update your copies, and re-patch DSDT/SSDT with the updates.

隨著時間的推移,新的補丁包可能更有效。升級到新版的補丁,你需要更新你本地的文件,重新patch DSDT/SSDT。

我們用了 git,這一切只需要幾條命令:

cd ~/Projects/probook.git
git stash
git pull
./download.sh
./install_downloads.sh
./build.sh

In the case any of the SSDTs are updated, you will need to copy them to your EFI partition (as when you originally installed). Same goes for updates to the plist files. It is a good idea to update to the latest files before contemplating applying major updates to the system.

所有的 SSDTs 文件都會被更新,你需要重新拷貝它們到你的 EFI 分區(就像你之前做的一樣)。更新你的 plist 文件也是同樣的操作。在打算進行系統主版本升級(10.10->10.11)的時候,值得進行一次更新。

工作狀況

我已經測試通過的:

  • UEFI booting via Clover
  • built-in keyboard (with special function keys)
  • built-in trackpad (basic gestures)
  • HDMI video/audio with hotplug
  • AirPlay mirroring to AppleTV
  • WiFi, provided you have compatible hardware
  • Bluetooth (with handoff) using BCM94352HMB
  • native USB3 with AppleUSBXHCI (USB2 works also) (except 10.11 with 6-series laptops with NEC/Renesas)
  • native audio with AppleHDA (using injector for easy updates), including headphone
  • built-in mic
  • built-in camera (if you are lucky)
  • native power management
  • battery status
  • backlight controls with smooth transitions, save/restore across restart
  • accelerated graphics
  • wired Ethernet
  • Mac App Store working
  • Messages/FaceTime (working on 10.10.3 even though I didn't run through the guide: http://www.tonymacx86.com/general-help/110471-how-fix-imessage.html)

沒有測試過/不工作的/有問題的:

  • you may notice the screen flicker on certain websites/apps with gray gradients
  • card reader is not working on some models (would require significant development effort, not important to me)

已知問題

Find My Mac/鎖定:Find My Mac不能正確工作,不要鎖定你的 Mac 因為它很難在被解開。

Wifi 在休眠后喚醒變慢:禁用SysPrefs->Energy Saver 中的 Wake for network access

聲音:在重新安裝/升級之后,聲卡可能掛了。

修復

  • 重啟 without caches (在 Clover, 選擇 without caches)
  • 重新生成緩存:
sudo touch /System/Library/Extensions && sudo kextcache -u /
  • 正常啟動

以下內容暫時沒有翻譯,多是更新、舊系統升級的部分。

Audio: External mic via requires mono-stereo adapter

Audio: If your laptop has a "combo jack" (combo headphones, external mic), the external mic will not work. Note: This is except for laptops with ALC280. The needed XML is in the project to enable full headset switching (4 pin) for ALC280 only equipped laptops such as the 8x0 G2, ZBook G2. Tested on the EliteBook 850 G2 Broadwell.

WiFi not working: Please realize you must install compatible hardware. Most of these laptops do not come with supported WiFi cards. If you have installed a compatible WiFi card, test it on Windows before concluding there is a problem with OS X. Finally, make sure the device is powered on. There is button on your keyboard deck for WiFi radio power. The LED often does not reflect the true state of power to the device, so don't mash it like a maniac. Press it once, and wait for the networks to populate... it is not instant. If it doesn't work, press again, and again... wait for the networks. If it is not working, check antenna connections and test on Windows.

Camera after sleep: On some laptops (4540s, others?) the Camera may intermittently not be detected after sleep (seems longer sleeps more than shorter sleeps). It is alleviated somewhat by portType=4 for the port associated with the camera, but still may happen occasionally. Workaround: sleep the laptop again, wake.

Slow boot and constant fsck with certain SSDs: If you have fsck always running on boot, disable TRIM. The final config.plist used in this guide always enables the TRIM patch. You can easily disable it by setting Disabled=true. You will notice your boot is extremely slow and you will notice the fsck in verbose boot or system.log. I have this issue with my desktop and Mushkin SSDs, and has been reported here with Intel SSDs. I have no issue with Crucial (M4) or Samsung (EVO).

USB customization

There are several USB SSDTs (build/SSDT-USB*.aml) provided for a few models. But you will notice that not all models are accounted for. Since USBInjectAll.kext is being used, all ports will be injected for models which lack a custom USB SSDT, but it is optimal to only inject the ports needed.

To assist in creating a new USB SSDT, the following procedure should be followed:

  • enable the port limit patch if necessary (XHC 8086:8xxx and 100-series XHC).
    (you will find the port limit patch in the config.plist but disabled by default)
  • run IORegistryExplorer v2.1 (see "Problem Reporting" below for link)
  • plug a USB3 device into each USB port (does not need to be all ports simultaneously)
  • plug a USB2 device into each USB port (does not need to be all ports simultaneously)
  • go back to the running instance of IORegistryExplorer and save the resulting ioreg file

Reply with an a note regarding your laptop hardware details and the resulting ioreg file. From the data in the ioreg a custom SSDT for your USB ports can be created.

The same procedure can be used if your USB ports/devices are not working (or some of them not working) even if you have a custom USB SSDT. Just boot with kernel flag -uia_ignore_rmcf so that the current custom configuration (for USBInjectAll.kext) is not in effect.

Other post-install tasks

Trackpad: Be sure to visit the options in SysPrefs->Trackpad and change them to your liking.

Trackpad three finger support: You can configure three finger swipes in SysPrefs->Keyboard->Shortcuts. Instead of pressing keys for a given function, do the three finger swipe (up/down/left/right).

Disable trackpad when using an external mouse: The latest script installs the VoodooPS2Daemon. It allows you to disable the built-in trackpad when a USB mouse is plugged in. Just check the box in SysPrefs->Accessibility->"Mouse & Trackpad".

Bluetooth: If you get the Bluetooth Setup Assistant popup, go to SysPrefs->Bluetooth->Advanced, uncheck the boxes.

Major updates

For example... 10.10 to 10.11.

First step should be to update to the latest repository as described in "Updates to the patch repositories".

Also update Clover to the latest using the Clover installer.

Also update config.plist at EFI/Clover/config.plist to the latest content from the repo. Be sure to retain your own SMBIOS data at config.plist/SMBIOS.

Now you can update via the App Store. Just boot the installer/updater upon restart.

After updating, run ./install_downloads.sh again:
Code (Text):

cd ~/Projects/probook.git
./install_downloads.sh

The reason for running ./install_downloads.sh both before and after the update is because the kexts installed by install_downloads.sh may depend on the version of OS X currently running.

Mavericks compatibility

This guide will also work with Mavericks.

Here are some notes/exceptions regarding Mavericks:

  • not much testing with Mavericks
  • FakePCIID_HD4600_HD4400.kext is installed on Mavericks even though it is not needed (doesn't seem to do any harm)
  • AppleHDA_ProBook.kext must be regenerated for Mavericks

The AppleHDA_ProBook.kext injector checked into the project is for the current version of El Capitan.

To regenerate it under Yosemite/Mavericks:
Code (Text):

cd ~/Projects/probook.git
./patch_hda.sh
./install_downloads.sh

That will generate AppleHDA_ProBook.kext in the probook.git project directory and install it to /S/L/E. You can also install it with ./install_downloads.sh or with Kext Wizard if you wish.

Note: I haven't tested this guide end-to-end, but for example the same ACPI/kext setup works all the way down to 10.6.8 on my 4530s.

To transition from PBI-CE based install

If you used the ProBook Installer-Clover Edition (PBI-CE), you can transition to this hotpatch setup:

  • remove all files in EFI/Clover/ACPI/patched except for SSDT.aml (it came from ssdtPRgen.sh)
  • then follow all instructions for post-install in the guide (ACPI/patched, config.plist)
  • you can skip the part about "Power Management" unless you accidentally deleted SSDT.aml
  • ./downloads.sh and ./install_downloads.sh can be used to update your kexts

If you have a "mixed" system (HD3000 on 7-series), the PBI-CE installed MacBookPro9,2 SMBIOS and two kexts, either AppleGraphicsPowerManagement_MacBookPro9_2.kext and ACPI_SMC_PlatformPlugin_MacBookPro9_2.kext or AppleGraphicsPowerManagement_MacBookPro10_1.kext and ACPI_SMC_PlatformPlugin_MacBookPro10_1.kext. With the new method for USB patching, these hacks are not needed. You should use an SMBIOS appropriate for your CPU (MacBookPro8,2) and delete these kexts.

Unsupported laptops

If you think your laptop might be similar to the ones listed as supported, but needs only small tweaks, please provide the following information:

  • native DSDT/SSDT files extracted via Clover F4 (ACPI/origin)
  • audio codec dump from Linux
  • full hardware details (CPU, chipset, graphics device, screen resolution, etc)
  • output from 'lspci -nn' in Linux Terminal

Notes regarding HDMI vs. DP

The files in this guide contain patches to change external ports from DP to HDMI. This may not be appropriate if your laptop has a DP port instead of HDMI.

If your laptop has DP, please provide the files requested in "Problem Reporting". Capture ioreg when the external monitor is connected. Please make sure your profile provides complete and accurate details.

Other Notes

This guide (and recent PBI-CE) does not install the FakeSMC sensor plugins. They are inefficient and waste CPU cycles even when HwMonitor is not running. As a result, various CPU status, heat sink temperatures, fan speeds will not show in HwMonitor.

You are welcome to install the plugins manually: https://github.com/RehabMan/OS-X-FakeSMC-kozlek/

After you install them manually, the ./download.sh and ./install_downloads.sh scripts will continue to update them (if FakeSMC is updated) even though those scripts won't install them initially.

Problem reporting

All problem reports should be accompanied by various files that allow your progress to be accounted for...

In terminal,
Code (Text):

rm -Rf ~/Downloads/RehabMan
mkdir ~/Downloads/RehabMan
cd ~/Downloads/RehabMan
patchmatic -extract

Attach contents of Downloads/RehabMan directory (as ZIP).

Also, post ioreg as ZIP: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html. Please, use the IORegistryExplorer v2.1 attached to the post! DO NOT reply with an ioreg from any other version of IORegistryExplorer.app.

And output from:
Code (Text):

kextstat|grep -y acpiplat
kextstat|grep -y appleintelcpu
kextstat|grep -y applelpc
kextstat|grep -y applehda

Also output from:
Code (Text):

ls -l /System/Library/Extensions/AppleHDA.kext/Contents/Resources/.zml

Also, press F4 at the main Clover screen, then compress and attach the EFI/CLOVER folder in use. And please, in order to reduce the size, omit EFI/Clover/themes.

Also post output of:
Code (Text):

sudo touch /System/Library/Extensions && sudo kextcache -u /

Compress all files as ZIP. Do not use external links. Attach all files using site attachments only.

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容