Contribute
Register

[Guide] Dell XPS 13 9360 on MacOS Sierra 10.12.x - LTS (Long-Term Support) Guide

Status
Not open for further replies.
I encountered quite a strange glitch/bug: The preview app will only show glitched versions of jpgs and keeping those images open for too long will lead to a reboot. Just previewing via space or opening them in safari renders this pictures just fine. This is pretty much reproducible with any jpg. Any ideas? I attached some examples. No custom kexts deployed besides the ones from p1.

--EDIT--
Added zipped EFI folder (removed HFSplus beforehand). I think the error is somewhere buried in the config.plist since using the standard one from that comes with multibeast does not lead to this glitch + crash(reboot).
 

Attachments

  • Screen Shot 2017-11-26 at 20.44.29.png
    Screen Shot 2017-11-26 at 20.44.29.png
    5.1 MB · Views: 171
  • Screen Shot 2017-11-26 at 20.45.47.png
    Screen Shot 2017-11-26 at 20.45.47.png
    5.1 MB · Views: 168
  • Screen Shot 2017-11-26 at 20.46.06.png
    Screen Shot 2017-11-26 at 20.46.06.png
    5.6 MB · Views: 149
  • EFI.zip
    20.7 MB · Views: 82
Last edited:
I encountered quite a strange glitch/bug: The preview app will only show glitched versions of jpgs and keeping those images open for too long will lead to a reboot. Just previewing via space or opening them in safari renders this pictures just fine. This is pretty much reproducible with any jpg. Any ideas? I attached some examples. No custom kexts deployed besides the ones from p1.

No "Problem Reporting" files attached.
Read FAQ, "Problem Reporting" again. Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
 
After getting the basics running I came across a few things:
  • AppleLPC

    SSDT-LPC included in the guide did not include my device-id as-is (0x9d4e, not sure about @bozma88) and adding it causes an warning issued from AppleLPC.kext on load
    When comparing with the IORegistry from a MacBookPro14,1 it looks like AppleLPC.kext is not loading on a real MacBook. SSDT-LPC does not seem needed.

  • Thunderbolt / USB-C

    For me USB-C / Thunderbolt was not operational after going through the guide. After coming across @goodwin_c post about thunderbolt WMI and https://patchwork.kernel.org/patch/9941155/, I made the following small SSDT:

    SSDT-TBFP.dsl:
    Code:
    DefinitionBlock("", "SSDT", 2, "hack", "TBFP", 0)
    {
        External(_SB.WTBT.TBFP, MethodObj)
    
        Scope(_SB.WTBT)
        {
            Method(_DSM, 4)
            {
                TBFP(One)
                Return (Buffer (One) { 0x00 })
            }
        }

    Fix for kernel crash on bootup due to recursive ACPI:
    Code:
    <dict>
    <key>Comment</key>
    <string>Rename XTBT to YTBT</string>
    <key>Disabled</key>
    <false/>
    <key>Find</key>
    <data>
    WFRCVFRCU0VDUEdO
    </data>
    <key>Replace</key>
    <data>
    WVRCVFRCU0VDUEdO
    </data>
    </dict>


    This makes both the Thunderbolt and USB-C adapter show successfully when booting with a USB-C device is plugged in:
    l4l9OO7.png


    Additionally un-plugging & hot-plugging USB-C devices works fine. Sadly I do not have any Thunderbolt 3 devices to test with.

Staying with @RehabMan logic of less is more, I believe the SSDT/DSDT changes should be as limited as possible.
For the USB / Thunderbolt devices to work you need to remove the DropTable xh_rvp07 and PtidDevc from the Clover config.plist allowing the tables to load.

I've been looking to do the following things which some of you might have experience with:
  • If TBFP is indeed a solid method to keep the Thunderbolt Alpine Ridge controller enabled, write a IOWMIController driver interfacing with the Thunderbolt force-power guid 86CCFD48-205E-4A77-9C48-2021CBEDE341 to force on Thunderbolt in stead of the SSDT. Because of the WMI guid, this would be compatible across BIOS versions and brands irregardless of the ACPI device naming.

  • Force _SB.PCI0.RP01.PXSX to be powered on even without a device in it through DSDT patches.
    However in the DSDT code I can see the PCI memory space being read and the variable VDID used to check the vendor device ID against 0xFFFFFFFF (i.e. no device present), not sure what the best way to deal with this is.

    Additionally there is a PowerResource defined at _SB.PCI0.RP01.PXSX.WRST, but I've never encountered PowerResource objects in ACPI before.

  • Alternatively write a driver which attaches to _SB.PCI0.RP01.PXSX to manipulate the powerstate.
    On certain MacBooks I've spotted the IOPowerManagement property "PowerOverrideOn", which could help with this.
Attached are the decompiled DSL files from BIOS 2.3.1 for reference. Ideas on the above on how to get the USB-C / Thunderbolt hub to show on initial boot without a device plugged in are welcome.

Would it be possible to make a small guide about enabling the USB-C? I've tried connecting a Nexus 5X via usb C cable and even if the nexus 5x was visible under the System Information tool (if cold plugged) I was unable to have mount it as a disk, so it's probably not working (also the Thunderbolt is never shown even if powered up with a USB C device plugged in)
 
Has anyone got USB-C HDMI Video Out working on macOS High Sierra? I can't get it working by any means. I'm using dodocool DC35 7-in-1 USB-C dongle (VGA, HDMI, 3xUSB3, Ethernet, USB-PD).
 
dodocool DC35 7-in-1 USB-C dongle (VGA, HDMI, 3xUSB3, Ethernet, USB-PD).

I'm using the exact same dongle, its working fine with multiple displays I tested it on.
Ensure you plug in the dongle before switching on the laptop. HDMI can be hotplugged just fine as long as you boot with USB-C plugged in.
 
Has anyone tried setting PEGx and TBx hot-plug to enabled using IFR? I know this has been successfully done on other machines, I don't have/need a TB connector so haven't really experimented with these settings. YMMV.
 
@jkbuha ,

I tried the following variables so far:

Code:
Thunderbolt(TM) Support
2.3.1: 0x443 --> 1 (Enabled, Default: Enabled)

Thunderbolt(TM) PCIe Support
2.3.1: 0x44A --> 1 (Enabled, Default: Disabled)

Thunderbolt Usb Support
2.3.1: 0x44C --> 1 (Enabled, Default: Disabled)

Windows 10 Thunderbolt support
2.3.1: 0x13C5 --> 1 (Enabled, Default: Disabled)

I can do some additional testing, which IFR variables do you suggest I test with?
 
There are quite a number of PEG hot-plug variables, suggest you do a search for *plug and experiment with them.
 
Status
Not open for further replies.
Back
Top