[Guide] Dell XPS 9560 Big Sur OpenCore

 Releases and Updates

  • Release Mar 02, 2021 XPS 9560 v0.5 - OC 0.6.7.zip
    • Updated OpenCore drivers and kexts
    • If upgrading EFI from previous please read the - changelog
  • Release Jan 06, 2021 XPS 9560 v0.4 - OC 0.6.5.zip
    • Update to OpenCore 0.6.5
    • 4K 60Hz, HDMI wake, etc - changelog
  • Release Dec 18, 2020 XPS 9560 v0.3 - OC 0.6.4.zip
    • Fixed USB devices having to be replugged after sleep
    • macOS 11.1 ready - changelog
  • Release Dec 8, 2020 XPS 9560 v0.2 - OC 0.6.4.zip
    • Updated OpenCore to 0.6.4, this guide, files, etc
  • Removed the mess that was the initial release
Disclaimer: I am no expert, but I have had some prior experience with this machine. If you edit your UEFI and screw up, I'm not responsible.

There's plenty of info in my previous guide here.
OpenCore has been the future for a while but honestly the previous guide took us pretty far from Mojave to Catalina. Been a while for me, so I had a bit catching up to do. I also had a great time warming up with my desktop first.






My hardware
  • Dell XPS 9560
  • 1080p
  • i7-7700HQ
  • Intel HD 630
  • PM961 Samsung NVME 512
  • Dell DW1560 (Broadcom BCM94352Z)
  • 97whr Battery
Overview/Background
While I still have this laptop, I don't use this anymore, it's more a toy and something for me to tinker with. I'll try to keep up with fixes and updates but please keep that in mind.

I welcome everyone to once again help make this the best hackintosh laptop. If you have info, fixes, anything to share I will happily amend it to the guide. Thanks to all who have contributed to the hackintosh community in the past, present and hopefully future.

What Works (Tested)
  • CPU Power Management
  • Native NVRAM
  • Battery Support (doesn't show cycle count)
    • at complete idle and 50% brightness it consumes < 6W
  • Sleep and Wake with Lid Open and Close
    • Might sound ridiculous, but I unplugged and slept my laptop by closing the lid over night and after 10 hours the battery still showed 100%
  • Intel HD 630
  • HDMI out w/ Audio (1080p)
  • USB-C to HDMI 2.0 - 4K 60hz
  • Audio ALC298
  • Headphone Jack/Combo Jack (headphone / headset(w/mic) support)
    • fixed installation and path locations for Big Sur
  • Brightness Keys
  • Screen Brightness Persistence
  • Keyboard
  • Trackpad with Gestures
  • Webcam
  • WiFi and Bluetooth (DW1560)
    • additional info in Kext section
  • iCloud Services
  • Continuity and Hand-off
Works (Tested by Others)
  • File Vault
Not Tested
  • USB-C hot plug / Thunderbolt semi hot plug
    • I have no TB products so I can't do no testing but will work with anyone willing as we previously did for ~2 years lol
  • SD CARD Reader
    • disable in your BIOS to save some battery
    • there's a kext but reports of panic, so I'm not going to bother, rather save the 1-2W o_O
  • Sensors/Fan Control Software
    • maybe someone can help with this as I never was a fan of obsessing over system stats
    • the necessary kexts are included
  • Hibernation
    • not recommended, disable script included but it probably works fine
  • Booting Windows with OpenCore, explained later
Never Going to Work
  • Finger Print Sensor
  • NVIDIA GTX 1050
Let The Hack Begin!
Setup your USB installer with the ESP/EFI partition and copy over my EFI folder. I'm not writing a guide for this, this information is everywhere.

BIOS Configuration (1.21.0)
Plug in the USB installer before you boot and start to change these settings.
If I didn't list the section or option it is likely you can choose what you want.
  • Advanced Boot Option - enable legacy option roms (we'll need these for some handy tools at boot)
  • Boot Sequence
    • as of OC 0.6.6 you can boot OpenCore.efi directly
      • bootstrap is no longer needed and neither is using launcher options
  • SATA Operation set to AHCI
  • USB Configuration - enable both options
  • Dell Type-C Dock Configuration - Always Allow
  • Thunderbolt Adapter Configuration - Enable Tech Support and no security
  • Secure Boot - Disabled
  • Intel Software Guard Extensions
  • Intel SGX - Software Controlled
  • AC Behavior - Wake on AC- disable
  • USB Wake Support USB Wake Support - Disabled
    • Wake on Dell USB-C Dock - Enabled
  • Wake on WLAN - Disabled
  • POST Behavior - Fastboot - Thorough
  • You can leave all the virtualization stuff enabled
UEFI switches and TB Hot Plug Background (you can skip this section)
I actually dumped our whole UEFI last year which shows a bunch of exposed switches and pasted reveleant switches if you want to get testy with TB. Here's the post on that.
mistzzt has a list on their repo but no real confirmation and as far as I know the end game to TB will end up being PCI express card with wonky hot plug or not even at all. Everyone is still using the same ACPI renames just as before, regardless of all the UEFI bit switching and addition of ioelectrity and TbtForcePower it'll be the same. Trust that I have tried all these methods over the years, with a bunch of people(thank you all) from the previous thread that tinkered and tested. BUT things change and I'm excited to see if any progress can actually be made on this.


Modding your UEFI
You must have legacy option roms enabled! Turn it back off after it's done
We need to accomplish at least one thing and that is to disable CFG Lock. I listed additional options that I also adjusted on my system but they are OPTIONAL but pretty universal to all hacks working better. Attached is the dump of BIOS v1.21.0. It's in a text file and fairly easy to understand.
Code:
disable cfg lock
setup_var 0x4ed 0x01

enable hwp
setup_var 0x4BC 0x01

enable above 4GB MMIO BIOS assignment
setup_var 0x79A 0x01

disable CSM Support
setup_var 0xFC8 0x01

Inside EFI/OC/Tools/ you'll find drivers modGrubShell and VerifyMsrE2. If you followed the BIOS settings you should have enabled legacy option roms already. I've added these to OpenCore and these tools should be bootable from OpenCore's boot picker.
  1. At the OpenCore picker, choose modGrubShell
  2. If you only enter "setup_var 0x4ed" it will return it's current value which would be 0x01. 0=false/disable, 1=true/enable
  3. I recommend always check the current setting before changing and verify what you're checking. It helps with alleviating user error.
  4. If it returned expected variable and setting, press the up arrow which will populate the last command and then add the remaining. You should be entering "setup_var 0x04ed 0x01" to disable CFG Lock.
  5. I highly recommend enabling HWP and the others I only recommend. If you're testing the TB then I suggest going to mistzzt's repo and doing all of them.
  6. Type exit and your computer will restart
  7. This time boot VerifyMsrE2, you'll get a message on the screen letting you know the current state of the machine's CFG Lock.
NOTE: If you restore BIOS to default settings, it will in fact undo these bit switches to default.

OpenCore's Boot Mechanics
OpenCore will apply patches/etc to the ACPI even if you boot Windows. While this is edited out in ACPI, it can get weird. The positive is being able to reboot directly into Windows like bootcamp. I actually hate it, not only can there be blue screen issues but also it messes with your Microsoft accounts due the device thinking it's a real Mac. So when I want into Windows I spam F12 and select it manually. Keep this in mind if you try or want to boot Windows with OpenCore.

Installing Options
  • You have to format install partition to APFS
  • 4K screen users
    • Framebuffer is adequate for both 1080p and 4K @60Hz users, including 4K@60Hz on USB-C/TB
    • change the UIScale to <02>
      • config.plist @ NVRAM/Add/4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14
  • Included are 2 configs, one for debug/testing/verbose/etc, the other one is clean
Setup your own SMBIOS, DO NOT USE THE ONE GIVEN. I am still using MacBookPro14,1. It is asked all the time why I do. My reasons, no touch ID/touchbar, no dPGU, and Kaby Lake architecture. Plenty of people use 14,3 or whatever but this is what I use and those are my reasons. Feel free to change it. You can use Clover Configurator or GenSMBIOS, below are the main settings to change.
  • config.plist @ PlatformInfo/Generic
    • MLB
    • ROM
    • SystemProductName
    • SystemSerialNumber
    • SystemUUID
  • If you want to use a model with TouchId then you need NoTouchID.kext and add it to config.plist/Kernel/Add
  • If you are not going to use 14,1 you have to edit the USBPorts.kext info.plist to whatever else you choose
    • I have added the popular 14,3 personalty due to people not reading
After install, copy your USB EFI over to your hard drive and setup BIOS boot sequence to point at the hard disk version.

Post Install
Fixing KNNSpeed's ComboJack Installer
Screen Shot 2020-11-26 at 2.14.31 PM.png

  • Problem
    • It installs to usr/bin, drive is locked, can't mount, workaround disable all SIP flags, then problems with mounting volume drive and then having to mount snapshots and all the commands is just too much. Let's do it right way.
  • Solution
    • Install to usr/local/bin as Apple intended for developers and users to use it. No need to disable SIP, it can be fully enabled.
    • I edited the paths in install.sh and com.XPS.ComboJack.plist to reflect that.
    • I imagine users using ALC298PluginFix should/will do the same. This could actually be quite useful for other various fixes.
  • Installing the ComboJack
    • VerbStub.kext is already included in config.plist and kext folder
    • CD into the combojack folder and run install.sh and follow the directions
CPUFriendDataProvider
  • Again, included is for 7700HQ that I customized for my use, it saves a little bit of battery
  • After you have your SMBIOS setup, head to the https://github.com/corpnewt/CPUFriendFriend and follow the directions
  • The SMBIOS you are using is linked to the data provider, this is why you should always make your own. Plus you get the benefit of tailoring power/performance to your own needs.
VoltageShift
  • After BIOS 1.18 VoltageShift will no longer work according to here
  • IMO you don't get enough to worry about this but it is fun tweaking
  • If you revert BIOS for voltage shift, reapply UEFI mods and visit the old guide there's a section for VoltageShift
  • If you want to manually set an undervolt you can look here Dell XPS 15 9560 (1.9.4) NVRAM edits
Testing Sleep Wake, terminal commands
  • Check assertions
    • pmset -g assertions
  • Grep logs for Sleep, Wake and DarkWake times and info
    • pmset -g log|grep -e " Sleep " -e " Wake " -e " DarkWake "
Cleaning Up verbose and debugging
  • config.plist/Misc/Debug/
    • AppleDebug to False
    • ApplePanic to False
    • set Target from 67 to 0
  • config.plist/NVRAM/7C436110-AB2A-4BBB-A880-FE41995C9F82/boot-args
    • remove -v keepsyms=1 debug=0x00
  • You can delete all the txt logs in the EFI folder
Cleaning up tools
  • you can delete unused tools from the EFI/OC/Tools
    • or better yet just disable their respective entries in the config.plist
      • config.plist/Misc/Tools
    • CleanNvram.efi apparently "cleans" better than reset nvram which is enabled in plist shown below
      • config.plist/Misc/Security/AllowNvramReset
    • OpenShell is a nice tool to have to be able to do some work, I also boot into this and type reset if I miss spamming F12 to boot into Windows
Boot GUI and Boot Chime
  • GUI picker and boot chime are enabled
    • volume adjustment
      • config.plist/NVRAM/7C436110-AB2A-4BBB-A880-FE41995C9F82/SystemAudioVolume
      • the value entered here is hex therefore 32 = 50% volume
Booting Windows with OpenCore
Note: Benchmarks are for macOS 11.0.1 and on OpenCore 0.6.3
GeekBench 5.3.1 (note my system was probably still trying to cache stuff while I ran these tests but they seem accurate)
  • CPU Single - 944
  • CPU Multi - 3682
  • Metal - 4566
  • OpenCL - 4951
intel Power Gadget and Coconut Battery
Screen Shot 2020-11-26 at 2.56.02 PM.png


ACPI Patches
OpenCore would prefer we didn't do any renames but we have to do some. Specifically for Power, Sleep, USB-C/TB3, etc. Comments should explain enough ask if you'd like to know more. I kept these to a minimum for a reason. We'll see what's broke 
:lol:


Attachments

  • BIOS UEFI 1.21.0.txt
    1.5 MB · Views: 276
  • XPS 9560 v0.2 - OC 0.6.3.zip
    10 MB · Views: 252
  • XPS 9560 v0.3 - OC 0.6.4.zip
    10 MB · Views: 221
  • XPS 9560 v0.4 - OC 0.6.5.zip
    9.7 MB · Views: 757
  • XPS 9560 v0.5 - OC 0.6.7.zip
    10.5 MB · Views: 125
Last edited: