Jump to content

DSDT for Asus P8P67-M PRO


Time2Retire
 Share

834 posts in this topic

Recommended Posts

For the SSDT_USB, the P8P67 has...

 

And in yours...

 

Is there a reason to not set the states for S1 and S2? I find the section 7.2.15 in the ACPI specs rather cryptic, can you explain why it is 0x03?

Yes. Look in kernel.log and find this:

ACPI: System State [S0 S3 S4 S5] (S3)

No S1 / S2 support. No point of having them. Same as in Apple ACPI tables.

Link to comment
Share on other sites

Ah, thanks for clearing that up!

 

I'm a bit puzzled as to why AppleSMBIOS was not updated and still assumes quad-fsb. Surely, something must be set somewhere else for the iMacs.

Link to comment
Share on other sites

Ah, thanks for clearing that up!

 

I'm a bit puzzled as to why AppleSMBIOS was not updated and still assumes quad-fsb. Surely, something must be set somewhere else for the iMacs.

Ah but something did change. We'll get there later but first. I'm on iMac12,2 now (no errors) and I think to have found something we missed. Open MacBookPro8_3.plist and look at ringFreqTables which I think are the control values for the CPU stepper, and possibly the GPU stepper as well.

 

Change the model in MacBookPro8_3.plist to MacBookPro8,4 and you'll lose: "Stepper CPU" under Supported Features (IOPMrootDomain) and CPUPlimit under CPU0@0 -> AppleACPICPU -> ACPI_SMC_PlatformPlugin

Link to comment
Share on other sites

New and improved ssdt_pr.dsl

 

1.) No more errors in kernel.log

2.) Works fine here with Sandy Bridge model identifiers: MacBookPro8,3 and iMac12,2

3.) Need up-to-date copies of: MacBookPro8_3.plist and/or iMac12_2.plists (see attachments).

 

Note: There might be, in fact this is most likely, objects that are no longer required, but since I might run out of time before my departure / internship... I rather have you started so that other people can rip the unused stuff out :)

 

Note well that I made this one for my Intel i7-2600K so i5-2500(K) folks need to remove the extra CPU objects, and also make one other change:

Name (_PSD, Package (0x05) { 0x05, Zero, Zero, 0xFC, 0x04 })

Here I changed the 0x08 into 0x04 like I had a i5-2500(K) processor. Easy huh?

 

The most important change however has to be made in the methods _PSS and APSS. Look at what our friend flAked here is using, or even better... simply use his files ;)

ssdt_pr.v3.zip

iMac12_2.plist.zip

MacBookPro8_3.plist.zip

Link to comment
Share on other sites

Hmm can't do any testing, because my boot is failing "randomly" on registerLPCDriver. Need to get this sorted first.

 

The problem is, I don't have any clue how to get to the bottom of this.

 

Soon to be attached here...

What has changed? 0xFC in PSD?

Link to comment
Share on other sites

What has changed? 0xFC in PSD?

That and I also changed the _PSS and APSS objects (and callers).

 

Found a note from my father (P5K PRO thread) saying that with 0xFC you can disable EIST in the BIOS and still have a functional CPU stepper in OS X.

 

Say. What value do you get for "Stepper CPU"? Here it is set to 0x1fe0007 but I have had 0x1fd0007 as well. I think that this changes with the number of P-States in the PerformanceStateArray. Just a guess of course but that's what I think it relates to.

 

Note the 'e' in it (0x14) and me having 20 P-States, which are taken from the APSS object, and not the _PSS object (like with other/older CPU models).

 

Right. This can only be found in the Sandy Bridge models:

          <key>ringFreqTables</key>
         <array>
           <array>
             <dict>
               <key>gtFreq</key>
               <integer>700</integer>
               <key>ringFreq</key>
               <integer>1100</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>750</integer>
               <key>ringFreq</key>
               <integer>1100</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>800</integer>
               <key>ringFreq</key>
               <integer>1200</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>850</integer>
               <key>ringFreq</key>
               <integer>1300</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>900</integer>
               <key>ringFreq</key>
               <integer>1600</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>950</integer>
               <key>ringFreq</key>
               <integer>1700</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>1000</integer>
               <key>ringFreq</key>
               <integer>1800</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>1050</integer>
               <key>ringFreq</key>
               <integer>1900</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>1100</integer>
               <key>ringFreq</key>
               <integer>2000</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>1150</integer>
               <key>ringFreq</key>
               <integer>2100</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>1200</integer>
               <key>ringFreq</key>
               <integer>2200</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>1250</integer>
               <key>ringFreq</key>
               <integer>2300</integer>
             </dict>
             <dict>
               <key>gtFreq</key>
               <integer>1300</integer>
               <key>ringFreq</key>
               <integer>2300</integer>
             </dict>
           </array>
         </array>

And thus this has got to be the handbrake – limiting the Geekbench scores people have been reporting about when they use a SB model identifier.

 

p.s. Can you boot with the -x flag?

 

Off-topic: I am hugely impressed by the Scythe Mugen 2 rev. B cooler I installed yesterday. Comes close to a water cooler set, and that for only 37 Euro. Worth every single penny and thus if you are looking for a great but very cheap cooler ;)

 

Ok. This is it for now. Have do to some other things now. Back later (better be prepared and get used to the new time zone).

Link to comment
Share on other sites

Say. What value do you get for "Stepper CPU"? Here it is set to 0x1fe0007 but I have had 0x1fd0007 as well. I think that this changes with the number of P-States in the PerformanceStateArray. Just a guess of course but that's what I think it relates to.

 

p.s. Can you boot with the -x flag?

 

SafeBoot and recreating the caches will let me boot again, but it's strange still.

 

With the new iMac12_2.plist I get AGPMEnabler, 0x1fd0007 for Stepper CPU and CPULimit is 0x0.

With the SMBIOS fix Stepper CPU is 0x1fe0007.

 

Here is the current SSDT_PR for i5-2500K:

ssdt_pr_minimal_rev4.dsl.zip

 

And some nice reformat-action:

Scope (\_PR.CPU1)
{
    Method (APSS, 0, NotSerialized) { Return (\_PR.CPU0.APSS) }
           Method (_CST, 0, NotSerialized) { Return (\_PR.CPU0._CST) }
           Method (_PCT, 0, NotSerialized) { Return (\_PR.CPU0._PCT) }
           Method (_PPC, 0, NotSerialized) { Return (\_PR.CPU0._PPC) }
           Method (_PTC, 0, NotSerialized) { Return (\_PR.CPU0._PTC) }
           Method (_PSD, 0, NotSerialized) { Return (\_PR.CPU0._PSD) }
           Method (_PSS, 0, NotSerialized) { Return (\_PR.CPU0.APSS) }
           Method (_TPC, 0, NotSerialized) { Return (\_PR.CPU0._TPC) }
           Method (_TSS, 0, NotSerialized) { Return (\_PR.CPU0._TSS) }
}

 

 

With the modified AppleSMBIOS.kext (and the updated SSDT_USB) the boot hangs for about 10sec on USBF:

May 22 20:01:24 localhost kernel[0]: AppleIntelCPUPowerManagementClient: ready

May 22 20:01:24 localhost kernel[0]: USBF: 20.735 AppleUSBEHCI[0xffffff8012341000]::CheckSleepCapability - controller will be unloaded across sleep

May 22 20:01:24 localhost kernel[0]: USBMSC Identifier (non-unique): 058F63646476 0x58f 0x6364 0x100

May 22 20:01:24 localhost kernel[0]: USBF: 55.596 AppleUSBEHCI[0xffffff80120c0000]::CheckSleepCapability - controller will be unloaded across sleep

May 22 20:01:24 localhost kernel[0]: USBF: 56.544 [0xffffff80126e4600] The IOUSBFamily is having trouble enumerating a USB device that has been plugged in. It will keep retrying. (Port 7 of Hub at 0x1d100000)

May 22 20:01:24 localhost kernel[0]: USBF: 57.286 [0xffffff80126e4600] The IOUSBFamily has successfully enumerated the device.

 

With the original kext I only get:

May 22 19:43:30 localhost kernel[0]: USBMSC Identifier (non-unique): 058F63646476 0x58f 0x6364 0x100

 

 

Geekbench (32bit) only gives me 9024 points and 9800 in 64bit. SMBIOS-fix around the same, no big difference there.

Link to comment
Share on other sites

Started fresh, got everything working with your speedstep patcher. Using iMac 12,2 Geekbench gives me 7589, I'm only using 4gb of ram atm though. Memory performance is rated poorest. FP is 10767. Using 8,3 gives me 8k. Is your 2500k overclocked?

Link to comment
Share on other sites

Started fresh, got everything working with your speedstep patcher. Using iMac 12,2 Geekbench gives me 7589, I'm only using 4gb of ram atm though. Memory performance is rated poorest. FP is 10767. Using 8,3 gives me 8k. Is your 2500k overclocked?

All stock settings, not even activated the XMP profile. I'll look into overclocking through changing APSS once I have a reliable tool to see the current frequency and turbo.

 

It's not exactly stable, getting SMC error again and SafeBoot KP'ing on RCX=0x03...

Link to comment
Share on other sites

With patched SMBIOS and revoboot?

Without the SMBIOS-fix. I was able to boot with -x after 3 resets and rebuild caches. I still don't understand it.

 

Do you have a windows installation and had any problems after booting it?

Link to comment
Share on other sites

Without the SMBIOS-fix. I was able to boot with -x after 3 resets and rebuild caches. I still don't understand it.

If the modified version of AppleSMBIOS.kext is causing you too much trouble, then leave it out for now.

 

You are not using a pre-linked kernel I hope. Please don't. At least not until things are starting to work for you.

 

Have you compared my SSDT_USB.dsl with yours? Are they the same? If not make sure to patch it.

 

Also. A low Geekbench score might actually be a first indication that things are starting to work for us. That it is stuck in a lower P-State perhaps?

Link to comment
Share on other sites

You are not using a pre-linked kernel I hope. Please don't. At least not until things are starting to work for you.

 

Have you compared my SSDT_USB.dsl with yours? Are they the same? If not make sure to patch it.

 

Also. A low Geekbench score might actually be a first indication that things are starting to work for us. That it is stuck in a lower P-State perhaps?

No pre-linked kernel. The SSDT_USB is identical, besides the S-definitions (which we covered).

 

Could be the P-States yes. Can we actually disable SpeedStep with our current SSDT_PR through the BIOS?

 

BTW, does Lion have the same AICPUPM version?

Link to comment
Share on other sites

No pre-linked kernel. The SSDT_USB is identical, besides the S-definitions (which we covered).

Fine. The S-definitions won't matter.

 

Could be the P-States yes. Can we actually disable SpeedStep with our current SSDT_PR through the BIOS?

I would have done that by now because when that changes your Geekbench score, then you know that the CPU stepper is doing something. Good or bad.

 

BTW, does Lion have the same AICPUPM version?

Let me check. Ok. The one used with DP2 and DP3 is newer. I did not bother to upgrade to the latest, but I only did that to prevent from being distracted. No time to waste after all ;)

 

We need a simple tool that dumps the values of the following MSR's - so that someone can run it on a real Sandy Bridge Mac:

 

0x35 MSR_CORE_THREAD_COUNT

 

0xCE MSR_PLATFORM_INFO

 

0xE2 MSR_PKG_CST_CONFIG_CONTROL

0xE7 IA32_MPERF

0xE8 IA32_APERF

 

0x198 MSR_IA32_PERF_STATUS / MSR_PERF_STATUS

0x199 MSR_IA32_PERF_CONTROL / IA32_PERF_CTL

0x19A IA32_CLOCK_MODULATION

 

0x1A0 IA32_MISC_ENABLE

0x1AA MSR_MISC_PWR_MGMT

0x1AC MSR_TURBO_POWER_CURRENT_LIMIT

0x1AD MSR_TURBO_RATIO_LIMIT

 

0x1B0 IA32_ENERGY_PERF_BIAS

 

0x1FC MSR_POWER_CTL

 

// Sandy Bridge & JakeTown specific 'Running Average Power Limit' MSR's.

0x602 ???

0x606 MSR_RAPL_POWER_UNIT

0x610 MSR_PKG_RAPL_POWER_LIMIT

0x611 MSR_PKG_ENERGY_STATUS

 

// Sandy Bridge IA (Core) domain MSR.

0x639 MSR_PP0_ENERGY_STATUS

 

// Sandy Bridge Uncore (IGPU) domain MSR's (Not on JakeTown).

0x640 MSR_PP1_POWER_LIMIT

0x641 MSR_PP1_ENERGY_STATUS

0x642 MSR_PP1_POLICY

 

And compare them with the data from our Asus boards.

Link to comment
Share on other sites

Without the SMBIOS-fix. I was able to boot with -x after 3 resets and rebuild caches. I still don't understand it.

 

Do you have a windows installation and had any problems after booting it?

 

I have a single GUID-formatted drive and OSX is on the first visible partition, windows on the second. No problems booting either using anval.

Link to comment
Share on other sites

I would have done that by now because when that changes your Geekbench score, then you know that the CPU stepper is doing something. Good or bad.

Good point. With EIST disabled I get slightly lower scores of around 9600 vs 9800 with EIST, too bad.

 

You are right about Lion, it's not important right now. I was thinking about dynamically searching / patching the wrmsr, but it's too much work. I think it's quicker to just calculate the offsets for a particular version of AICPUPM if we still need it in the future. Or maybe I will be proven wrong after doing this 5 times ;)

Doing it manually for each version has to benefit of being sure to catch the right instances, though.

 

On that note, I think my remark on hardforums was blatantly ignored.

Link to comment
Share on other sites

Hey I think to have found something...

 

1.) Disable both Intel Speedstep and C1E in the BIOS and boot.

2.) Run Geekbench.

3.) Restart and enter UEFI BIOS.

4.) Go to: Advanced and click on CPU Configuration.

 

Note the CPU Current Ratio! Mine is 38 but your will probably be set to 37. And it is 34 here with Intel SpeedStep and C1E enabled in UEFI What are we missing here?

 

One other observation. Open IORegistryExplorer and go to: CPU0@0 -> AppleACPICPU -> ACPI_SMC_PlatformPlugin

Now click on IOHWControls and look for CPU_STATE Watch the target value. That is 0x4 here. That is the top normal 3.4GHz speed. Stuck?

 

max-value is 0x13 (0 - 20) representing my P-States. Which is good.

 

Wait a minute. We had 255 Watts for package power. Remember? Now look at the factory power values. The first two are 0x0003E418 or 255 Watt. Shouldn't the values we have match with the MSR being 255 Watt? Or should we change the MSR?

 

On that note, I think my remark on hardforums was blatantly ignored.

Which is a shame really. That was also why I urged others to join you.

 

BTW. There's someone using the same nick name here (davidm71) who's been there for a long time. Like 7 years or so. Maybe that helps?

Link to comment
Share on other sites

We need a simple tool that dumps the values of the following MSR's - so that someone can run it on a real Sandy Bridge Mac:

I could write a kext that stores the data into IOReg and a cli that reads it out. The easiest way to run this would be a bash-script that loads the kext, runs the cli and unloads the kext.

Link to comment
Share on other sites

I've add this new function to CPUi.cpp (see attachment):

void CPUi::reportMSRs(void)
{
InfoLog("rdmsr64(0x35): 0x%x", (unsigned int)rdmsr64(0x35));

InfoLog("rdmsr64(0xCE): 0x%x", (unsigned int)rdmsr64(0xCE));

InfoLog("rdmsr64(0xE2): 0x%x", (unsigned int)rdmsr64(0xE2));
InfoLog("rdmsr64(0xE4): 0x%x", (unsigned int)rdmsr64(0xE4));
InfoLog("rdmsr64(0xE7): 0x%x", (unsigned int)rdmsr64(0xE7));
InfoLog("rdmsr64(0xE8): 0x%x", (unsigned int)rdmsr64(0xE8));

InfoLog("rdmsr64(0x198): 0x%x", (unsigned int)rdmsr64(0x198));
InfoLog("rdmsr64(0x199): 0x%x", (unsigned int)rdmsr64(0x199));
InfoLog("rdmsr64(0x19A): 0x%x", (unsigned int)rdmsr64(0x19A));

InfoLog("rdmsr64(0x1A0): 0x%x", (unsigned int)rdmsr64(0x1A0));
InfoLog("rdmsr64(0x1AA): 0x%x", (unsigned int)rdmsr64(0x1AA));
// InfoLog("rdmsr64(0x1AC): 0x%x", (unsigned int)rdmsr64(0x1AC)); panics !!!
InfoLog("rdmsr64(0x1AD): 0x%x", (unsigned int)rdmsr64(0x1AD));

InfoLog("rdmsr64(0x1B0): 0x%x", (unsigned int)rdmsr64(0x1B0));

InfoLog("rdmsr64(0x1FC): 0x%x", (unsigned int)rdmsr64(0x1FC));

InfoLog("rdmsr64(0x602): 0x%x", (unsigned int)rdmsr64(0x602));
InfoLog("rdmsr64(0x606): 0x%x", (unsigned int)rdmsr64(0x606));
InfoLog("rdmsr64(0x610): 0x%x", (unsigned int)rdmsr64(0x610));
InfoLog("rdmsr64(0x611): 0x%x", (unsigned int)rdmsr64(0x611));

InfoLog("rdmsr64(0x639): 0x%x", (unsigned int)rdmsr64(0x639));

InfoLog("rdmsr64(0x640): 0x%x", (unsigned int)rdmsr64(0x640));
InfoLog("rdmsr64(0x641): 0x%x", (unsigned int)rdmsr64(0x641));
InfoLog("rdmsr64(0x642): 0x%x", (unsigned int)rdmsr64(0x642));
}

And that dumps:

May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x35): 0x40008
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0xCE): 0x70012200
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0xE2): 0x1e008407
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0xE4): 0x10414
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0xE7): 0x340ece5c
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0xE8): 0x21519f28
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x198): 0x2200
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x199): 0x2200
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x19A): 0x0
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x1A0): 0x850089
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x1AA): 0x400000
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x1AD): 0x23242526
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x1B0): 0x0
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x1FC): 0x4005f
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x602): 0x104
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x606): 0xa1003
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x610): 0x1487f8
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x611): 0x7025b27
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x639): 0x50aa829
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x640): 0x0
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x641): 0x0
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: rdmsr64(0x642): 0x10
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: BusClock: 0x64
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: FSBClock: 0x17eb990c
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: CPU Signature: 0x206a7
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: CPU NonIntegerBusRatio: 0x0
May 23 13:32:02 Sams-iMac kernel[0]: CPU-i: Sandy Bridge CPU detected

Now we know what we have. Please test this on your i5-2500K to see what you get.

 

p.s. This should also be possible from a command line tool (started with sudo) but since we need something to show us if it is working... I thought that it is best to make a start :P

Archive.zip

Link to comment
Share on other sites

Great, thanks!

 

I'm unable to load CPUi, because of missing symbols. If I run kextlibs for it, 5 symbols are missing:

Loading CPUi.kext.
(kernel) kxld[com.mojodojo.driver.CPUi]: The following symbols are unresolved for this kext:
(kernel) kxld[com.mojodojo.driver.CPUi]:		__ZN5IOCPU9metaClassE
(kernel) kxld[com.mojodojo.driver.CPUi]:		_cpu_number
(kernel) kxld[com.mojodojo.driver.CPUi]:		_cpuid_info
(kernel) kxld[com.mojodojo.driver.CPUi]:		_gPEClockFrequencyInfo
(kernel) kxld[com.mojodojo.driver.CPUi]:		_mp_rendezvous_no_intrs

 

p.s. This should also be possible from a command line tool (started with sudo) but since we need something to show us if it is working... I thought that it is best to make a start :P

Any attempt of reading MSR's in user-space will result in EXC_BAD_ACCESS, it's only possible in a kext. The tricky part is to get the information back, either by using sysctl, IOReg's setProperty or IOLog. For a single dump IOLog is fine, but updating IOReg or using IOLog every 2 seconds will slow down the system tremendously. MSRTools is using some sort of IPC and a buffer. (In regards to the frequency status I'm working on)

Link to comment
Share on other sites

I'm unable to load CPUi, because of missing symbols. If I run kextlibs for it, 5 symbols are missing...

Can you build CPUi.kext from the original source code? If not; kernel.framework is missing maybe?

Link to comment
Share on other sites

If I update the dict:

<key>OSBundleLibraries</key>
<dict>
	<key>com.apple.kpi.iokit</key>
	<string>10.8</string>
	<key>com.apple.kpi.libkern</key>
	<string>10.8</string>
	<key>com.apple.kpi.mach</key>
	<string>10.8</string>
	<key>com.apple.kpi.unsupported</key>
	<string>10.8</string>
</dict>

 

I only get:

(kernel) kxld[com.mojodojo.driver.CPUi]: The following symbols are unresolved for this kext:
(kernel) kxld[com.mojodojo.driver.CPUi]:		__ZN5IOCPU9metaClassE
(kernel) kxld[com.mojodojo.driver.CPUi]:		_cpuid_info

 

Could you zip the entire xcode-project?

Link to comment
Share on other sites

If I update the dict... I only get:

(kernel) kxld[com.mojodojo.driver.CPUi]: The following symbols are unresolved for this kext:
(kernel) kxld[com.mojodojo.driver.CPUi]:		__ZN5IOCPU9metaClassE
(kernel) kxld[com.mojodojo.driver.CPUi]:		_cpuid_info

 

Could you zip the entire xcode-project?

That's because you removed com.apple.kernel.libkern (1.0.0). There might be some com.apple.kpi.* replacement for it, but don't ask me what that might be.

 

And no I can't. Using unreleased tools. Not compatible with stuff that is available for download now.

 

BTW; MSR 0x19a is read & written in AICPUPM and looking at what it expects / does with it... we probably need to set it at boot time ourself to some sane value. Let's start by adding 0xff and see what it does :rolleyes:

Link to comment
Share on other sites

May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x35): 0x40004
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0xCE): 0x70012100
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0xE2): 0x1e008407
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0xE4): 0x10414
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0xE7): 0xe39b2142
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0xE8): 0x9b73fd02
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x198): 0x2200
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x199): 0x2200
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x19A): 0x0
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x1A0): 0x850089
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x1AA): 0x400001
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x1AD): 0x22232425
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x1B0): 0x4
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x1FC): 0x4005f
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x602): 0x104
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x606): 0xa1003
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x610): 0x1487f8
May 23 15:56:12 slave kernel[0]: MSRDumper: rdmsr64(0x611): 0x7a331c1d

 

A freshly made kext with minimal code:

MSRDumper.zip

 

 

0x19A - IA32_CLOCK_MODULATION MSR was originally named IA32_THERM_CONTROL MSR.

 

IA32_THERM_STATUS (0x19C) = 0x883d0000 (not that interesting atm)

 

Now, the question is, if we enable "On-Demand Clock Modulation" and select a duty cycle, will AICPUPM do the job for us?

It's a nice bonus to have additional power savings and I would certainly enable it, but it's not directly related to P-states, correct?

 

0x9 (1 001) - or is it 0xC (1 100)? - should set it to the default (12.5%)

Link to comment
Share on other sites

Which is a shame really. That was also why I urged others to join you.

 

As I said, I'm sure many users, including myself would be happy to post on places like tonymac and hardforum. But this needs to be understandable by more users than just the tech elite to gain some traction. I've asked a couple times for a simple, easy to understand description of the issue. If you give me that I'll post it at a bunch of sites. I do agree that if Asus does nothing we could be looking at huge wave of product returns.

 

-j

Link to comment
Share on other sites

 Share

×
×
  • Create New...