Contribute
Register

[Guide] Dell XPS 9560 Mojave VirtualSMC, I2C Trackpad, Clover UEFI Hotpatch

Status
Not open for further replies.
Hey Guys

Ran the GeekBench scores on my XPS 15 after upgrading to the latest sets of files here. I have the top of the line model, and my results were significantly lower than what's at the start of the guide. (Although on paper GeekBench thinks Im running a whopping 5.39Ghz i7. https://browser.geekbench.com/v4/cpu/12973964 - Is this what to expect? I am running the latest 3.2 Clover + All updates. Has anyone else got a lower performance score since upgrading?
 
Hi all! Hope ya'll feeling good.

A question for @dmitry_matora . I saw you were involved on a discussion about fan control app on github here:

How do you guys handle fan control for your XPS laptop?

While our beloved laptop is near perfect now, the only thing that still grabbles me is the fans behaviour (same issue on windows also).

For example, when the laptop boot, I might open 100+ tabs in chrome, the CPU shows an average 45°C on all cores and I don't hear any fan spinning for a long time, at all.

Then while the temps are still around the same values, the fan will naturally begin to spin and almost never stop until I put the laptop into sleep. Somebody mentioned this here, when they had to unplug/replug power supply to get proper fan behaviour.

And I notice also a clear differences on while the laptop is plugged in vs on battery where the fans begin spinning far later than on power supply.

On battery I can wait 30+min completely silent, while on power supply fan will spin about 5 min after booting with the same usage (chrome browser +100 tabs opened, average 45°C CPU temp on all cores).

I tried to undervolt like explained in this post: https://www.tonymacx86.com/threads/how-to-undervolt-my-xps-13.254367/

It worked really well and is applied on all OS, i.e once done you will also have the same CPU undervolting in windows - nice.

But it works better on windows than MacOS. Like when temp decreases, the fans stop then spin again when temp increases.

@blazinsmokey I know you said you won't investigate on sensors and that for now VirtualSMC doesn't have fan sensors, but I saw some improvement here recently:


All in all, what bothers me is more the constant fan noize at night than anything else (heat).

How's your hack's fan behaviour? Any observation?

Cheers.

Edit: while xps not having pwm fans with only 3 fixed steps, it could be useful to be able to have software controlled fans like in hwinfo on windows. But i don’t know if having sensors reporting rpm is even relevant here to do so.
 
Last edited:
Clover Update and Info Below

iGPU Framebuffer Update

@carking
Screen no longer flickers during wake from sleep when opening lid. This was actually an easy fix. Spoofing to Sky Lake iGPU in the Framebuffer fixes this and other iGPU issues in the spoiler. It also additionally needs lilucpu=8 in boot args.
"Problems with Kaby Lake Graphics There are some currently known issues with Kaby Lake graphics:
-Connecting HDMI display or TV causes the Internal Display of the laptop to have very low refresh rate "look like" and laggy cursor.
- Unplugging the HDMI display or TV will leave your internal display of the laptop stay black and you will be forced to Hard Reboot by holding power button and then to boot again.
- Shadows, Backgrounds, Blurry images and Windows will appear pixelated and ugly looking." (source)]

This will be the standard config until we see fixes down the road. There is an identical config named, config kb.plist (Kaby Lake) as well so you can switch back and forth to see. If anyone notices any differences please share. I haven't noticed anything but I also haven't dealt with those other problems either.

And additional note, Framebuffer now implements a patch for 2048MB of VRAM instead of 1536MB. Can be helpful if you have multiple screens running especially if one of them is 4K. Seems a bit snappier but might just be placebo effect. Here's a screenshot if you need to change them around.

View attachment 401823

TB3 and USB-C
@auguzanellato @mazakiss @dmitry_matora and anyone else, I need TB3 and USB-C testers!

I spent all night messing around with it and I think I've come to a decent solution. I could only verify USB-C but I believe I left things intact for TB3. I ended up separating the hot patches to work together. Before trying there are some weird issues I had gone through b/c of testing different SSDTs and I'm certain that somethings in the system lingered because of it. Clearning NVRAM a couple times and rebooting without any SSDTs that deal with TB/USB-C and nothing plugged in can clear things up. Then restarting with only the original SSDT-TYPC.aml seemed to be the finishing touch before replacing with the two new files. I think something happens with the _DSM methods in certain SSDTs that screws it all up.

In theory this is how it should work.
  • SSDT-TB3-9560.aml
    • Edit of SSDT-TB3-V1.aml from here.
    • In short I ripped out DSB2 which was the Implementation for USB-C
    • Thunderbolt still needs to be plugged in at boot but can be plugged in and unplugged without crashing
    • For 1 TB device only, multiple will give issues.
  • SSDT-TYPC-9560.aml
    • Edit of SSDT-TYPC.aml from KNNSpeeds original guide.
    • In short I ripped out the TB3 tree and only left the main device TBL3/DSB2
    • USB-C docks and devices work properly, full hot plug capable.
    • It keeps in KNNSpeed's method on acting like a PCI Express card.
You can plug before/after boot, the USB-C dock will register as a PCI-Express card. You get a little icon in the menu bar for a USB Controller and option to Power it off, don't power it off.

I tested with my backup USB flash drive attached to a USB-C dongle that has USB-C PD, HDMI 2.0 and a USB-A 3.0 port(link). HDMI works regardless. I didn't test my power delivery. You can unplug the dongle, the icon disappears in the menu bar, replug it, icon reappears and my drive is mounted. I did it multiple times. Also you can unmount the flash drive remove and replug and it mounts. Here's a screen of how my ioREG of this in action.

View attachment 401830

Here are 2 About/System Report Results. You'll get a USB 3.1 Bus and Express Card.
View attachment 401834View attachment 401837
Previously SSDT-TYPC was not working because the fixes in clover ACPI/DSDT didn't seem correct. For _RMV rename fix, the Find and Replace were changed accordingly and to only apply fixes in RP15 we added the proper HEX to TgtBridge. I did similar for XTBT to YTBT. Below you can see the difference.

View attachment 401861

USB Port Mapping
I moved our port mapping method over to code less kext using USBPorts.kext. No longer needing USBInjectAll, SSDT-UIAC.aml, and SSDT-USBX.aml. Sweet.

Conclusion
Clover v3.2 zip is attached, I hope to hear some feed back. As I don't have Thunderbolt device I'm going to be running this as my daily b/c USB-C seems to work damn near perfect. I have only updated the guide a bit but will do a thorough update later. Really hoping some of you TB3 users can chime in. Thanks everyone.

EDIT: The config kb.plst is incorrect, I forgot to transfer a fix for it. I have attached a new one that is fixed, so replace it manually.
Now for me tb3 is totally broken, the only thing working is usb3 in my dell tb16 and only if i cold plug, if I hot plug or hot disconnect it panics, also dp monitor connected to the tb16 isn’t working, sadly i havent made a backup of the efi folder
 
Hi @auguzanellato how are you?

Did you tried with provided Clover 3.2 folder shared by @blazinsmokey ?

Typically that’s what happens with original KNNSpeed TB ssdt.

Did you reset the NVRAM multiple times? (See post#301).

I had this issue before because of this.

Now with both of my docks (cheap plug and play and Dell D6000) all is working great now.
 
Hi @auguzanellato how are you?

Did you tried with provided Clover 3.2 folder shared by @blazinsmokey ?

Typically that’s what happens with original KNNSpeed TB ssdt.

Did you reset the NVRAM multiple times? (See post#301).

I had this issue before because of this.

Now with both of my docks (cheap plug and play and Dell D6000) all is working great now.
Hi @mazakiss I tried with 3.2 config.plist (not config_kb.plist) and it doesn’t work, I also tried removing both tb/usb c related ssdts and replacing them with the procedure in post #301 but it didn’t work, did you suggest just to continue clearing the nvram and retrying?
 
Hi @mazakiss I tried with 3.2 config.plist (not config_kb.plist) and it doesn’t work, I also tried removing both tb/usb c related ssdts and replacing them with the procedure in post #301 but it didn’t work, did you suggest just to continue clearing the nvram and retrying?
Yep use the kb config if you have 7700HQ CPU, @blazinsmokey mentionned this new method relied on this config.

And try to redo post #301 procedure clearing again the nvram each step.

I had to do it multiple times.

Also update your aptiomemoryfix.efi driver and Kext using the handy Hackingtool app you can find on the forum. See my above post about VirtualSMC thread I linked above.

Hope you’ll fix your issue.

Cheers.
 
Last edited:
Updated Kexts, clover and AptioMemoryFix, now I’m using config_kb.plist, cleared nvram 3 times and now my external monitor (attached via dp to dell tb16 dock) is working, but the monitor is the only part of the thunderbolt dock which works for now, so I lost the usb3 part
 
Have you also added the new custom USB kext that blazingsmokey provided in 3.2 folder (see post#299)?

USB Port Mapping
I moved our port mapping method over to code less kext using USBPorts.kext. No longer needing USBInjectAll, SSDT-UIAC.aml, and SSDT-USBX.aml. Sweet
 
Yeah, I copied from the 3.2 folder Kexts and ssdts then I manually diff’d the plists and merged the changes
 
Maybe you can share IOReg with TB16 dock connected?

For the NVRAM issue, I had to do the process at post#301 like 10 times and clearing NVRAM between each ssdt addition in the correct order.

I don’t understand why old settings were sticking.

Now it’s stable as usual since then. Give it one more try maybe.
 
Status
Not open for further replies.
Back
Top