Jump to content

DSDT for Asus P8P67-M PRO


Time2Retire
 Share

834 posts in this topic

Recommended Posts

Don't tell me you fixed the bus issue? :angel:

Ok I won't :P

 

 

No HDA Hardware Config Resource must stay.

Oops. Ok. Done.

 

I'm not sure if there is an official short therm. Replacing the apple supported codec id with yours.

sudo perl -pi -e 's|\x62\x02\xec\x10|\x92\x08\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

or

sudo perl -pi -e 's|\x85\x08\xec\x10|\x92\x08\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

im not sure whats better.

The first one is what I got from dgsga and that is what I will try first... with the new AppleHDA.kext

 

Thanks!

 

 

 

Here's the tool for unpacking an Asus EFI bios. All modules can be found in the 'dump' directory:)

 

http://forums.mydigitallife.info/threads/1...Dell-EFI-BIOSes

Brilliant. Thanks!

 

Something has changed in the new AppleHDA, I get HDEF@1B populated in ioregistry explorer but the sound assertion errors DHP mentioned result in no sound. I don't wan't to resort to VoodooHDA either so I shall continue to investigate when I can build my new P67 rig...

So I wasn't delusional when I saw the errors. I better wait for you to figure this out because I am running out of time.

 

 

So I was able to extract the current BIOS. But I'm unable to locate the relevant ROM that actually sets the C-State registers. And even if I would find it & patch it, how would I reassemble the BIOS?

 

I would probably face checksum errors as well. I'm fluent enough in assembler language, but this is getting over my head. For now at least ;)

Please attach the files so that others (read me) won't have to invent the wheel again. Thanks!

Link to comment
Share on other sites

Use the same tool to reassemble the bios (you'll have to select a slic table to add), also check the modify modules tickbox in advanced options so you get a pause to swap original with modified modules before repacking (this option is near the bottom on the right hand side of the 'Advanced options window). Use grep -R in terminal to search the dump folder for likely strings that you're looking for I modded the DSDT and SMBIOS table modules using this technique as part of an experiment to see if I could do away with any bootloader table patching altogether. You have to be prepared to take the risk when you flash your mobo with a modded bios. I found that when I deleted serial and parallel port devices from DSDT then these archaic options disappeared from the bios interface too. The tool fixes all checksums for you, it's great and all credit goes to the developer Andy over at the DigiLife forum. Hope this helps.

Link to comment
Share on other sites

Your performance numbers are outstanding. Please provide a system configuration outline of hardware, OS, boot environment, etc. Is this a product of the RevoBoot bootloader and your table extractions (referring to your post number one)?

 

By comparison, my ASUS P8P67-Mpro with i7-2600k, 8GB Corsair 1600MHz with a GF 8800 GTS without a DSDT on OS X 10.6.7 with 64bit 10.7.3 kernel: Geekbench at 11309 and Cinebench at 28.74 fps and 6.59 pts.

 

I am very impressed with your benchmark performance achievement.

 

neil

Thanks Neil. And yes. This is RevoBoot with my stripped DSDT. And I have the same board as you, and the same processor, but I have slightly different / less RAM (2 * 2GB 2000MHz clocked at the stock frequency of 1333MHz). The biggest difference however is the installed graphics card (HIS Radeon 6850) plus a new and improved version of RevoBoot.

 

Please note that this test run was done with the stock Intel CPU cooler (no insane water cooled OC) and the default setting of 100 for BCLK.

 

Seem like we only need to push it like 100-200Mhz to crush the number 2 in my screenshot, the MacPro with 8C/16T @2.92 GHz, Intel Xeon CPU X5570's. Not to mention that the faster 3.3GHz model, with two W5590's can also be crushed with a little extra work. I would like to suggest to go for water cooling when you try :angel:

 

p.s. 100 MHz extra gave me a score of 17044 but please note that this was with the 32-bit version of Geekbench (64-bit is faster = higher scores).

Link to comment
Share on other sites

Ok I won't :angel:

New RevoBoot revision soon then, ey?

 

Please attach the files so that others (read me) won't have to invent the wheel again. Thanks!

Sorry, won't redistribute ASUS BIOS files.

I did nothing fancy so far, download the tool linked in that post, select the BIOS ROM file and it will extract it for you.

After that I did some poking around, string-searching, auditing, etc.

 

BTW; it runs fine via wine (macports).

 

The problem is that this tool is designed for SLIC-mods and some DSDT replacement, but not for BIOS modification per se. It will extract the BIOS, but we still need the new AMI Aptio tools to get somewhere (AMIBCP & MMTOOL). Those are capable to change default settings and replace individual modules.

Link to comment
Share on other sites

New RevoBoot revision soon then, ey?

Sure. When everything is checked and double checked - since this is quite a dangerous change.

 

Sorry, won't redistribute ASUS BIOS files.

I did nothing fancy so far, download the tool linked in that post, select the BIOS ROM file and it will extract it for you.

After that I did some poking around, string-searching, auditing, etc.

 

BTW; it runs fine via wine (macports).

No problem. Don't have wine (or anything like that) so I'll have to ask my bother for help again.

 

The problem is that this tool is designed for SLIC-mods and some DSDT replacement, but not for BIOS modification per se. It will extract the BIOS, but we still need the new AMI Aptio tools to get somewhere (AMIBCP & MMTOOL). Those are capable to change default settings and replace individual modules.

I just want to see what Asus does in their UEFI files. This way we have something to talk about. To tell them where the problem is located. Maybe that will change things sooner. Hopefully.

 

And when nothing else works... we can always try a CPU reset. That should work (I'm told).

Link to comment
Share on other sites

There are these modules for the CPU, but it could be that the interface code and underlying logic is separated, so we won't actually find anything here:

 

3ED790 {1555ACF3-BD07-4685-B668-A86945A4124D} 6 40 PEI Module Size 3112 (451)

0 3ED7A8 PE32+ image section - Size 3076 (452)

1 3EE3AC User Interface (CpuPeiBeforeMem) - Size 36 (453)

 

3EE3D0 {2BB5AFA9-FF33-417B-8497-CB773C2B93BF} 6 40 PEI Module Size 18934 (454)

0 3EE3E8 PEI Dependency Expression section - Size 94 (455)

1 3EE448 PE32+ image section - Size 18820 (456)

2 3F2DCC User Interface (CpuPei) - Size 18 (457)

Link to comment
Share on other sites

Hockey training in a few minutes from now, but I wanted to share this quickly with you:

 

http://browse.geekbench.ca/geekbench2/view/412994

 

Didn't know that changing the RAM frequency to 1867MHz helped so much – like I said I'm not much of an OC lady. Maybe that will change one day soon.

 

Update: Just back from hockey. Before I left I asked my brother to look at it. If he could push it a little further... and thus I just had the huge pleasure to submit the following report:

post-669976-1305660624_thumb.png

My goal was to be the first person to hit the 20K barrier, and I did... with the stock Intel cooler. Pretty amazing.

 

I want to install a new triple channel water cooler set, but I am still waiting for some tailor made water blocks. Should allow me to push it to 5.7~6.0 GHz. Hopefully it arrives soon, or it'll be laying in a box for the next couple of months.

Link to comment
Share on other sites

I'm not sure if there is an official short therm. Replacing the apple supported codec id with yours.

sudo perl -pi -e 's|\x62\x02\xec\x10|\x92\x08\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

or

sudo perl -pi -e 's|\x85\x08\xec\x10|\x92\x08\xec\x10|g' /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

im not sure whats better.

 

Recommend only the first choice (device_id 0262). Removing the 0885 device_id in AppleHDA results in crippled boots with Mac Pro system IDs.

Link to comment
Share on other sites

Recommend only the first choice (device_id 0262). Removing the 0885 device_id in AppleHDA results in crippled boots with Mac Pro system IDs.

That is good to know. Thank you very much!!!

post-669976-1305660624_thumb.png

Link to comment
Share on other sites

Hi all :)

Someone have tried to OC the CPU?

I'm currently run my i5-2500K @4.4GHz (1264-1280V) under Windows and it seems to work very well.

But if I boot my SL installation with same parameters on BIOS my CPU runs @3.3GHz.

I'm using 44x multiplier with Turbo Mode on in the BIOS.

Any ideas?

Hi,

 

I obviously did, but can you please first move the posts about OC'ing our board to a new topic? I think that everyone here understand why that I got sucked. I mean with these results... but that's not what this topic is about.

 

Thanks!

 

Back to school stuff now :)

Link to comment
Share on other sites

Well, no news on the front.

 

A CPU reset would require us to setup the CPU on our own, correct? I hope this doesn't mean that PCI configuration and such is not reset as well. That would mean a lot of work.

Link to comment
Share on other sites

Well, no news on the front.

Well that sucks doesn't it. Asus is, presumably, only interested in getting bugs fixed for Windows after all, but the Intel datasheet clearly states that you can control (should in our case) the C-States with their register so this is a bug in the UEFI BIOS.

 

My problem is that I have to wait for the extracted files, since I don't have Windows nor Parallels et all, but my brother said to be too busy for it. Maybe next week. Like I have so much time left. Which I don't don't of course.

 

A CPU reset would require us to setup the CPU on our own, correct? I hope this doesn't mean that PCI configuration and such is not reset as well. That would mean a lot of work.

Well. Looking at the mach_kernel I'd say that most, if not all, of the work is done there already anyway. But resetting the CPU might kick, I guess, the boot loader out of memory. Requiring some sort of chain loader. Not good. Too complicated.

Instead. Let's just get the UEFI files fixed. With or without help from Asus. I mean there has to be a wrmsr instruction that is locking 0xE2.

Link to comment
Share on other sites

My problem is that I have to wait for the extracted files, since I don't have Windows nor Parallels et all, but my brother said to be too busy for it. Maybe next week. Like I have so much time left. Which I don't don't of course.

Can I help you?

I've a Windows's installation...

Link to comment
Share on other sites

Can I help you? I've a Windows's installation...

Yes please. That would be great.

 

Now. There's a link to some digital something forum (in a post by dgsga) and we need our UEFI BIOS unpacked so that I can start looking at it.

 

Thanks!

Link to comment
Share on other sites

Which one do you want? P8H67-M Pro 0902?

 

And yes, I think our inquiry has rather low priority, giving the massive USB issues with the boards. But I'm still hoping they get back to us.

 

I mean there has to be a wrmsr instruction that is locking 0xE2.

Absolutely, but the sheer amount of ROM files makes manual analysis very painful. And you only get the module name in a log file if you reconstruct the BIOS. So no automatic renaming (e.g. CpuPei I posted is a just massive_hex_string.rom).

 

So we might need a script/tool to find the place we are looking for.

Link to comment
Share on other sites

Yes please. That would be great.

 

Now. There's a link to some digital something forum (in a post by dgsga) and we need our UEFI BIOS unpacked so that I can start looking at it.

 

Thanks!

I downloaded the tool but I don't understand how to extract UEFI BIOS :unsure:

Link to comment
Share on other sites

I found this using udcli (from udis86), is it the odd intel syntax or is there another MSR with 0x2e0?

Hmm, could be 0xE02 MSR_R0_PMON_BOX_OVF_CTRL, if the endieness is swapped, but thats a Xeon MSR.

 

1BA0062E-C779-4582-8566-336AE8F78F09_0_415.ROM:

00000000000007b7 0f22c0 mov cr0, eax

00000000000007ba b9e0020000 mov ecx, 0x2e0

00000000000007bf 0f32 rdmsr

00000000000007c1 83c801 or eax, 0x1

00000000000007c4 0f30 wrmsr

 

1BA0062E-C779-4582-8566-336AE8F78F09_0_485.ROM:

00000000000007df b9e0020000 mov ecx, 0x2e0

00000000000007e4 0f32 rdmsr

00000000000007e6 83c802 or eax, 0x2

00000000000007e9 0f30 wrmsr

 

Here is a bash-one-liner

for i in `ls *.ROM`; do echo $i; udcli -32 $i |grep -B 10 -A 10 -i -e "mov ecx, 0x2e0"; done > search.txt

Link to comment
Share on other sites

I found this using udcli (from udis86), is it the odd intel syntax or is there another MSR with 0x2e0?

Hmm, could be 0xE02 MSR_R0_PMON_BOX_OVF_CTRL, if the endieness is swapped, but thats a Xeon MSR.

Interesting. What Xeon model is that? Hmm this is strange. No Google hits for this MSR.

 

Any other write action located?

 

Update: I can read this MSR without getting a reset (returns 0).

Link to comment
Share on other sites

There are a ton of wrmsr, attached are all reference with 10 lines before and 5 after.

 

Often times, ecx is set by an offset+ebp, there is no direct hit of 0xe2.

 

wrmsr.txt

 

 

And here are the "mov ecx" in the context of said wrmsr.

 

msr.txt

Link to comment
Share on other sites

No more KP in AppleIntelCPUPowerManagement

 

post-669976-1305747508_thumb.png post-669976-1305747519_thumb.png

 

Time to solve these:

AppleIntelCPUPowerManagement: Turbo Ratios 19999

AppleIntelCPUPowerManagement: (built 10:29:57 Apr 27 2011) initialization complete

AppleIntelCPUPowerManagementClient: ready

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

 

Update: With the default ACPI tables of the UEFI BIOS I get this error:

ACPI_SMC_CtrlLoop::loadStepperContext - pmCPUControl (pmioctlPStateContext_t) failed, result = 0x16

But that's just peanuts when you look at the following screen shots. Yup. Still some work to do here, but we're getting somewhere:

post-669976-1305748575_thumb.png

post-669976-1305748653_thumb.png

post-669976-1305748700_thumb.png

post-669976-1305749010_thumb.png

Link to comment
Share on other sites

first of all, thank you for all your work for the community. i do have 2 questions regarding your project...

 

did i get it right that revoboot does not support dual boot with windows or linux? (i read somewhere that masterchief designed it for maximal performance, so he decided to drop dual boot support.)

 

do you think your changes in the DSDT can be applied to the DSDT of an Asus P8Z68 V Pro? (i dont mean if its possible but if there is a way to do it as a person with less knowledge.)

Link to comment
Share on other sites

first of all, thank you for all your work for the community. i do have 2 questions regarding your project...

Thanks. We all here do what we can, and some are just the lucky onces.

 

did i get it right that revoboot does not support dual boot with windows or linux? (i read somewhere that masterchief designed it for maximal performance, so he decided to drop dual boot support.)

That is correct. We only want it to boot like a real Mac. That is also why I advise people like you, in need of booting Windows, Linux and you name it, to use the latest Chameleon version (from any branch) that works for you.

 

And yes. My work is seen as limited. All about RevoBoot, but I want everyone to enjoy his or her go with OS X... hoping that one day you love it so much that you'll jump into an Apple shop and buy the real deal.

 

do you think your changes in the DSDT can be applied to the DSDT of an Asus P8Z68 V Pro? (i dont mean if its possible but if there is a way to do it as a person with less knowledge.)

That's hard to tell. What I would like to advise you (and just a friendly advise of course) is that you attach a IORegistryExplorer dump (comes with Xcode) here so that someone here can have a look at it, and extract the ACPI tables from it.

 

You're best bet (for now) is mad MaLd0n, because if there's anyone out there that can help you, than that is either him or Oldnapalm (both moderators). I tell you, these guys are phenomenal when it comes to helping people.

 

Good luck!

Link to comment
Share on other sites

Here are the dump of BIOS version 0708 and 0709 extracted with the tool of dgsga's post :)

http://www.mediafire.com/?51dhl96fzozs1xl

http://www.mediafire.com/?jlf5bqqk4u775n8

Thanks. Now. I don't know how to say this, because it must have been some work, but I already have a working version of AppleIntelCPUPowerManagement.kext

 

Sleep now also works without SleepEnabler :D but P-States are not yet functional (I think).

Link to comment
Share on other sites

 Share

×
×
  • Create New...