Contribute
Register

[Guide] Dell Inspiron 15 7559 (skylake)

Joined
Feb 27, 2011
Messages
75
Motherboard
Inspiron 15 7000 Series 7559
CPU
i7-6700HQ
Graphics
HD 530
** EFI folder working with opencore 0.6.1 booting 10.15.7 added to attached files **

This is a continuation of a guide from the sierra section updated for mojave.

10.14.5:

- updated kexts
- added ApplePS2SmartTouchPad.kext to "system kexts" to be installed in /L/E for trackpad gesture support.

v2:
- Removed VerbStub
- added SSDT-ALC256.aml and codec commander to address the combo jack.

Mojave v1:
- Updated the kexts, now using whatevergreen, applealc, and VerbStub.
- Added sdcard kext.

Not yet working:
  • Stock Wi-fi
  • Nvidia Optimus
Prerequisites:

BCM94352Z NGFF WiFi card for wifi. (Clover config includes a patch)

Most recent BIOS 1.2.9 is compatible. BIOS Settings need to be as follows:
- Restore BIOS defaults
- AHCI mode should be selected under SATA
- Disable VT for direct I/O
- Advanced Battery Charging should be disabled
- Secure boot should be disabled
- turn off SupportAssist System Resolution (this will disable the occasional hardware check that prevents booting)
- Firmware TPM should be disabled.
- Load Legacy Option Rom (Enables Clover to show on external display)
- Save the settings and reboot
- Press F12 on boot screen and under other options disable Pheriperial Device Setting (OPROM Setting)

Note: If it’s disabled you shouldn’t see any Legacy options under “F12 screen”

Create the USB Installer (16gb or larger required):

1
. Download Mojave via the Mac App Store

2. Use the createinstallmedia method to create a usb installer:

- Format your usb drive
Code:
diskutil partitionDisk /dev/*YOUR DISK* GPT JHFS+ MojaveInstallUSB 0b
- Install the installer to it
Code:
sudo /Applications/Install\ macOS\ Mojave.app/Contents/Resources/createinstallmedia --volume /Volumes/MojaveInstallUSB --nointeraction

3. Install Clover using option "Install for UEFI booting only" and choose Use AptioMemoryFix-64.efi for UEFI drivers.

4. While the usb drive's EFI partition is mounted (or use EFI Mounter), replace the config.plist in the EFI>CLOVER file with the one in the mojavefiles/usb folder and put HFSPLUS.efi and apfs.efi driver into the drivers64UEFI folder. place the kexts from "mojavefiles>usb>cloverkexts" to EFI>CLOVER>kexts>Other. Open the EFI>CLOVER>kexts folder and delete all the folders but NOT the the "Other" one.

5. Place the mojavefiles folder onto the usb drive.

6. Boot from the usb drive by pressing f12 at boot. When clover comes up choose the mojave installer. UHD display variants add the bootflag "-cdfon" to the config.plist! Otherwise you won't be able to boot.

7
. Use Disk Utility to erase/format (apfs) your disk or partition for OS X then install to it. It will take about 20 minutes.

Post Install

1
. f12 at boot and choose the usb drive again to load clover and choose the partition you just installed to. It will continue installing then reboot. UHD display variants add the bootflag "-cdfon" to the config.plist.

2
. f12 at boot again and choose the usb drive again to load clover then choose the OSX install on the hard drive when clover comes on.

3. Install Clover using option "Install for UEFI booting only" and choose Use AptioMemoryFix-64.efi for UEFI drivers.

4. While the hd's EFI folder (or use EFI Mounter) is mounted open it up in finder and go to EFI>CLOVER and replace the config.plist with the one from the mojavefiles/desktop folder. Open the EFI>CLOVER>kexts folder and delete all the folders but NOT the the "Other" one. place the kexts from the "mojavefiles>desktop>cloverkexts" folder in there. Copy HFSPLUS.efi and apfs.efi driver from the mojavefiles into the CLOVER>drivers64UEFI folder.

5a. Use Kextbeast to install the kexts in the mojavefiles>desktop>systemkexts folder to /Library/Extensions.

6. Rebuild kernel cache.

Code:
sudo kextcache -i /

7a) Patching DSDT

- Turn on your laptop and press f12 boot the Clover bootloader.

- Highlight the OS X disk and press “F4” to generate the native ACPI files. (Note: You won’t see anything while pressing F4 - the files are generated silently)

- Boot OS X and mount EFI partition with Clover Configurator

- Go to “EFI/Clover/ACPI/” and copy the “origin” folder you just created to your desktop

- Delete all files from the folder on your desktop that doesn’t start with DSDT or SSDT

- Copy “mojavefiles/refs.txt” into this folder

- Open terminal and run this command to instal iasl (password will be prompted)

Code:
cd ~/Desktop/mojavefiles
sudo cp iasl /usr/bin

- Copy the code below into the terminal to disassemble those files into the form we can edit (use your account name in the code)

Code:
cd ~/Desktop/origin
iasl -da -dl -fe refs.txt *.aml

--> This command will create “**DT.dsl” files in the origin folder

7b) DSDT Patching


- Place mojavefiles/MaciASL.app into your Applications folder

- Open DSDT.dsl (from your origin folder) in MaciASL

Note: Now we are going to edit this file and compile it back again to use it to load with your system later. It is really important that you don’t make mistake here. You can click on “Compile” to check if you extracted the DSL files correctly. Warnings don't matter but errors do. If you got an error here it means you disassembled the files wrong. Now there are many patches which we are going to apply. After each one you can click on “Compile” to check for errors.

- Search (cmd+f) for ‘HECI’ and replace all with ‘IMEI’

- Search for ‘HDAS’ and replace all with ‘HDEF’

- Click on Patch and apply the following patches. Apply then close one at a time in this order:



    • [syn] Rename _DSM methods to XDSM
    • XXX
    • [Audio] Audio Layout 3
    • [bat] Dell Inspiron 15-7xxx
    • [sys] Fix _WAK Arg0 v2 (may not be necessary after 10.12.2)
    • [sys] Fix Mutex with non-zero SyncLevel
    • [sys] HPET Fix
    • [sys] IRQ fix
    • [sys] RTC Fix
    • [sys] Skylake LPC
    • [sys] SMBUS Fix
    • [usb] USB3_PRW 0x6D Skylake
To make the headphone combo jack work properly we need to use the audio layout-id 13 instead of the Layout 3 from the patch we used earlier. Search for "layout" and change the 3 to 13.

//disable nvidia for better battery (advised - needed for High Sierra)

Add these lines above the other External lines at the beginning:

Code:
External (_SB_.PCI0.PEG0.PEGP._PS3, MethodObj)
External (_SB_.PCI0.PEG0.PEGP._PS0, MethodObj)
External (_SB_.PCI0.PEG0.PEGP._OFF, MethodObj)
External (_SB_.PCI0.PEG0.PEGP._ON, MethodObj)
External (_SB_.PCI0.PEG0.PEGP.SGOF, MethodObj)
External (_SB_.PCI0.PEG0.PEGP.SGON, MethodObj)

Search for ‘_WAK’ and add these methods above Method (_WAK):

Code:
Method (M_ON, 0, NotSerialized)

    {
       If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._ON))
       {
           \_SB_.PCI0.PEG0.PEGP._ON()
       }
       If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._PS0))
       {
           \_SB_.PCI0.PEG0.PEGP._PS0()
       }
       If (CondRefOf (\_SB_.PCI0.PEG0.PEGP.SGON))
       {
           \_SB_.PCI0.PEG0.PEGP.SGON()
       }
    }
Code:
Method (M_OF, 0, NotSerialized)
    {
       If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._OFF))
       {
           \_SB_.PCI0.PEG0.PEGP._OFF()
       }
       If (CondRefOf (\_SB_.PCI0.PEG0.PEGP._PS3))
       {
           \_SB_.PCI0.PEG0.PEGP._PS3()
       }
       If (CondRefOf (\_SB_.PCI0.PEG0.PEGP.SGOF))
       {
           \_SB_.PCI0.PEG0.PEGP.SGOF()
       }
    }

Add this line right after the opening bracket of Method (_WAK):
Code:
M_OF ()

Search for ‘_PTS’ and add this line right after the opening bracket of Method (_PTS):

Code:
M_ON ()

Search for the ’_INI’ where you find references of Linux and Windows. Add this line between Store (….) and If (…..(..)):

Code:
M_OF ()

//end of optional disabling of nvidia

Click Compile and if you have any errors (warnings don’t matter) try again. If you get syntax error on external lines with "Warning: Unknown object", delete the lines. Save the file by choosing "save as": DSDT.aml in a new folder on desktop called “SSDTs” and file format: ACPI Machine Language Binary.


DSDT.aml (patched)

SSDT-UIAC.aml (mojavefiles)

SSDT-PNLF.aml (mojavefiles)


- Open Clover Configurator (or efimounter) and mount internal EFI. Open EFI/Clover/ACPI/patched/ and place all your *.aml files here

- Open the EFI/Clover/config.plist with Clover Configurator. Go to the section SMBIOS and click the magic wand icon. Choose the MacBook icon and select MacBook 11,1 in the dropdown menu. Shake a few times with the Week and Unit until you find a Serial that’s not valid (means it isn’t used yet by an official Mac). You can check that here: Check Your Service and Support Coverage - Apple Support

Be sure that the names of the files in your EFI>CLOVER>ACPI>patched folder are correct in the Sorted Order part of Clover's config.plist.

8. Reboot.

9. Choose Clover To Be Your Default Boot Option

- Turn of your laptop and enter BIOS settings (Press F2 on boot)

- Go to Boot section and choose “Add Boot Option” —> Choose your system disk —> Navigate to “EFI/Clover” —> Choose “CLOVERX64.efi” and name it “CLOVER

Extra

To correct the Alt and Cmd keys just swap the option and cmd modifier keys in the keyboard section in System Preferences.

opengl.png
 

Attachments

  • mojavefiles10.14.5v2.zip
    46.6 MB · Views: 2,084
  • catalina15.1.zip
    66.3 MB · Views: 2,692
  • OC-0.6.3-7559.zip
    5.1 MB · Views: 792
  • OC-0.6.9-7559.zip
    5.1 MB · Views: 310
  • 0.7.5.zip
    6.2 MB · Views: 286
  • OC-04:2022.zip
    6.8 MB · Views: 265
Last edited:
Great guide as always! Runs really smoothly on my i7 1080p. Unfortunately my combo jack is outputting distorted audio. Files attached.
 

Attachments

  • debug_1749.zip
    4.9 MB · Views: 471
Great guide as always! Runs really smoothly on my i7 1080p. Unfortunately my combo jack is outputting distorted audio. Files attached.

Install CodecCommander.kext + one of SSDT-ALC256-insanelydeepak.aml or SSDT-ALC256-vbourachot.aml (the .dsl files are in the CodecCommander project).

Keep in mind you must add the properties from SSDT-AppleALC.dsl (into your SSDT-ALC256) when you use AppleALC with CodecCommander.
 
Hello

I have followed your guide but i still can not get the native screen to work, when i use a tv via hdmi everything works great same with fake id bu it onpy has 31mb of vram. But when i try to use 0x191b0000 which is skylake id for graphics and SSDT PLMF, i can only get video to work on tv and it does not work on the actual laptop screen with and without OPROM setting.

Thank you in advance.
 

Attachments

  • debug_15814.zip
    4.9 MB · Views: 418
Hello

I have followed your guide but i still can not get the native screen to work, when i use a tv via hdmi everything works great same with fake id bu it onpy has 31mb of vram. But when i try to use 0x191b0000 which is skylake id for graphics and SSDT PLMF, i can only get video to work on tv and it does not work on the actual laptop screen with and without OPROM setting.

Thank you in advance.

4k screen requires WhateverGreen.kext and kernel flag -cdfon.
Your kextcache proves WhateverGreen.kext is not installed.
And your config.plist/Boot/Arguments does not have -cdfon.
 
Hello

I have installed WhateverGreen and Lilu kexts but it still did not work. But one time i have accidentally changed IntelBacklight and MaxIntelBacklight in graphics injector option in Clover at boot. and i have set the first one to 0x1111 and the second one to 1111 and i was amazed to find that it actually made the screen to finally go on. So dear RehabMan if possible could you explain to me how to make it be a default boot for my config.plist. I managed to make set IntelMaxBacklight to 1111, but i am still not sure how to make IntelBacklight to be set to 1111 on default at boot. Also if there are any other better backlight values please provide them.

Thank you in advance
 

Attachments

  • debug_12729.zip
    5.1 MB · Views: 374
Hello

I have installed WhateverGreen and Lilu kexts but it still did not work. But one time i have accidentally changed IntelBacklight and MaxIntelBacklight in graphics injector option in Clover at boot. and i have set the first one to 0x1111 and the second one to 1111 and i was amazed to find that it actually made the screen to finally go on. So dear RehabMan if possible could you explain to me how to make it be a default boot for my config.plist. I managed to make set IntelMaxBacklight to 1111, but i am still not sure how to make IntelBacklight to be set to 1111 on default at boot. Also if there are any other better backlight values please provide them.

Thank you in advance

Read Clover documentation regarding backlight settings in config.plist.

Good idea would be to implement your brightness keys so you can turn up the brightness level (maybe your NVRAM brightness level is zero).

You should also implement native NVRAM. Use AptioMemoryFix-64.efi, not OsxAptioFix*.efi+EmuVariableUefi-64.efi.
 
Hello

I have installed WhateverGreen and Lilu kexts but it still did not work. But one time i have accidentally changed IntelBacklight and MaxIntelBacklight in graphics injector option in Clover at boot. and i have set the first one to 0x1111 and the second one to 1111 and i was amazed to find that it actually made the screen to finally go on. So dear RehabMan if possible could you explain to me how to make it be a default boot for my config.plist. I managed to make set IntelMaxBacklight to 1111, but i am still not sure how to make IntelBacklight to be set to 1111 on default at boot. Also if there are any other better backlight values please provide them.

Thank you in advance

Use SSDT-PNLF.dsl at https://github.com/RehabMan/OS-X-Clover-Laptop-Config/raw/master/hotpatch/SSDT-PNLF.dsl and set RMCF.BKLT to 5.

// BKLT: Backlight control type
//
// bit0=0: Using IntelBacklight.kext
// bit0=1: Using AppleBacklight.kext + AppleBacklightInjector.kext
// bit1=1: do not set LEVW
// bit2=1: set GRAN
 
Use SSDT-PNLF.dsl at https://github.com/RehabMan/OS-X-Clover-Laptop-Config/raw/master/hotpatch/SSDT-PNLF.dsl and set RMCF.BKLT to 5.

// BKLT: Backlight control type
//
// bit0=0: Using IntelBacklight.kext
// bit0=1: Using AppleBacklight.kext + AppleBacklightInjector.kext
// bit1=1: do not set LEVW
// bit2=1: set GRAN
Thank You for your suggestion i have applied it and now i can easily change brightness and do not need the IntelBacklight setting
Thank you for your help and you time
 
Back
Top