Help - Search - Members - Calendar
Full Version: [GUIDE] Making a DSDT.aml for Dell XPS M1330, XPS M1530, and XPS M1730
InsanelyMac Forum > OSx86 Project > Tutorials (The Genius Bar)
Pages: 1, 2, 3, 4, 5
jisare
QUOTE (immo @ Oct 22 2009, 10:16 PM) *
Hi all.

I have updated to Snow Leopard and learned a couple of new things, so I'll update the guide when I get the chance.

One thing that surprised me is that MSR Tools no longer seems to work! How do you guys verify that speed stepping is working without MSR Tools? Or is it actually working for you guys?

Immo


MSR tools works on 10.5.8
immo
Your kernel panics and not-working speedstep are because you didn't use the patcher. Use the patcher and both will start to work. After you fix your DSDT, put back in the AppleIntelCPUPowerManagement. It is required for sleep and speed stepping.

The patcher replaces a part of the DSDT called HPET with one that is compatible with OS-X. The one built into the Dell is not compatible at all.

What the DSDTs get working that did not work before is:
Vanilla speedstep, sleep, Video, USB fixes, clamshell display, and Time Machine (I have used a DSDT before that broke Time Machine). You still need VoodooBattery for the battery readout. I haven't got working scrolling or ethernet either (you have an M1330? Nobody has working ethernet on those, I use the Apple usb-ethernet adaptor), but my Bluetooth works fine. As I mentioned earlier, I use VoodooHDA for sound.

There is definitely the potential to get more working with DSDTs, we just haven't figured it out yet wink.gif M1330's ethernet and PS2 will never work without additional kexts because support for these are not in OS-X (unless Apple releases a computer that uses the same ethernet as the M1330 and a PS2 trackpad, both of which are pretty unlikely). Basically all the DSDTs do is fake the OS out into thinking that your hardware is Mac hardware, but if the device is too different from the Mac hardware you need a kext (driver). It may be possible to get vanilla sound through a DSDT, but I'm not sure.

QUOTE (golden3159 @ Oct 25 2009, 06:09 PM) *
EDIT: never mind, it was a very noob problem.

But I do have some questions here. What, exactly is supposed to work after this is done? I have done all the steps and here is a run down of what works and doesn't work:

Works:
USB
GFX
Sound (with Voodoo kext)
Webcam
Keyboard (works but is not recognized)
Battery (installed VodooBattery)

Doesn't work:
Speedstep
Bluetooth
Trackpad scrolling
Ethernet


This actually leads me to another question - I was under the impression that a properly made DSDT.aml would eliminiate the need for kexts. Isn't it supposed to make the hardware work with OSX? Specifically, I was wondering if the sound/battery should have at least worked with my modified kext. I'm not quire sure what went wrong with the speedstep, i'll have to give it another try. In fact, the only thing that really was fixed in my dsdt modification was the USB.

Question 2 : The only step I skipped was the following:


Do you think not using DSDT patcher was responsible for my problems? I thought that was just an optional tool to automatically apply fixes.

Question 3: I had to AppleIntelCPUPowerManagement (otherwise I got kernel panics). Did I do something wrong here?
sparrowdclxvi
QUOTE (sparrowdclxvi @ Oct 22 2009, 07:48 PM) *
Take two. My first post seems to have disappeared! wacko.gif

I'm trying to use this guide to create a DSDT.aml file for my M1330. However, I seem to have hit a problem at the above step. It's probably me as I'm new to OS X/Linux but here goes.

When I try to run the above command, I get the following error:
root@alex-laptop:/# iasl -d SSDT_r1-PmRef-Cpu0Cst-3001-INTL-20050624.aml
-bash: /sbin/iasl: cannot execute binary file
root@alex-laptop:/# sudo iasl -d SSDT_r1-PmRef-Cpu0Cst-3001-INTL-20050624.aml
/sbin/iasl: 1: Syntax error: Unterminated quoted string

Any help greatly appreciated.

Thanks

I fixed this. Instead of copying the iasl file from the patcher, I downloaded it by running:
CODE
sudo apt-get install iasl
immo
QUOTE (sparrowdclxvi @ Oct 27 2009, 09:42 AM) *
I fixed this. Instead of copying the iasl file from the patcher, I downloaded it by running:
CODE
sudo apt-get install iasl


After seeing your solution I know why you were having trouble. The patcher is for OS-X, not Linux wink.gif
I prefer doing my work (and everything else) in OS-X and compiling iasl under OS-X is a real pain, so that's why I recommend the grabbing the executable from the patcher. Of course you could do it all just as easily under Linux.

Immo
sparrowdclxvi
QUOTE (immo @ Oct 27 2009, 01:12 PM) *
After seeing your solution I know why you were having trouble. The patcher is for OS-X, not Linux wink.gif
I prefer doing my work (and everything else) in OS-X and compiling iasl under OS-X is a real pain, so that's why I recommend the grabbing the executable from the patcher. Of course you could do it all just as easily under Linux.

Immo


Thanks for the reply Immo. However, I'm now a bit confused.

Should I only do Step 1 in Ubuntu, and Step 2 and 3 in OS X? Or Step 1 and 2 in Ubuntu, and Step 3 in OS X?

Thanks
immo
QUOTE (sparrowdclxvi @ Oct 27 2009, 03:02 PM) *
Thanks for the reply Immo. However, I'm now a bit confused.

Should I only do Step 1 in Ubuntu, and Step 2 and 3 in OS X? Or Step 1 and 2 in Ubuntu, and Step 3 in OS X?

Thanks



What I intended guide followers to do when I wrote it is do Step 1 in Ubuntu, and the remaining in OS-X, although after reading over the guide again perhaps this isn't clear. As you have already figured out, you can do up to step 3 with the exception of running the patcher in Linux if you prefer. Personally I like to get the heck out of Linux as fast as possible wink.gif I'll update the guide later to make this more clear.

Good luck.

Immo
sparrowdclxvi
QUOTE (immo @ Oct 27 2009, 07:46 PM) *
What I intended guide followers to do when I wrote it is do Step 1 in Ubuntu, and the remaining in OS-X, although after reading over the guide again perhaps this isn't clear. As you have already figured out, you can do up to step 3 with the exception of running the patcher in Linux if you prefer. Personally I like to get the heck out of Linux as fast as possible wink.gif I'll update the guide later to make this more clear.

Good luck.

Immo


Cool. Thanks for the help. smile.gif
densen
I seem to be having a problem with my speedstep. It works perfectly on initial boot up, Coolbook shows it running at 800mhz, it steps up and down as it should, depending on the load.

However, if I put the laptop to sleep and wake it up, it gets stuck at 1200mhz and does not step up or down. This makes it hotter than it needs to be. I have tried using a number of DSDT files with my own ACPI dumps and other people's (with my CPU), tried with undervolted config and it didn't fix the problem.

Does anyone else have this problem? How can I keep native speedstep working after I wake from sleep? Is there something I'm missing or I need to fix? Any help would be greatly appreciated.

I'm using M1330 with nVidia GPU and T9300 CPU. Current DSDT attached.

Click to view attachment

immo
QUOTE (densen @ Nov 1 2009, 09:37 AM) *
I seem to be having a problem with my speedstep. It works perfectly on initial boot up, Coolbook shows it running at 800mhz, it steps up and down as it should, depending on the load.

However, if I put the laptop to sleep and wake it up, it gets stuck at 1200mhz and does not step up or down. This makes it hotter than it needs to be. I have tried using a number of DSDT files with my own ACPI dumps and other people's (with my CPU), tried with undervolted config and it didn't fix the problem.

Does anyone else have this problem? How can I keep native speedstep working after I wake from sleep? Is there something I'm missing or I need to fix? Any help would be greatly appreciated.

I'm using M1330 with nVidia GPU and T9300 CPU. Current DSDT attached.

Click to view attachment


I've had odd issues similar to the ones that you've described under the following situations:
1. Incorrect data or bad permissions in the smbios.plist file.
2. Specifying the DSDT location using the DSDT= flag at boot, instead of putting it into the default location.
3. Chameleon reading com.Apple.boot.plist (and smbios.plist?) off of the wrong partition.

The other one I got was a repeated freezing and un-freezing (thawing?) after waking up from sleep.
I would check these over again. Use CPUX to make sure you got the correct bus speed (make sure that the CPU frequency is set correct as well). Do a sanity check to make sure your system info matches the data you entered in the plist. It's actually possible for Chameleon to read the plist file off of another OS-X installation if you have more than one. If this occurs, simply make your changes to the partition that it is reading from. I use Kext Helper to make sure my permissions are correct.

Good luck

Immo
sparrowdclxvi
Hi immo

I've created and successfully compiled my new DSDT.aml.
However, when I installed Chameleon, it didn't create a /Extra folder. I had to create it manually.

So I have three questions:

  1. What directories/files should be in the /Extra folder?
  2. Should I copy all the Extensions folder shipped with Chameleon 2.0 RC3 to /Extra/Extension on my machine? Or just some, or none?
  3. There is no com.apple.Boot.plist in the /Extra folder (as I had to create it manually). Where can I get one from?
Thanks
Brett Whinnen
Just to add my findings on things...

The M1330 and M1530 match the MacBookPro4,1 more than the MBP5,1, but the MBP5,1 only hass the 6 P-states that match what the Dell's have natively. The MBP4,1 has 9 P-states, this can be modified by either adding extra PSS entries or by modifying ACPI_SMC_PlatformPlugin to only have 6 states for a MBP4,1.

C-States, the additions found by MasterChief are good, I've only just found the time to jump back onto the forum after heavy work and some holiday/vacation time.

I do have to say though a big THANKYOU for the findings of the extra IRQ entries to remove from the TMR and PIC (although I've only done the TMR at the moment) to get rid of the random USB IRQ conflicts.

I'm currently running no SSDT entries in my DSDT, but still have speedstep running fine. Just the old CStates error smile.gif


Cheers,

Brett
jkbuha
QUOTE (Brett Whinnen @ Nov 5 2009, 11:34 AM) *
Just to add my findings on things...

The M1330 and M1530 match the MacBookPro4,1 more than the MBP5,1, but the MBP5,1 only hass the 6 P-states that match what the Dell's have natively. The MBP4,1 has 9 P-states, this can be modified by either adding extra PSS entries or by modifying ACPI_SMC_PlatformPlugin to only have 6 states for a MBP4,1.

C-States, the additions found by MasterChief are good, I've only just found the time to jump back onto the forum after heavy work and some holiday/vacation time.

I do have to say though a big THANKYOU for the findings of the extra IRQ entries to remove from the TMR and PIC (although I've only done the TMR at the moment) to get rid of the random USB IRQ conflicts.

I'm currently running no SSDT entries in my DSDT, but still have speedstep running fine. Just the old CStates error smile.gif


Cheers,

Brett


Great to see you back Brett!
Looking forward to us working on an eventual solution for the C-States problem!

Cheers
jkbuha
immo
QUOTE (sparrowdclxvi @ Nov 4 2009, 01:42 PM) *
Hi immo

I've created and successfully compiled my new DSDT.aml.
However, when I installed Chameleon, it didn't create a /Extra folder. I had to create it manually.

So I have three questions:

  1. What directories/files should be in the /Extra folder?
  2. Should I copy all the Extensions folder shipped with Chameleon 2.0 RC3 to /Extra/Extension on my machine? Or just some, or none?
  3. There is no com.apple.Boot.plist in the /Extra folder (as I had to create it manually). Where can I get one from?
Thanks


/Extra should contain:
com.apple.Boot.plist
smbios.plist
DSDT.aml

/Extra/Extensions on mine contains:
fakesmc.kext
AppleACPIPS2Nub.kext & ApplePS2Controller.kext
IOATAFamily.kext
VoodooBattery.kext
VoodooHDA.kext

For the most part these kexts are from Superhai's boot cd. You can get the com.apple.Boot.plist off of there also. I didn't use any of the Chameleon kexts.
I got a more updated VoodooHDA here:
http://www.projectosx.com/forum/index.php?...ic=355&st=0

I saw a patch that will apparently allow us to use the Snow Leopard IOATAFamily.kext here:
http://www.insanelymac.com/forum/index.php...t&p=1319072
but I haven't had the time to try it yet.

QUOTE (jkbuha @ Nov 5 2009, 12:08 PM) *
Great to see you back Brett!
Looking forward to us working on an eventual solution for the C-States problem!

Cheers
jkbuha


Likewise. Welcome!
jkbuha
QUOTE (immo @ Nov 5 2009, 03:57 PM) *
I saw a patch that will apparently allow us to use the Snow Leopard IOATAFamily.kext here:
http://www.insanelymac.com/forum/index.php...t&p=1319072
but I haven't had the time to try it yet.


I did and it worked nicely - bring on 10.6.2!
Attached my own updated dsl with fix for anyone who needs it.

Just a reminder what mine contains:

- Dell XPS M1330 T8300 (warning: undervolted PSS settings!)
- Sound HDEF patch
- 8400GS 128MB
- LPC and SMBUS devices enabled
- Sleep, HPET and USB fixes [IRQ from TMR removed]
- Initial experimentation with C-states (to enable set to MP4,1 and patch ACPI_SMC_Plugin - message me for more info)

Cheers
jkbuha
Brett Whinnen
QUOTE (jkbuha @ Nov 6 2009, 06:50 AM) *
I did and it worked nicely - bring on 10.6.2!


The fix for the IOATAFamily works perfectly. Running the Vanilla kext again which is excellent!

I agree, bring on 10.6.2.

I might have to start work back on the C-states issue in the next couple of weeks when work slows down a bit.

I have to say though I looked at one of the new iMac 27" jobs today. Lovely and even the new magic mouse feels good in the hand. Just wish I could get a new desktop, my 1530 is staying on as the laptop as it runs OSX perfectly (well near it) and the screen resolution is better than the 15" MBP...
testor
QUOTE (FMulder @ Oct 13 2009, 08:25 PM) *
Sorry but.. where? I followed immo's howto so I changed AZAL with HDEF and nothing more... and my HDEF section is the same as your smile.gif

I'm thinking about 5,1 because with 4,1 I couldn't even get speedstep (it gave me an error regarding the P-States during boot, similar to C-states one), so I thought that 5,1 is more similar to our systems.. anyway it's just an idea...

I found DSDT dump from various macbook models here


did you try to use the DSDT without patching the audio part cos i have the same laptop with the 2000mhz proc and 8600 and i'm not using any dsdt file (yet thinking in using yours) i have only the voodoohda and the speakers work with no issues also the mic and the front jacks.

i really think that will work without it
overshoot
Hi Guys,

I can't find the PATA section in my DSDT file extracted from ubuntu 9.04.

Brett,

In which section did you add the ATA Patch?

Can you also post your last DSDT.aml please?

Thanks.
Josh.
golden3159
Thanks a lot for the response immo, just some weird issues now. I've patched everything up with the patcher (can't believe I skipped the most important step!) and now I can boot without a kernel panic. Everything seems to work except for one thing that im not sure of: Speedstep /cpu management.

I install Coolbook but it shows 5 entries, but they all say "0 MHZ." I don't know if this means that something went wrong or if the software doesn't support SL? How else can I check if speedstep is working?

I have a feeling that it isn't working however....my machine seems to run hot when running OSX. The thread with the DSDT pacther says the following:

QUOTE
@All complaining about hotter CPU's with AppleIntelCPUPowerManagement: Guys there is no need to have this kext loaded all the time, if you get hotter CPU, just remove that kext and everything is ok. Why I added this to patcher is just for security reasons on update, since i still see many people without an Disabler.kext and they just blindly update and then complain about a kernel panic during the update process. So this is just to be more secure on updating.


It's my understanding that AppleIntelCPUPowerManagement is needed for speedstepping to work....so this seems to contradict what is mentioned above.

What should I do? I really want to know if speedstep is working before moving on to trying to cool my temps. Thanks.
immo
QUOTE (golden3159 @ Nov 9 2009, 02:24 AM) *
Thanks a lot for the response immo, just some weird issues now. I've patched everything up with the patcher (can't believe I skipped the most important step!) and now I can boot without a kernel panic. Everything seems to work except for one thing that im not sure of: Speedstep /cpu management.

I install Coolbook but it shows 5 entries, but they all say "0 MHZ." I don't know if this means that something went wrong or if the software doesn't support SL? How else can I check if speedstep is working?

I have a feeling that it isn't working however....my machine seems to run hot when running OSX. The thread with the DSDT pacther says the following:

[b]

It's my understanding that AppleIntelCPUPowerManagement is needed for speedstepping to work....so this seems to contradict what is mentioned above.

What should I do? I really want to know if speedstep is working before moving on to trying to cool my temps. Thanks.


Coolbook works perfect under Snow Leopard, so your speed step likely isn't working. And you most definitely do need AppleIntelCPUPowerManagement for speed stepping and sleep. The statement that you quoted above only applies if your machine does NOT support the vanilla AppleIntelCPUPoewrManagement.kext (the case for many if not most machines), and with these DSDT patches ours do. I'm not sure what's wrong, but maybe you missed one or more of the SSDT files? Or the DropSSDT=Y boot flag?
Brett Whinnen
QUOTE (overshoot @ Nov 8 2009, 11:10 PM) *
Hi Guys,

I can't find the PATA section in my DSDT file extracted from ubuntu 9.04.

Brett,

In which section did you add the ATA Patch?

Can you also post your last DSDT.aml please?

Thanks.
Josh.


Attached below (DSDT.dsl).

I put the code in two spots;

Just under:
CODE

Device (IDE1)
{
Name (_ADR, 0x001F0001)


And also just under:
CODE

Device (IDE0)
{
Name (_ADR, 0x001F0002)


Not sure if it is needed under the second one, but I took Julian's lead on that one.

Just note the following about my DSDT;
- NO SSDT entries, so if you use it make sure you don't have the DropSSDT=Y in Chameleon
- has the HPET and TMR IRQ fixes for USB
- has the IOATA fix for the CDROM
- has the SBUS entries (thanks Julian)
- has the extra USB entries to allow clean disconnects of USB devices during sleep
- has the Nvidia 8600M GT 256 card entries
- has the 'pretty text' additions for the Yukon NW controller

I still get speedstep working with this, just using the default PSS states, I also run my laptop as a MBP5,1. Obviously no C-States.

When I get some spare time I'll delve into trying to attempt C-States again...

Cheers
Brett

Click to view attachment
golden3159
QUOTE (immo @ Nov 9 2009, 01:58 PM) *
Coolbook works perfect under Snow Leopard, so your speed step likely isn't working. And you most definitely do need AppleIntelCPUPowerManagement for speed stepping and sleep. The statement that you quoted above only applies if your machine does NOT support the vanilla AppleIntelCPUPoewrManagement.kext (the case for many if not most machines), and with these DSDT patches ours do. I'm not sure what's wrong, but maybe you missed one or more of the SSDT files? Or the DropSSDT=Y boot flag?


I did the whole process painstakingly twice after the first mishap - im pretty sure it's done all right. I was thinking - I thought there was some debug mode or something in Chameleon that you can use to check if the DSDT.aml is being loaded? I googled for it but didn't find anything.

I think I have my com.Apple.boot.plist right, here are the contents of that:
QUOTE
<?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>Boot Banner</key>
<string>No</string>
<key>Graphics Mode</key>
<string>1280x800x32</string>
<key>Kernel</key>
<string>mach_kernel</string>
<key>Kernel Flags</key>
<string>arch=i386 DropSSDT=Y</string>
<key>Rescan</key>
<string>Yes</string>
<key>SMBIOS</key>
<string>rd(0,0)/Extra/smbios.plist</string>
<key>Theme</key>
<string>Default</string>
</dict>
</plist>


I also am not 100% positive about my SMBIOS file. Here is the contents of that:
QUOTE
<?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>SMbiosvendor</key>
<string>Apple Inc.</string>
<key>SMbiosversion</key>
<string>MBP51.88Z.0074.B00.0810241236</string>
<key>SMboardmanufacter</key>
<string>Dell Inc.</string>
<key>SMboardproduct</key>
<string>XPS M1330</string>
<key>SMexternalclock</key>
<string>200</string>
<key>SMfamily</key>
<string>Mac</string>
<key>SMmanufacter</key>
<string>Apple Inc.</string>
<key>SMmaximalclock</key>
<string>2200</string>
<key>SMmemmanufacter_1</key>
<string>Dell Inc.</string>
<key>SMmemmanufacter_2</key>
<string>Dell Inc.</string>
<key>SMmempart_1</key>
<string>DDR2 SDRAM</string>
<key>SMmempart_2</key>
<string>DDR2 SDRAM</string>
<key>SMmemserial_1</key>
<string>00FF0000</string>
<key>SMmemserial_2</key>
<string>000736TU</string>
<key>SMmemspeed</key>
<string>667</string>
<key>SMmemtype</key>
<string>19</string>
<key>SMproductname</key>
<string>MacBookPro5,1</string>
<key>SMserial</key>
<string>XXXXXXXXXXXX</string>
<key>SMsystemversion</key>
<string>1.0</string>
<key>SMboardid</key>
<string>Mac-F42D86C8</string>
<key>SMboarduuid</key>
<string>00000000-0000-0001-8000-001E4C6405B5</string>
<key>SMmembankloc_1</key>
<string>BANK</string>
<key>SMmemdevloc_1</key>
<string>DIMM_A</string>
<key>SMmembankloc_2</key>
<string>BANK</string>
<key>SMmemdevloc_2</key>
<string>DIMM_B</string>
</dict>
</plist>


Does that look right to you? I have a Core 2 Duo T7500 2.20 GHZ CPU. and 3 GB of ram. Thanks again.
testor
i have similar issues i jsut made my dsdt file with NO nvidia patch since i dont need it i let chameleon handle the video no usb after sleep patch since i dont want sleep and no audio patch i let alone woodoohda to do that

issues i dont have speedstep coolbook shows nothing i did the newHpet with dsdt patcher with no errors

now i dont have nullcpu or voodootscsync no platformUUid
just

AppleACPIPS2Nub.kext VoodooBattery.kext
IOATAFamily.kext fakesmc.kext

and the voodoops2controler and voodoosdhc and voodoohda in the /S/L/E folder

smbios file with mac.5.1 and
key>SMexternalclock</key>
<string>200</string>

<key>SMmaximalclock</key>
<string>2000</string>

i just want speedstep to cool down my system sad.gif

found this in dmesg

ACPI_SMC_PlatformPlugin::registerLPCDriver - WARNING - LPC device initialization failed: C-state power management not initialized

does it has anything to do with the speedstep?
Brett Whinnen
QUOTE (testor @ Nov 10 2009, 10:33 PM) *
i have similar issues i jsut made my dsdt file with NO nvidia patch since i dont need it i let chameleon handle the video no usb after sleep patch since i dont want sleep and no audio patch i let alone woodoohda to do that

issues i dont have speedstep coolbook shows nothing i did the newHpet with dsdt patcher with no errors

now i dont have nullcpu or voodootscsync no platformUUid
just

AppleACPIPS2Nub.kext VoodooBattery.kext
IOATAFamily.kext fakesmc.kext

and the voodoops2controler and voodoosdhc and voodoohda in the /S/L/E folder

smbios file with mac.5.1 and
key>SMexternalclock</key>
<string>200</string>

<key>SMmaximalclock</key>
<string>2000</string>

i just want speedstep to cool down my system sad.gif

found this in dmesg

ACPI_SMC_PlatformPlugin::registerLPCDriver - WARNING - LPC device initialization failed: C-state power management not initialized

does it has anything to do with the speedstep?


Post up your DSDT and we can have a look at it (the dsl please).

The C-State error you have will not restrict P-states (speed step) from running. You probably have a PSS related error somewhere along the lines in the logs as well.

Cheers
Brett
jkbuha
QUOTE (Brett Whinnen @ Nov 9 2009, 09:26 PM) *
but I took Julian's lead on that one.
Thanks Julian

Click to view attachment


You're welcome!

Just updated to 10.6.2 and all I had to do was remove AppleHDA - works like a dream.

Three thoughts come to mind:

1) The ACPI_SMC_Plugin is radically different from 10.6.1 - anyone fancy a shot at trying to make it work for our M1330 and M1530s?
2) AppleHDA - is there any value (effort) in making this work for our 9228 as opposed to the VoodooHDA?
3) Anyone have the old (original) 10.6 IOATAFamily.kext as I've mistakenly deleted it and am now using the hacked version? smile.gif

Cheers
jkbuha
Brett Whinnen
QUOTE (jkbuha @ Nov 11 2009, 06:36 AM) *
You're welcome!

Just updated to 10.6.2 and all I had to do was remove AppleHDA - works like a dream.

Three thoughts come to mind:

1) The ACPI_SMC_Plugin is radically different from 10.6.1 - anyone fancy a shot at trying to make it work for our M1330 and M1530s?
2) AppleHDA - is there any value (effort) in making this work for our 9228 as opposed to the VoodooHDA?
3) Anyone have the old (original) 10.6 IOATAFamily.kext as I've mistakenly deleted it and am now using the hacked version? smile.gif

Cheers
jkbuha


On it's way via email (the IOATAFamily.kext that is).

I'm going to start having a look back over the C-State errors now that there is a big change in the ACPI_SMC. I do know that even without any SSDT entries in my DSDT I still get speedstep working just fine. Haven't delved any further yet.

Brett
jkbuha
QUOTE (Brett Whinnen @ Nov 10 2009, 10:02 PM) *
On it's way via email (the IOATAFamily.kext that is).

I'm going to start having a look back over the C-State errors now that there is a big change in the ACPI_SMC. I do know that even without any SSDT entries in my DSDT I still get speedstep working just fine. Haven't delved any further yet.

Brett


Thanks got it - am writing this off the new (old!) 10.6 kext
Do let me know if you make any new discoveries and/or need any help on C-state discovery - in the meantime I'll go back to experimenting as well and will keep you posted on any progress!

Cheers
jkbuha
golden3159
Well...I figured out the problem. Apparently my SMBIOS.plist wasn't being loaded. I fixed the path and now speedstep seems to be working! Im just curious as to one thing however...my screen looks funny. There's 5 entries!



It seems to be listing all possible speed states. Aren't there supposed to be two entries, each giving a real-time view of the core speed? It sounds like it's only using one of my cores (the bottom labeled "information" is where the speeds are reflected). Or is this how the program normally functions? I honestly wouldn't know.

Other than that I have 3 things to work on:
-Find a working audio kext. I haven't found one that makes both my headphones AND speakers work. I don't need the mic or HDMI (although if would be nice to have HDMI out)
-trackpad kext that gives me scrolling (would really appreciate help with this one!)
-My keyboard works fine but can't be identified by OSX. As a result, my shortcuts don't work. Any help with that one?

Would appreciate some help here, thanks for all the solutions so far! I will also be posting my DSDT.aml shortly.
testor
i think its possible that i have some issues loading the smbios

ok it was not loading it now i make it loaded but if i chose 5,1 macbookpro i dont have any speedstep coolbook hows 0(looks like it cant acces the driver he install wtf.. if i change to 4.1 i get some error about p-states
WARNING - ACPI_SMC_CtrlLoop::initCPUCtrlLoop - no sub-config match for MacBookPro4,1 with 5 p-states, using default stepper instead


the coolbook driver ..i get this error..if i try load his driver manual
/System/Library/Extensions/CoolBook2.kext failed to load - (libkern/kext) requested architecture/executable not found
isn't this working in 64 bit mode? lol looks like i got the wrong one

and now i see that everything looks ok i mean it reads the infos right thanks all i let all my mistakes posted for others for how to no no what i did smile.gif)

i got now like 50 C at 1200 mhz isn't this a lot?
immo
QUOTE (Brett Whinnen @ Nov 10 2009, 09:02 PM) *
On it's way via email (the IOATAFamily.kext that is).

I'm going to start having a look back over the C-State errors now that there is a big change in the ACPI_SMC. I do know that even without any SSDT entries in my DSDT I still get speedstep working just fine. Haven't delved any further yet.

Brett



I need more time to experiment but I found something rather odd here.

I made my own DSDT without SSDT tables and as you said, Speed Step works. However, according to CoolBook, the P-States aren't quite correct. The fastest step is 2.6GHz even though my CPU maxes at 2.4GHz. Unsurprisingly it does not step to the highest step.

To try and correct this, I put back my old DSDT with the SSDT entries, and I got the same 2.6GHz highest step reported in CoolBook! I'm pretty sure that the CoolBook entries matched my SSDT power states before... Is it possible that the SSDT entries are now ignored in 10.6.2? I didn't have a lot of time to experiment so hopefully I didn't make a dumb-ass mistake. I'll experiment more when I get time.
Brett Whinnen
QUOTE (immo @ Nov 12 2009, 02:03 AM) *
I need more time to experiment but I found something rather odd here.

I made my own DSDT without SSDT tables and as you said, Speed Step works. However, according to CoolBook, the P-States aren't quite correct. The fastest step is 2.6GHz even though my CPU maxes at 2.4GHz. Unsurprisingly it does not step to the highest step.

To try and correct this, I put back my old DSDT with the SSDT entries, and I got the same 2.6GHz highest step reported in CoolBook! I'm pretty sure that the CoolBook entries matched my SSDT power states before... Is it possible that the SSDT entries are now ignored in 10.6.2? I didn't have a lot of time to experiment so hopefully I didn't make a dumb-ass mistake. I'll experiment more when I get time.


Mine has always referenced the highest power state as 2.6GHz even with 10.6.0 and 10.6.1. I didn't do as much testing under Leo so can't comment on that biggrin.gif

Chrysaor
Use VoodooMonitor or MSR Tools to test speedstep, Coolbook isn't reliable.
overshoot
QUOTE (Brett Whinnen @ Nov 11 2009, 10:32 PM) *
Mine has always referenced the highest power state as 2.6GHz even with 10.6.0 and 10.6.1. I didn't do as much testing under Leo so can't comment on that biggrin.gif


Hi All,

I'm using Brett's DSDT for my XPS 1530 as he has the same CPU as mine but i can't get speedstep working correctly.

My CPU frequency is stuck at 800 Mhz at first boot and never goes faster.

If i put my hack to sleep it then get stuck at 1200Mhz.

VoodooMonitor shows about 16 Pstates available... see screenshots please.

I've removed dropssdt from my boot plist but no more speedstep.

Also, sleep works sometimes and sometimes my hack reboots itself.

I'm starting getting crazy trying to make speedstep works.

If someone can help me... that would be very friendly.

I'm also using Macbook pro4.1 for my smbios plist.

Last thing is that i'm still using bios A09 but i can't install the new bios as i didn't have anymore windows on my laptop. I'm starting to think that this is the problem as i heard you were all using A12 bios, right?

Thanks in advance.
Josh.
timmyj9
overshoot: locked at 800MHz means that your P-states don't match your platform change the number of p-states to 9 or larger in dsdt or use macbookpro5,1

got a new DSDT fix thanks to what masterchiefs been doing...
changes involve adding MCDP method (replacement of DTGP - just kept both for now)
adding FRWR device - (removes the firewire runtime power conservation error)
and a link for this device in the GPE scope (_L19)
also my previous DSDT on the other topic didn't have the PATA IOATA panic fix, so thats in there also

for the FRWR fix - should work in M1530 i'm not sure about M1330 but i'd assume it'd be very similar may have to change the _ADR value i'm not sure - so yeah under
scope _GPE
added
CODE
Method (_L19, 0, NotSerialized)
{
Notify (\_SB.PCI0.PCIB.FRWR, Zero)
}


and under the device with Name (_ADR, 0x001E0000) you can remove CRD0 aswell
( i've renamed a lot of my devices with the apple ones just to make things easier i'm not sure if this is one of the ones that i've changed or not)


CODE
Device (FRWR)
{
Name (_ADR, 0x00090000)
Name (_GPE, 0x19)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"fwhub",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
}
}, Local0)
MCDP (Arg2, RefOf (Local0))
Return (Local0)
}
}


and the MCDP method around the DTGP one

CODE
Method (MCDP, 2, NotSerialized)
{
If (LEqual (Arg0, Zero))
{
Store (Buffer (One)
{
0x03
}, Arg1)
}
}


hopefully this is of some use
my decompiled DSDT is also attached for further reference
is specific to my config (m1530, t9500 etc) but yeah take what you want from it
jkbuha
Firewire DSDT fix works for me!
If anyone needs the full DSDT please PM me (cannot attach files atm!)

Cheers
jkbuha
timmyj9
it seems to me that our c-states issue is more related to the LPC device itself rather than _CST tables
from what I can gather our error is what people normally get when they don't have AppleLPC.kext loaded, and therefore have to inject device IDs via DSDT. Plus we don't have any _CST evaluation failed messages etc.. But for us ICH8-M users AppleLPC.kext loads out of the box. Perhaps it is to do with how the ISAB/WSEC device is set out in our default DSDT, and therefore using the MacBookPro4,1 DSDT i've been trying to rewrite it to match the apple one but without much luck thus far.......it's also quite likely i'm completely wrong and if someone understands the DSDT better than I do, they probably have a better idea of it. I still haven't tried to implement the EC device which is another item under the LPC device on Apple DSDTs but perhaps that may also be worth attempting
Just putting an idea out there. Does anyone know of anyone with working C-states on a hack laptop? Because all i've seen is desktop users doing it.
immo
QUOTE (Brett Whinnen @ Nov 11 2009, 09:32 PM) *
Mine has always referenced the highest power state as 2.6GHz even with 10.6.0 and 10.6.1. I didn't do as much testing under Leo so can't comment on that biggrin.gif

So I did some digging and I figured out why CoolBook reports the 2.6.

If you look at the PSS section and decode it, you find the first entry is 2401MHz with a multiplier of 13, and the second is 2400MHz with a multiplier of 12.
With a bus speed of 200:
13 * 200 = 2600
12 * 200 = 2400

So CoolBook is simply calculating the frequency from the multiplier. The T8300 supports a maximum multiplier of 12, so why the heck that 2401 state is there is beyond me!

I also tried VoodooMonitor as Chrysaor has suggested and it reports a total of 10 steps. I guess these are all the steps that the CPU can possibly use. It's definitely not hitting any steps that are not in the DSDT.
jkbuha
You can find someone who made CST work for laptops (esp Dell XPS) here:
http://www.projectosx.com/forum/index.php?...ic=532&st=0

Let us know if you have any luck!

Cheers
jkbuha

QUOTE (timmyj9 @ Nov 13 2009, 02:20 AM) *
it seems to me that our c-states issue is more related to the LPC device itself rather than _CST tables
from what I can gather our error is what people normally get when they don't have AppleLPC.kext loaded, and therefore have to inject device IDs via DSDT. Plus we don't have any _CST evaluation failed messages etc.. But for us ICH8-M users AppleLPC.kext loads out of the box. Perhaps it is to do with how the ISAB/WSEC device is set out in our default DSDT, and therefore using the MacBookPro4,1 DSDT i've been trying to rewrite it to match the apple one but without much luck thus far.......it's also quite likely i'm completely wrong and if someone understands the DSDT better than I do, they probably have a better idea of it. I still haven't tried to implement the EC device which is another item under the LPC device on Apple DSDTs but perhaps that may also be worth attempting
Just putting an idea out there. Does anyone know of anyone with working C-states on a hack laptop? Because all i've seen is desktop users doing it.
testor
small question if i replace the battery and the hd do i have to rebuild my dsdt files?
Superhai
QUOTE (immo @ Nov 13 2009, 03:57 AM) *
So CoolBook is simply calculating the frequency from the multiplier. The T8300 supports a maximum multiplier of 12, so why the heck that 2401 state is there is beyond me!


IDA
immo
QUOTE (testor @ Nov 13 2009, 12:19 PM) *
small question if i replace the battery and the hd do i have to rebuild my dsdt files?


Nope.

QUOTE (Superhai @ Nov 13 2009, 12:35 PM) *
IDA


And all becomes clear smile.gif
jkbuha
QUOTE (Superhai @ Nov 13 2009, 01:35 PM) *
IDA


Hello Superhai! Really good to see you here!

Quick question - if 2401 enables IDA mode, how do you enable SLFM? Is the [600] entry enough?
Also - have you had any luck so far with CST?
And (last question promise!) any chance of us getting our hopes up for a shutdown/restart fix? smile.gif

Cheers
jkbuha
cyberbuddhah
QUOTE (jisare @ Oct 22 2009, 02:53 AM) *
update oct 22 2009, 4pm

sleep/speedstep work now! Thanks to all.
guess i should post my findings as well.


I used your dsdt running SL 10.6.2 now with, sleep/speedstep/shutdown/reboot WORK!


Sound, touchpad scrolling double tap, clamshell, QE/CI open GL also work
Even dual boot win7
Thank you.
Essentially it's a mini macbook pro

Enclosed my package if someone else needs it
Claudio A.
QUOTE (FMulder @ Oct 13 2009, 09:52 AM) *
Thank you so much jkbuha, it worked!!

RANDOM WORKING USB FIX

in Device (TMR) section I REMOVED:
CODE
            IRQNoFlags ()
                 {2}


I had to remove that just from TMR, but there are chances you have to remove something similar also in HPET or PIC sections... just try!

I attach here my final DSDT, so everyone can use it.

Configuration:
- XPS 1330
- T7250 (2.0 ghz)
- Nvidia 8400GS
- Audio Sigmatel STAC9228

What works:
- USB
- Battery
- Speedstep
- Sleep
- Audio (only from jacks and not from speakers, but I don't think it's dsdt related)

What doesn't work:
- C-States
- Shutdown/restart

What isn't perfect:
- Audio problems waking up from the sleep
- USB problem waking up from the sleep, I have to unplug and plug again devices like USB to Ethernet adapter.

[EDIT: I changed a little the DSDT, previously I changed more than needed]

Click to view attachment


Hi! I've the exact same configuration but for an m1530, do you think that your DSDT will work?
immo
QUOTE (Claudio A. @ Nov 14 2009, 07:29 PM) *
Hi! I've the exact same configuration but for an m1530, do you think that your DSDT will work?


Don't use an M1330 DSDT on an M1530. Try Brett's:

http://www.insanelymac.com/forum/index.php...t&p=1324780
It should work on any CPU.
ab___73
QUOTE (timmyj9 @ Nov 13 2009, 01:20 AM) *
it seems to me that our c-states issue is more related to the LPC device itself rather than _CST tables
from what I can gather our error is what people normally get when they don't have AppleLPC.kext loaded, and therefore have to inject device IDs via DSDT. Plus we don't have any _CST evaluation failed messages etc.. But for us ICH8-M users AppleLPC.kext loads out of the box. Perhaps it is to do with how the ISAB/WSEC device is set out in our default DSDT, and therefore using the MacBookPro4,1 DSDT i've been trying to rewrite it to match the apple one but without much luck thus far.......it's also quite likely i'm completely wrong and if someone understands the DSDT better than I do, they probably have a better idea of it. I still haven't tried to implement the EC device which is another item under the LPC device on Apple DSDTs but perhaps that may also be worth attempting
Just putting an idea out there. Does anyone know of anyone with working C-states on a hack laptop? Because all i've seen is desktop users doing it.


I think your on the right track.
The error we are getting is not due to wrongly defined cstates or pstates in dsdt or ssdt tables, it's an error flag in the LPC device driver.

I've managed to get pstates and cstates working with an Intel 945 chipset based laptop, ICH7M southbridge type. (HP 530).
The LPC device loaded with this chipset and at least i was experiencing the _CST evaluation failed messages at the beginning. After a bit of tweaking the tables i managed to get them to load. Although this was a while back and I was using Leopard 10.5.5. I've no longer got this laptop so I cannot try the same hardware with SL 10.6.x.
I've tried using the same methods that i used with this chipset on my M1530 laptop, but with no success.

I've also managed to get CST and PSS loaded on my Gigabyte P45-DS4 Desktop using the Device ID hack within the LPCB device. (More evidence that it points to our LPC Device)

I'm going to look at the IOPCIFamily kext to find out if this is reporting anything when the LPC device is loading.
I'll report back any findings....


--
AB
immo
QUOTE (Brett Whinnen @ Nov 9 2009, 08:26 PM) *
Just note the following about my DSDT;
- NO SSDT entries, so if you use it make sure you don't have the DropSSDT=Y in Chameleon
- has the HPET and TMR IRQ fixes for USB
- has the IOATA fix for the CDROM
- has the SBUS entries (thanks Julian)
- has the extra USB entries to allow clean disconnects of USB devices during sleep
- has the Nvidia 8600M GT 256 card entries
- has the 'pretty text' additions for the Yukon NW controller

I still get speedstep working with this, just using the default PSS states, I also run my laptop as a MBP5,1. Obviously no C-States.
Click to view attachment


Hi Brett. So as I mentioned earlier I made an M1330 DSDT.aml without the SSDT tables. Speed step works just as you said, but I've found that sleep is broken. Basically when I put it to sleep, it wakes up instantly. After putting the old one with the SSDT tables back and replacing the DropSSDT=y parameter, sleep starts working again... I applied all the same fixes except the "pretty text" one (not applicable to M1330). Is your sleep working?

Immo
jkbuha
QUOTE (ab___73 @ Nov 15 2009, 01:04 PM) *
I think your on the right track.
The error we are getting is not due to wrongly defined cstates or pstates in dsdt or ssdt tables, it's an error flag in the LPC device driver.

I've managed to get pstates and cstates working with an Intel 945 chipset based laptop, ICH7M southbridge type. (HP 530).
The LPC device loaded with this chipset and at least i was experiencing the _CST evaluation failed messages at the beginning. After a bit of tweaking the tables i managed to get them to load. Although this was a while back and I was using Leopard 10.5.5. I've no longer got this laptop so I cannot try the same hardware with SL 10.6.x.
I've tried using the same methods that i used with this chipset on my M1530 laptop, but with no success.

I've also managed to get CST and PSS loaded on my Gigabyte P45-DS4 Desktop using the Device ID hack within the LPCB device. (More evidence that it points to our LPC Device)

I'm going to look at the IOPCIFamily kext to find out if this is reporting anything when the LPC device is loading.
I'll report back any findings....


--
AB


That's a really good point.

So what if we change the deviceid to match the LPC id found in the MBP4,1 or the MP4,1 [ie the model that most closely resembles the T8300/T9300?

Can anyone run an LSPCI on a proper mac and report the deviceid?
Here's mine from a Dell XPS M1330 (ICH8 - 2815):

00:1f.0 ISA bridge [0601]: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller [8086:2815] (rev 02)

Then in order to change the deviceid to a more compatible id (eg: 3A18 below) insert the hack using DTGP method as shown below:

Device (LPCB)
{
Name (_ADR, 0x001F0000)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"device-id",
Buffer (0x04)
{
0x18, 0x3A, 0x00, 0x00 //hack the ID..
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}


Maybe this could be the way towards finding the elusive CST on an XPS!

Cheers
jkbuha
Brett Whinnen
QUOTE (immo @ Nov 16 2009, 01:54 AM) *
Hi Brett. So as I mentioned earlier I made an M1330 DSDT.aml without the SSDT tables. Speed step works just as you said, but I've found that sleep is broken. Basically when I put it to sleep, it wakes up instantly. After putting the old one with the SSDT tables back and replacing the DropSSDT=y parameter, sleep starts working again... I applied all the same fixes except the "pretty text" one (not applicable to M1330). Is your sleep working?

Immo


Sleep still works with both the wireless mouse update (run a magic mouse when using on a desktop surface) and 10.6.2.

Might be interesting to see the difference in errors you get in the logs.
overshoot
QUOTE (immo @ Nov 15 2009, 04:54 PM) *
Hi Brett. So as I mentioned earlier I made an M1330 DSDT.aml without the SSDT tables. Speed step works just as you said, but I've found that sleep is broken. Basically when I put it to sleep, it wakes up instantly. After putting the old one with the SSDT tables back and replacing the DropSSDT=y parameter, sleep starts working again... I applied all the same fixes except the "pretty text" one (not applicable to M1330). Is your sleep working?

Immo


Hi immo,

I'm using Brett's DSDT on my XPS 1530 (apparently same config as its one) and i've also loosed sleep.
My hack just restart itself.
I've created a script to put my hack to sleep when the battery level is too low and, in this state, sleep works... strange...

Josh.
Brett Whinnen
QUOTE (overshoot @ Nov 16 2009, 07:42 AM) *
Hi immo,

I'm using Brett's DSDT on my XPS 1530 (apparently same config as its one) and i've also loosed sleep.
My hack just restart itself.
I've created a script to put my hack to sleep when the battery level is too low and, in this state, sleep works... strange...

Josh.


How do you guys put your laptop to sleep? I just close the lid when I'm done.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.