Jump to content

Master Chief's P5K PRO ACPI Warfare


VegasKarma
 Share

908 posts in this topic

Recommended Posts

Hi master chief,

 

I have a ps2 keyboard so I keep the PS2K device in my DSDT.

But with your last modification (since the 2.8 version).

I can't "power on" my PC with my keyboard ? (I configure my bios to allow power on using my keyboard).

 

If I boot on windows, then shutdown the PC it's OK but If I boot under Leopard/snow then shutdown

I can't power on with keyboard only with the ATX poower button ?

 

Do you have an idea to re allow that ?

 

Regard,

Barnum

Link to comment
Share on other sites

While we're on the subject I'm going to sneak this one in...I've been using this fix by Krazubu since he posted it here a long time ago. Here is what it looks like in my DSDT now, with some of your code added to it:

 

<snip />

 

Should I just keep it the way it is or is there any advantage to changing the whole thing so that it matches yours?

Would you mind first changing that code block to a codebox and add some color to the part you've added from Krazubu. Thanks.

Link to comment
Share on other sites

Hi master chief,

 

I have a ps2 keyboard so I keep the PS2K device in my DSDT.

But with your last modification (since the 2.8 version).

I can't "power on" my PC with my keyboard ? (I configure my bios to allow power on using my keyboard).

 

If I boot on windows, then shutdown the PC it's OK but If I boot under Leopard/snow then shutdown

I can't power on with keyboard only with the ATX poower button ?

 

Do you have an idea to re allow that ?

 

Regard,

Barnum

 

Master Chief started removing devices he doesn't use like PS2 devices. Read back through the thread and you'll see where he pulls them out. Put them back on and that should solve your problem.

Link to comment
Share on other sites

Hi master chief,

 

I have a ps2 keyboard so I keep the PS2K device in my DSDT.

But with your last modification (since the 2.8 version).

I can't "power on" my PC with my keyboard ? (I configure my bios to allow power on using my keyboard).

 

If I boot on windows, then shutdown the PC it's OK but If I boot under Leopard/snow then shutdown

I can't power on with keyboard only with the ATX poower button ?

 

Do you have an idea to re allow that ?

 

Regard,

Barnum

I presume that you have backups because I need: your original dsdt, the one that worked for you, and the latest one that fails for you. Only then I might be able to help you.

Link to comment
Share on other sites

I presume that you have backups because I need: your original dsdt, the one that worked for you, and the latest one that fails for you. Only then I might be able to help you.

 

Master Chief,

 

can you explain me why you remove the IELK device ?

 

Vincent

Link to comment
Share on other sites

Master Chief started removing devices he doesn't use like PS2 devices. Read back through the thread and you'll see where he pulls them out. Put them back on and that should solve your problem.

i think it is not possible to wake from PS2 keyboard

i can wake with usb mouse etc but not with my PS2 keyboard, with or without Chief's dsdts (bios set to wake with space bar)

Link to comment
Share on other sites

Master Chief,

 

can you explain me why you remove the IELK device ?

 

Vincent

 

Windows only device, known to cause sleep problems (Google is your friend here):

 

"Away Mode is a feature originally introduced with Update Rollup 2 for Windows® XP Media Center Edition 2005. Away Mode was conceived as a new power management usage model for media PCs that lets the computer appear turned off to the user while the system continues to perform tasks that do not require user input, such as recording television and viewing Media Center Extender sessions. Away Mode support is available in the Windows Vista® operating system"

Link to comment
Share on other sites

Thanks for the info, I was wondering about the IELK myself.. and wondering if I would find IMOOSE and IREINDEER too (drumroll).

 

Would you mind first changing that code block to a codebox and add some color to the part you've added from Krazubu. Thanks.

 

Of course not. Anything to make it easier for you.

 

Done:

http://www.insanelymac.com/forum/index.php...t&p=1305520

Link to comment
Share on other sites

I presume that you have backups because I need: your original dsdt, the one that worked for you, and the latest one that fails for you. Only then I might be able to help you.

 

So my motherboard is a P5Q Pro but I apply all your modification to my DSDT and they works on this motherboard.

 

So if I use the 2.6 modification ( )I can shutdown my pc et power it up using my ps2 keyboad (I configure the bios to use this key conbinaison : ctrl + esc)

 

If I use the 2.7 2.8 2.9 modification ( )I can shutdown my pc et but I can power it up using my ps2 keyboad.

I like something is present in DSDT that disallow this bios option

 

Barnum

Link to comment
Share on other sites

@ Master Chief Adding EC(PNOT and rest of the mac stuff) borke sleep here, computer goes to sleep, led blinking then it shutdown LOL, like it hibernate, and o/c wake is borked(blank screen).

Did you ever got smth like this?

Any idea?

No, Lucky me. Sounds like the sleep was incorrectly entered, like something is missing. You should start by doing a: diff -uw working.dsl broken.dsl and concentrate on changes in _PTS (Prepare To Sleep) and friends.

Link to comment
Share on other sites

So my motherboard is a P5Q Pro but I apply all your modification to my DSDT and they works on this motherboard.

 

So if I use the 2.6 modification ( )I can shutdown my pc et power it up using my ps2 keyboad (I configure the bios to use this key conbinaison : ctrl + esc)

 

If I use the 2.7 2.8 2.9 modification ( )I can shutdown my pc et but I can power it up using my ps2 keyboad. I like something is present in DSDT that disallow this bios option

 

Barnum

I think to have found the problem. Let's have a look at Device PS2K first, and in particular Method _PRW:

				Method (PS2M._PRW, 0, NotSerialized)
			{
				Return (GPRW (0x0F, 0x04))
			}

Note the 0x0F here. Now let's look at Device PS2M. Focusing at the same Method:

				Method (PS2K._PRW, 0, NotSerialized)
			{
				Return (GPRW (0x1D, 0x04))
			}

The only difference here is the value i.e. 0x1D instead of 0x0F But what you missed is that this value is important, it needs to match with a method called _L0F and _L1D which unfortunately for you was removed with a previous update.

 

Note: I moved the Methods into the scope of the Device () {} itself, this to be able to use plain simple _PWR instead of the more complicated PS2M._PRW and PS2M._PRW.

 

The next thing I did was to change the 0x1D into 0x0F. One new Method in _GPE is enough for this. And here's that new Method looks like:

			Method (_L0F, 0, NotSerialized)
		{
			\_SB.PCI0.LPCB.SIOH ()
		}

The next things I did was to add back two of the previously removed Methods:

                Method (SIOK, 1, NotSerialized)
               {
                   ENFG (0x0A)
                   And (0xFF, OPT3, OPT3)
                   And (Arg0, One, Local0)
                   Or (OPT2, Local0, OPT2)
                   Store (And (Arg0, One), ACTR)
                   EXFG ()
               }

               Method (SIOH, 0, NotSerialized)
               {
                   ENFG (0x0A)

                   If (And (OPT3, 0x10))
                   {
                       Notify (PS2K, 0x02)
                   }

                   If (And (OPT3, 0x20))
                   {
                       Notify (PS2M, 0x02)
                   }

                   SIOK (Zero)
               }

Right above Method (CGLD, 1, NotSerialized). I am however still uncertain about the need of Method SIOK. You might not need this one, but that is really something for you to check.

 

I've also add a call to SIOS in Method SPTS and a call to SIOW Method SWAK. Both commented out for now, but these can easily be activated when needed. This is also why I added the following code block right above the other two Methods:

                Method (SIOS, 1, NotSerialized) // You might not need this!!!
               {
                   And (CRE0, 0x1F, CRE0)

                   If (LEqual (Arg0, One))
                   {
                       SIOK (Ones)
                       ENFG (0x0A)

                       If (KBFG)
                       {
                           Or (OPT6, 0x10, OPT6)
                       }

                       If (MSFG)
                       {
                           Or (OPT6, 0x20, OPT6)
                       }

                       EXFG ()
                   }

                   If (LOr (LEqual (Arg0, 0x03), LEqual (Arg0, 0x04)))
                   {
                       If (WKTP)
                       {
                           SIOK (Ones)
                           ENFG (0x0A)

                           If (KBFG)
                           {
                               Or (OPT6, 0x10, OPT6)
                           }

                           If (MSFG)
                           {
                               Or (OPT6, 0x20, OPT6)
                           }

                           EXFG ()
                       }
                       Else
                       {
                           ENFG (0x0A)

                           If (KBFG)
                           {
                               Or (CRE0, 0x41, CRE0)
                           }

                           If (MSFG)
                           {
                               Or (CRE0, 0x22, CRE0)
                               Or (CRE6, 0x80, CRE6)
                           }

                           EXFG ()
                       }
                   }
               }

               Method (SIOW, 1, NotSerialized) // You might not need this!!!
               {
                   SIOK (Zero)
                   ENFG (0x0A)
                   And (OPT6, 0xCF, OPT6)
                   And (OPT2, 0xFE, OPT2)
                   And (CRE0, 0x1D, CRE0)
                   And (CRE6, 0x7F, CRE6)
                   EXFG ()
               }

And the reason for this is simple... I want to be prepared for the worst i.e. be able to tell you to uncomment a few lines and TADA!

 

I don't have a file for you simply because the supplied RAR files exceeds 200 errors:

Error 4095 - ^ Invalid character (0x0D), expecting ASL keyword or name

 

p.s. Please do not use tabs but spaces. Fix the errors because it makes it a pain to read it like this.

Archive.zip

Link to comment
Share on other sites

I'll test the file you modify for me.

 

thank, you're really the Master :) for DSDT patching

 

Barnum

You better do that – think of all the hard work I've put into it.

 

Good news: I found an old PS2 mouse + keyboard in the attic – now I need to know what kexts I need.

 

Edit: PS2 Keyboard works. Currently testing sleep and my changes.

Edit: Non of my DSDT's seem to be able to wake my hack with the space-bar (setting in BIOS). Not even the DSDT from the original BIOS (v1303). But you said that 2.6 worked for you, but not here.

Link to comment
Share on other sites

Hi guys

It seems that Chief has done quite a good job on fixing some things

 

I don't understand most of what you are saying, but I really want to get my P5K Pro running with SL.

Actually it runs fine, but shutdown doesn't work.

 

Kexts installed:

fakesmc

NullCPUPowerManagement

OpenHaltRestart

OpenInstall

PlatformUUID

Sleepenabler

 

What should I do to get it running properly?

Link to comment
Share on other sites

Guess I was not so clear...my hack sleep/wake just fine(even w/o to touch the DSDT), that problem comes after EC device is added...

No need for diff since I know what I added ;)

For some reason it goes to deep sleep and never wake lol.

 

Also after I added EC my hack shutdown fine(w/o openhalt) but restart dosent work, seems I'm stuck for now with working sleep openhalt and no EC :wacko:

Ah now I get it. Still weird that adding Device EC didn't work for you. It can be anything of course, but I can't say much without having your DSDT.

 

Hi guys

It seems that Chief has done quite a good job on fixing some things

 

I don't understand most of what you are saying, but I really want to get my P5K Pro running with SL.

Actually it runs fine, but shutdown doesn't work.

 

Kexts installed:

fakesmc

NullCPUPowerManagement

OpenHaltRestart

OpenInstall

PlatformUUID

Sleepenabler

 

What should I do to get it running properly?

Grab my DSDT and use that as a starting point. And shutdown works without OpenHaltRestart.kext when you use my DSDT. Restart however is still a problem, for which you need OpenHaltRestart.kext

 

And remove NullCPUPowerMangement and Sleepenabler because you don't need these. Possibly also OpenInstall (whatever that might be/never heard anything about it).

 

p.s. Other important kexts are part of post #3 because trust me your hack is not running like it should!!

Link to comment
Share on other sites

Edit: Non of my DSDT's seem to be able to wake my hack with the space-bar (setting in BIOS). Not even the DSDT from the original BIOS (v1303). But you said that 2.6 worked for you, but not here.

 

Hi Master Chief,

it's maybe a PB from the P5K motherboard

On my P5Q, It work but I don't use space-bar but CTRL + ESC

 

Regards,

Barnum

 

I'll test your modification today in the evening (I'm in France)

Link to comment
Share on other sites

Hi Master Chief,

it's maybe a PB from the P5K motherboard

On my P5Q, It work but I don't use space-bar but CTRL + ESC

 

Regards,

Barnum

 

I'll test your modification today in the evening (I'm in France)

It might be yes. And let me know how things go for you.

 

Edit: I need your PS2 kexts and a IORegistryExplorer dump to be able to work on this further. Thanks.

Link to comment
Share on other sites

@chief: finally added your SBUS and EC devices and all the related stuff. I already had those devices in my DSDT (for name sake! hp messed up in a lot of places) and so it was twice the work!! that was a nice addition. thanks a lot.

 

You may wanna look again into the _PRW for Device (EC) and the Method (_L02,...) of _GPE. they dont seem to match up. I was using your DSDT v2.9 for my "awesome" copy-paste work :)

 

EDIT: spoke too soon. everything is not that fine. restart does not work anymore and the boot is a bit slow. getting stuck at 2-3 places. the log looks clean, so am stumped! the upside is, no more openhaltrestart to get the shutdown to work and the SMBus kexts load properly :D

Link to comment
Share on other sites

@chief: finally added your SBUS and EC devices and all the related stuff. I already had those devices in my DSDT (for name sake! hp messed up in a lot of places) and so it was twice the work!! that was a nice addition. thanks a lot.

 

You may wanna look again into the _PRW for Device (EC) and the Method (_L02,...) of _GPE. they dont seem to match up. I was using your DSDT v2.9 for my "awesome" copy-paste work :)

 

EDIT: spoke too soon. everything is not that fine. restart does not work anymore and the boot is a bit slow. getting stuck at 2-3 places. the log looks clean, so am stumped! the upside is, no more openhaltrestart to get the shutdown to work and the SMBus kexts load properly :)

I would like to suggest to check kernel.log once more. Note the times, because that might hint at the trouble maker(s). Other than that... no idea.

 

BTW from where did u got that G3hot info(on G3HT method)? All I could find in specs was about D3hot not G3hot...

In one of the Intel (?) datasheets of course. Note that having the ICH10 (I think that's what you have?) is not enough. Yes, there are other data sheets too... like one for the Super IO chip. One for the Ethernet adapter... You get the drill (get all of them and start reading).

 

Edit: The ACPIspec30a.pdf also includes information about power states like G3.

 

p.s. It wasn't taken from a MacPro3,1 but my MacPro4,1

 

master

sorry my englısh

here is my dsdt file and my grafic card's dsdt file and alc883 add2 file can you merge those file to 1 dsdt.aml file please help me

http://www.mediafire.com/?5gmyyjiiwmo

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

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

No problem with your English. We might have to try a little harder, but we'll get there eventually. However, I have bad news for you; I can't (won't actually) do this work for you. Nothing personal, and I hope that you understand this, but I simply don't have the time for it. It's also better for you to do it yourself, with a little help maybe, because then you learn something new again.

 

The good news is that all required information can be found in this forum. And if you get started, then I or others are most likely willing to help you. But not by doing all the work for you.

 

Good luck and happy hacking!

 

p.s. Add a signature (My Controls) so that we know what hardware you are using ;)

Link to comment
Share on other sites

I would like to suggest to check kernel.log once more. Note the times, because that might hint at the trouble maker(s). Other than that... no idea.

nothing there. its exactly the same as I had before i made the modifications. but after the modifications the booting process stops at 2 places for like 5-10 secs, no HD access, no other activities and nothing in any of the logs. same with the restart. gets stuck after sig term and all the killing and unloading. the sound, wifi and graphics and all gets unloaded properly. you kill one and something new pops up! ;)

 

anyways, you keep worrying about new mods and tweaks. the rest of us are all playing the catch up game :)

Link to comment
Share on other sites

Are you going to answer to my question or you have no idea what does that method(G3HT)?

Excuse me? The question was: "BTW from where did u got that G3hot info(on G3HT method)? All I could find in specs was about D3hot not G3hot...". And I told you where I got it from. One of the Intel datasheet. No, you might not have all datasheets, or have read them all, because I tell you it is in there somewhere. BTW: What datasheets do you have collected so far?

 

I see you quote a code snippet:

	// Newly added Method for EC support.
Method (G3HT, 0, NotSerialized)
{
	If (LOr (LEqual ([color="#FF0000"]RTEE[/color], One), LEqual (\_SB.PCI0.LPCB.[color="#FF0000"]AG3E[/color], Zero)))
	{
		Store (Zero, \_SB.PCI0.LPCB.EC.G3HT) // Disabling G3HOT
	}
	Else
	{
		Store (One, \_SB.PCI0.LPCB.EC.G3HT) // Enabling G3HOT
	}
}

Which is great. But I wonder why you missed the clues (in red):

 

1) What is G3 exactly?

2) What is RTEE exactly?

3) What is AG3E exactly?

 

In short: It will get easier if you know what these mean. And I will keep adding comments with hints to other documentation in my DSDT, as I did before, but only when I think you need it (and I have the time for it). Not when someone acts like a bad ass person to other forum members, and demanding it by implying that I have no clue. Thank you very much.

 

Mate do you need glasses to read what I write?

I have those damn docs! There is nothing about "G3hot" in Intel or Super I/O docs! The question was not for you, so stop f***ing around.

For crying out loud. He was only trying to help you! You are not some foolish kid anymore are you? So get your act together and apologize to the man!

 

Edit: And here are the answers:

1) G3 is Mechanical Off (ACPIspec30a.pdf / 2.2 / page 19).

2) Power Management 1 Enable Register (ICH9R-316972.pdf / 13.8.2 / page 506-523).

3) General PM Configuration 3 Register (ICH9R-316972.pdf / 13.8.1.3 / page 492).

Link to comment
Share on other sites

Thanks for reply, now I'm sure you have no idea what does that method!

Like you did also removing SIOR, yeah you removed also SMBus support, addidng apple stuff in DSDT w/o to know what does is not a good choice!

SBUS code:

Apple:
			OperationRegion (SMBI, SystemIO, 0x4000, 0x10)
			Field (SMBI, ByteAcc, NoLock, Preserve)
			{
				HSTS,   8,			  // Host Status
						Offset (0x02), 
				HCON,   8,			  // Host Control
				HCOM,   8,			  // Host Command
				TXSA,   8,			  // Transmit Slave Address
				DAT0,   8,			  // Host Data 0
				DAT1,   8,			  // Host Data 1
				HBDR,   8,			  // Host Block Data
				PECR,   8,			  // Packet Error Check
				RXSA,   8,			  // Receive Slave Address
				SDAT,   16			  // Receive Slave Data
			}
ASUS:
Name (SMBS, 0x0400)
......
			OperationRegion (SMRG, SystemIO, SMBS, 0x10) // ASUS SBUS
			Field (SMRG, ByteAcc, NoLock, Preserve)
			{
				HSTS,   8, 
				SSTS,   8, 
				HSTC,   8, 
				HCMD,   8, 
				HADR,   8, 
				HDT0,   8, 
				HDT1,   8, 
				BLKD,   8
			}

			Field (SMRG, ByteAcc, NoLock, Preserve)
			{
						Offset (0x05), 
				HDTW,   16
			}

Does that look familiar to you?

Don't play as a smartass with me, I don't need your comments, I asked a simple question and is clear to me that you don't know the answer, if not prove.

 

How people get off being {censored} in a public forum I'll never know! Everyone here is trying to help. I don't see how you're trying to help anyone.

 

Now I'm ready for your smart ass comment.

Link to comment
Share on other sites

Thanks for reply, now I'm sure you have no idea what does that method! Like you did also removing SIOR, yeah you removed also SMBus support, addidng apple stuff in DSDT w/o to know what does is not a good choice! SBUS code:

Apple:
               OperationRegion (SMBI, SystemIO, 0x4000, 0x10)
               Field (SMBI, ByteAcc, NoLock, Preserve)
               {
                   HSTS,   8,              // Host Status
                           Offset (0x02),
                   HCON,   8,              // Host Control
                   HCOM,   8,              // Host Command
                   TXSA,   8,              // Transmit Slave Address
                   DAT0,   8,              // Host Data 0
                   DAT1,   8,              // Host Data 1
                   HBDR,   8,              // Host Block Data
                   PECR,   8,              // Packet Error Check
                   RXSA,   8,              // Receive Slave Address
                   SDAT,   16              // Receive Slave Data
               }
ASUS:
Name (SMBS, 0x0400)
......
               OperationRegion (SMRG, SystemIO, SMBS, 0x10) // ASUS SBUS
               Field (SMRG, ByteAcc, NoLock, Preserve)
               {
                   HSTS,   8,
                   SSTS,   8,
                   HSTC,   8,
                   HCMD,   8,
                   HADR,   8,
                   HDT0,   8,
                   HDT1,   8,
                   BLKD,   8
               }

               Field (SMRG, ByteAcc, NoLock, Preserve)
               {
                           Offset (0x05),
                   HDTW,   16
               }

Does that look familiar to you?

Don't play as a smartass with me, I don't need your comments, I asked a simple question and is clear to me that you don't know the answer, if not prove.

So what makes you think that the SBUS no longer works? Is it because you see two different addresses, one being 0x0400 and the other 0x4000? And is that why you marked these with Apple vs Asus?

 

I invite anyone here to read page 338 of the ICH9-316972.pdf and to take a close look at table 9-3 tagged "Variable I/O Decode Ranges". Does that ring a bell to you? Now. What do you see there? Right: "SMBus Anywhere in 64 KB I/O Space". Again this address, the one you seem to be focusing on, can be anywhere in I/O space.

 

Or do you mean the used names – like HSTS et all – because they don't match? Let me start by saying that the tables are the same, but they use different names. Hey, I can explain these too if you want... like HCON is the same as HSTC. Skipping SSTS due to the use of Offset (0x02). And you clearly did not knew all this, otherwise you would not have post a comment like the one you made here (on file for future reference).

 

And about removing SBUS support, that's because Apple wants things a little different. And the Asus SBUS implementation was, which is confirmed by Mister Chen from Asus, mainly written for the Asus probe and didn't work properly (for Apple OSX). Be my guest and contact him in Taiwan, like I did. Oh wait now he is going to ask for e-mail and/or a phone number. Right. I invite the forum owner to contact me per e-mail if he wants!

 

But my main concern is about your posts is your bad ass attitude towards other people. Which might become a serious problem. Relax, or get help man!

 

p.s. I even opened a door for you with my: "BTW: What datasheets do you have collected so far?" But no reply of course.

Link to comment
Share on other sites

I edited my previous post look on that code.^^^

I won't answer any of your questions before you publicly apologize to the people who you offended here, especially since they were only trying to help you, knowing that I am a busy person.

 

Edit: It seems that the posts have been removed on or after Sun 25 October 2009. Whatever. You missed nothing.

Link to comment
Share on other sites

 Share

×
×
  • Create New...