Jump to content

DSDT - Vanilla Speedstep - Generic Scope (_PR)


FKA
 Share

1,949 posts in this topic

Recommended Posts

Not really,

I suggest u take out the voodooPstate kext if u already have vanilla p-states, if not try to edit the Acpi key inside info.plist to Yes

 

How do I know if I have vanilla p-states?

 

So far I have modded my DSDT with this guide using the values I had in pstatechanger but after seeing others I realised I am not getting the right values as mv, FID and DID columns are all 0's. How can I check p-states and stepping? MSR Tools says I have stepping enabled but I never see the cpu drop below maximum. Idle temps are 40 degrees.

 

Tried changing the acpi to yes and didnt have a difference. Also booting in 64bit if that makes a difference?

 

Voodoomonitor causes kernal panic when isntalled.

 

Is there another way I can get the values I need? The chip is a i7 - 720qm.

 

Thanks for the help!!

Link to comment
Share on other sites

Ok so I am trying to use P-State Calculator to get the values I need.

 

Looking at the examples on the net the values are always something like 0x1e4f however the values I get are always missing a value (e.g. 0x110). Is this right or is something stil wrong?

 

 

EDIT: Ok so I was being a bit stupid. I has NULLCpuPowerManagement kext running. Now I have removed that MSR Tools shows mu CPU down clocking as it should do!!!

 

I tried both value - one from p-state changer and one from p-state calculator and results seem the same.

Link to comment
Share on other sites

EDIT: Ok so I was being a bit stupid. I has NULLCpuPowerManagement kext running. Now I have removed that MSR Tools shows mu CPU down clocking as it should do!!!

that explains it all then

Link to comment
Share on other sites

Hi, I was using voodoopower kext for speedstep which was working very well but no C-States. I followed this thread with hopes for C-States, but only Speedstep (P-States) worked.

 

This is what I have done.

1. I have meticulously followed this guide except the LPC part as it has already showed up by default

2. I have also added ssdt contents at the end of the dsdt file.

3. And this code to SMBIOS file.

<key>SMproductname</key>
<string>MacPro3,1</string>

 

 

At this point speedstep (P-States) worked but no C-States. I still get this boot error: ACPI_SMC_PlatformPlugin::registerLPCDriver - WARNING - LPC device initialization failed: C-state power management not initialized.

 

I am attaching 1 DSDT file 1 SSDT file and 2 FSCP files, which I have dumped from ubuntu. I am also attaching my modified dsdt.dsl with comments.

 

Please somebody have a look and help me solve this last problem.

acpi_dump.zip

dsdt.dsl.zip

Link to comment
Share on other sites

1. I have meticulously followed this guide except the LPC part as it has already showed up by default

 

Try editing the device-id with one taken from real mac system, probably better to get the closest one to yours

 

possibly voodoomonitor is reading the FSB correctly rather than taking your SMBIOS injected value.

in fact, I have the so called Dynamiv FSB

Could this be the reason for it ?

Link to comment
Share on other sites

Try editing the device-id with one taken from real mac system, probably better to get the closest one to yours

 

 

in fact, I have the so called Dynamiv FSB

Could this be the reason for it ?

 

Actually my System Profiler reports my Bus speed as 1.33 Ghz. But mine is only 667 Mhz (as per BIOS).

I have tried to change in the SMBIOS file in /Extra but did not work. Where can I change it? . Silly mistake. This actually worked by did not reduce my temps.

 

Also which device-id you are referring? The one in the Info.plist of LPC?

Link to comment
Share on other sites

I found this in SSDT file

Name (SSDT, Package (0x0C)
	{
		"CPU0IST ", 
		0x7F66E538, 
		0x00000244, 
		"CPU1IST ", 
		0x7F66E77C, 
		0x000000C4, 
		"CPU0CST ", 
		0x7F66DECE, 
		0x000005E5, 
		"CPU1CST ", 
		0x7F66E4B3, 
		0x00000085
	})

 

and this in FACP1 file

[05Fh 0095  1]				 _CST Support : 00
[060h 0096  2]				   C2 Latency : 0096
[062h 0098  2]				   C3 Latency : 00FA

 

What does it mean? Will I have C-States or not?

Link to comment
Share on other sites

There is a memory address for CST so you should find CST tables in you SSDT dumps and thus have C-state support !

 

EDIT - It looks like you haven't dumped all of you SSDT tables .. How did you extract your ACPI info?

Link to comment
Share on other sites

Hi FormerlyKnownAs,

Thanks a lot for your guide about Generic Scope (_PR) method. I am learning a lot from such method, although i am understanding it's too much "generic" and it doesn't work on many laptops or motherboards.

What do you mean with "It looks like you have not dumped all of you SSDT Tables" in previous post? Is there a "best-method" to extract all ACPI Tables ? I do it from linux booting from ubuntu 9.10 bootcd and all acpi tables can be found in : /sys/firmware/acpi/tables (they are already in binary format, enough to rename them as .aml). Is it the best way to extract them in your opinion ?

 

Talking a bit more about that SSDT/ACPI Tables, it would be REALLY wonderful if you (that got experienced in that) or other people could compile a detailed step-by-step guide on how to inject SSDT tables inside DSDT, in order to support P-,C-(and eventually T-) States for Leopard and Snow Leopard.

I guess it's not only a copy-paste injection from the ssdt tables ...

 

Thanks a lot in advance!

Mal

Link to comment
Share on other sites

Hi FormerlyKnownAs ,

thanks for the link you gave me! Very useful!

In the post you mentioned a (very simple) method where you can merge ssdt to dsdt table; but there is only the procedure how to merge 1 ssdt table only in dsdt .

What about if i have 10 ssdt tables (dumped with acpidump) with p-states and c-states and i want to merge in one-only dsdt file? Should i merge first the 10 ssdt-tables to 1 ssdt table only then merge such table into dsdt ?

It's not that easy for what i can see ... I hope i am wrong tho... if someone may compile a detailed guide on how to do it here or in a separate post would be great :) I guess it will be a long process ... or a long post, but it will worth the efforts! Also one (or more) examples of a resulting working DSDT.dsl compiled from Acpi-tables would be great (with both acpi-tables-files and final dsdt.dsl).

Thanks in advance!

Mal

Link to comment
Share on other sites

Hi FormerlyKnownAs ,

thanks for the link you gave me! Very useful!

In the post you mentioned a (very simple) method where you can merge ssdt to dsdt table; but there is only the procedure how to merge 1 ssdt table only in dsdt .

What about if i have 10 ssdt tables (dumped with acpidump) with p-states and c-states and i want to merge in one-only dsdt file? Should i merge first the 10 ssdt-tables to 1 ssdt table only then merge such table into dsdt ?

It's not that easy for what i can see ... I hope i am wrong tho... if someone may compile a detailed guide on how to do it here or in a separate post would be great :D I guess it will be a long process ... or a long post, but it will worth the efforts! Also one (or more) examples of a resulting working DSDT.dsl compiled from Acpi-tables would be great (with both acpi-tables-files and final dsdt.dsl).

Thanks in advance!

Mal

 

just repeat the same process of commenting out the last line of the last SSDT you've added to DSDT and the first lines of the next SSDT table ... anon anon ...

 

there is an alternative if you want to get clever ... see Master Chief's thread here BUT note this is still very beta stuff ..

Link to comment
Share on other sites

There is a memory address for CST so you should find CST tables in you SSDT dumps and thus have C-state support !

 

EDIT - It looks like you haven't dumped all of you SSDT tables .. How did you extract your ACPI info?

 

I could not extract them from OSX so I dumped them from ubuntu using This. Basically used acpidump to dump and then decompiled them using iasl. All I could get is

 

1 DSDT file

1 SSDT file

2 FACP file

 

Please let me know if you know any better method. Thanks a lot for the help

Link to comment
Share on other sites

I would like to change PCEFI 10.5 to Chameleon. Does this affect the DSDT? I need to re-generate the DSDT file?

As far as I know, the DSDT output depends on the BIOS version.

 

no change needed to DSDt unless you're planning to use one of the new branches of chameleon for shutdown ... in which case you'll need to make a couple of changes to DSDT to fix restart.

see post 34 here

 

D

Link to comment
Share on other sites

There is a memory address for CST so you should find CST tables in you SSDT dumps and thus have C-state support !

 

EDIT - It looks like you haven't dumped all of you SSDT tables .. How did you extract your ACPI info?

 

 

It's already out there !

 

with regard to dumping SSDT tables .. see post 71 here and here

 

with regard to adding SSDT to DSDT .. (it's very simple!) see here

 

D.

 

Thanks alot for the pointers. They are really helpful. I have followed method 2 and extracted the cst tables on my ununtu. . Also replaced yours with those cst methods.

 

Still only Pstates. no Cstates (can not find anything in IOReg).

 

Please see attached the cst tables and my modified dsdt.asl. any pointers are greatly appreciated

cst.zip

dsdt.dsl.zip

Link to comment
Share on other sites

post-305981-1270695532_thumb.jpg

 

 

;)

 

 

Can somebody please tell me which one is close to actual voltage?

 

Appart from voodoomonitor - remove all kext's related to pstatechanger and (cant remember if there are any but ...) any kext for MSRTools and cpuX ....

 

Then see what you get!

 

Have you searched cst in ioreg??

 

D

Link to comment
Share on other sites

Appart from voodoomonitor - remove all kext's related to pstatechanger and (cant remember if there are any but ...) any kext for MSRTools and cpuX ....

 

Then see what you get!

 

Have you searched cst in ioreg??

 

D

 

Yeah.. that was fine. There is no cst in my ioreg. I have attached a dump. Please have a look. Just to give you an idea of what I have done so far --

 

  1. I tried to extract SSDT tables in osx, but it says could not find or something.
  2. Then I went a head to ubuntu and used acpidump. but I could get only one ssdt file which is containing the CPU0IST and CPU0CST addresses. please see attached.
  3. Then I followed the link provided by you in post# 1386 and followed the 2nd method and extracted the cst files. Pelase see attached.
  4. And I have incorporated the above cst files into my dsdt file. see attached.

 

Still no dice. I know I am very close. I really appreciate if you just have a look at them.

cst.zip

ioreg.zip

dsdt.zip

SSDT.zip

Link to comment
Share on other sites

Yeah.. that was fine. There is no cst in my ioreg. I have attached a dump. Please have a look. Just to give you an idea of what I have done so far --

 

  1. I tried to extract SSDT tables in osx, but it says could not find or something.
  2. Then I went a head to ubuntu and used acpidump. but I could get only one ssdt file which is containing the CPU0IST and CPU0CST addresses. please see attached.
  3. Then I followed the link provided by you in post# 1386 and followed the 2nd method and extracted the cst files. Pelase see attached.
  4. And I have incorporated the above cst files into my dsdt file. see attached.

 

Still no dice. I know I am very close. I really appreciate if you just have a look at them.

why do u use MacPro3,1 as a model identifier if you are on a notebook

where did u put those SSDTs ? verify your com.apple.boot.plist

Link to comment
Share on other sites

you've patched LPC device? and have removed nullCPUPM or disabler kext or voodoopower kext?

 

EDIT ... also if no joy with above see post No. 71 here

 

 

I have removed voodoopower and nullcpupm long back.

I have not patched my LPC, as it is already showing up in IOReg. Do you still want me to patch it the way you mentioned in the first post?

 

 

 

 

why do u use MacPro3,1 as a model identifier if you are on a notebook

where did u put those SSDTs ? verify your com.apple.boot.plist

 

I have tried with deferent models but only MacPro3,1 works. Some of them gave me KPs and with others either I was not getting the p-states or p-states getting stuck at the min or max. Please suggest any models you want me to try

 

I have added the cst tables to DSDT. My com.apple.boot.plist looks ok to me. I am attaching both the files. Please have a look and let me know if something need to be changed.

 

Thanks for taking time to respond. I really appreciate that.

dsdt.zip

Boot_plist.zip

Link to comment
Share on other sites

Ram Goga

 

Why you duplicate your cpu scope?

 

If your mobo provides full acpi tables, you should only use cpus call, like this:

 

	Scope (_PR)
{
	Processor (CPU0, 0x00, 0x00001010, 0x06) {}
	Processor (CPU1, 0x01, 0x00001010, 0x06) {}
}

 

or

 

	Scope (_PR)
{
	Processor (CPU0, 0x00, 0x00000410, 0x06) {}
	Processor (CPU1, 0x01, 0x00000410, 0x06) {}
}

Link to comment
Share on other sites

 Share

×
×
  • Create New...