Contribute
Register

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

Joined
Apr 12, 2019
Messages
1
Hi @blazinsmokey
Thank you for your work,It is very stable

Here is a VoodooPS2Controller.kext file for you. it fix keyboard cold boot issue, you don't need install kext to L/E anymore
File come from here: https://github.com/jardenliu/XPS15-9560-Mojave/tree/master/CLOVER/kexts/Other

Also I2C already update to 2.1.5, works great. maybe you can update your build.

In this build https://github.com/jardenliu/XPS15-9560-Mojave/ When waking from sleep, there is no black flash issue from screen, I don't know how he did it, maybe you can check the jardenliu's build and fix the black flash issue in the future?

In short, thank you very much for your work!
 

Attachments

Last edited:
Joined
Jun 24, 2014
Messages
201
Motherboard
ASUS Maximus VII Hero
CPU
i7 4790k
Graphics
HD 4600 + GTX 970
Mac
iMac, MacBook Pro
Mobile Phone
iOS
Hi @blazinsmokey hope you are fine.

Here's the 2 ioreg you asked for (w/o TB SSDT).

One is for my cheap adapter (mixsen) the other is for the Dell 6000 dock (power supplied).

Each has been plugged in at boot with HDMI 4K screen, 2 USB devices connected on it.

Note: USB 3 devices are hard disconnected after sleep, also 4K resolution only works when cold booting, if I reconnect the Display after booting the resolution is 1080p @30Hz.

Don't hesitate to ask if you need more info.

Cheers.
OK so I been using this and it doesn't seem to change my setup which is just the USB C to HDMI 2.0. I removed the main DSB2 device in the aml file which seems handle USB-C and its USB hub ports. So give this a try.

On you your device after sleep, I have a similar issue but when I replug my USB C adapter it goes back to 4K 60Hz. Assuming your using the laptop in closed clamshell mode try opening it up first and then connecting the USB C adapter.
 

Attachments

Joined
Jun 24, 2014
Messages
201
Motherboard
ASUS Maximus VII Hero
CPU
i7 4790k
Graphics
HD 4600 + GTX 970
Mac
iMac, MacBook Pro
Mobile Phone
iOS
Here is a VoodooPS2Controller.kext file for you. it fix keyboard cold boot issue, you don't need install kext to L/E anymore
File come from here: https://github.com/jardenliu/XPS15-9560-Mojave/tree/master/CLOVER/kexts/Other
Also I2C already update to 2.1.5, works great. maybe you can update your build.
In this build https://github.com/jardenliu/XPS15-9560-Mojave/ When waking from sleep, there is no black flash issue from screen, I don't know how he did it, maybe you can check the jardenliu's build and fix the black flash issue in the future?
Ok I took a quick look and the VoodooPS2 and it's version 1.8.34. I'm not sure you want to lose the fixes that occurred after. Changlog provided below. My guess is it fixed itself with a Clover update b/c I no longer need it installed in LE anymore either. Thanks for pointing it out completely forgot about that. Maybe others can test this to confirm.
2018-10-08 v1.9.2
  • Tapping stability: ignore moves while waiting for tap gestures (eg. pointer will not move while making a tap or double tap gesture)
  • Increase TapThreasholdX/Y, DoubleTapThresholdX/Y (from 50/100 to 75/150)
2018-09-28 v1.9.1
  • Fix panic caused by notifications that sometimes happen during HID registration (reported issue #166 and elsewhere)
2018-09-22 v1.9.0
  • VoodooPS2Daemon is deprecated, replaced with kernel level functionality (courtesy the-darkvoid)
  • "ignore built-in trackpad" now works with USB mice as well as bluetooth mice (courtesy the-darkvoid)
  • use system notifications for keyboard integration with VoodooI2C project (courtesy the-darkvoid)
2018-05-06 v1.8.34
  • fix bug with DisableDevice when used with the Synaptics profile
I'll update the build later when we have more significant changes. Anyone here should be able to keep their kexts updated especially with the tool I linked.

On the black flash after sleep I'll have to take a deeper look but a quick browse at that build's config.plist and files it seems a little messy. Trying to keep things at a minimum and clean here but I'll try to take a look eventually. As it doesn't bother me personally it may be while. Rather spend my time trying to fix USB C and TB.
 
Joined
Dec 27, 2012
Messages
102
Motherboard
Dell XPS 9560 FHD
CPU
i7-7700HQ
Graphics
HD 630
Mac
MacBook
Mobile Phone
iOS
Hi @blazinsmokey hope you are fine.

I tried your modified SSDT-TB3-V1-Test.aml

The result is the same, no USB port from the adapter is active when the TB SSDT is present.

I only tried with the cheap plug and play adapter, not the dell D-6000 dock (I'm off work for a week).

I also tried with the bios option "Always allow dell docks" on or off (it's supposed to override default usb and thunderbolt settings when connected). Same results, when TB SSDT is removed, USB works again in both configurations.

The IOReg I forwarded you was done with "Always allow dell docks" bios option "ON".

Here a new IOreg with the "Always allow dell docks" bios option OFF.

Anyway, I very happy as it is, nothing urgent. Thank you for all your hard work.

Cheers.
 

Attachments

Joined
Jun 24, 2014
Messages
201
Motherboard
ASUS Maximus VII Hero
CPU
i7 4790k
Graphics
HD 4600 + GTX 970
Mac
iMac, MacBook Pro
Mobile Phone
iOS
... I tried your modified SSDT-TB3-V1-Test.aml ....
Hey mazakiss, I got some progress. I got my hands on a USB-C dongle that has HDMI and a USB-A 3.0 port(link).

Give SSDT-TYPC-DSMFIX.aml a shot. It's a direct replacement, so remove SSDT-TB3-V1.aml. No need for any changes in our latest config.plist.

I tried at least 10 different ways to manipulate SSDT-TB3-V1. Got it to work without USB-C hotplug meaning you had to be plugged in from boot and once it unplugged it wouldn't pick back up again. I was excited as hell but this is not the desired results.

After reviewing the thread for TB3-V1 I noticed that @LeleTuratti adapted DSM methods to get results. So I did the same with KNNSpeed's SSDT-TYPC. I basically added/replaced all DSM methods that matched scope and devices from LeleTuratti's TB3-V1 to KNNSpeed's TYPC file with some other minor changes.

Now USB-C hot plug after boot and unplug/replug works as intended. I am under the impression that KNNSpeed's SSDT works much better overall for USB-C including display output but the Thunderbolt implementation requires plugged in at boot and you cannot unplug anything unless you shutdown first or the system will crash.

I however have no way of testing Thunderbolt, I hope some people here can try this out.

I have included the original TYPC disassembled file, the one I made changes to and one ready for use (aml) in CLOVER/ACPI/patched.
 

Attachments

Joined
Dec 27, 2012
Messages
102
Motherboard
Dell XPS 9560 FHD
CPU
i7-7700HQ
Graphics
HD 630
Mac
MacBook
Mobile Phone
iOS
Hi @blazinsmokey thank you for your reply.

I just tried your SSDT-TYPC-DSMFIX.aml in CLOVER/ACPI/patched.

Usb-c adpater hotplug/replug still doesn't work for me.

All usb2/3 port are working so is HDMI 4K @60Hz.

Once disconnected, it's still impossible to reconnect any usb devices, it won't mount.

On the other hand HDMI reconnects correctly when I hotplug/replug usb-c adapter.

Both sam results are the same, with or without "dell dock" bios option selected.

The weird thing is that even without SSDT-TYPC-DSMFIX.aml or SSDT-TB3-V1 the adapter and ports behaved just the same as described above, like it had no effects, at least for me.

When I was using SSDT-TB3-V1, it had conflict with usb (not mounting) but not HDMI.

When using SSDT-TYPC-DSMFIX.aml only, results was the same as without any TB SSDT at all. (usb + hdmi worked but only when usb-c adapter plugged at boot, no hotplug/replug).

I can only test HDMI & USB on my side since I haven't any TB device at hand now. If anyone can test, it would be much appreciated.

Thank you again.

Cheers.
 
Joined
Jun 24, 2014
Messages
201
Motherboard
ASUS Maximus VII Hero
CPU
i7 4790k
Graphics
HD 4600 + GTX 970
Mac
iMac, MacBook Pro
Mobile Phone
iOS
Hi @blazinsmokey thank you for your reply.
I just tried your SSDT-TYPC-DSMFIX.aml in CLOVER/ACPI/patched.
.....
Ok, I must have not been paying attention when testing. You're right, it's not truly hot/re pluggable. I'm starting to think the USB C docks and USB A ports thing is a USB ports issue. I will try some other things but I'm starting to give up hope here, lol. Maybe a while before I come back with some changes on this.

Even with KNNSpeed's untouched TYPC SSDT it's not hotplug/repluggable.
 
Joined
Feb 25, 2012
Messages
308
Motherboard
GA-Z370N-WIFI
CPU
i5-8600K
Graphics
RX 460
Mac
MacBook Pro, Mac mini
Mobile Phone
Android, iOS
My ear pods work ok, no volume control but mic works fine. Have had conversations plenty as well as voice records and no issues here. Let us know how the USB-C adapter works out for ya.
Most people are not very sensitive to sound quality. English is not my first language and my hearing ability is reduced so for me it takes enormous amount of effort to understand english speaking person through phone line or a bluetooth headset. Skype is better than most other solutions (like Viber or Telegram) but still not perfect, so I developed a habit of insisting on best possible option - FaceTime + iPhone quality level microphone.

When plugging EarPods directly to XPS, microphone sound wasn't bad when making Skype call (obviously Skype applies normalization filter to input audio) but when placing FaceTime call, microphone volume was too low.

I've tried my luck with
and none of that worked.

After that I've started ordering USB sounds cards and at some point came across CTIA compatible one (for those you don't need 3.5mm splitter to plug EarPods in). I've started looking for all CTIA compatible USB sounds cards I could find and found 3 most popular.



To my surprise, VENTION (known for noise cancellation promise on their USB cards) was as noisy as any regular junk USB sound card, and Ugreen wasn't loud enough on max mic volume, but least promising one finally gave me good enough sound. That one even provides its own hardware volume control buttons. Unfortunately they are not as convenient as those provided by EarPods, especially when used with Desktop computer, but still this card was a major break through for me.
 
Joined
Jun 24, 2014
Messages
201
Motherboard
ASUS Maximus VII Hero
CPU
i7 4790k
Graphics
HD 4600 + GTX 970
Mac
iMac, MacBook Pro
Mobile Phone
iOS
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.

framebuffer edits.png

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.

ioREG.png

Here are 2 About/System Report Results. You'll get a USB 3.1 Bus and Express Card.
About USB 3.1.pngAbout PCI.png
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.

DSDT Fix.png


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.
 

Attachments

Last edited:
Joined
Apr 24, 2019
Messages
3
Motherboard
Dell 9560 (1080p)
CPU
Intel 7700hq
Graphics
Intel HD 620 + GTX 1050
Thanks for your guide and all the effort you put in so far!
I'm now using hackintosh as a daily driver for about 6 months and It works just fine!


I tried your CLOVER v3.2, but it didn't work for me.
With the iGPU patch I'm not able to scale my 4k monitor to QHD anymore. Only “looks like” 1080p or 4k, which is either to big or to small (The monitor is conected via a USB-C to Displayport adapter and runs at 4k@60).
Though it still works with the Kaby Lake config file.

And my USB dongle (USB + USB-C + Ethernet) in not working either.
Also my IOReg looks different from yours. 

401963


401964



Another question:
Since a few weeks the fan dosen’t stop spinning anymore and my XPS gets quiet hot. I suspect the Nvidia card to be responsible as the CPU is in full idle and the Intel power gadget shows a consumption of 1-2 W. How can I confirm that the graphics card isn’t disabled and how can I disable it?

I just copied your Clover and changed the serial number. I don’t have any other kexts or something like that.

I'm happy to provide more information if needed :)

Thank you again,
Cheers.

EDIT: I use the DW1830 instead of the DW1560
 

Attachments

Last edited:
Top