macOS on Dell XPS 9360
This repository contains a sample configuration to run macOS (Currently Catalain 10.15.4
) on a Dell XPS 9360
Booting is supported using either Clover EFI or OpenCore.
Used Hardware Configuration
-
Dell XPS 9360
- Intel i7-8550U
- 16GB RAM
- Sharp
SHP144
LQ133Z1
QHD+ (3200x1800) Touchscreen display - Western Digital Black 512GB SSD (WDS512G1X0C-00ENX0) on latest firmware
- Dell DW1560 Wireless (eBay)
- Wi-Fi device ID [
14e4:43b1
], shows as Apple Airport Extreme due toFakePCIID_Broadcom_WiFi.kext
- Bluetooth device ID [
0a5c:216f
], chipset20702A3
with firmwarev14 c5882
usingBrcmPatchRAM2.kext
- Wi-Fi device ID [
- Sonix Technology Webcam, device ID [
0c45:670c
], works out of the box - Validity Inc. Finger print scanner, device ID [
138a:0091
], linux open-source project - Disabled devices
- Touchscreen (though it works out of the box if enabled)
- SD card reader, macOS open-source project
-
Firmware Revisions
- BIOS version
2.9.0
- Thunderbolt Controller firmware version
NVM 26
- BIOS version
-
External Devices
- Caldigit USB-C Dock
- Supports USB-C PD (Power Delivery), Ethernet, 3x USB-3, USB-C, HDMI & DisplayPort connections
- Dodocool 7-in-1 USB-C Hub
- USB-C PD (Power Delivery), Ethernet, 1x USB-3 & HDMI connections
- Benfei USB-C Adapter
- USB-C PD (Power Delivery), Ethernet, 1x USB-3 & HDMI connections
- Caldigit USB-C Dock
-
Monitors
Preparation
This repository has been tested against Dell XP 9360 bios version 2.9.0
with Thunderbolt firmware NVM 26.1
. For best results ensure this is the bios version of the target machine.
Note: When using OpenCore, ensure you disable the Legacy boot ROM in the bios under Advanced Boot Options
--> Enable Legacy Option Boot ROM
.
UEFI Variables
In order to run macOS successfully a number of EFI BIOS variables need to be modified. The included Clover bootloader contains an updated DVMT.efi
, which includes a setup_var
command to help do just that.
DVMT.efi
can be launched from Clover directly by renaming it to Shell64U.efi
in the tools
folder.
The following variables need to be updated:
Variable | Offset | Default value | Desired value | Comment |
---|---|---|---|---|
CFG Lock | 0x4de | 0x01 (Enabled) | 0x00 (Disabled) | Disable CFG Lock to prevent MSR 0x02 errors on boot |
DVMT Pre-allocation | 0x785 | 0x01 (32M) | 0x06 (192M) | Increase DVMT pre-allocated size to 192M for QHD+ displays |
DVMT Total Gfx Memory | 0x786 | 0x01 (128M) | 0x03 (MAX) | Increase total gfx memory limit to maximum |
Clover Configuration
All Clover hotpatches are included in source DSL format in the DSDT folder.
If required the script --compile-dsdt
option can be used to compile any changes to the DSL files into ./CLOVER/ACPI/patched
.
OpenCore Configuration
All OpenCore ACPI hotpatches are included in source DSL format in the DSDT folder. They are identical to the Clover ones. Both Clover and OpenCore use the same set of DeviceProperties, kext patches and ACPI patches.
AppleHDA
In order to support the Realtek ALC256 (ALC3246) codec of the Dell XPS 9360, AppleALC is included with layout-id 56
.
Alternatively, a custom AppleHDA injector can be used.
The script option --patch-hda
option generates an AppleHDA_ALC256.kext injector and installs it in /Library/Extensions
for this purpose, in this case the layout-id is 1
.
Display Profiles
Display profiles for the Sharp LQ133Z1 display (Dell XPS 9360 QHD+) are included in the displays folder.
Profiles can be installed by copying them into /Users/<username>/Library/ColorSync/Profiles
folder, additionally the macOS built-in ColorSync
utility can be used to inspect the profiles.
Profiles are configured on a per display basis in the System Preferences
-> Display
preferences menu.
CPU Profile
In order for macOS to effectively manage the power profile of the i7-8550U processor in the Dell XPS 9630 model used here, it is necessary to include a powermanagement profile for X86PlatformPlugin
.
A pre-built CPUFriend.kext
and CPUDataProvider.kext
is included in the kext
folder for the i7-8550U.
Instructions on how to build a power mangaement profile for any other CPU types can be found here:
https://github.com/PMheart/CPUFriend/blob/master/Instructions.md
Undervolting
Warning undervolting may render your XPS 9360 unusable
Essentially it allows your processor to run on a lower voltage than its specifications, reducing the core temperature.
This allows longer battery life and longer turbo boost.
Credits for this go to jkbuha at tonymacx86.
The undervolt settings I use are configured in UEFI, with the following settings:
-
Overclock, CFG, WDT & XTU enable
0x4DE
->00
0x64D
->01
0x64E
->01
-
Undervolt values:
0x653
->0x64
(CPU: -100 mV)
0x655
->01
(Negative voltage for0x653
)
0x85A
->0x1E
(GPU: -30 mV)
0x85C
->01
(Negative voltage for0x85A
)
Remember, these values work for my specific machine, but might cause any other laptop to fail to boot!
HiDPI
For a fhd display, use one-key-hidpi