Jump to content

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


immo
 Share

2,030 posts in this topic

Recommended Posts

Do you run iStat? Seems to be related to the V2.0 release of it under SL...

 

No, I am using a clean install. I am using your DSDT, Extensions: fakesmc, voodoops2controller, voodoops2trackpad, voodoosdhc, appleacpips2nub, appleacpibatterymanager.

 

Everything else is vanilla, no other software has been installed.

 

I was getting these errors with the previous install so I thought I'd do a clean install to see if it was related to junk software/kext etc...

 

Any other ideas? BTW, Brett, when you look in your Console window, do you see any errors at all?

 

Thanks,

D

Link to comment
Share on other sites

Thank you! It is working after reviewing my installation and checking the files. I guess it was the SMBIOS.plist file that was named in Uppercase because I downloaded a base file in wrong case. It does work when it is in lowercase. @Immo: the DSDT works flawlessly but Sleep does not work for me as well with your newly patched one. Regards Klaas

 

Do you mean sleep or shutdown? Sleep should work if you have everything configured right. Check the kext list in the guide and the smbios.plist for accuracy.

 

Immo

Link to comment
Share on other sites

No, I am using a clean install. I am using your DSDT, Extensions: fakesmc, voodoops2controller, voodoops2trackpad, voodoosdhc, appleacpips2nub, appleacpibatterymanager.

 

Everything else is vanilla, no other software has been installed.

 

I was getting these errors with the previous install so I thought I'd do a clean install to see if it was related to junk software/kext etc...

 

Any other ideas? BTW, Brett, when you look in your Console window, do you see any errors at all?

 

Thanks,

D

 

Interesting, I only get the errors when I click on the iStat icon up in the menu bar. Other than that I see no errors, well on the exception of a reboot when it loads iStat to the menu bar.

 

My /E/E contains:

 

AppleACPIBatteryManager.kext VoodooHDA.kext

AppleACPIPS2Nub.kext VoodooSDHC.kext

ApplePS2Controller.kext fakesmc.kext

 

Just upgraded to Chameleon RC5r8 this morning. And yes VoodooHDA will work from /E/E more often than not, over three reboots this morning it has loaded from there.

 

What is your Mac model injected via smbios.plist? Mine is a MBP5,1.

 

Cheers,

 

Brett

Link to comment
Share on other sites

Interesting, I only get the errors when I click on the iStat icon up in the menu bar. Other than that I see no errors, well on the exception of a reboot when it loads iStat to the menu bar.

 

My /E/E contains:

 

AppleACPIBatteryManager.kext VoodooHDA.kext

AppleACPIPS2Nub.kext VoodooSDHC.kext

ApplePS2Controller.kext fakesmc.kext

 

Just upgraded to Chameleon RC5r8 this morning. And yes VoodooHDA will work from /E/E more often than not, over three reboots this morning it has loaded from there.

 

What is your Mac model injected via smbios.plist? Mine is a MBP5,1.

 

Cheers,

 

Brett

 

Cool, I'm going to test out VoodooHDA from /E/E. Have you noticed if the restart fix from Chameleon RC5r8 works for you always? It works most of the time but at times it doesnt.

 

Thanks,

D.

Link to comment
Share on other sites

I've only restarted 3 times since upgrading (some testing) and it restarted fine every time. I did do a reboot from single user mode and it didn't restart then, had to power button it. I rarely restart, most times I just put the laptop to sleep to transport from one site to another or overnight when going to sleep myself.

 

I'll keep an eye on it.

 

With VoodooHDA in /E/E, make sure your /E/Extensions.mkext is up to date as well with the kextcache command. I've found that to be the key.

Link to comment
Share on other sites

Hi All,

 

First of all, Thanks Brett for incorporating the Shutdown patch in your Dsdt and sharing it.

It works great for me.

 

I just have a question about the Hdmi output.

Does it work for you?

 

I didn't have time to test it before but as i need it now, i tried and it freezed my Hack everytime i connected my hdmi output to my Tv.

 

Don't know if i'm the only one with this but as you have the same config as mine, i would like to know if it is the same for you.

 

Thanks in advance.

 

Josh.

Link to comment
Share on other sites

Same for me - 10.6.3 freezes hdmi, cannot use 10.6.1 drivers as we did when we had 10.6.2 :D

Has anyone tried to inject the device ids into the NVDA kexts?

 

(and still no shutdown yet!) :(

 

jkbuha

 

Hi All,

 

First of all, Thanks Brett for incorporating the Shutdown patch in your Dsdt and sharing it.

It works great for me.

 

I just have a question about the Hdmi output.

Does it work for you?

 

I didn't have time to test it before but as i need it now, i tried and it freezed my Hack everytime i connected my hdmi output to my Tv.

 

Don't know if i'm the only one with this but as you have the same config as mine, i would like to know if it is the same for you.

 

Thanks in advance.

 

Josh.

Link to comment
Share on other sites

Hi All,

 

First of all, Thanks Brett for incorporating the Shutdown patch in your Dsdt and sharing it.

It works great for me.

 

I just have a question about the Hdmi output.

Does it work for you?

 

I didn't have time to test it before but as i need it now, i tried and it freezed my Hack everytime i connected my hdmi output to my Tv.

 

Don't know if i'm the only one with this but as you have the same config as mine, i would like to know if it is the same for you.

 

Thanks in advance.

 

Josh.

 

I am using 10.6, clean install. I get HDMI out but I cannot get any audio from HDMI.

Link to comment
Share on other sites

Hi all,

 

Shutdown fix works great, i've slightly modified mine to include the original DSDT code, just incase it may cause problems later below is the code that i've used. It works on the XPS M1530.

 

OperationRegion (PMRS, SystemIO, 0x1030, One)
Field (PMRS, ByteAcc, NoLock, Preserve)
{
   		, 4, 
   		SLPE, 1
}

   Method (_PTS, 1, NotSerialized)
   {

      If (LEqual (Arg0, 0x05))
       {
           Store (Zero, SLPE)
           Sleep (0x10)
       }
Else
{
Store (SMI (0x46, Zero), MIS1) // Original Code from the OEM DSDT
       SMI (0x8A, Arg0)  // Original Code from the OEM DSDT
}
   }

 

Immo, have your tried changing the SystemIO address to 0x0430 within the PMRS declaration?

This might get your M1330 to shutdown. Just a thought??

 

Cheers!!

Link to comment
Share on other sites

Immo, have your tried changing the SystemIO address to 0x0430 within the PMRS declaration?

This might get your M1330 to shutdown. Just a thought??

 

Cheers!!

 

Hi ab,

 

Thanks for the idea. Tried mapping the PMRS declaration to 0x0430 from 1030, no joy.

Also tried to add your original DSDT comments in the Else clause, nada.

 

After some further research on my part it appears that the correct SystemIO address for the m1330 is in fact 0x1030 as all the pr functions seem to be mapped to x1000 anyway. It might have something to do specifically with how the Nvidia card shuts down. On this note, do all the 1530s reported working correctly here have a 8600GT (256MB) or do some also have the 8400GS (128MB) similar to the m1330's default config?

 

Fingers crossed...

 

cheers

jkbuha

Link to comment
Share on other sites

Oh if anyone found sleep wasn't working even with correct DSDTs etc then try enabling the "Start up automatically after a power failure" box in Energy Saver. Weirdly fixed it for me.

 

Sleep only works for me with the latest SleepEnabler.kext despite Brett's identically matched DSDT.aml The power failure start up feature is conspicuously missing from my Energy Saver preference pane. The aforementioned factors seems to be mutually related, or not. AppleIntelCPUPowerManagement kext disabler in my /e/e/ might be the cause, as I am still using it to decrease CPU temperatures which are quite high otherwise (C 50) under normal system load. Please advise. :D

Link to comment
Share on other sites

Sleep only works for me with the latest SleepEnabler.kext despite Brett's identically matched DSDT.aml The power failure start up feature is conspicuously missing from my Energy Saver preference pane. The aforementioned factors seems to be mutually related, or not. AppleIntelCPUPowerManagement kext disabler in my /e/e/ might be the cause, as I am still using it to decrease CPU temperatures which are quite high otherwise (C 50) under normal system load. Please advise. ;)

 

If you put in the disabler, then sleep WILL NOT work. As mentioned in the guide this must be removed as well as the SleepEnabler. Are you sure the machine is cooler with the disabler in? The disabler would be blocking speed step from working, causing your machine to be at full speed the whole time (unless you are using a different power manager like VoodooPower, which should also be removed). Also, 50C does not sound that high to me....

 

Immo

 

Hi ab,

 

Thanks for the idea. Tried mapping the PMRS declaration to 0x0430 from 1030, no joy.

Also tried to add your original DSDT comments in the Else clause, nada.

 

Thanks for trying that Jkbuha. Didn't get around to it yet. And thanks for the idea Ab.

 

Immo

Link to comment
Share on other sites

Thanks for trying that Jkbuha. Didn't get around to it yet. And thanks for the idea Ab.

 

Immo

 

Another way of forcing a shutdown of a computer is using the _GTS (Going To Sleep) method.

    Method (_GTS, 1, NotSerialized)
   {
      If (LEqual (Arg0, 0x05))
       {
           Store (Zero, SLPE)
    Sleep (0x10)
       }
   }

 

I've kept my original _PTS method and added the _GTS method and it shuts down on my M1530.

Might be worth a try with a M1330?

 

The ACPISpec v3 states the following:

Chapter

7.4 OSPM usage of _GTS, _PTS, _TTS, _WAK, and _BFS

OSPM will invoke _GTS, _PTS, _TTS, _WAK, and _BFS in the following order:

1.OSPM decides (through a policy scheme) to place the system into a sleeping state.

2._TTS(Sx) is run, where Sx is the desired sleep state to enter.

3. OSPM notifies all native device drivers of the sleep state transition

4._PTS is run

5.OSPM readies system for the sleep state transition

6._GTS is run

7.OSPM writes the sleep vector and the system enters the specified Sx sleep state.

8.System Wakes up

9._BFS is run

10.OSPM readies system for the return from the sleep state transition

11._WAK is run

12. OSPM notifies all native device drivers of the return from the sleep state transition

13._TTS(0) is run to indicate the return to the S0 state.

 

 

Cheers,

AB

Link to comment
Share on other sites

This works perfectly with my M1530 and retains the OE _PTS method.

 

Thanks,

 

Brett

 

Thanks, ab & Brett, but still no joy. _GTS method still doesn't shutdown the 1330.

This issue is weird. I've never come across a problem which separates the 1530 and the 1330 like this.

 

jkbuha

Link to comment
Share on other sites

It runs on average 20C cooler! I achieve sleep with the SleepEnabler.kext, and much cooler system. 50C and up is hot, even to the touch. So, having the disabler kext along with the sleep enabler achieves the same results as not having those and running much hotter temps. I'm at 32C right now and the laptop even feels much cooler. AICPM kext handles my system quite poorly, not to mention I've already experienced a total system failure while running in the 70's. Luckily, Dell replaced it under warranty, yet it is no longer covered, so I must be careful.

 

 

If you put in the disabler, then sleep WILL NOT work. As mentioned in the guide this must be removed as well as the SleepEnabler. Are you sure the machine is cooler with the disabler in? The disabler would be blocking speed step from working, causing your machine to be at full speed the whole time (unless you are using a different power manager like VoodooPower, which should also be removed). Also, 50C does not sound that high to me....

 

Immo

Link to comment
Share on other sites

Thanks, ab & Brett, but still no joy. _GTS method still doesn't shutdown the 1330.

This issue is weird. I've never come across a problem which separates the 1530 and the 1330 like this.

 

jkbuha

 

This smells like a difference in southbridge. Does anyone know if the 1330 uses the exact same southbridge as the 1530? If the register offsets or definitions were different it would account for it not working.

Link to comment
Share on other sites

It runs on average 20C cooler! I achieve sleep with the SleepEnabler.kext, and much cooler system. 50C and up is hot, even to the touch. So, having the disabler kext along with the sleep enabler achieves the same results as not having those and running much hotter temps. I'm at 32C right now and the laptop even feels much cooler. AICPM kext handles my system quite poorly, not to mention I've already experienced a total system failure while running in the 70's. Luckily, Dell replaced it under warranty, yet it is no longer covered, so I must be careful.

 

Why not try installing CoolBook to find out how fast the CPU is running? Maybe it is running at half speed like Neonkoala says. Mine actually rests a little above 50C in OS-X or Windows when it's not doing much. Coolbook will also tell you if your speed step is working with the power management in. Mine idles at 800MHz (full speed 2.4GHz). If you goof up your smbios.plist for example, the speed stepping won't work.

 

I've had one of these replaced also. GPU was getting over 100C!

 

Immo

Link to comment
Share on other sites

Has anybody the VoodooPS2Controller working under M1330? I can only use the Synaptics Touchpad with SuperHAIs kext. When I am using the VoodooPS2Controller the keyboard is working fine buth the mouse pointer is stuck in the upper left corner. I can use a PS2 mouse though.

 

Installation:

  • I installed it on the EFI partition (Extra/Extensions) as far as I read in the forums it should work from here?
  • I have no kextcache (because the kextcache command does not work for me, problem with locking if using -U problem with non existing Extensions.mkext?!)
  • I am running in 32bit mode to use the VoodooHDA.kext under 64bit the prefpane was not working for me. Can I use the recompiled VoodooHDA from the linked thread for VoodooPS2 so that I can use 64bit mode?

Did I miss anything in the guide where to place it or do I have to add anything to the smbios.plist or the Boot options?

 

Regards Klaas

Link to comment
Share on other sites

This smells like a difference in southbridge. Does anyone know if the 1330 uses the exact same southbridge as the 1530? If the register offsets or definitions were different it would account for it not working.

 

Everest under win64 reports that my M1330 has a PM965 with a Southbridge 82801HBM (ICH8-DO)

Does anyone who has a 1530/1330 have anything different?

 

Here's also an extract from the Everest ACPI dump if anyone has some insight ;)

 

Node #000: Address = FFFFFA800705D0C0 Name = _GPE

Node #001: Address = FFFFFA800705D140 Name = _PR_

Node #002: Address = FFFFFA800705D1C0 Name = _SB_

Node #089: Address = FFFFFA8007061C58 Name = _S0_

Node #090: Address = FFFFFA8007061D68 Name = _S3_

Node #091: Address = FFFFFA8007061E78 Name = _S4_

Node #092: Address = FFFFFA8007061F88 Name = _S5_

Node #093: Address = FFFFFA8007062008 Name = WAKE

NNode #097: Address = FFFFFA8007062320 Name = PWRE

Node #100: Address = FFFFFA8007062788 Name = _PTS

Node #101: Address = FFFFFA8007062848 Name = _WAK

Node #102: Address = FFFFFA80070629D8 Name = NWAK

 

Cheers

jkbuha

Link to comment
Share on other sites

Output from lspci -nn from my M1530 A12 BIOS

 

00:00.0 Host bridge [0600]: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub [8086:2a00] (rev 0c)
00:01.0 PCI bridge [0604]: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port [8086:2a01] (rev 0c)
00:1a.0 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 [8086:2834] (rev 02)
00:1a.1 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 [8086:2835] (rev 02)
00:1a.7 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 [8086:283a] (rev 02)
00:1b.0 Audio device [0403]: Intel Corporation 82801H (ICH8 Family) HD Audio Controller [8086:284b] (rev 02)
00:1c.0 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 [8086:283f] (rev 02)
00:1c.1 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 [8086:2841] (rev 02)
00:1c.4 PCI bridge [0604]: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 [8086:2847] (rev 02)
00:1d.0 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 [8086:2830] (rev 02)
00:1d.1 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 [8086:2831] (rev 02)
00:1d.2 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 [8086:2832] (rev 02)
00:1d.7 USB Controller [0c03]: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 [8086:2836] (rev 02)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev f2)
00:1f.0 ISA bridge [0601]: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller [8086:2815] (rev 02)
00:1f.1 IDE interface [0101]: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller [8086:2850] (rev 02)
00:1f.2 SATA controller [0106]: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller [8086:2829] (rev 02)
00:1f.3 SMBus [0c05]: Intel Corporation 82801H (ICH8 Family) SMBus Controller [8086:283e] (rev 02)
01:00.0 VGA compatible controller [0300]: nVidia Corporation G84 [GeForce 8600M GT] [10de:0407] (rev a1)
03:09.0 FireWire (IEEE 1394) [0c00]: Ricoh Co Ltd R5C832 IEEE 1394 Controller [1180:0832] (rev 05)
03:09.1 SD Host controller [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter [1180:0822] (rev 22)
03:09.2 System peripheral [0880]: Ricoh Co Ltd R5C843 MMC Host Controller [1180:0843] (rev 12)
03:09.3 System peripheral [0880]: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter [1180:0592] (rev 12)
03:09.4 System peripheral [0880]: Ricoh Co Ltd xD-Picture Card Controller [1180:0852] (rev 12)
09:00.0 Ethernet controller [0200]: Marvell Technology Group Ltd. 88E8040 PCI-E Fast Ethernet Controller [11ab:4354] (rev 12)
0b:00.0 Network controller [0280]: Broadcom Corporation BCM4328 802.11a/b/g/n [14e4:4328] (rev 03)

 

I don't actually run Windows on this laptop at all so cannot use Everest to get any h/w details either.

 

 

On another topic, are there any M1530 users out there still using Leopard that can run up on the Voodoo kernel (9.4 or 9.5)?

 

Basically what I'd like you to do is to boot up in Chameleon with the voodoo kernel sitting in /voodoo_beta1 (for 9.4) and use the following boot options:

 

voodoo_beta1 kprintf=1 -v

 

When you've booted grab a capture of the dmesg (or the /var/log/kernel.log) and send it to me.

 

I don't have any Leopard s/w laying around and voodoo kernel doesn't boot on my laptop with SL.

 

I've been playing about with c-states again lately, and want to look at the memory ranges the SSDT tables are loaded into and more specifically the CST0 and CST1 components.

 

Thanks,

 

Brett

Link to comment
Share on other sites

I've been playing about with c-states again lately, and want to look at the memory ranges the SSDT tables are loaded into and more specifically the CST0 and CST1 components.

 

Thanks,

 

Brett

 

I'm sorry if i picked you up wrong but these are the original OEM memory address locations of the SSDT tables.

 

Name (SSDT, Package (0x0C)

{

"CPU0IST ",

0xDFE72CB4,

0x000002C8,

"CPU1IST ",

0xDFE72F7C,

0x000000C4,

"CPU0CST ",

0xDFE7264A,

0x000005E5,

"CPU1CST ",

0xDFE72C2F,

0x00000085

}

 

So

CPU0CST = Address Location, 0xDFE7264A length 0x05E5

CPU1CST = Address Location, 0xDFE72C2F length 0x0085

 

If i could run the kernel with the kprintf=1 boot option the output would definitely confirm this.

 

I'm interested where are you going with this?

 

Cheers..

AB

Link to comment
Share on other sites

 Share

×
×
  • Create New...