Jump to content

[Guide] Dell XPS 15 L502X (Early 2011) Snow Leopard Install (possibly L702x too)


wen1
 Share

3,030 posts in this topic

Recommended Posts

http://www.opensource.apple.com/source/IOAudioFamily/IOAudioFamily-194.4.11/

 

10.9 version of IOAudioFamily sources.

 

 

Clover is capable of patching the kext on the fly and yes, xps machines need it patched, unless you have a patched bios on your laptop.. and since you do you are good. The only time I can reproduce the crash which results in immediate reboot is when battery is at critical level and you insert and remove the ac jack with 3 to 5 sec delay...

 

I believe ive posted the fix for this already, which involves slpe writes upon shutdown? #2667

Well, I still have the patched IOAudioFamily backed up just in case, so assuming your AppleHDA is properly patch you could try it to see if it solves speaker not resuming audio after sleep. Valid for 10.8.4 and 10.8.5, not recommended for 10.9 by all means!

attachicon.gifIOAudioFamily.kext.zip

 

Link to comment
Share on other sites

Morning all

 

For various reasons I have always remained at a fully functional, fully stable 10.7.5 release. Sadly most support is now running out for this deprecated product line (including Xcode; I can no longer build most of the latest sourcetrees including clover et al) so I have tried unsuccessfully to move to 10.9 directly. Besides the fact that it appears that I cannot migrate my installation to 10.9 (everything gets pushed into a 'Recovered Files' folder), I have the following issues:

 

1) I get the P-Stepper 18 error on booting the *installation* usb, which most likely means my SSDT(-4?) is wrong (only NullCPU can bypass this for now). Does anyone have an updated 10.9 friendly SSDT for the i7-2720M, or can point me in the direction of how to create one?

2) I suspect I'm still getting issues with the HD3000 card (cannot boot in normal mode), but it may be because I can only boot in safe mode once installed. Is there any specific patches I need to apply via clover or kext?

 

I dont have any problem my HD3000 on 10.9 GM. and Im using the original stock. The one Im still stuck is getting speedstep running on 10.9, but seem until know doing mod bios is only the solution. dont know if anyone already get it working without bios mod.

Link to comment
Share on other sites

@ iSheep - The BIOS is not modded. It has MSR patched which mean OS X can read those values. You can do it yourself by downloading a stock BIOS from DELL and applying the unlock to it, more details here: http://www.insanelymac.com/forum/topic/285444-pmpatch-uefi-patching-utility/. The only mod in the custom BIOS is to get proper sleep working with OS X which got broken after A12 BIOS for L702X. So the mod BIOS has proper sleep version (A12 for sleep) as well as unlocked MSR. 

Link to comment
Share on other sites

@ iSheep - The BIOS is not modded. It has MSR patched which mean OS X can read those values. You can do it yourself by downloading a stock BIOS from DELL and applying the unlock to it, more details here: http://www.insanelymac.com/forum/topic/285444-pmpatch-uefi-patching-utility/. The only mod in the custom BIOS is to get proper sleep working with OS X which got broken after A12 BIOS for L702X. So the mod BIOS has proper sleep version (A12 for sleep) as well as unlocked MSR. 

 

@webcivilian: did you get it working properly on your XPS? the one that i would like to try is it one http://forum.notebookreview.com/dell-xps-studio-xps/635536-l502x-modded-bioses-download-gpu-voltages-more.html

Link to comment
Share on other sites

@webcivilian: did you get it working properly on your XPS? the one that i would like to try is it one http://forum.notebookreview.com/dell-xps-studio-xps/635536-l502x-modded-bioses-download-gpu-voltages-more.html

 

If your system is a L502X then you're good to go ahead with this one. I'm using a version of this bios, not really sure which one, but it's one that has 0.83v for both 2d and 3d profile.
 
And yes, my sleep works like a charm with this one. I'm using stock AICPUPM in mav.
Link to comment
Share on other sites

Good guide, it's also good for the L502x/L702x laptops, it just needs the appropriate files... I really don't have time for that so maybe one of you L502x users might compile an archive with what's needed and give it to TW to add it. Only if he agrees with this, of course. 

Link to comment
Share on other sites

That is possible, but only if people provide a mostly complete solution. I don't have much time myself lately to be absolutely honest. The guide took me a couple of hours to put together and I did namely because it would be a reference for myself when I forget something.

 

Basically what's needed is:

0. Board identifier to make custom Platform Profiles inside kexts and a dedicated OEM folder in Clover

1. EDID (DisplayOverride) that is known to fix screen artifacts

2a. Resources for AppleHDA with different pathmap id and layout for ALC665 that wouldn't interfere with ALC269 (pathmap 68 and layout 28)

2b. config.plist kext patches have to be adjusted for ALC665 instead of ALC269

3. Battery DSDT patch has to be tweaked a little for XPS systems

4. Extra DSDT patch has to be added to Clover patches to disable Optimus, I have that one somewhere that I had made for someone else before

5. Device IDs have to be changed in CustomPeripheral to support card reader and web cam ids from XPS machines

6. Not sure about USB 3.0 on XPS..

Link to comment
Share on other sites

What city would that be? :)

 

2a. 2b. should be extractable from the kexts posted around here (i assume they are more recent than whatever is in my .pkg compilation) unless they are not compatible with MV

3. i'm oblivious, frankly, i've seen you mentioned it a couple of times... i had no problems with battery so i didn't bother modifying anything regarding that.

4. that's quite awesome!

5. 2 years later, i still didn't get my hands on a compatible SD card to test the reader, so i don't even know if the kexts work. My web cam is still kaput after installing that software months ago, hell if i know what's going on.

6. USB3 works great with the GenericXHCI.kext

Link to comment
Share on other sites

Thats by the Piccadilly Circus in London (you can clearly tell its UK by the direction of the traffic)... I wish I lived there, instead I'm stuck in this .. hole.

 

2a and 2b - gotcha, resources from ML worked for me in Mavericks, so porting shouldn't be a problem.

3. You are probably used to rolling back AppleACPIPlatform kext thats generally not a good idea at this point.

5. What kind of card reader does it have anyway, it it PCI-E reader or USB-based one? My vostro has a Realtek reader that is USB-based and thus it works with vanilla kexts.

6. I see, didn't it have to be updated to match OS version or something? I recall people had issues when 10.8.5 got released. 

Link to comment
Share on other sites

Thats by the Piccadilly Circus in London (you can clearly tell its UK by the direction of the traffic)... I wish I lived there, instead I'm stuck in this .. hole.

 

2a and 2b - gotcha, resources from ML worked for me in Mavericks, so porting shouldn't be a problem.

3. You are probably used to rolling back AppleACPIPlatform kext thats generally not a good idea at this point.

5. What kind of card reader does it have anyway, it it PCI-E reader or USB-based one? My vostro has a Realtek reader that is USB-based and thus it works with vanilla kexts.

6. I see, didn't it have to be updated to match OS version or something? I recall people had issues when 10.8.5 got released. 

TW, i think i already do about your guide, it turns out cool, one more thing. About sd card for mavericks, adding IOProbeScore 100 to plist of andy's guide is needed cause it won't work until wake from sleep for me. 

Link to comment
Share on other sites

Salutations from your neighboring hole.

 

3. You are right, it became so much of a routine that i don't even question why i do that. Atm i'm using RehabMan's branch.

5. I think it's USB one, if memory serves, it's been a while since i last disassembled this laptop. I know someone posted realtek drivers a while back claiming they work for XPS15, so it may be the same/similar with your laptop's model.

6. Well, i'm using 10.8.3, for some reason it seems the most stable for me, on it i have no versioning problems with GenericXHCI. Can someone with 10.8.4 and above confirm USB3 is still working properly with the stock kext?

Link to comment
Share on other sites

TW, i think i already do about your guide, it turns out cool, one more thing. About sd card for mavericks, adding IOProbeScore 100 to plist of andy's guide is needed cause it won't work until wake from sleep for me. 

I don't think its necessary here, at least not on the Intel only model. 

51RYK.png

And thats on cold boot:

51RZl.png

 

@DoiX, if someone was posting third party kexts then I believe it's a PCI-E based one, same as for older generation of XPS (L501x). 

Anyhow, if people can scrape up some of the general files I've requested it would be possible to put up an OEM folder and customized kexts for XPS too. 

 

@Zprood, since Inspiron 14R is not so different from V3450 perhaps you could share just the EDID for LVDS artifacts, patch for LVDS wake and AMD SG disabling patch so that I could add it to the guide? Also make sure to include your board model identifier.. you can check it from IORegistry by going into DeviceTree and and looking under platform section, there will be a key called OEMBoard.

Link to comment
Share on other sites

@TW, why not ? 

 

1. My OEMBoard id is "03NKW8"

 

2. for  EDID, i think the it is different for All 14Rs, also i will post mine:

00FFFFFF FFFFFF00 06AF3C18 00000000 00130104 901F1178 02C8A59E 57549226 99505400 00000101 01010101 01010101 01010101 0101121B 56465000 23302616 360035AD 1000001A 121B5646 50002330 26163600 35AD1000 001A0000 00FE0047 50383452 80423134 30585731 00000000 00004102 94010100 0001010A 2020006D 

3. For the AMD SG path, there is two choice, dsdt and ssdt, i choose dsdt way. how to edit code, i take the guide https://github.com/mdlawson/vaiobookthere are few steps below:

 

a. Extract ssdt contains _ON and _OFF method one, then copy all the "OperationRegion"s under Scope (\_SB.PCI0.PEG0) & Scope (\_SB.PCI0.PEG0.PEGP), as well as Method "_ON\_OFF\SGPI\SGPO", notice put two method "SGPI\SGPO" to root of dsdt. And copy "_ON\_OFF" to the same directory of original, like "_ON\_OFF" is under "\_SB.PCI0.PEG0" in the ssdt, so it should be the place like ssdt.

 

b. Correct OperationRegion, or it can't be compiled. sample:

Before:

OperationRegion (PCIS, SystemMemory, \EBAS (0xF0), Field (PCIS, DWordAcc, Lock, Preserve)
            {
                DVID,   16, 
                        Offset (0x2C), 
                SVID,   16, 
                SDID,   16, 
                        Offset (0x4C), 
                WVID,   16, 
                WDID,   16
            })

After:

OperationRegion (PCIS, SystemMemory, EBAS, 0xF0) 
Field (PCIS, DWordAcc, Lock, Preserve)
            {
                DVID,   16, 
                        Offset (0x2C), 
                SVID,   16, 
                SDID,   16, 
                        Offset (0x4C), 
                WVID,   16, 
                WDID,   16
            }

c. Add two OFF calls  to Method (_INI, 0, NotSerialized) and Method (_WAK, 1, Serialized), like:

Method (_INI, 0, NotSerialized)
    {
        \_SB.PCI0.PEG0.PEGP._OFF ()
    }

Method (_WAK, 1, Serialized)
    {
        \_SB.PCI0.PEG0.PEGP._OFF ()
     //......//
    }

d. Last, after upon edit, AMD is disappeared, but you will have wake up with black screen issue, the solution is found here, http://www.insanelymac.com/forum/topic/292426-brightness-after-sleep-fix-toshiba-portege-r835/?hl=%2Bbrightness&do=findComment&comment=1953410

Method (_WAK, 1, Serialized)
    {
        \_SB.PCI0.PEG0.PEGP._OFF ()
        Sleep (0x64)
        \_SB.PCI0.IGPU.DD02._DSS (0xC0000001) //DSS method is defined to switch display output, there are two modes AUTO and FORCE, for mavericks, only with FORCE can wakeup screen.
        Notify (\_SB.PCI0.IGPU.DD02, 0x86) //increase brightness level
        \_SB.PCI0.IGPU.DD02._BCM (0x3C) //set a value to LVDS 
    //.............//
    }
Link to comment
Share on other sites

@ TimeWalker - I have almost everything ready and updated for Mavericks (also have installs for 10.8.4 and 10.8.5) excluding directly patching the DSDT and kexts in Clover config.plist.I use a DSDT.aml 

 

I'll send you the files excluding the ones that are common such as APCIBatteryManager and GenericUSBXHCI.

Link to comment
Share on other sites

 

1. My OEMBoard id is "03NKW8"

 

a. Extract ssdt contains _ON and _OFF method one, then copy all the "OperationRegion"s under Scope (\_SB.PCI0.PEG0) & Scope (\_SB.PCI0.PEG0.PEGP), as well as Method "_ON\_OFF\SGPI\SGPO", notice put two method "SGPI\SGPO" to root of dsdt. And copy "_ON\_OFF" to the same directory of original, like "_ON\_OFF" is under "\_SB.PCI0.PEG0" in the ssdt, so it should be the place like ssdt.

 

Why cant you just define _ON and _OFF methods as External in DSDT and call them that way?

Link to comment
Share on other sites

For some reason it doesn't work, those methods must be in the same .aml file. The stock files, if i recall well, have them defined as external, i might be messing the machines though... my xps with a friend's asus.

Link to comment
Share on other sites

You can patch the usb3.0 on Mavericks for xps15 l501x, maybe the same for 502x.

 

post-744287-0-70512100-1383018023_thumb.png

		<key>KextsToPatch</key>
		<array>
			<dict>
				<key>Comment</key>
				<string>Enable USB3</string>
				<key>Find</key>
				<data>
				dTpIiwU9nQAA
				</data>
				<key>Name</key>
				<string>AppleUSBXHCI</string>
				<key>Replace</key>
				<data>
				6zpIiwU9nQAA
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>Enable USB3</string>
				<key>Find</key>
				<data>
				Zj0AAQ==
				</data>
				<key>Name</key>
				<string>AppleUSBXHCI</string>
				<key>Replace</key>
				<data>
				Zj0AAA==
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>Enable USB3</string>
				<key>Find</key>
				<data>
				gUkIAABAAA==
				</data>
				<key>Name</key>
				<string>AppleUSBXHCI</string>
				<key>Replace</key>
				<data>
				gUkIAAAAAA==
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>Enable USB3</string>
				<key>Find</key>
				<data>
				QcdHCAAAQAA=
				</data>
				<key>Name</key>
				<string>AppleUSBXHCI</string>
				<key>Replace</key>
				<data>
				QcdHCAAAAAA=
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>Enable USB3</string>
				<key>Find</key>
				<data>
				xoDIAAAAAQ==
				</data>
				<key>Name</key>
				<string>AppleUSBXHCI</string>
				<key>Replace</key>
				<data>
				xoDIAAAAAA==
				</data>
			</dict>
			<dict>
				<key>Comment</key>
				<string>Enable USB3</string>
				<key>Find</key>
				<data>
				dU1Ii7voAQAA
				</data>
				<key>Name</key>
				<string>AppleUSBXHCI</string>
				<key>Replace</key>
				<data>
				601Ii7voAQAA
				</data>
			</dict>
		</array>
	</dict>

Link to comment
Share on other sites

For some reason it doesn't work, those methods must be in the same .aml file. The stock files, if i recall well, have them defined as external, i might be messing the machines though... my xps with a friend's asus.

The reason is that chameleon and older versions of cover are dropping every acpi table with ssdt signature thus there are no external methods to call. With new cover you specify what tables needs dropped. I have requested this feature because on z87 chipset graphics and sound are described in one of the ssdts and if dropped they refuse to work.
Link to comment
Share on other sites

 Share

×
×
  • Create New...