Contribute
Register

[Guide] Yosemite 10.10.2 on HP Probook 4520s (i3, clover)

Joined
Feb 24, 2015
Messages
104
Motherboard
HP Probook 4520s
CPU
Intel Core i3 330m
Graphics
Intel HD Graphics 1st Generation
Mac
MacBook Pro
Classic Mac
Mobile Phone
Android
[Guide] Yosemite 10.10.3 on HP Probook 4520s (i3, clover)

Table of Contents
1. Introduction and Overview
2. Requirements
3. Specifications and Technical details
4. None working and untested features
5. Disclaimer
6. BIOS Settings
7. Pre-Installation
8. Installation
9. Post-Installation
9.1 Part I: Getting your DSDT
9.2 Part II: Installing Clover as bootloader
9.3 Part III: Configure Clover
9.4 Part IV: Installing codeless and normal kexts
9.5 Part IV: Patching your DSDT
10. Final Notes
11. Utilities
12. Kexts
13. Other links
14. Change Log
15. Credits



1. Introduction and Overview
For the past week or so I have spent researching upon how to get Mac OS X 10.10.3 (Yosemite) onto my HP Probook 4520s,
during my research it has been hard to figure out some stuff and going on and off about other ideas on how to get it working.
But now finally almost everything is working, at least its in a usable state.

Warning! This process takes a long time and you might want to rush through this, but be patient and you will succeed!


2. Requirements
- HP Probook 4520s with exact specifications as specified in "Specifications and Technical details" section.
- 8GB USB thumb drive
- Another USB thumb drive (optional for transferring files to and from the 4520s)
- Genuine MacBook, Hackintosh or VirtualMachined OS X.
- OS X Yosemite downloaded from Mac App Store
- A Linux live CD/USB (Preferably Ubuntu 14.04, this is optional, but if you want to be sure that everything will work get a live CD/USB)
- Patience!


3. Specifications and Technical details
Model: HP Probook 4520s
CPU: Intel Core i3 330m
GPU: Intel HD Graphics 1st Generation
RAM: 2GM 1333MHz (I have switched to 6GB 1333MHz, 1x2GB 1x4GB)
HDD: 250GB Seagate Momentus 7200RPM (I have switched to a Corsair Force 60GB SSD)
Ethernet: Realtek RTL8191SE
Wireless: Atheros AR9285 802.11a/b/g/n
Bluetooth: Broadcom BCM2070
Touchpad: synaptics touchpad
Webcam: HP Webcam
Cardreader: Unknown
Audio: IDT HD Audio (Unknown model)


4. None working and untested features

  • HDMI out (not working)
  • VGA out (semi working, clamshell mode only)
  • eSATA (Not tested)
  • Hand-off (Not tested)


5. Disclaimer
There are many other 4520s models out there, some have ATI graphics and some have i5 processors, I do not know if these steps here are going to work for those 4520s models.
And I cannot even guarantee that these steps that you are about to follow will work for you and your 4520s.
I take no responsibility for whatever you do to your laptop, proceed with knowing the fact that you are doing this at your own risk.
(If you get this working on another 4520s please let me know so I can update the guide).


6. BIOS Settings
This is the easy part all you have to do is make sure you are running the default settings in the BIOS, but if you want to know what to disable and leave enable here is a list:
Settings you might want to turn off:

  • UEFI
  • HP DayStarter
  • HP QuickLook
  • Preboot Authentication on HP QuickLook Boot
  • HP QuickWeb
  • HP QuickWeb: Write Protect
  • Wake on USB
  • Any password protection/DriveLock/Anti Theft

Settings you MUST have turned on:

  • Legacy USB Support

You might be wondering why we are not going to use UEFI?
This is because the UEFI in the 4520s is broken and a very early version of UEFI (it even says so when you try and enable it) and because of this the native UEFI on the 4520s cannot load OS X.


7. Pre-Installation
Before you even begin, make sure you got everything off the harddrive that you want to backup first once that is done, you can proceed to the next step.

Start by installing Unibeast on the Genuine MacBook, Hackintosh or VirtualMachined OS X.
We want to create a bootable installer for our 4520s to do that we have to format our 8GB USB thumb drive to Mac OS X Extended (Journaled) in the Disk Utility.
Once that is done you can run Unibeast and follow the on screen instructions, just make sure you select your thumb drive as the target to install to and not any other drive you have connected.

Once you have your Unibeast USB we have to do some work on it.
Start by going into the USB drive then go to:
System/Library/Extensions/

And we want to find 2 files and copy them to another USB (or in a folder you create on the installer USB):
AppleIntelHDGraphics.kext
AppleIntelHDGraphicsFB.kext

After you have copied them, you need to remove them.

Once those two files are copied and removed we are done with the Unibeast USB.


8. Installation
Now we come to the part where we install OS X onto our hard drive.
Plug the USB into one of the 4520s USB ports, and start the 4520s.

When the 4520s is booting up hit F9 to enter boot options, you should see the USB thumb drive we just created listed as one option
[*]

Let the 4520s load, you should not need any extra boot arguments.

Once on the installation page click through until you have to select installation location, once you get to this step you have to go to the top bar and open up Disk Utility.

Now we are going to format your Hard Drive to Mac OS X Extended (Journaled), you can name it whatever you want just double check that you have selected the correct Hard Drive.

Exit out of Disk Utility and you should see the Hard Drive select it and start the installation.

Now we have to wait for around 20-30 minutes, and let the 4520s do its thing


[*]
If you do not see the USB as an option check your BIOS settings, make sure Legacy USB Support is enabled!


9. Post-Installation
Post installation is segmented into 4 parts.


9.1 Part I: Getting your DSDT
Once the installation is complete we need to generate our DSDT this can be done in quite a few ways, you can do it in either windows, linux or mac. i would recommend a linux live cd because i have only had problems generating one in the newly installed OS X.

So get your hands on a live CD/USB and boot it up.

Once in the live CD/USB we are going to open up terminal (Ctrl+Alt+T or search in ubuntu for it)

When the terminal is opened type this command:
sudo cp -R /sys/firmware/acpi/tables/DSDT DEST
where DEST is your destination you can copy it to the desktop, then the command would be:
sudo cp -R /sys/firmware/acpi/tables/DSDT /home/ubuntu/Desktop/DSDT.aml

Copy the extracted files onto a USB (formatted as FAT32).

For more detailed instructions follow RehabMans guide on this: http://www.tonymacx86.com/yosemite-laptop-support/152573-guide-patching-laptop-dsdt-ssdts.html
We only really need the DSDT since we cannot use SSDT files on our 1st generation i processors.


9.2 Part II: Installing Clover as bootloader
Now we will go back to the OS X installation make sure your installer USB is plugged in we are going to need it to boot into OS X.

To install Clover bootloader you need to download it first (look in Utilities section of the guide).
Once downloaded extract the .pkg file and run it.

We are going to select some specific settings, so once you are at the last step select Customize to customize what is going to get installed.

These options should be ticked/selected:

  • Install Clover in the ESP
  • Bootloader/Install boot0af in MBR (or boot0ss if boot0af does not work).
  • CloverEFI/CloverEFI 64-bits SATA
  • Drivers64UEFI/EmuVariableUefi-64
  • Drivers64UEFI/OsxAptioFixDrv-64
  • Install RC scripts on target volume
  • Optional RC Scripts/disable sleep proxy client
  • Install Clover Preference Pane

Once these settings are checked you can proceed with installing Clover.
We do not want to restart the 4520s yet, as it is now we still cannot boot into OS X with Clover so go to the next part.


9.3 Part III: Configure Clover
Make sure you download the Clover Configurator (look in Utilities section of the guide).
Once clover configurator is up and running you need to mount your EFI partition (if its not already mounted, the configurator will notify you if its not mounted).

Next we are going to open the Clover base config.plist that is located in the EFI/EFI/CLOVER/config.plist location.

Once the config.plist is loaded go to the ACPI tab and check that your settings matches this exactly.

On the first page in ACPI we are going to make sure everything is unchecked except for
Drop OEM, Generate PStates and Generate CStates under the SSDT section.
ACPI.jpg

Now switch to New way tab and make sure NewWay and FixRegions are selected

ACPI 2.jpg

Next we need to go to the Boot tab and make sure at least kext-dev-mode=1 is checked and also dart=0 the rest of the options are up to you to decide on.
Boot.jpg

No we go to the Devices tab, make sure that under USB, Inject, Add ClockID and FixOwnership is selected.

User Audio if you have the same 4520s i have use 0x0C in the Inject field (it might work for other 4520s but that is currently untested).

Now we need to make sure 0x01228086 is in the IntelGFX field and also that NoDefaultProperties is checked.

And we need to add a few properties (remember this is working for my 4520s but you might have to use other values, if you want to know your values open up IORegistryExplorer and find your graphics cards settings when booted from the USB installer).

Device Key Value Value Type
IntelGFX built-in 00 data
IntelGFX built-in 00000300 data
IntelGFX AAPL,os-info 30490111011008000001000000000000FFFFFFFF data
IntelGFX acpi-device IOACPIPlatformDevice is not serializable string
IntelGFX device_type 646973706C6179 data
IntelGFX hda-gfx 6F6E626F6172642D31 data
IntelGFX api-path IOACPIPlane:/_SB/PCI0@0/IGPU@20000 string
IntelGFX model 496E74656C204844204772617068696373 data



Devices.jpg

Now we move onto the Graphics section
We only need to make sure that Inject Intel is checked.
Graphics.jpg

Now we move onto the Kernel and Kext patches
Make sure that you have Apple RTC, Kernel LAPIC and Asus AICPUPM checked.
and we also need to add a few KextsToPatch, The AppleHDA patch can be figured out by following this guide, (i have provided a DummyHDA.kext that works with the model of 4520s i have, it might work for yours aswell). http://www.insanelymac.com/forum/topic/298027-guide-aio-guides-for-hackintosh/page-2#entry2030060

Name Find Replace
AppleIntelHDGraphicsFB 498B8424980600000FB64018C1E013410B466C 418B466C25FFFFC7FF0D000000009090909090
AppleIntelHDGraphicsFB 0D3C033080 0D00033080
AppleIntelHDGraphicsFB 0F45C8 909090
AppleIntelHDGraphicsFB B800600009 B800600008
AppleIntelHDGraphicsFB 498B8424980600000FB64018C1E013410B4668 418B466825FFFFC7FF0D000000009090909090
AppleIntelHDGraphicsFB 49C70701000000 49C70700000000
IOAHCIBlockStorage 004150504C452053534400 0000000000000000000000



NOTE: These patches are for 4520s that uses LW1 (linkwidth 1), if you know that your display uses another linkwidth (1-4) you will have to find the patches for your linkwidth.

And now we need to go to the SMBios tab, this is the easiest to do just click on the little magic wand and select the MacBook Pro picture, you should be prompted with a bunch of fields select in the top left dropdown MacBookPro (6,2) or MacBookPro (6,1) and press the two shake buttons a few times.

and then click OK.

And finally we need to make sure the drivers that we need is installed to our EFI partition
We are going to make sure that VBoxHfs is deselected (white) from the 64Bit UEFI section and that only EmuVariableUefi and OsxAptioFixDrv is selected.

We also need 3 extra drivers: HFSPlus, HFSPlus UEFI and OsxFatBinaryDrv UEFI.

You can select more drivers as you see fit but these are the bare minimum ones.
Install Drivers.jpg


9.4 Part IV: Installing codeless and normal kexts
Go to the Kext section of this guide and download all of the kexts.
i will only explain on how to install the HackAppleIntelHDGraphics.kext, HackAppleIntelHDGraphicsFB.kext, ProBookARPT.kext and DummyHDA.kext
the others have installation instructions on each link, follow those.
(Check Kexts section for downloads for each kext).

But for the most part all you have to do is open Kext Wizard (see Utilities section of the guide) and go to the installation tab and drag and drop the kexts into the window and click install, just make sure you have selected your hard drive and not the USB installer.

The same goes for all the rest except for the ones that need extra steps.

Once all kexts are finished installing make sure you go to the first tab and repair permissions (this takes a while).

We do not want to restart just yet.


9.5 Part V: Patching your DSDT
Remember the DSDT you created earlier in linux (or whatever you choose to extract it in)?
We need to patch this DSDT file but first we need to turn it into a .dsl file to do so download and install iasl (check the Utilities section of the guide).

We want to place the DSDT file on the desktop and rename it to DSDT.aml
Next we open up Terminal and type:
cd Desktop
iasl -dl -da *.aml

this will create a DSDT.dsl file

Next we want to open up MaciASL
(check the Utilities section of the guide, but in general just copy the iasl file to “/usr/local/bin” folder).

and go to preferences -> Sources
and click the [+] symbol.
give it a proper name like 4520s Patches
and the URL should be http://raw.githubusercontent.com/thesymbol/HP-Probook-4520s-DSDT-Patches/master
(this is a fork from RehabMans repository with only the 4520s patches).

Now we need to apply patches in this order:

  • Fix FPED Parse Error
  • Fix _WAK Arg0 v2
  • Fix Mutex with non-zero SyncLevel
  • Fix PNOT/PPNT
  • HPET Fix
  • IRQ Fix
  • RTC Fix
  • SMBUS Fix
  • USB Fix
  • Add IMEI
  • 4520s S3D Fix
  • 4520s OS Check Fix
  • 4520s LPC
  • 4520s External & PTS Fix
  • 4520s AC _PRW Fix
  • 4520s Battery
  • Brightness Fix (1st Gen I CPU)
  • Rename GFX0 to IGPU

NOTE: After applying one patch check that the DSDT compiles by pressing compile, if you get errors double check the error and search google for a solution or post down below a screenshot about the error.

Once the DSDT compiles fine (there might be a few Warnings but ignore those) we are going to save the .dsl file as type Disassembled ASL File (for backup reasons) and then we are also going to save it as a .aml with the file type of ACPI Machine Language Binary
Now you are going to keep the .dsl file safe (store it on another computer or something) and the .aml file is going to be placed on the EFI partition here: EFI/EFI/CLOVER/ACPI/patched/DSDT.aml

Once you have the DSDT in place we are going to reboot the 4520s and hold our breath when the 4520s is booting up that everything went fine.

If everything went as expected you should now have a fully working Hackbook 4520s :D

10. Final Notes
This was my first time doing hackintoshing and i probably picked the wrong computer to start working on turning into a hackintosh, since there have been many problems with most notably the sleep functions, but after a few days of research and testing and with alot of help from RehabMan everything is working flawlessly, or at least the features that have been tested.

The VGA Port is working but only in clamshell mode and you need to patch your DSDT with a patch that disables the internal screen on the 4520s, so it is kind of useless, but since i do not use this feature that much i do not see the need to fixing it, but if anyone finds a solution for this (so that mirroring and external display works) please feel free to post your findings.


11. Utilities
These are the utilities we are going to use throughout the guide



12. Kexts
These are the Kexts that we are going to use.



13. Other links


14. Change Log

  • 1.0: Posted topic
  • 1.1: Edited 10.10.2 to 10.10.3 in the guide
  • 1.2: Made it a bit more clear on how to install iasl


15. Credits
RehabMan, for helping diagnose the issues i have been having.
GhostRaider, for the original 1st Generation Graphics patches.
Tonymacx86, for the Unibeast installer
Me, for the guide on how to install OS X
And many more…
(if i missed someone please let me know).


If you are having any issues or suggestions just post below.

 
Joined
Aug 18, 2013
Messages
9
Motherboard
HP Probook 4520s, 4530s
CPU
Intel Core i3 380M, i2350M
Graphics
Intel HD, HD3000
Mac
Classic Mac
Mobile Phone
DUDE!!! Seriously dude! that guide is an amazing write I have the same machine with 10.10.3 working. And I must say this the best guide I have ever seen. I am still using chameleon so I may just follow your guide and shift to clover permanently. Kudos to you
 
Joined
Feb 24, 2015
Messages
104
Motherboard
HP Probook 4520s
CPU
Intel Core i3 330m
Graphics
Intel HD Graphics 1st Generation
Mac
MacBook Pro
Classic Mac
Mobile Phone
Android
Glad i could be to any use :) if you find any issues in the guide just point them out in the google docs (or here on the forum, but prefferably on google docs since i get instant notifications).

Also worth noting is that the guide still works on 10.10.3 (i updated from 10.10.2 without problems).
 
Joined
Sep 24, 2012
Messages
4
Motherboard
HP 630
CPU
Intel Core I3 370M (1st Gen)
Graphics
intel HD Graphics (1st Gen)
Mac
Classic Mac
Mobile Phone
Android
Hey do you have the TXT file of the 1st Gen HD Graphics Brightness patch? It looks like it was removed from Github.

Thanks.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,134
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Hey do you have the TXT file of the 1st Gen HD Graphics Brightness patch? It looks like it was removed from Github.

Thanks.
All the patches are in the body of post #1.

Which github are you referring to?
 
Joined
Feb 24, 2015
Messages
104
Motherboard
HP Probook 4520s
CPU
Intel Core i3 330m
Graphics
Intel HD Graphics 1st Generation
Mac
MacBook Pro
Classic Mac
Mobile Phone
Android
Hey do you have the TXT file of the 1st Gen HD Graphics Brightness patch? It looks like it was removed from Github.

Thanks.
If you are using MacIASL the name should be "Brightness fix (1st Gen I CPU)" but if you are just looking at the github repository on the website its under "graphics/graphics_PNLF_ivy_sandy.txt"
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,134
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
If you are using MacIASL the name should be "Brightness fix (1st Gen I CPU)" but if you are just looking at the github repository on the website its under "graphics/graphics_PNLF_ivy_sandy.txt"
Actually, the name in MaciASL is "Brightness Fix (HD3000/HD4000)".
 
Joined
Feb 24, 2015
Messages
104
Motherboard
HP Probook 4520s
CPU
Intel Core i3 330m
Graphics
Intel HD Graphics 1st Generation
Mac
MacBook Pro
Classic Mac
Mobile Phone
Android
Actually, the name in MaciASL is "Brightness Fix (HD3000/HD4000)".
I have renamed it in the .maciasl file, that is why i reffered to it as "Brightness fix (1st Gen I CPU)", but yes you are correct original name is "Brightness Fix (HD3000/HD4000)"
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,134
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
I have renamed it in the .maciasl file, that is why i reffered to it as "Brightness fix (1st Gen I CPU)", but yes you are correct original name is "Brightness Fix (HD3000/HD4000)"
OK... Didn't realize you had copied my code.
 
Joined
Sep 24, 2012
Messages
4
Motherboard
HP 630
CPU
Intel Core I3 370M (1st Gen)
Graphics
intel HD Graphics (1st Gen)
Mac
Classic Mac
Mobile Phone
Android
Sorry i was refering to the Rehabman's Laptop DSDT Patches repository. I wasn't aware it was renamed.

Thanks.
 

Top