Dell XPS 13 7390
Specs:
- CPU : Intel Core i7-10710U 6C 12T 1.10GHz (4.70GHz turbo)
- RAM : 8GB dual-channel 2133MHz LPDDR3
- GPU : Intel UHD 630
- Storage : WDC PC SN520 256GB NVMe M.2
- Screen : 13.3" 1920x1080
- WiFi : Intel AX200 (Soldered)
- Soundcard : Realtek ALC299
- Battery : 52WHr
Hardware compatibility
What works
- CPU power management
- Readng CPU temperature
- GPU acceleration and video codecs
- SSD
- Wireless (Bluetooth and Wi-Fi) (itlwm)
- Bluetooth Audio
- Sleep, lid sleep and lid wake
- Trackpad including gestures
- Internal Speakers
- Internal microphone
- All USB ports
- Screen full resolution, brightness
- Battery precentage, charging
- iMessage and iCloud
- AirPlay
- USB-C functionality on the TB3 ports
- HDMI/DP via USB-C
- Internal Webcam
- Virtualization (VT-x)
- SideCar over USB
What does not work/disabled
- Thunderbolt 3
- Apple Watch Unlock
- SideCar over wireless
Things to fix
- Combo Jack / AppleALC high
kernel_task
CPU usage ACPI interrupt gpe6F
needs to be disabled somehow
EFI Folders
Version | Description |
---|---|
Big Sur |
Is mostly deprecated and will not be provided any support. |
Monterey |
Stable and up-to-date version of this EFI, provides a decent out-of-the-box experience. |
Monterey - Experimental |
Mostly for testing, should not be used as the daily driver. But can provide fixes for issues that may be in the stable build. |
CFG-Lock
You need to disable CFG-Lock in order to boot this EFI!
Use this specific version of grub_setup_var
BIOS | CFG Lock | Overclock Lock |
---|---|---|
1.9.0 , 1.12.1 , 1.13.0 |
setup_var CpuSetup 0x3E 0x0 |
setup_var CpuSetup 0xDA 0x0 |
CPU
The i7-10710U needs Cpuid1Data
and Cpuid1Mask
patches in OpenCore to prevent very early kernel panics. Power managment works as expected after using CPUFriend and CPUFriendFriend, with a base clock of 1.1 GHz and can boost all the way up to 4.7 GHz (idles at 800 MHz).
It is recommended to cap the TDP to 10W with VoltageShift
as it tends to boost more than it should during idle loads, can help with temperatures and battery life.
voltageshift powerlimit 10 10
GPU/Display
Getting the Intel UHD Graphics 630 took quite a bit of effort to work properly, It uses the natively supported device-id
ig-platform-id
, but required framebuffer patches in order for the internal display and HDMI over USB-C to function correctly.
The 4K version of this laptop should work fine without further patches.
The internal display brightness controls worked out of box when using SSDT-PNLF-CFL
.
SSD
The WDC PC SN520
NVME SSD worked out of the box without having to reformat with 4K sectors.
Power management is working with NVMeFix.kext
Wifi and Bluetooth
Sadly the Intel AX200 is soldered to the motherboard, but does work thanks to the work of OpenIntelWireless,
Wi-Fi and and Bluetooth work out of the box provided you use AirportItlwm.kext
, IntelBluetoothFirmware.kext
, and BlueToolFixup.kext
Sleep
Sleep works out of the box after mapping USB ports with USBMap.kext
, disabling any unused ports/controllers.
Trackpad
Using VoodooI2C.kext
and VoodooI2CHID.kext
, the Trackpad works out of the box, including all gestures.
Sound
Sound works for the most part, but needs CodecCommander
Install CodecCommander.kext
into /OC/Kexts/
(if it does not already exist), then copy hda-verb
to /usr/local/bin
(Create the folder if it does not exist)
Combo Jack currently does not work (will be fixed sooner or later)
AppleALC might cause high kernel_task
CPU usage for some people, it is under investigation. If you are encountering this issue, please disable AppleALC in your OpenCore config.
USB
USB works out of the box
Display Outs
USB-C to HDMI/DP works out of the box once GPU is properly patched
Thunderbolt
Currently does not work, the controller is most likely causing severe idle power drain but should be disabled as of 27a4fcb
Battery
Battery Capacity works when using proper SSDT hot-patching and SMCBatteryManager.kext
The battery drain should be fixed as of commit a6340b0
There is some drain compared to Windows/Linux, A non-working ACPI function GPE_L6F is eating CPU cycles for no reason, it can be easily fixed on linux with a one-line command
echo "disable" > /sys/firmware/acpi/interrupts/gpe6F
. It seems to be much more complicated on macOS, I tried using a ACPI hotpatch to rename _L6F
to XXXX
but it did not seem to have any effect on power usage.
A decent workaround for now is to try undervolting with VoltageShift
I use Power Manager to apply these offsets on boot and wake from sleep (these offsets may not work for every configuration, take caution and ymmv.)
voltageshift offset -100 -100 -100 -100 -100 -100 -100
Special Thanks
- OSXLatitude
- Baio77 @ osxlatitude.com
- Jake Lo @ osxlatitude.com
- red-green
- Hervé @ osxlatitude.com
- Apple for macOS
License
Work in this repo, including previous commits (SSDTs, config files, etc) is distributed under a Creative Commons Attribution-NonCommercial-ShareAlike (CC BY-NC-SA) 3.0 License. All others' work (clover, kexts, drivers) retains the original license it was distributed with.
This readme is based on red-green's Blade Stealth hackintosh GitHub repo