Jump to content
immo

[GUIDE] Making a DSDT.aml for Dell XPS M1330, XPS M1530, and XPS M1730

2,013 posts in this topic

Recommended Posts

Yes i am.

I'm already using a DSDT.aml file, the Brett's one, which is gaving me some troubles with sleep and cpu burning.

 

Sometimes my Laptop just reboot when putting it to sleep, sometimes not.

Also, sometimes my laptop starts to be very hot and it hangs (i think it's caused by the temperature sensor which halt the system when the temp is too high)

 

About loading the one i uploaded, i simply type : DSDT=/Extra/[testdsdt.aml] when the bootloader prompt me to choose the boot mode.

 

The file is placed in /Extra and the permissions are ok.

 

I really think it's related to HPET but i can't be sure.

 

If you guys have others ideas?!...

 

Thanks in advance.

 

Josh.

 

 

Brett's DSDT does work with SpeedStep. Have you tested that SpeedStep is working using CoolBook or similar? And you've set your Mac model to MacBookPro5,1? And you are not using the DropSSDT=y flag? And Intel power management is there, and no disablers are preset?

 

If SpeedStep is working but you are still having those heating problems, your issue is most likely hardware related. Try opening it up and cleaning out the fan and the vents. Failing that call Dell.

 

Immo

Share this post


Link to post
Share on other sites
Advertisement
Brett's DSDT does work with SpeedStep. Have you tested that SpeedStep is working using CoolBook or similar?

And you've set your Mac model to MacBookPro5,1? And you are not using the DropSSDT=y flag?

 

Yes i know.

To be able to use its DSDT i need to set "DropSSDT=n" and set the Mac Model to MacBookPro5,1

 

And Intel power management is there, and no disablers are preset?

 

I've tried with voodoomonitor and i can see speedstep working but, with this dsdt, sleep do not work often (sometimes it slimply restart)

 

If SpeedStep is working but you are still having those heating problems, your issue is most likely hardware related. Try opening it up and cleaning out the fan and the vents. Failing that call Dell.

Immo

 

The heating problem appeared after using this DSDT. Never had such kind of problems before with other dsdt using voodoopower from superhai to throttle my cpu correctly...

 

To be sure, i've used the Dell utility to check my hardware integrity with no problems, so...

 

 

Anyway, i just wanna use my selfmade DSDT and i'm getting problem with it.

 

The best you can help me is by pointing me to the mistake i'm doing while creating it.

 

I wish you understand... ;-)

 

Thanks.

Josh.

 

I couldn't get any DSDT made with Ubuntu to work (probably me rather than Ubuntu as I'm new to Linux). However, as soon as I made one with getDSDT.sh and no SSDT tables it started working. Have you tried that yet?

 

Thanks for letting me know.

 

I will try that as i do not have any other way to create my own.

 

About Linux, i use it every day at work so i'm sure the ACPI-tables file that were created were done correctly.

 

I think i really need to move to Bios A12 but i need to create a bootable usb disk with the update as i do not have windows anymore.

 

I thought there were no differences in ACPI between Bios A09 and A12 but i'm not so sure now...

Share this post


Link to post
Share on other sites

immo, quick question. I'm redoing my DSDT file after my update this morning (I forgot to back it up).

 

In the following step:

Optional: Adding SBUS Device (Added 2009/10/22)

jkbuha came up with this fix using a guide made by Master Chief (thank you). This allows the detection of the SBUS device, and it can be confirmed as detected using IORegistry Explorer by searching for SBUS. This device is required to get C-states working, however we still do not have working C-states even with this patch.

 

Add this under the first curly brace under Scope (\_SB):

		Method (DBEN, 0, NotSerialized)
	{
	}

I just checked my DSDT.dsl file, and I have three separate Scope (\_SB) sections as follows:

 

           Scope (\_SB)
           {
               Device (MB1)
               {
                   Name (_HID, EisaId ("PNP0C01"))
                   Name (_UID, One)
                   Method (_CRS, 0, NotSerialized)
                   {
                       CRS3 ()
                       CR_0 (One, Zero, 0x0009F000)
                       CR_0 (One, 0x0009F000, 0x1000)
                       If (LGreaterEqual (OSID (), 0x08))
                       {
                           Store (GORL (), Local0)
                           CR_0 (Zero, 0x000C0000, Local0)
                       }

                       CR_0 (Zero, 0x000E0000, 0x00020000)
                       Store (GMEM (), Local0)
                       Subtract (Local0, 0x00092800, Local1)
                       CR_0 (One, 0x00100000, Local1)
                       Add (Local1, 0x00100000, Local1)
                       CR_0 (One, Local1, 0x00092800)
                       Store (SMMB (), Local0)
                       CR_0 (One, Local0, 0x00100000)
                       Add (Local1, 0x00092800, Local1)
                       Store (SMI (0xBE, Zero), Local3)
                       If (LEqual (Local3, One))
                       {
                           CR_0 (Zero, Local1, 0x00800000)
                       }

                       CR_0 (Zero, 0xFFE00000, 0x00200000)
                       CR_0 (Zero, 0xFFA00000, 0x00200000)
                       CR_0 (One, 0xFEC00000, 0x00010000)
                       CR_0 (One, 0xFEE00000, 0x00010000)
                       CR_0 (Zero, 0xFED20000, 0x00070000)
                       CR_0 (One, 0xFEDA0000, 0x4000)
                       CR_0 (One, 0xFEDA4000, 0x1000)
                       CR_0 (One, 0xFEDA5000, 0x1000)
                       CR_0 (One, 0xFEDA6000, 0x1000)
                       CR_0 (One, 0xFED18000, 0x4000)
                       Store (GPXB (), Local0)
                       CR_0 (One, Local0, 0x04000000)
                       CR_6 ()
                       Return (CRS0)
                   }
               }
           }

 

			Scope (\_SB)
		{
		}

 

       Scope (\_SB)
       {
           Device (LID)
           {
               Name (_HID, EisaId ("PNP0C0D"))
               Method (_LID, 0, NotSerialized)
               {
                   Store (SMI (0x84, Zero), Local0)
                   Return (Local0)
               }

               Name (_PRW, Package (0x02)
               {
                   0x17, 
                   0x03
               })
               Method (_PSW, 1, NotSerialized)
               {
                   PSW (Arg0, 0x02)
               }
           }

           Device (PBTN)
           {
               Name (_HID, EisaId ("PNP0C0C"))
               Name (_PRW, Package (0x02)
               {
                   0x17, 
                   0x04
               })
               Method (_PSW, 1, NotSerialized)
               {
                   PSW (Arg0, One)
               }
           }

           Device (SBTN)
           {
               Name (_HID, EisaId ("PNP0C0E"))
           }
       }

 

Where should I insert this code?

 

Attached is my DSDT.dsl file.

 

Just to note: I didn't have to add the Required: DTGP Method or Optional: USB Drive Sleep Fix patches as they were already in my original decompiled DSDT.

 

Thanks

 

Edit: When running DSDT Patcher, there is a question about which operating system to emulate. I've always chosen 0=Darwin. Is this correct? Or should I uses 1=WinXP or 2=WinVista?

dsdt.dsl.zip

Share this post


Link to post
Share on other sites
Hi Guys,

 

I'm really starting getting crazy with this DSDT ....

 

- XPS 1530

- CPU T9300

- Bios A09

- Created with Ubuntu 9.04

- All patched added

- HPET and RTC patch added both with the dsdt patcher first, and then added by copying the sections from Brett's DSDT but it did the same (In the dsdt i attached, i copied the sections from Brett's DSDT)

- iasl compile the dsl with no errors, just 1 warning about wmi1

 

Use the attached DSDT. I have all but the SBUS fix.

 

Also, has anyone figured out the DSDT fix for shutdown for xps? Apparently, there is one for ASUS and GBs, but I haven't yet managed to go through those pages. Also, all of you must know by now that there is a restart only kext by master chief.

 

And.... again... why do we need DropSSDT=y flag..?? I don't use it and still have speedsteeping working perfectly.... am I missing something....??

DSDT.aml_M1530_8600MGT_T9300.zip

Share this post


Link to post
Share on other sites
guys help me out the ones that have m1330 did you guys found any program that can monitor the gpu temperature? cos comparing linux with mac the cpu temps are like 10C more high then linux also im not able to see the damn gpu temp and as all of you prob already know the damn m1330 has that video temp issues that couse the chip to crash in time i want to be able to monitor the gpu

 

On my previous install Coolbook 2.16 worked. 2.15 didn't.

However, I've reinstalled OS X now. I then installed 2.15 by mistake, and then something went wrong, so I don't think it's uninstalled properly. I now can't get 2.16 to work either, but I think that's because of the problems I had with 2.15.

Share this post


Link to post
Share on other sites
immo, quick question. I'm redoing my DSDT file after my update this morning (I forgot to back it up).

 

In the following step:

 

I just checked my DSDT.dsl file, and I have three separate Scope (\_SB) sections as follows:

 

...

 

Where should I insert this code?

 

Attached is my DSDT.dsl file.

 

Thanks

 

Edit: When running DSDT Patcher, there is a question about which operating system to emulate. I've always chosen 0=Darwin. Is this correct? Or should I uses 1=WinXP or 2=WinVista?

 

Put it under the first one as this is what I have done, although I don't believe it matters.

 

As for the patcher, I just went with the default settings. Never even noticed the operating system emulation.

 

 

Use the attached DSDT. I have all but the SBUS fix.

 

Also, has anyone figured out the DSDT fix for shutdown for xps? Apparently, there is one for ASUS and GBs, but I haven't yet managed to go through those pages. Also, all of you must know by now that there is a restart only kext by master chief.

 

And.... again... why do we need DropSSDT=y flag..?? I don't use it and still have speedsteeping working perfectly.... am I missing something....??

 

If you do not include the DropSSDT=y flag, the SSDT sections in your DSDT will be ignored and the computer built in ones will be used. If this is what you want, then there is no real reason to attach the SSDT tables to your DSDT (although there may be reason at some point later when someone figures out C-states). With the DropSSDT=y flag you can customize your SpeedStep states.

Share this post


Link to post
Share on other sites
Anyway, i just wanna use my selfmade DSDT and i'm getting problem with it.

 

The best you can help me is by pointing me to the mistake i'm doing while creating it.

 

I wish you understand... ;-)

 

Thanks.

Josh.

 

I've taken a brief look at your DSDT and nothing really stands out to me as incorrect. Unfortunately I do not have time to step though your entire DSDT to try to find a mistake, but it looks like everything is there and as long as you followed the instructions correctly, it should be fine.

 

Honestly I still suspect that your overheating is a hardware issue (worst case as has been mentioned before many of these computers do have defective video cards, including my original M1330 before getting it serviced), but it could be as simple as the vents and fan getting plugged up with dust. It's a good idea to clean the vents and fan regularly. It can make a huge difference! If it is your video, my original M1330 performed like :P and got as hot as ;), but after a motherboard replacement the performance was light and day. Sometimes the heat sync loses partial connection with the video card and/or CPU as well, and re-seating the heat sync can help. If you did not have working NVidia hardware acceleration with your old DSDT, that would describe the performance and heat change once you started using Brett's, as the overheating would be a result of the video working harder.

Share this post


Link to post
Share on other sites
I've taken a brief look at your DSDT and nothing really stands out to me as incorrect. Unfortunately I do not have time to step though your entire DSDT to try to find a mistake, but it looks like everything is there and as long as you followed the instructions correctly, it should be fine.

 

Honestly I still suspect that your overheating is a hardware issue (worst case as has been mentioned before many of these computers do have defective video cards, including my original M1330 before getting it serviced), but it could be as simple as the vents and fan getting plugged up with dust. It's a good idea to clean the vents and fan regularly. It can make a huge difference! If it is your video, my original M1330 performed like ;) and got as hot as :P, but after a motherboard replacement the performance was light and day. Sometimes the heat sync loses partial connection with the video card and/or CPU as well, and re-seating the heat sync can help. If you did not have working NVidia hardware acceleration with your old DSDT, that would describe the performance and heat change once you started using Brett's, as the overheating would be a result of the video working harder.

 

 

Hi immo,

 

Thanks for looking at my DSDT.

 

I also think it is good and as i follow the guide almost 5 times from start to finish, i wish it is... ;-) But i could have made a mistake.

 

Anyway, i tried the talisman DSDT too (Thanks to him for sharing) and i had the same problem.

 

I'm not sure the option "DSDT=[/Extra/testdsdt.aml]" works...

 

I will retry to boot my system with my own DSDT and then the Talisman's one by using them as default but it means, if it fails, reloading my system from the boot dvd, which take a long time.

 

Thanks to all for helping.

 

Good luck in DSDT research ;-)

 

Josh.

Share this post


Link to post
Share on other sites
I'm not sure the option "DSDT=[/Extra/testdsdt.aml]" works...

While I can't with any confidence quote the exact steps to do it off the top of my head, it is possible when booting with Chameleon to use "verbose mode" and see exactly which files are being loaded from /Extra & /Extra/Extensions. This includes seeing which DSDT file (if any) is loaded.

 

Try specifying -v at the "boot:" prompt for Chameleon. Better yet, look at the BootHelp.txt included in your Chameleon download. I also found this post over in the Chameleon/Voodooprojects fora.

Documentation for Chameleon 2.0

I only glanced at the "Using Chameleon 2RC.rtf" file he attached to his post, but it looked like it could be useful.

 

Some other suggestions:

If you can't read the log msgs while booting, try turning off the GUI (GUI=no I think)

If the messages go by too quickly for you to read, try pausing just before booting the kernel. (Wait=yes I think)

 

(If you're not using Chameleon, it should also be possible to do similar stuff with whatever bootloader you are using. Just need to look through the doc for your boot loader, no?)

 

-irrational john

Share this post


Link to post
Share on other sites

What version of Chameleon are you using? I can confirm that 2.0RC3 does in fact honor the DSDT=/x/y.aml boot flag from the command line perfectly, 2.0RC2 didn't seem to.

 

It is interesting that you are seeing such high temps on my DSDT.aml and also Talisman's, what about Windows or Linux at the moment are they the same? I've not looked through yours yet, I still have to go through Talisman's in depth yet, but will have a peek at it none the less.

 

Prior to having the Motherboard and heatsink replaced on my M1530 I would idle at about 53˚C in windows or OSX, now that is down to 37 - 38˚C without a problem.

 

Also if you don't have any SSDT tables in your DSDT ensure that the DropSSDT=y flag is NOT set anywhere as this will drop all tables and you'll be running at full tilt (CPU wise) and cause a great deal of heat. You'll know if you've got heat problems if your laptop just shuts down under OSX. Mine would reach well over 100˚C under OSX when doing something hefty (like watching a 1080p mkv under Plex), now it will reach 60˚C if it is lucky.

 

Cheers

Brett

Share this post


Link to post
Share on other sites
SBus?? :) Did you mean SMBus? (Or something else?)

 

-irrational john

 

Look under Optional fixes in the first post: SBUS Devices

 

If you do not include the DropSSDT=y flag, the SSDT sections in your DSDT will be ignored and the computer built in ones will be used. If this is what you want, then there is no real reason to attach the SSDT tables to your DSDT (although there may be reason at some point later when someone figures out C-states). With the DropSSDT=y flag you can customize your SpeedStep states.

 

Precisely what I thought.... for a moment I thought I missed something....!! I am pretty much getting my 6 p states with the built in SSDT. Ill wait for a c state fix to include the SSDT... thanks for the clarification...

 

For those who want it, I have updated my audio post to include an almost fully working VoodooHDA.kext for M1530. If anyone would like to submit one for the M1330, you are more than welcome. Look here: http://www.insanelymac.com/forum/index.php...t&p=1010970

Share this post


Link to post
Share on other sites
i just rebuild DSDT with nvidia patch and ide1 (i didnt find any ide2) iv'd rebuild it to remove the custom ioata and to check the sleep now. After i boot i try the sleep and not working i mean it goes to sleep but wake up instant

 

dmesg shows :

 

hibernate_write_image done(0)

sleep

Wake reason = AZAL PBTN LID EHC2 EHCI

System Wake

Previous Sleep Cause: 0

 

also sound gos bad after sleep ;) as it just make junk sound

 

also another weird thing when i was using dsdt build without the ide and nvidia patch when i was using the laptop with charger most of the time the proc stays at 1200mhz if i was staying without the charger the computer was staing at 800mhz now after the DSDT with ide and nvidia the proc stays at at 800 even with the charger on . wich ofc keeps the temp down to 46C

 

About the IDE patch, sorry I made a slight error. It's IDE0 and IDE1. It's corrected now.

 

About the processor speed, you should see it stepping up when it is working, and it should idle at 800MHz. If not you probably made a mistake in the configuration.

 

About the sleep problem, you have to put in the HDEF patch for Snow Leopard and delete the AppleHDA.kext (this is mentioned in the guide)

 

About the stuttering sound after sleep, use a utility to unload the VoodooHDA.kext on sleep, and load it again on wake (I can't recall the utility name right now and I'm away from my Hack but it's posted here).

 

Immo

Share this post


Link to post
Share on other sites
On my previous install Coolbook 2.16 worked. 2.15 didn't.

However, I've reinstalled OS X now. I then installed 2.15 by mistake, and then something went wrong, so I don't think it's uninstalled properly. I now can't get 2.16 to work either, but I think that's because of the problems I had with 2.15.

 

I'm less sure of this now. I think I've made a mistake somewhere, and speed step may not be working now. Not sure what I've done wrong though.

Anyone else have Coolbook working on 10.6 or 10.6.1?

Share this post


Link to post
Share on other sites

Coolbook 2.16 does work on 10.6, I have it running on mine. I'd made a mistake during one of my reinstalls, but it now works and shows speed step working.

I'm not sure how accurate the temperature reading is though, as that seems to be all over the place.

Share this post


Link to post
Share on other sites

i am looking for dsdt.aml for xps m1730

 

ple help

 

thankyou.

Share this post


Link to post
Share on other sites
thanks the proc is going up no issues with this but how it is possible that osx at 800mhz stays at 46C and on linux on 800mhz stays on 38C :D

 

 

I can think of a few potential reasons:

 

1. These CPU's are capable of C-states, very low power states when the CPU is truly idle. During C-states, parts of the CPU are actually shut off. That will lower the temp. Our computers under OS-X cannot use these C-states yet, but hopefully one of the talented regulars here will figure it out :D

 

2. The GPU is attached to the same heat sync as the CPU. If the GPU is getting hotter due to the fact that it is working harder on OS-X, this can actually bring your CPU up as well.

 

To see your GPU temp, you can use this software for Windows:

Hardware Monitor

http://www.cpuid.com/hwmonitor.php

(run as administrator).

 

Sorry I don't know an OS-X or Linux equivalent.

 

Hope this helps.

Share this post


Link to post
Share on other sites
also how many ssdt files you get cos i have like 6 ssdt_files that i put in my dsdt file i also have an xsdt file but i didnt include it

 

and i read this

"If you use this patch and VoodooHDA.kext, AppleHDA.kext must be removed otherwise it will conflict. It seems that you need this patch for working sleep if you do not include the SSDT tables (2009/11/17)"

so i dont have that patch and ofc i got that wake from sleep almost instat thing so i guess i dont heve all ssdt tables?

You can now build your DSDT file with no SSDT tables. See immo's update to the first post.

 

Edit: The reason for the black screen is 10.6.2 uses 64bit drivers for the X3100 graphics, and something doesn't work. More information here.

 

I've finally got 10.6.2 working with X3100 graphics. Thanks to jisare's post earlier pointing to this post I was able to get mine working.

 

Attached is my latest DSDT for an XPS M1330 with GMA X3100 graphics. It should work for any CPU as I didn't include any SSDT tables.

DSDT.aml.zip

Share this post


Link to post
Share on other sites
sorry but my english sucks so i still dont get this: it says that i need the audio patch if i DONT have the ssdt but i insert all the ssdt files i have so im guessing something else is wrong!

 

My DSDT with the SSDT tables worked without the HDEF patch, however that wake up message you are receiving comes from AZAL audio, the unpatched audio. I just write in my guide what I've found through experimentation; I never claimed that it is 100% accurate.

 

Immo

Share this post


Link to post
Share on other sites
ok now i got it thanks dude! for your work ! im gonna give a try to build another one with hdef

 

NP dude!

Share this post


Link to post
Share on other sites
i did the hdef patch and now sleep working i remove the applehda from the start and ofc working! ans sorry if you dont like the dude word ;)

 

ps: does your sistem goes to sleep when closing the lid?

cos mine doesn't do this only think that it does is to wake up from sleep if i open the lid

 

Just having fun with you dude :D

 

Mine does sleep when I close the lid. I believe the NVidia patch is required for this. Not sure if you did this or not.

Share this post


Link to post
Share on other sites
i have the nvidia the usb the hdef the smbus the onlyu patch i dont have is the usb after the wake from sleep

i first believe that my lid was faulty but on linux it put the machine on sleep so is not the lid.

i can upload the dsdt for you to check if i did something wrong overall

 

First thing I would do is add the USB fix and see what happens. It's easy to do anyways.

 

Immo

Share this post


Link to post
Share on other sites
nop done that still not working even after the usb sleep patch

 

Is it possible that you are just not waiting long enough? It can take some time.

Share this post


Link to post
Share on other sites
5min nothing happends

 

hmm iv notice the fact that i can put it to sleep with the lid only when im not using the ac adaptor with ac adaptor plugged in i cant put it in sleep.

 

Hi guys,

 

Same problem here and i have a 9 cell battery...

 

I've tried changing the dsdt at boot (DSDT=/Extra/...) with both chameleon 2 rc3 and pcefi 10.4/10.5 and it was the same, it kernel panics while trying to load appleintelcpu... kext

 

Now i'm running the Brett dsdt which works great if i check that the power cable is not plugged when i need to put it to sleep.

 

Waiting for C-states patch... ;-)

 

Thank you guys for helping us!

 

Josh.

Share this post


Link to post
Share on other sites
Same problem here and i have a 9 cell battery...

 

I've tried changing the dsdt at boot (DSDT=/Extra/...) with both chameleon 2 rc3 and pcefi 10.4/10.5 and it was the same, it kernel panics while trying to load appleintelcpu... kext

 

Now i'm running the Brett dsdt which works great if i check that the power cable is not plugged when i need to put it to sleep.

The problem is that you have USB Device Wakeup enabled in the BIOS; as it is only active when you have the AC adaptor plugged in it will not force the computer to reboot on battery. Disable it in the BIOS and sleep on AC power will begin working.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×