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

ok thanks - fixed the wlan by removing the new deviceid from the ARPT declaration. Weird as I thought the 9285 was broadcom based, might be a different deviceid.

 

still no fanspeed or batt voltage though - most likely ill need to update the acpi kext to 10.7.5.

Link to comment
Share on other sites

Found another minor problem with the DSDT changes to the HDEF device. I recall I had to trawl through months of pain to patch the AppleHDA + IOAudioFamily to work with the 15z's ALC269, so this is most likely the result of that. I've removed the additional HDEF inserts.

 

Ok so even with updated AppleACPIPlatform it doesn't work. Interestingly I've traced the issue down to AppleSmartBatteryManager, as when I upgrade this kext to the latest version Apple happily informs me that I have no battery. Even with the updated DSDT patches this doesn't resolve the problem.

Link to comment
Share on other sites

Apples kexdt never worked on hackintoshes.

Try this instead: http://puu.sh/4D0gu.zip

jkbuha .. I see what's the issue. you still have this in your DSDT table.. so the table I gave you basically interferes !

 

                Device (SMCD)
                {
                    Name (_HID, "MONITOR")  // _HID: Hardware ID
                    Method (TCCC, 0, NotSerialized)
                    {
                        Store (^^EC0.DTS1, Local0)
                        Return (Local0)
                    }
 
                    Method (TCPX, 0, NotSerialized)
                    {
                        Store (^^EC0.CHPT, Local0)
                        Return (Local0)
                    }
 
                    Method (TMBD, 0, NotSerialized)
                    {
                        Store (^^EC0.SYST, Local0)
                        Return (Local0)
                    }
 
                    Method (TNBG, 0, NotSerialized)
                    {
                        Store (^^EC0.VGAT, Local0)
                        Return (Local0)
                    }
 
                    Method (TPCH, 0, NotSerialized)
                    {
                        Store (^^EC0.DTS2, Local0)
                        Return (Local0)
                    }
 
                    Method (TXXX, 0, NotSerialized)
                    {
                        Store (^^EC0.OTPC, Local0)
                        Return (Local0)
                    }
 
                    Method (FAN0, 0, NotSerialized)
                    {
                        Store (^^EC0.FANH, Local0)
                        Store (^^EC0.FANL, Local1)
                        And (Local0, 0xFFFF, Local0)
                        And (Local1, 0xFFFF, Local1)
                        If (LNotEqual (Local0, Zero))
                        {
                            If (LEqual (Local0, 0xFFFF))
                            {
                                Store (Zero, Local0)
                            }
                            Else
                            {
                                Store (0x0100, Local2)
                                Multiply (Local0, Local2, Local3)
                                Add (Local1, Local3, Local4)
                                Store (Local4, Local0)
                            }
                        }
                        Else
                        {
                            Store (Zero, Local0)
                        }
 
                        Return (Local0)
                    }
                }
Link to comment
Share on other sites

Yay finally - your table is working :) Lots of new sensors to play with.

 

Yes you were right - I deleted the original SMCD device in the DSDT and all the new entries are showing up. Mainboard proximity sensor is 0C - is this not preset on the 15z or is it named differently?

 

Going forward though I'd really like to have a vanilla DSDT and drop fixes through Clover (just like you had originally proposed) though is it possible to insert, say a complete SSDT table directly through Clover's config.plist? Also, what tools do you use to convert the DSDT patch instructions into the respective code into the config file? I have different mods that need to be made specifically for my hardware, such as the ALC269 chip and the cypress touchpad.

Link to comment
Share on other sites

If mainboard prroximity shows up as 0, this means your laptop model doesn't use this register for temp reporting.

You can check what is being used by firing up EC monitoring (it will lag your PS2 controller badly) RWE in Windows and pulling up ECRM from DSDT side by side. This way knowing which addresses have values that change you would be able to tell what registers from ACPI are actually used for temp reporting. Address is read across, first value is read from horizontal row, second value is read from the column. So for OTPC register value in RWE you have to check row 5 and column 5 in EC reporting. These are common sensor register that I had found:

                        Offset (0x55), 
                        OTPC,   8, 
                        VGAT,   8, 
                        CHPT,   8, 
                        CPUT,   8, 
                        SYST,   8, 
                        DTS1,   8, 
                        DTS2,   8, 

I see no reason to inject the entire table via config as you could just place it in ACPI/patched and load it that way. Having an extra table loaded externally doesn't make your DSDT non-vanilla. For conversion you basically extract your OEM DSDT table and open it up with any HEX editor of your choice (Hex Fiend is my favorite because it has file comparison function). Then you take this very same table and modify it with MacIASL (preferred, because you don't wan't constant aml-dsl-aml conversions.. with this you just save .aml right away). You do the edits and compare that has changed with HEX editor in binary format. Then you copy the entire method you had changed from OEM table and use it as Find pattern, then take the same method from an edited aml and define is as Replace pattern. Before trying to reboot with such a patch defined in your config try just opening up HEX editor and loading your OEM aml table, find what you have defined and replace with what you have conjured. Save it, then open up with MacIASL.. if it ends up opening fine and you see the table is still structurally ok where you had applied the patch then you can include it as Patch in config, knowing that it works.

 

My vostro also has ALC269VB (dell proprietary codec) and all I have to do for my 269 is:

- patch AD1984 to ALC269 via kext patches in config

- zero out ALC884 to pass the the *if greater* checks to prevent it from throwing me to ALC885 instead of AD1984 place

- swap xml.zlib to aml.zlib in binary so that I could place my custom resources into AppleHDa resouce folder and never worry that they get updated with (different extension means they never will, but the binary will load them)

- have pinconfig defined in an injector kext or fakesmc for that matter

- have IOAudioFamily patched from sources with km9's patches applied to resume EAPD after sleep

All the above results in sound working after every update .. it's just that custom IOAudioFamily has to be rolled back until new sources to patch are published.

Link to comment
Share on other sites

Thanks TW - after a couple of days mucking about with AIDA and HWInfo (you weren't kidding about device lag btw) I still haven't found the offending register - mainly because it's hit and miss for me. I'll try and find a better tool to sniff EC monitoring in the meantime...

 

I see your point on the table injection. Re: find/replace patching in clover - it's a pity that it's such a crude way of patching binaries, but I guess it works. In an ideal world we'd do native dsl (not aml) patching but that would require dsl-aml-dsl conversions on the fly.

 

Thanks also for the tip on the ALC269. Didn't realise I could do the same with Clover. But (i) how do you swap xml->aml in binary (ii) have a fakesmc plugin to pick out the pingconfig?

Link to comment
Share on other sites

My original wireless card (intel 1030) isn't supported by OSx, so since I started to work on my hackintosh I replaced it for an atheros ar9285 (which doesn't has bluetooth), now I'm planning to buy an wifi/bluetooth combo card. Which one would you guys suggest? Or maybe a bluetooth dongle would still be better?

 

I want bluetooh so I can use a magic mouse / keyboard. Just bought them for half price.

Link to comment
Share on other sites

@webcivilian,

 

Thansk for answering. I was wondering that the mini-pci card would work better than the usb dongle, plus it would free up one of my usb ports.

Of course that the usb dongle would be far cheaper than the pci card, but if it has no performance boost from the dongle, I guess I'm going for it.

Link to comment
Share on other sites

@webcivilian,

 

Thansk for answering. I was wondering that the mini-pci card would work better than the usb dongle, plus it would free up one of my usb ports.

Of course that the usb dongle would be far cheaper than the pci card, but if it has no performance boost from the dongle, I guess I'm going for it.

http://www.ebay.co.uk/itm/321009639220?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649

This will work for 10.8.5 and 10.9, nothing lower than that. BT works out of the box, AirPort requires a simple device-id substitute via DSDT.

Link to comment
Share on other sites

I'm using 10.9 DP8 for about 3 weeks. It's working really fine so far.

Hi DawTaylor,

 

I have l502x and I'm installing Mavericks GM.

 

I cannot make QE/CI works.

There is always error saying: "SNB framebuffer not show up...".

I used DSDT from lx02x package and removed all graphics kexts except for AppleIntelHD3000*/AppleIntelHDGraphics*/AppleIntelSNB*

Chameleon is 2248.

booting with -f -v or using cache is the same.

 

I used that installation method for ML and it worked fine.

 

What I missed here? Please check for me.

 

Thank you very much.

Luong.

Link to comment
Share on other sites

@dxluong,

 

I had this error message once, I changed my smbios to MBP8,1 and it was gone.

 

Try booting with GraphicsEnabler=No

@DawTaylor,

 

Thanks for your fast reply.

 

I tried changing smbios to 8,1 and also GraphicsEnabler=No but the result was the same.

 

I saw "no kext loaded" in graphics section in System Information.

 

Then I tried replacing kexts from 10.8.5, Sys Info said kexts loaded but I checked System.log and saw a lot of "No matching context for device (0x7fb0b3109800) - disabling OpenGL"

Maybe they are not compatible.

 

What chameleon version are you using?

Link to comment
Share on other sites

Hello everybody. First of all, I apologize for not reading the whole topic. I've got a Dell L502x with i5-2410m processor, 4 GB of RAM and 2 GB GT 540M graphics card. My hard drive if failing, and since I have to buy a new one and start from scratch, I was thinking to try setting up a dual boot Windows 7/OS X Mavericks since it has reached the GM level now. I've had another hackintosh experience with another Dell, and I managed to get everything working, although I'm not by any means an expert. The most detailed tutorial I could find in this topic is the one in page 6. Can I try installing Mavericks by following that guide? Thanks

Link to comment
Share on other sites

@florinutip

 

The procedure remains the same as for ML.

 

I didn't test GM yet, so I can't tell you anything about kexts changes, I guess I'm going to try it tonight.

 

@dxluong

 

This is really strange, did you replace any of them during installation? How did you get your install media? myHack, from scratch?

Link to comment
Share on other sites

 Share

×
×
  • Create New...