Jump to content

FrostyTheSnowman

Members
  • Posts

    17
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by FrostyTheSnowman

  1. Well, one month later and no progress on the Nvidia-side with High Sierra... still encountering 'gIOScreenLockState' when using the NVS 5200M.

     

    I'm still working on it, but who knows if I will get it sorted out any time soon.

     

    On a side note - using the EXP GDC Beast 8.4d (ExpressCard) with an EVGA GTX 1050 Ti and an external monitor on my E6430 works fine under High Sierra with web drivers.

  2. Quick update - the current package works fine with High Sierra if Clover is updated and Lilu/IntelGraphicsFixup are included, except Nvidia which is not working.

     

    I believe Nvidia issues are caused by SMBIOS/AGDP, as including NvidiaGraphicsFixup does not correct the issue.

     

    Still working on the Nvidia issue, should hopefully be resolved once we know more about High Sierra's issues with Nvidia cards in general.

  3. Sorry, been away for a while - looks like this thread has been busy! :)

     

    If you are using EFI to boot Clover, make sure 'OsxAptioFixDrv-64.efi' is in the 'Drivers64UEFI' folder in Clover... I forgot to include this file in my pack as I use CSM to boot and simply forgot about it.

     

    I plan to rebuild this pack for use with High Sierra shortly, but in the meantime including that file should allow you to boot.

  4. Awesome, looks like the E6430 DSDT is working just fine on your E6530! 

     
    Unfortunately the issues you are describing (and the screenshot you provided) are a symptom of Nvidia GPU PM (power management) not working properly - if you remove/drop the CPU SSDT then OSX will not attempt to enable GPU PM and OSX will boot normally (but slow), however you will not have any CPU PM if you do this.
     
    The easiest fix for this issue is to edit the Clover 'config.plist' file with a different 'Board-ID' used for an iMac (instead of a MacBook) but keep the 'ProductName' the same:
     
    Change this:
     
     

     

    <key>SMBIOS</key>
    <dict>
              <key>Board-ID</key>
              <string>Mac-4B7AC7E43945597E</string>
              <key>ProductName</key>
              <string>MacBookPro9,2</string>
              <key>Trust</key>
              <false/>
    </dict>
     
     
    To this:
     
     

     

    <key>SMBIOS</key>
    <dict>
              <key>Board-ID</key>
              <string>Mac-00BE6ED71E35EB86</string>
              <key>ProductName</key>
              <string>MacBookPro9,2</string>
              <key>Trust</key>
              <false/>
    </dict>
     
     
    After editing the Clover 'config.plist' with the above OSX will not attempt to enable GPU PM, and you should be able to use your CPU SSDT. ;)
  5. It doesn't take too long, the DSDT patches are documented in post #1, #5 and #12 of this thread. I'm sure they would work the same on the E6530 (w/Nvidia). :)

     

    I don't know for sure if the E6430 DSDT in my bootpack will be compatible with E6530, but I would go ahead and try my bootpack anyway and see how it works - it will probably work fine.

     

    Let us know how it works out! ;)

  6. On 10/29/2016 at 9:19 AM, Pablo Iglesias said:

    1. I didn't find the PNLF method to insert in the DSDT. Is it the '[igpu] Brightness fix (HD300/HD4000)' patch that I need to apply?

     

    1. PNLF code can be tricky... there are some different variations floating around. The '[igpu] Brightness fix (HD3000/HD4000)' patch does work for Intel, but it does not work correctly for Nvidia. I adjusted the code slightly to work with both Intel/Nvidia, this was the resulting code I used:

     

     

     

     

       Scope (_SB)

        {
            Device (PNLF)
            {
                Name (_ADR, Zero)  // _ADR: Address
                Name (_HID, EisaId ("APP0002"))  // _HID: Hardware ID
                Name (_CID, "backlight")  // _CID: Compatible ID
                Name (_UID, 0x0A)  // _UID: Unique ID
                Name (_STA, 0x0B)  // _STA: Status
            }
        }
     
     
    2. Backlight code for the Nvidia card is not very well documented online... there isn't much love for Nvidia on Hackintosh laptops because troubleshooting can be complicated (compared to Intel). In this case I had to research the 'PWM' info for the backlight on Nvidia cards and create my own code based on the Intel backlight code - this was the resulting code I used:
     
     

     

           Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
            {
                Store (Package (0x06)
                    {
                        "AAPL,backlight-control", 
                        Buffer (0x04)
                        {
                             0x01, 0x00, 0x00, 0x00                         
                        }, 
     
                        "@0,backlight-control", 
                        Buffer (0x04)
                        {
                             0x01, 0x00, 0x00, 0x00                         
                        }, 
     
                        "@0,pwm-info", 
                        Buffer (0x14)
                        {
                            /* 0000 */  0x01, 0x14, 0x00, 0x64, 0xA8, 0x61, 0x00, 0x00,
                            /* 0008 */  0x08, 0x52, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00,
                            /* 0010 */  0x00, 0x04, 0x00, 0x00                         
                        }
                    }, Local0)
                DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                Return (Local0)
            }
        }
     
     
    NOTE: The above '_DSM' method requires 'DTGP' method to be present in DSDT to work. This is the resulting code I used:
     
     

     

       Method (DTGP, 5, NotSerialized)
        {
            If (LEqual (Arg0, ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b")))
            {
                If (LEqual (Arg1, One))
                {
                    If (LEqual (Arg2, Zero))
                    {
                        Store (Buffer (One)
                            {
                                 0x03                                           
                            }, Arg4)
                        Return (One)
                    }
     
                    If (LEqual (Arg2, One))
                    {
                        Return (One)
                    }
                }
            }
     
            Store (Buffer (One)
                {
                     0x00                                           
                }, Arg4)
            Return (Zero)
        }
     
     
    3. There are many _DSM methods in DSDT, however they do not affect the Nvidia card, because the Nvidia code is located in 'SSDT-7.dsl' (unless you copy it into the DSDT manually). The _DSM method in 'SSDT-7.dsl' is the one you need to clear and replace.
     
    4. Yes, the XOSI 'SSDT-n.aml' file needs to be created and placed in '/EFI/CLOVER/ACPI/patched', the 'n' can be any number you like as long as the order is correct and it doesn't conflict with other SSDTs. This is the resulting XOSI code I used:
     
     

     

    DefinitionBlock ("", "SSDT", 1, "hack", "XOSI", 0x00000000)
    {
        Method (XOSI, 1, NotSerialized)
        {
            Name (WINV, Package (0x09)
            {
                "Windows", 
                "Windows 2001", 
                "Windows 2001 SP2", 
                "Windows 2006", 
                "Windows 2006 SP1", 
                "Windows 2009"
            })
            Return (LNotEqual (Ones, Match (WINV, MEQ, Arg0, MTR, Zero, Zero)))
        }
    }
     
     
    Let me know if you have any questions! ;)
  7. Pablo,

     

    Yes, the content from the external Nvidia SSDT was copied into the DSDT to allow me to call the _ON and _OFF methods.

     

    I dumped the DSDT/SSDT tables with Optimus enabled to ensure my DSDT had code for both video cards being active, this way it will also work with one card disabled (Optimus disabled in BIOS), as I was having issues with DSDT/SSDT dumps done with Optimus disabled.

     

    As Herve was saying above, you can certainly use the 'External' reference to call the _OFF and _ON methods (easiest way) -or- you can copy the code from the Nvidia SSDT into the DSDT, either way works fine. I decided to copy the SSDT code into the DSDT to help keep the DSDT working with future BIOS versions.

     

    Here's a quick rundown of the requirements to get Nvidia working on E6430 (and others) under El Capitan/Sierra:

     

    • Optimus Enabled or Disabled in BIOS (either way)
    • Nvidia injection set to 'true' in Clover 'config.plist' to enable Nvidia card in OS X
    • Specified 'ProductName' of 'MacBookPro9,2' and 'Board-ID' of 'Mac-4B7AC7E43945597E' in SMBIOS section in Clover 'config.plist' to get past the black screen issue
    • Added _OFF call to top of _PTS method to disable the Nvidia hardware before entering sleep state, then added _ON call to top of _WAK method to enable the Nvidia hardware when leaving sleep state to fix Nvidia sleep freeze
    • Added 'PNLF' method to DSDT to force LCD screen to identify as built-in, this is needed by OS X to enable sleeping with lid
    • Added RehabMan's 'Poll for LID changes' patch to DSDT and installed RehabMan's 'ACPIPoller.kext' to fix lid sleep on Nvidia
    • Cleared the _DSM method (removed all code inside the _DSM method, original code was used for switching video cards in Windows which won't work on Mac) in the Nvidia SSDT and replaced it with backlight code for Nvidia to fix brightness slider in OS X

     

    Here's a quick rundown of the requirements to get USB 3.0 working on E6430 (and others) under El Capitan/Sierra:

     

    • Renamed _OSI to XOSI via Clover patch (this could also be done manually inside the DSDT instead) then created SSDT (or you could also copy this code into DSDT if you wanted to) with XOSI method set for 'Windows 2009' to force the BIOS to enable USB 3.0
    • Set 'USB Ownership' in Clover's 'config.plist' to 'true' to fix USB ownership (required or OS X will freeze on bootup)
    • Renamed EHC1 to EH01 and EHC2 to EH02 via Clover patches (this could also be done manually inside the DSDT instead) to prevent OS X from loading the default USB 3.0 drivers/injection (default driver/injection causes side-effects, RehabMan's 'USBInjectAll.kext' is used instead)
    • Installed RehabMan's 'USBInjectAll.kext', 'fakepciid.kext' and 'fakepciid_xhcimux.kext' to inject USB 3.0 port and routing information to enable USB 3.0 in OS X
    • Applied RehabMan's 'USB3 _PRW 0x0D (instant wake)' patch to DSDT to fix USB properties to allow sleep

     

    Let me know if you have any other questions, i'm happy to help. :)

  8. Please note that you should not use the VoodooSDHC kext as that's unnecessary and highly likely to cause wake issues. Instead, patch your DSDT to inject compatibility with Apple's default SD card reader. Details of the patch are available here and in original thread from Joe82. The patch works perfectly on all E6x20/6x30/6x40 models.

     

    I applied the DSDT patch and it worked great, thanks! SD card reader seems to work fine with injected properties into RP06. :)

     

    Sleep is working now with or without SD card inserted, I am attaching an updated DSDT to this post for use instead of installing 'VoodooSDHC.kext'.

     

    Bump for A18 BIOS, I've got my setup using it as well without issues, however I wasn't aware that Samsung LTN140KT07 was a requirement. I do have the 1400x900 display, but unsure of the specific Samsung panel.

     

    I'm not sure what causes the issue with the garbage on Intel, but my guess is either EDID or LVDS link cable... my personal E6430 originally had the 1366x768 LCD with a single-link LVDS cable and I had to run a BIOS lower than A13 to fix the garbage.

     

    However, after upgrading to the Samsung 1600x900 panel and the dual-link cable I no longer encountered the garbage when using Intel, regardless of my BIOS version... it would be interesting to know which brand/model LCD you have on yours to be sure. :)

    DSDT_sd_card_injected.zip

  9. Looking good, thanks.

     

    Please note that you should not use the VoodooSDHC kext as that's unnecessary and highly likely to cause wake issues. Instead, patch your DSDT to inject compatibility with Apple's default SD card reader. Details of the patch are available here and in original thread from Joe82. The patch works perfectly on all E6x20/6x30/6x40 models.

     

    Ah! I thought I recalled reading about that, I will implement it immediately and update the package after testing. Thanks! :)

     

    Have you found ACPIPoller to be necessary? I've not needed it on my E6230...

     

    It's only necessary while using 'Nvidia-only' mode (Optimus Disabled), it seems like the lid only functions correctly using 'Intel/Nvidia' mode (Optimus Enabled).

     

    The normal 'LID' code seems to be built around the Intel code in DSDT, so without LIDP patch/ACPIPoller.kext the lid doesn't respond when closed using 'Nvidia-only' (Optimus Disabled). :(

     

    HDMI output and HDMI audio are also achievable through a combination of DSDT patches + Capri FB patches and AppleHDA patches.

     

    I'm somewhat of a minimalist when it comes to patches, I try not to patch the DSDT for preference of one graphics card's functions over the other (audio or video) to avoid potential conflicts when switching between them, so 'VoodooHDA' tends to be pretty good for me (although I admit most people prefer AppleHDA patches over VoodooHDA).

     

    I am able to get HDMI video and audio output under both modes (Intel/Nvidia and Nvidia-only), as it seems the Nvidia card is used in both cases for HDMI.

  10. Working sleep on E6430 for both graphics modes! (Optimus Enabled or Disabled)

     

    *** This package is intended for those who want full use of both Intel and Nvidia cards on their E6430 under macOS(X) - you will be able to use Intel and Nvidia graphics cards together (Optimus Enabled in BIOS), or Nvidia graphics card alone (Optimus Disabled in BIOS) with full functionality. If you are looking for Intel-only (Nvidia turned off all the time for battery savings) support this is not the focus of this package/thread.

     

    NOTE: Reported to also work on E6530 models!

     

    Targeted macOS(X) Versions:

     

    El Capitan 10.11.x and Sierra 10.12.x

     

    NOTES:

     

    1. No CPU-specific SSDT code/settings are included, should work on any E6430 CPU
    2. No wifi-specific code/settings are included, refer to compatible card list for suitable replacement wifi card
    3. No SMBIOS details are set other than 'ProductName' and 'Board-ID', everything else is auto-generated by Clover - if you want iMessage, etc working you will need to provide valid data
    4. If you are using the 1366x768 LCD you will need to be on BIOS A13 or older to prevent artifacts when using Intel (Optimus Enabled), and you will need to set Clover to '1366x768' along with 'ig-platform-id' set to '0x01660003'
    5. Be sure to disable hibernation and remove your hibernate file within your OS!
     

    Hardware used for build:

    Dell Latitude E6430 w/BIOS A18
    Intel HD 4000 and Nvidia NVS 5200M Graphics (Optimus)
    Intel Ivy Bridge Core i7-3940XM
    16GB DDR3L
    1600x900 LCD (Samsung LTN140KT07 - Dell P/N HND16)
    Dual-Link LVDS (Dell P/N XPY7J)
    Backlit Keyboard
    ALPS Touchpad/Trackstick

     

     

    Fixes Applied:

     

    * Nvidia 'black screen' on boot

    Issue: black screen caused by incorrect/missing display information for Nvidia in MacBookPro9,2 profile in 'AppleGraphicsDevicePolicy.kext'
    Fix: fixed by checking 'AppleGraphicsDevicePolicy.kext' for a 'ConfigMap' with no profile then declaring as such in SMBIOS (I used 'Mac-4B7AC7E43945597E' in SMBIOS to accomplish this)

    * Nvidia Sleep 'freeze'
     
    Issue: when attempting to sleep with Nvidia card turned on (Optimus Disabled/Enabled) the laptop will freeze while entering sleep state
    Fix: used _OFF call to disable the Nvidia hardware before entering sleep state, then used _ON call to enable the Nvidia hardware when leaving sleep state
     
    * Distorted graphics on certain BIOS versions when using Intel (Optimus Enabled) graphics
     
    Issue: Intel QE/CI is working correctly, however the screen randomly produces artifacts
    Fix: The advised fix was/is to run BIOS version A13 or older to fix the artifacts when using Intel (Optimus Enabled) graphics, however this can also be fixed by upgrading to the 'Samsung LTN140KT07' LCD instead of the stock one (confirmed working on A14-A18 BIOS with this LCD)
     
    * USB 3.0 under El Capitan
     
    Issue: USB 2.0 recognized, USB 3.0 is not
    Fix: Applied '_OSI to XOSI' patch to DSDT, created SSDT.aml with XOSI for 'Windows 2009', set 'USB Ownership' in Clover's 'config.plist' to 'true', then renamed EHC1/EHC2 to EH01/EH02 via Clover patches and installed RehabMan's 'USBInjectAll.kext', 'fakepciid.kext' and 'fakepciid_xhcimux.kext'
     
    * Sleep (separate from Nvidia-specific issues/fixes above)
     
    Issue: E6430 laptop will not sleep (black screen, instant reboot, instant wake, etc)
    Fix: Cleared everything from the 'PNOT' method in DSDT to make it 'do nothing', applied RehabMan's 'Fix _WAK Arg0 v2' and 'USB3 _PRW 0x0D (instant wake)' patches to DSDT
     
    * Lid Sleep, Brightness Slider and missing 'in/out screen fade' when sleeping/waking
     
    Issue: Laptop will not sleep when lid is closed, nor will it wake when lid is opened, brightness slider also not visible/working
    Fix: Added 'PNLF' to DSDT, applied RehabMan's 'Poll for LID changes' patch to DSDT (needed for lid sleep on Nvidia), added backlight properties to Nvidia _DSM (not needed for Intel), installed RehabMan's 'ACPIPoller.kext' (needed for lid sleep on Nvidia) and installed RehabMan's 'IntelBacklight.kext' (for proper backlight levels/control)
    Side-effects: LID 'wake' does not work on Nvidia (Optimus Disabled), use power button to wake instead
     
    * ALPS Touchpad/Trackstick
     
    Issue: No multitouch, will not work in Sierra, etc
    Fix: Used the new 'VoodooPS2Controller.kext' version from 'siddx' for Sierra DP7 (works very well with all ALPS devices)
     
    * Battery Status
     
    Issue: Battery status does not work/is not accurate
    Fix: Edited BAT1/_STA and BAT2/_STA to return zero in DSDT, then installed RehabMan's 'ACPIBatteryManager.kext'
     
    * SD Card Reader
     
    Issue: SD card reader does not work

    Fix: Please see updated DSDT.aml file attached in post: https://osxlatitude.com/index.php?/topic/9248-working-sleep-on-intel-hd-and-nvidia-nvs-on-dell-latitude-e6430-optimus-enabled-or-disabled/&do=findComment&comment=62735

    Alternate Fix: Edited 'Info.plist' inside 'VoodooSDHC.kext' with SD card reader vendor and device ID, then installed 'VoodooSDHC.kext'
    Side-effects of Alternate Fix (VoodooSDHC.kext): SD card reader seems to prevent 'wake' from working unless either 1. an sd card is inserted before wake or 2. sd card reader is disabled in BIOS.
     
    * Volume Control
     
    Issue: OS X volume controls do not work
    Fix: Installed 'VoodooHDA-v2.8.8.zip', edited 'Info.plist' inside 'VoodooHDA.kext' and set 'VoodooHDAEnableMuteFix' and 'VoodooHDAEnableVolumeChangeFix' to 'true' then rebuilt cache

     

     

    DSDT Changes:

     

    - Extracted DSDT and SSDT* via Linux /sys/firmware/acpi/tables/ with Optimus enabled in BIOS (A18)
    - Imported content from dumped Nvidia SSDT into DSDT
    - Nvidia _DSM cleared and replaced with injection of backlight properties (injection is otherwise handled by Clover, however Clover does not inject the backlight properties needed for brightness slider under Nvidia)
    - Added below code to top of _PTS method (disables Nvidia card when entering sleep):
     
            \_SB.PCI0.PEG0.VID._OFF ()
     
    - Added below code to top of _WAK method (enables Nvidia card when exiting sleep):
     
            \_SB.PCI0.PEG0.VID._ON ()
     
    - PNLF added (required for OS X to recognize the LCD as 'internal')
    - PNOT cleared (required for sleep to function properly)
    - BAT1 _STA returns zero (required for working battery status)
    - BAT2 _STA returns zero (required for working battery status)
    - RehabMan's 'Fix _WAK Arg0 v2' patch applied (fixes sleep wake status)
    - RehabMan's 'USB3 _PRW 0x0D (instant wake)' patch applied (fixes USB properties to allow sleep)
    - RehabMan's 'Poll for LID changes' patch applied (allows lid sleep with Nvidia Optimus disabled)

     

     
    Clover Installer settings:

    * CloverEFI 64-bits SATA (hard drive detection)
    * Install RC scripts on target volume (preserves brightness, volume, etc on shutdown/reboot)

     

     

    Clover 'config.plist':

     

     

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    	<key>ACPI</key>
    	<dict>
    		<key>DSDT</key>
    		<dict>
    			<key>Debug</key>
    			<false/>
    			<key>DropOEM_DSM</key>
    			<false/>
    			<key>Fixes</key>
    			<dict>
    				<key>AddDTGP_0001</key>
    				<true/>
    				<key>AddHDMI_8000000</key>
    				<false/>
    				<key>AddIMEI_80000</key>
    				<false/>
    				<key>AddMCHC_0008</key>
    				<false/>
    				<key>AddPNLF_1000000</key>
    				<false/>
    				<key>DeleteUnused_400000</key>
    				<false/>
    				<key>FIX_ACST_4000000</key>
    				<false/>
    				<key>FIX_ADP1_800000</key>
    				<false/>
    				<key>FIX_INTELGFX_100000</key>
    				<true/>
    				<key>FIX_RTC_20000</key>
    				<true/>
    				<key>FIX_S3D_2000000</key>
    				<true/>
    				<key>FakeLPC_0020</key>
    				<false/>
    				<key>FiX_TMR_40000</key>
    				<true/>
    				<key>FiX_WAK_200000</key>
    				<true/>
    				<key>FixAirport_4000</key>
    				<false/>
    				<key>FixDarwin_0002</key>
    				<false/>
    				<key>FixDisplay_0100</key>
    				<true/>
    				<key>FixFirewire_0800</key>
    				<false/>
    				<key>FixHDA_8000</key>
    				<true/>
    				<key>FixHPET_0010</key>
    				<true/>
    				<key>FixIDE_0200</key>
    				<false/>
    				<key>FixIPIC_0040</key>
    				<true/>
    				<key>FixLAN_2000</key>
    				<true/>
    				<key>FixRegions_10000000</key>
    				<false/>
    				<key>FixSATA_0400</key>
    				<false/>
    				<key>FixSBUS_0080</key>
    				<false/>
    				<key>FixShutdown_0004</key>
    				<true/>
    				<key>FixUSB_1000</key>
    				<false/>
    				<key>NewWay_80000000</key>
    				<false/>
    			</dict>
    			<key>Patches</key>
    			<array>
    				<dict>
    					<key>Comment</key>
    					<string>change _OSI to XOSI</string>
    					<key>Disabled</key>
    					<false/>
    					<key>Find</key>
    					<data>
    					X09TSQ==
    					</data>
    					<key>Replace</key>
    					<data>
    					WE9TSQ==
    					</data>
    				</dict>
    				<dict>
    					<key>Comment</key>
    					<string>change EHC1 to EH01</string>
    					<key>Disabled</key>
    					<false/>
    					<key>Find</key>
    					<data>
    					RUhDMQ==
    					</data>
    					<key>Replace</key>
    					<data>
    					RUgwMQ==
    					</data>
    				</dict>
    				<dict>
    					<key>Comment</key>
    					<string>change EHC2 to EH02</string>
    					<key>Disabled</key>
    					<false/>
    					<key>Find</key>
    					<data>
    					RUhDMg==
    					</data>
    					<key>Replace</key>
    					<data>
    					RUgwMg==
    					</data>
    				</dict>
    			</array>
    			<key>Name</key>
    			<string>DSDT.aml</string>
    			<key>ReuseFFFF</key>
    			<false/>
    		</dict>
    		<key>HaltEnabler</key>
    		<true/>
    		<key>DropTables</key>
    		<array>
    			<dict>
    				<key>Signature</key>
    				<string>DMAR</string>
    			</dict>
    		</array>
    		<key>SSDT</key>
    		<dict>
    			<key>DropOem</key>
    			<true/>
    			<key>Generate</key>
    			<dict>
    				<key>CStates</key>
    				<false/>
    				<key>PStates</key>
    				<false/>
    			</dict>
    			<key>PluginType</key>
    			<integer>1</integer>
    		</dict>
    	</dict>
    	<key>Boot</key>
    	<dict>
    		<key>Arguments</key>
    		<string>PCIRootUID=1 npci=0x2000 darkwake=0 dart=0 slide=0 nvda_drv=0</string>
    		<key>DefaultVolume</key>
    		<string>Macintosh HD</string>
    		<key>Legacy</key>
    		<string>PBR</string>
    		<key>Log</key>
    		<true/>
    		<key>Secure</key>
    		<false/>
    		<key>Timeout</key>
    		<integer>2</integer>
    		<key>XMPDetection</key>
    		<string>Yes</string>
    	</dict>
    	<key>Devices</key>
    	<dict>
    		<key>Audio</key>
    		<dict>
    			<key>Inject</key>
    			<string>1</string>
    		</dict>
    		<key>FakeID</key>
    		<dict>
    			<key>ATI</key>
    			<string>0x0</string>
    			<key>IMEI</key>
    			<string>0x0</string>
    			<key>IntelGFX</key>
    			<string>0x0</string>
    			<key>LAN</key>
    			<string>0x0</string>
    			<key>NVidia</key>
    			<string>0x0</string>
    			<key>SATA</key>
    			<string>0x0</string>
    			<key>WIFI</key>
    			<string>0x0</string>
    			<key>XHCI</key>
    			<string>0x0</string>
    		</dict>
    		<key>USB</key>
    		<dict>
    			<key>AddClockID</key>
    			<false/>
    			<key>FixOwnership</key>
    			<true/>
    			<key>Inject</key>
    			<false/>
    		</dict>
    		<key>UseIntelHDMI</key>
    		<false/>
    	</dict>
    	<key>DisableDrivers</key>
    	<array>
    		<string>Nothing</string>
    	</array>
    	<key>GUI</key>
    	<dict>
    		<key>Hide</key>
    		<array>
    			<string>Windows</string>
    			<string>\EFI\BOOT\BOOTX64.EFI</string>
    		</array>
    		<key>Language</key>
    		<string>en:0</string>
    		<key>Mouse</key>
    		<dict>
    			<key>Enabled</key>
    			<true/>
    			<key>Speed</key>
    			<integer>8</integer>
    		</dict>
    		<key>Scan</key>
    		<dict>
    			<key>Entries</key>
    			<true/>
    			<key>Legacy</key>
    			<string>First</string>
    			<key>Tool</key>
    			<true/>
    		</dict>
    		<key>ScreenResolution</key>
    		<string>1600x900</string>
    		<key>Theme</key>
    		<string></string>
    	</dict>
    	<key>Graphics</key>
    	<dict>
    		<key>Inject</key>
    		<dict>
    			<key>ATI</key>
    			<true/>
    			<key>Intel</key>
    			<true/>
    			<key>NVidia</key>
    			<true/>
    		</dict>
    		<key>ig-platform-id</key>
    		<string>0x01660004</string>
    	</dict>
    	<key>KernelAndKextPatches</key>
    	<dict>
    		<key>AppleRTC</key>
    		<true/>
    		<key>AsusAICPUPM</key>
    		<true/>
    		<key>ForceKextsToLoad</key>
    		<array>
    			<string>\System\Library\Extensions\IO80211Family.kext</string>
    		</array>
    		<key>KernelCpu</key>
    		<false/>
    		<key>KernelHaswellE</key>
    		<false/>
    		<key>KernelLapic</key>
    		<false/>
    		<key>KernelPm</key>
    		<true/>
    		<key>KextsToPatch</key>
    		<array>
    			<dict>
    				<key>Comment</key>
    				<string>Intel HD Boot Graphics Glitch Patch</string>
    				<key>Disabled</key>
    				<false/>
    				<key>Find</key>
    				<data>
    				AQAAdRc=
    				</data>
    				<key>Name</key>
    				<string>IOGraphicsFamily</string>
    				<key>Replace</key>
    				<data>
    				AQAA6xc=
    				</data>
    			</dict>
                            <dict>
                                    <key>Comment</key>
                                    <string>External Icons Patch</string>
                                    <key>Disabled</key>
                                    <false/>
                                    <key>Find</key>
                                    <data>
                                    RXh0ZXJuYWw=
                                    </data>
                                    <key>Name</key>
                                    <string>AppleAHCIPort</string>
                                    <key>Replace</key>
                                    <data>
                                    SW50ZXJuYWw=
                                    </data>
                            </dict>
    			<dict>
    				<key>Comment</key>
    				<string>XHCI 15 Port Limit to 26 Port Limit Patch</string>
    				<key>Disabled</key>
    				<false/>
    				<key>Find</key>
    				<data>
    				g72M/v//EA==
    				</data>
    				<key>Name</key>
    				<string>AppleUSBXHCIPCI</string>
    				<key>Replace</key>
    				<data>
    				g72M/v//Gw==
    				</data>
    			</dict>
    		</array>
    	</dict>
    	<key>RtVariables</key>
    	<dict>
    		<key>BooterConfig</key>
    		<string>0x28</string>
    		<key>CsrActiveConfig</key>
    		<string>0x67</string>
    	</dict>
    	<key>SMBIOS</key>
    	<dict>
    		<key>Board-ID</key>
    		<string>Mac-4B7AC7E43945597E</string>
    		<key>ProductName</key>
    		<string>MacBookPro9,2</string>
    		<key>Trust</key>
    		<false/>
    	</dict>
    	<key>SystemParameters</key>
    	<dict>
    		<key>InjectKexts</key>
    		<string>Detect</string>
    		<key>InjectSystemID</key>
    		<true/>
    	</dict>
    </dict>
    </plist>
    

     

     

     

    XOSI SSDT (Windows 2009) based on RehabMan's XOSI-SSDT.dsl

     

     

    DefinitionBlock ("", "SSDT", 1, "hack", "XOSI", 0x00000000)
    {
        Method (XOSI, 1, NotSerialized)
        {
            Name (WINV, Package (0x09)
            {
                "Windows", 
                "Windows 2001", 
                "Windows 2001 SP2", 
                "Windows 2006", 
                "Windows 2006 SP1", 
                "Windows 2009"
            })
            Return (LNotEqual (Ones, Match (WINV, MEQ, Arg0, MTR, Zero, Zero)))
        }
    }
    

     

     

     

    EFI drivers added to Clover's 'drivers64' and 'drivers64UEFI' directories:

    EmuVariableUefi-64.efi

     

     

    Kext files added to Clover's 'kexts/Other/' directory:

     

    ACPIPoller.kext (RehabMan)
    FakePCIID_XHCIMux.kext (RehabMan)
    FakePCIID.kext (RehabMan)
    FakeSMC.kext (netkas)
    IntelBacklight.kext (RehabMan)
    USBInjectAll.kext (RehabMan)
    VoodooPS2Controller.kext (siddx)

     

     

    Kext files added to '/Library/Extensions/' or '/System/Library/Extensions/'

    ACPIBatteryManager.kext (RehabMan)
    AppleIntelE1000e.kext (InsanelyMac)
    VoodooSDHC.kext (Voodoo - Optional)

     

    E6430 HD and NVS working sleep.zip

    • Like 2
  11. Yep I modified both of them myself, the Apple Graphics Control needed my generated board-id from Clover (for MacBookPro9,2) to be injected to solve the NVS 5200m 'black screen' issue and as far as the VoodooPS2 variant - it is a combination of 'RehabmanMerge.zip' and an older 'VoodooPS2Trackpad.kext' (1.9.0), with 'FingerZ' value of '10' added to the 'Info.plist' file. :)
     
    RehabmanMerge.zip was sourced from this page: https://osxlatitude.com/index.php?/topic/2545-new-touchpad-driver-for-e6520-alps/
     
    As far as power, I seem to get about 4-5 hours of use with an extended battery with mid-heavy usage.

  12. Perhaps everyone can give this a try - I cobbled together a copy of 'VoodooPS2Controller.kext' that seems to work well with most Alps trackpads under 10.11.x with working multitouch.

     

    This kext file was created from the 'RehabmanMerge.zip' download above and combined with an older version of 'VoodooPS2Trackpad.kext' (1.9.0).

     

    I have also added a 'FingerZ' value of 10 under the Alps section in 'Info.plist' for better sensitivity (may need to be adjusted for some Alps touchpads).

     

    Tested on Dell Latitude e6430 and e5420.

    VoodooPS2Controller.kext.zip

    • Like 1
  13. I figured I would respond to this thread, as I recently completed a working 10.11.5 config on this same laptop. :)

     

    I am running the following:

     

    Dell Latitude e6430 (BIOS VERSION A18)

    Intel Core i7-3940xm

    16GB DDR3L

    Intel HD 4000

    Nvidia NVS 5200m

    1600x900 (Samsung)

    ALPS touchpad (full multitouch via modified VoodooPS2)

     

    The attached config files are meant for use with OS X El Capitan 10.11.5 with Clover r3333, and should work with any i5/i7 CPU on this model.

     

    Both the Intel HD 4000 and the Nvidia NVS 5200m (with Nvidia Web Driver installed and AppleGraphicsDevicePolicy.kext patched) work correctly at 1600x900 - enabling Optimus in BIOS will use Intel HD 4000, disabling it uses NVS 5200m.

     

    Known issues:

     

     - USB 3.0 ports act as 2.0 ports

     - Sleep most likely doesn't work when Nvidia card is in use

    e6430_NVS-HD4000_Clover_r3333_10.11.5_working.zip

×
×
  • Create New...