Jump to content

DSDT - Vanilla Speedstep - Generic Scope (_PR)


FKA
 Share

1,949 posts in this topic

Recommended Posts

You are still showing VID of 2A for both states.

Have you cleared caches once voodoomini was removed?

 

EDIT - also (sorry if you've already covered this) .. but do you have LPC device in IOReg??

 

I clear and reload caches everytime I add/reload kexts, always do it.

 

I patched the LPC code just like youve explained in your first post, its there in ioreg. I'll attach the snapshot. C states maybe? Also do I need to do the ssdt thing, havent yet figured out what ssdt means.

 

post-241229-1275591358_thumb.png

 

I have tried without the pstates and c states code with voodoomini but temps are same 50 +, i.e

 

{
Scope (_PR)
{
	Processor (CPU0, 0x00, 0x00000410, 0x06) {}
	Processor (CPU1, 0x01, 0x00000410, 0x06) {}
	Processor (CPU2, 0x02, 0x00000410, 0x06) {}
	Processor (CPU3, 0x03, 0x00000410, 0x06) {}
}

Name (_S0, Package (0x04)
{
	Zero, 
	Zero, 
	Zero, 
	Zero
})
Name (SS1, Package (0x04)
{
	One, 
	Zero, 
	Zero, 
	Zero
})
Name (_S3, Package (0x04)
{
	0x05, 
	Zero,...omitted

 

This is my current dsdt:

 

dsdt.dsl.zip

 

The only kext that someone made me disable from S/L/E is:

 

AppleTyMCEDriver.kext

Link to comment
Share on other sites

I clear and reload caches everytime I add/reload kexts, always do it.

 

I patched the LPC code just like youve explained in your first post, its there in ioreg. I'll attach the snapshot. C states maybe? Also do I need to do the ssdt thing, havent yet figured out what ssdt means.

 

can you post your latest dsdt.dsl.

 

and have you tried with no PSS data added to your DSDT you may have native p-states!

Link to comment
Share on other sites

can you post your latest dsdt.dsl.

 

Attached..edited the previous post.

 

and have you tried with no PSS data added to your DSDT you may have native p-states!

 

Yes FMK, took out the PSS code, kept the PSD and CST code, system booted up, temps are same, same output on voodoomonitor:

 

post-241229-1275592588_thumb.png

 

As of now, I have the following kexts in E/E:

 

EvOreboot

fakesmc 2.5

AHCIPortInjector

VoodooMonitor

VoodooPstate

Link to comment
Share on other sites

And obviously you've not had voodoopstate in E/E whilst running these DSDT tests?!

 

EDIT - just looking at your post #1443 you have a VID of 24 rather than 1D .. i presume that was when you where OC'd?

 

sorry for the obvious questions ... just want to cover the obvious!

Link to comment
Share on other sites

Attached..edited the previous post.

 

 

 

Yes FMK, took out the PSS code, kept the PSD and CST code, system booted up, temps are same, same output on voodoomonitor:

 

post-241229-1275592588_thumb.png

 

As of now, I have the following kexts in E/E:

 

EvOreboot

fakesmc 2.5

AHCIPortInjector

VoodooMonitor

VoodooPstate

 

I think this is right but:

 

DropSSDT=Yes if you are using P-States from DSDT

DropSSDT=No if you want to test to see if it works natively without _PSS data in DSDT

 

You can see if native tables are loaded if you check AppleACPIPlatformExpert in Ioreg under ACPI Tables (you'll see SSDT tables with DropSSDT=No)

 

Re your previous post re PStateChanger vs VoodooMonitor.

It is reported that PStateChanger is the preferred utility to get the PState data as its more accurate than VoodooMonitor.

Once these values have been obtained then its job is done, remove the kext and install VoodooMonitor to monitor the working P-States.

 

Could you attach your original DSDT (untouched and unedited)

Link to comment
Share on other sites

Could you attach your original DSDT (untouched and unedited)

 

 

it's in dh.taran's 1st post on this thread mate.

 

Also I think it was proved earlier in the thread that if your _PSS values are not being loaded natively it doesn't matter if you use dropSSDT=Yes or No.

 

D

Link to comment
Share on other sites

it's in dh.taran's 1st post on this thread mate.

 

Also I think it was proved earlier in the thread that if your _PSS values are not being loaded natively it doesn't matter if you use dropSSDT=Yes or No.

 

D

 

Thanks, had found it though.

 

I had earlier advised Dtaran to use DropSSDT=Yes in apple.plist.

 

If you remove pss and cst info from DSDT and install VoodooPower then I would have thought it necessary to have either remove DropSSDT from Plist or change it to No.

 

My knowledge on this is if you use DropSSDT=No then SSDT tables are loaded. You will see SSDT tables in Ioreg.

If DropSSDT=Yes then tables are overwritten with DSDT data. You will not see SSDT tables in Ioreg.

 

I would have thought if you use VoodooPower then you would remove DropSSDT from plist (or change it to No).

 

@Dhtaran,

Its a long shot but:

Recompare your original vs your current DSDT.

You have some incorrect values in Device PCIO, Device PCI0.EXPL and Device Mem.

Now I had difficulties getting P-States to work and it was incorrect address values in DevicePCI0 (I had used anothers dsdt and had missed/ignored the differences). After changing it (Device PCI0) to the original values P-States worked for me.

 

Also could you add your system info to your sig it would help a lot.

Link to comment
Share on other sites

Looks like a SATA device to me - so no .

 

Thanks.

But then.....I already have SATA device in my DSDT:

 

Device (SATA)

{

Name (_ADR, 0x001F0002)

OperationRegion (SACS, PCI_Config, 0x40, 0xC0)

Field (SACS, DWordAcc, NoLock, Preserve)

{

PRIT, 16,

SECT, 16,

PSIT, 4,

SSIT, 4,

Offset (0x08),

SYNC, 4,

Offset (0x0A),

SDT0, 2,

, 2,

SDT1, 2,

Offset (0x0B),

SDT2, 2,

, 2,

SDT3, 2,

Offset (0x14),

ICR0, 4,

ICR1, 4,

ICR2, 4,

ICR3, 4,

ICR4, 4,

ICR5, 4,

Offset (0x50),

MAPV, 2

}

}

 

The strange thing is I never expected SATA to show up in SSDT.The rest of the SSDT tables conatined code for P-States,C-States and T-States and this was the odd one out.Also....i obtained all SSDT tables for Ubuntu.I have merged the P-State and C-State(not T-States as I think its outdated in favour of more efficeint P-State,I may be wrong) code with complete success(now the CPU cores are 30 degrees celsius cooler!!!)..thanks to your wonderful guide .

Any scope of merging the two SATA codes.

Thanks again for your reply.

 

Update: Successfully merged the codes,without any compiler errors.Tesing time now...

Link to comment
Share on other sites

EDIT: FMK QUICK QUESTION FIRST!

 

My processor E6320 has a TJ Max of 85, when adjusted in fakesmc infolist from 100 to 85, temps are 38-40 degrees. Is that what's been driving me bonkers?

Confirmed it via some online articles and feedbacks and in Windows7 coretemp 0.99, TJ max is 85 for my processor, however Voodomonitor still shows temps as 52 degrees. Thoughts please.

 

-----------

 

And obviously you've not had voodoopstate in E/E whilst running these DSDT tests?!

 

EDIT - just looking at your post #1443 you have a VID of 24 rather than 1D .. i presume that was when you where OC'd?

 

Yes I ve taken out voodoopstate.kext from E/E and reloaded caches like a hundred times, still no change in voodoomonitor voltage output, have the following in EE now:

EvOreboot

fakesmc 2.5

AHCIPortInjector

VoodooMonitor

 

post #1443, yes its 24 there instead of 1D because I was OC'ing to 3.01 Ghz (thats when I got 'uncorrected CPU error on boot time'). Then later I took down the OC to 2.8 Ghz and it booted fine without null, hence the difference of 24 and 1D after taking it down 200 mhz.

 

System Specs:

Gigabyte P35 DS3R v1.o

E6320 @ 2.80 Ghz - Original 1.86 Ghz

2 GB Ram @ 1000

Nvidia 8600 GT 256 MB RAM

USB Keyboard and mouse

2 HDD:

Seagate 500 GB 7200.12=Windows 7

WD 250 GB 7200=MAC OSX SNOW, a second cloned partition MAC OSX BACKUP

 

 

I think this is right but:

 

DropSSDT=Yes if you are using P-States from DSDT

DropSSDT=No if you want to test to see if it works natively without _PSS data in DSDT

 

You can see if native tables are loaded if you check AppleACPIPlatformExpert in Ioreg under ACPI Tables

 

Tried that t oo keeza, DropSSDT is set to NO now, booting without pstates in current DSDT.

Im attaching the ACPI Tables ioreg sshot, do I need to check for a specific setting under ACPI tables?

post-241229-1275704267_thumb.png

post-241229-1275704283_thumb.png

 

 

Recompare your original vs your current DSDT.

You have some incorrect values in Device PCIO, Device PCI0.EXPL and Device Mem.

Now I had difficulties getting P-States to work and it was incorrect address values in DevicePCI0 (I had used anothers dsdt and had missed/ignored the differences). After changing it (Device PCI0) to the original values P-States worked for me

 

Could you attach your original DSDT (untouched and unedited)

 

I did recompare a couple of times, I couldnt find anything off...I could be wrong. I have two other DSDT's from fellow members of this site with the same board as mine and there seems to be nothing wrong. For PCI0, I couldnt find whats wrong, however for Device MEM comparing it to the original Linux live USB dsdt just the Y0C and Y0B looks different.

 

Heres the Linux live USB original DSDT:

original_dsdt.dsl.zip

 

Current DSDT (no Pstate, Drop SSDT=No):

current_noPstate.dsl.zip

 

 

One other thing the 'Status' section in vmonitor, the voltage fluctuates from 1.372 to 1.164 very rarely,

post-241229-1275705864_thumb.png

 

but in 'P states' section stays stable at 1.372Voltage and 0x72A and 0x62A control instead of 0x61D

post-241229-1275705953_thumb.png

 

This is without P states in DSDT, using native P states?

 

Should I try to get SSDT via ubuntu to double check the pstate cstate thing?

Link to comment
Share on other sites

hey guys,

i've been trying to make speestep work for the past 2 days but no success so far.

i have a asus p5q pro mobo with e8500 cpu, i've hacked together a dsdt from various sources with the appropriate e8500 p-states and other stuff needed for my mobo. IntelCpuPowermanagement, PenrynProfile, LPC kexts load correctly, voodomonitor shows the 8 p-states, but my cpu always works on 100% throttle, i checked in msrtools, cpu-z and voodomonitor.

here is my current dsdt: dsdt.aml.zip

any ideas? thanks

 

edit:

i've disabled intelcpupowermanagementclient.kext and weirdly it works now, strange.

Link to comment
Share on other sites

Hi,

 

i'm following this great thread for a while now and started to play around with p & c-states some days ago.

I used the generic scope from post # 1 and added all values from my linux tables dumps and what i got from P-State Changer ( 6 states ). I was able to compile in DSDTSE without any errors B)

 

Enabled all C-states in ABS, booted without any CST_evaluation errors... so LPC seems to be loading.

 

Idle, my temps are around 37° and lowest p-state 6.

 

P-states and corresponding voltages + multipliers are changing under load, so this seems to be fine.

 

How can i find out about my C-States ??

 

In FACP.dsl it reads "_CST Support : 00 "

 

In SSDT_5.dsl it looks like i have CST

 

So i'm a bit confused and be really happy if someone with more skills would be so kind to overview what i have done.

 

Attached are my original DSDT, the one i'm using now and all tables from which i took the values.

 

Any advice or comments on what i could do better are highly appreciated

current_dsdt.dsl.zip

FACP___SSDT_1_5_dsl.zip

original_dsdt.dsl.zip

Link to comment
Share on other sites

... so LPC seems to be loading.

 

is it? use kextstat can you see appleLPC.kext or run I0regexplorer search LPC.

 

How can i find out about my C-States ??

 

in ioregexplorer - search 'cst' and see if any data there.

 

Also with temps around 38 id say they are working ... that is of course if whatever you're using to measure CPu temps has correct TjMax set correctly !

 

D

 

i've disabled intelcpupowermanagementclient.kext and weirdly it works now, strange.

 

not possible ! unless you have voodoopower loaded? or you have voodoo powers :thumbsup_anim:

Link to comment
Share on other sites

is it? use kextstat can you see appleLPC.kext or run I0regexplorer search LPC.

 

in ioregexplorer - search 'cst' and see if any data there.

 

Also with temps around 38 id say they are working ... that is of course if whatever you're using to measure CPu temps has correct TjMax set correctly !

 

Kextstat finds apple.LPC !

 

Using VoodooMonitor with TjMax=100° which is correct for my Q9550.

 

Can't fint cst in ioreg. Where exactly do i have to look for ? Not sure about It .

 

thanks

Link to comment
Share on other sites

Kextstat finds apple.LPC !

 

Using VoodooMonitor with TjMax=100° which is correct for my Q9550.

 

Can't fint cst in ioreg. Where exactly do i have to look for ? Not sure about It .

 

thanks

 

type this in terminal:

 

ioreg -lw0 | grep CSTInfo

 

if it returns a value then you have c-state data loading.

if I rememebre correctly the q9550 only supports C1E, same as my q9450. i see a 5.C drop in idle temps when C1E kicks in.

 

D

Link to comment
Share on other sites

Kextstat finds apple.LPC !

 

Using VoodooMonitor with TjMax=100° which is correct for my Q9550.

 

Can't fint cst in ioreg. Where exactly do i have to look for ? Not sure about It .

 

thanks

 

First you need to know what is the revision of your Q9550, if you have E0 like me then it is possible to use C-states C1E, C2E and C4E, if it is revision C0 then it will only do C1E.

 

You can use Cpu-X to check which revision of cpu you have.

post-375259-1277225307_thumb.png

Link to comment
Share on other sites

I have E0 revision of Q9550

 

"ioreg -lw0 | grep CSTInfo" returns nothing...

 

That means cst-tables don't load ?

And if so would one of you have a look on my DSDT for any mistakes i probably made ?

 

Please shed some light on a willing to learn n00b.

 

Edit: set to MP3.1 on plist ( if that is of any interest )

thanks

Link to comment
Share on other sites

I have E0 revision of Q9550

 

"ioreg -lw0 | grep CSTInfo" returns nothing...

 

That means cst-tables don't load ?

And if so would one of you have a look on my DSDT for any mistakes i probably made ?

 

Please shed some light on a willing to learn n00b.

 

Edit: set to MP3.1 on plist ( if that is of any interest )

thanks

 

C-states won't work with your dsdt, try something simple like this:

    Scope (_PR)
   {
       Processor (CPU0, 0x00, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Processor (CPU1, 0x01, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Processor (CPU2, 0x02, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Processor (CPU3, 0x03, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Method (PSS, 0, NotSerialized)
       {
           Return (Package (0x02)
           {
			Package (0x06){Zero,Zero,0x0A,0x0A,0x4820,0x4820},
			Package (0x06){Zero,Zero,0x0A,0x0A,0x0616,0x0616}
           })
       }

       Method (CST, 0, NotSerialized)
       {
           Return (Package (0x02)
           {
               One, 
			Package (0x4){ResourceTemplate (){Register (FFixedHW,0x01,0x02,0x000,,)},One,One,0x3E8}, 
           })
       }
   }

 

Just replace P-states with your own ones and you will have working P-states and C1E

Link to comment
Share on other sites

C-states won't work with your dsdt, try something simple like this:

    Scope (_PR)
   {
       Processor (CPU0, 0x00, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Processor (CPU1, 0x01, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Processor (CPU2, 0x02, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Processor (CPU3, 0x03, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (CST, _CST)
       }

       Method (PSS, 0, NotSerialized)
       {
           Return (Package (0x02)
           {
			Package (0x06){Zero,Zero,0x0A,0x0A,0x4820,0x4820},
			Package (0x06){Zero,Zero,0x0A,0x0A,0x0616,0x0616}
           })
       }

       Method (CST, 0, NotSerialized)
       {
           Return (Package (0x02)
           {
               One, 
			Package (0x4){ResourceTemplate (){Register (FFixedHW,0x01,0x02,0x000,,)},One,One,0x3E8}, 
           })
       }
   }

 

Just replace P-states with your own ones and you will have working P-states and C1E

 

Thank you mm67 !

 

I make the changes now and report back when done...

Link to comment
Share on other sites

I have E0 revision of Q9550

 

"ioreg -lw0 | grep CSTInfo" returns nothing...

 

That means cst-tables don't load ?

And if so would one of you have a look on my DSDT for any mistakes i probably made ?

 

Please shed some light on a willing to learn n00b.

 

Edit: set to MP3.1 on plist ( if that is of any interest )

thanks

 

try this ..

 

    Scope (_PR)
   {
       Name (PSS, Package (0x03)
       {
           Package (0x06) { Zero, Zero, 10, 10, 0x0000481C, Zero },
           Package (0x06) { Zero, Zero, 10, 10, 0x0000081B, One },
           Package (0x06) { Zero, Zero, 10, 10, 0x00004719, 2 },
Package (0x06) { Zero, Zero, 10, 10, 0x00000718, 3 },
           Package (0x06) { Zero, Zero, 10, 10, 0x00004616, 4 },
           Package (0x06) { Zero, Zero, 10, 10, 0x00000614, 5 }
       })
       Name (PSD, Package (0x05)
       {
           0x05,Zero,Zero,0xFC,0x04
       })
       Name (CST, Package (0x04)
       {
           0x03,
           Package (0x04){ResourceTemplate (){Register (FFixedHW,0x01,0x02,0x0000000000000000,0x00,)},One,One,0x03E8}, 
           Package (0x04){ResourceTemplate (){Register (SystemIO,0x08,0x00,0x0000000000000414,    ,)},0x02,One,0x01F4}, 
           Package (0x04){ResourceTemplate (){Register (SystemIO,0x08,0x00,0x0000000000000415,    ,)},0x03,0x96,0x64}
       })
       Processor (CPU0, 0x00, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (PSD, _PSD)
           Alias (CST, _CST)
       }

       Processor (CPU1, 0x01, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (PSD, _PSD)
           Alias (CST, _CST)
       }

       Processor (CPU2, 0x02, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (PSD, _PSD)
           Alias (CST, _CST)
       }

       Processor (CPU3, 0x03, 0x00000410, 0x06)
       {
           Alias (PSS, _PSS)
           Alias (PSD, _PSD)
           Alias (CST, _CST)
       }
   }

 

 

PLEASE DOUBLE CHECK THE CST AND PST VALUES I'VE ENTERED !!

 

 

edit ... LOL mm67 beat me to it!

Link to comment
Share on other sites

Ok...

i made the changes and got rid of all errors except for this one

 

/users/xabbu/ blahblahblah  dsdt.dsl 47:  },  ERROR 4096-  syntax error, unexpected ’‚’‚expecting ’)’

 

I tried everything but no way... am i overseeing something ?

 

thanks

 

EDIT:

 

Just seen that i forgot sth to add on DSDT, so please forget this one !

I have to work on it again !

dsdt_error.zip

Link to comment
Share on other sites

Ok...

i made the changes and got rid of all errors except for this one

 

/users/xabbu/ blahblahblah  dsdt.dsl 47:  },  ERROR 4096-  syntax error, unexpected ’‚’‚expecting ’)’

 

I tried everything but no way... am i overseeing something ?

 

thanks

 

EDIT:

 

Just seen that i forgot sth to add on DSDT, so please forget this one !

I have to work on it again !

 

Try this one:

dsdt.dsl.zip

Link to comment
Share on other sites

Now there's 2 errors which i can't see... :)

 

/Users/xabbu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl    24:         Processor (CPU0, 0x00, 0x00000410, 0x06), {}
Error    4096 -                                                                         syntax error, unexpected ',', expecting '{' ^ 

/Users/xabbu/Library/Application Support/EvOSoftware/DSDT/DSDTFiles/dsdt.dsl    26:         Processor (CPU2, 0x02, 0x00000410, 0x06), {}
Error    4096 -                                                                         syntax error, unexpected ',', expecting '{' ^ 

 

Could someone please have a look again ?

 

Thank you !

 

EDIT:

 

@ FKA & mm67

 

Thank you so much for your help ! :blink:

 

I've just seen mm67s attachment in his last post and that works like a charm !

 

CST shows up in terminal !

 

Time for me to compare with my DSDT to find out what i did wrong.

 

I have still 1 question left .

 

What is (_PSD) ?

 

I've seen that FKA uses this method, but mm67 does not.

 

I'd like to know what it's all about

 

Could someone please explain that to me ?

 

Thanks again for your great help & saving a lot of time for me !!!

dsdt_error.zip

Link to comment
Share on other sites

I have still 1 question left .

 

What is (_PSD) ?

 

I've seen that FKA uses this method, but mm67 does not.

 

I'd like to know what it's all about

 

Could someone please explain that to me ?

 

Thanks again for your great help & saving a lot of time for me !!!

 

If you want to know what different methods do then you need to download Acpi specification from here http://www.acpi.info/ and start studying. I don't really see PSD doing nothing so I don't bother to use it.

Link to comment
Share on other sites

 Share

×
×
  • Create New...