Jump to content

DSDT fixes for Gigabyte boards


iSoprano
 Share

1,909 posts in this topic

Recommended Posts

There's only one AppleIntel*Profile and thus it's ok.

 

@chief, I have a question, my sleep works fine and wakes up fine but suppose say I leave my machine sleeping for more than 1 or 2 hrs, the machine wakes up but the monitor doesn't come back on. Can this be fixed through DSDT? or is it related to video card and nothing can be done? I use nVidia 9600GT

Link to comment
Share on other sites

@ Master Chief

 

Followed up to the last post here. Frankly this is all too akin to rocket science for me. I used mm67's DSDT as guide, as well as your posts & managed to compile DSDT with 0 errors 0 warnings. It is working.

But still my Apple keyboard does not wake the system. It is plugged to the motherboard USB port at the back as is the mouse. Also no auto sleep.

Mouse wakes system & I have the following 2 things in the log -

21-10-09 11:07:57 AM kernel USB (EHCI):Port 3 on bus 0xfa has remote wakeup from some device

21-10-09 11:07:57 AM kernel USB (UHCI):Port 2 on bus 0x3a has remote wakeup from some device

System extensions loads Penryn Merom & Nehalem profiles but after a while I see only AppleIntelPenrynProfile Loaded.

Since this is getting way too complicated could you please help clean up the mess I am making. This way over my head.

 

Attaching my latest DSDT

 

Also if anyone is interested kind user oldnapalm has posted an edited version of fakesmc which uses istat menus to show temperatures of all 4 CPUs. so we do not need other utils to keep an eye on that. Attaching it here as well should any one need it

 

Thank you

 

/Edit

 

This DSDT breaks sleep on my machine. Pls see my next post.

DSDT.dsl.zip

fakesmc.kext.zip

Link to comment
Share on other sites

UPDATE- Fellow Gigabyte users, Master Chief, who is well known in our community has kindly agreed to help GB users in patching our DSDT to enable speedstepping, sleep(which is a major pain in most of the boards) and also polish some of the fixes which are already floating around in the forum. Part 1, USB fixes has been given below. Waiting for Part 2 from Master Chief.

Hi iSoprano, congratulations for starting this thread.

 

This is something I am interested in and after a quick look through it and I have to admit I am out of my depth with all this, but can I say thanks to everyone contributing and a big thanks to Master Chief for his time, dedication and for sharing his expertise. I am going to have to find time to read, learn and attempt to understand this level of technical knowledge.

 

There is absolutely nothing I can contribute at the moment but maybe in time I will feel qualified to do so.

 

Keep up the good work :thumbsup_anim:

Link to comment
Share on other sites

Hi iSoprano, congratulations for starting this thread.

 

This is something I am interested in and after a quick look through it and I have to admit I am out of my depth with all this, but can I say thanks to everyone contributing and a big thanks to Master Chief for his time, dedication and for sharing his expertise. I am going to have to find time to read, learn and attempt to understand this level of technical knowledge.

 

There is absolutely nothing I can contribute at the moment but maybe in time I will feel qualified to do so.

 

Keep up the good work :angel:

 

Blackosx, appreciation and thanks should go to Master Chief who is the light at the end of the tunnel for Gigabyte users :thumbsup_anim:

But seriously, the work Chief has done in getting his rig close to a Mac is awesome and with his help we(Gigabyte) users are hoping to achieve the same. Also many thanks to people who are helping Chief in debugging and testing on our boards. Please feel free to spread the word :D

Link to comment
Share on other sites

Also if anyone is interested kind user oldnapalm has posted an edited version of fakesmc which uses istat menus to show temperatures of all 4 CPUs. so we do not need other utils to keep an eye on that. Attaching it here as well should any one need it

 

Thanks, I'll try this one out :-) Edit: Confirmed working here too.

Link to comment
Share on other sites

@chief, I have a question, my sleep works fine and wakes up fine but suppose say I leave my machine sleeping for more than 1 or 2 hrs, the machine wakes up but the monitor doesn't come back on. Can this be fixed through DSDT? or is it related to video card and nothing can be done? I use nVidia 9600GT

I have a BIOS setting called "Repost Video on S3 Resume" but you might need to help it a little by adding a Notification (\_SB.PCI0.P0P2, Zero) to Method _WAK

 

Note: You should already have a few notifications in Method _WAK, just add this one, but make sure to verify whether your video card shows up in IORegistryExplorer on P0P2 or somewhere else.

 

@ Master Chief

Followed up to the last post here. Frankly this is all too akin to rocket science for me. I used mm67's DSDT as guide, as well as your posts & managed to compile DSDT with 0 errors 0 warnings. It is working.

But still my Apple keyboard does not wake the system. It is plugged to the motherboard USB port at the back as is the mouse. Also no auto sleep.

Yes it ain't easy, but no I don't have time to fix your DSDT. You are supposed to do this yourself, with help of others here, or I will have a meltdown one day soon.

 

BTW: I see that you are using some kind of mod BIOS, which might be a/the problem. Please try the latest official BIOS.

 

Mouse wakes system & I have the following 2 things in the log -

21-10-09 11:07:57 AM kernel USB (EHCI):Port 3 on bus 0xfa has remote wakeup from some device

21-10-09 11:07:57 AM kernel USB (UHCI):Port 2 on bus 0x3a has remote wakeup from some device

Which is fine.

 

p.s. My oldest daughter is having her 16th birthday today so I won't be much here!

Link to comment
Share on other sites

@ Master Chief

 

Wishing you daughter a Very Happy Birthday! & God Bless.

 

I know you're pressed for time but if at all possible please do look into the DSDT, I promise not to push any more. This is just a sincere heartfelt request.

As for my BIOS it is F10 & the only mod is AHCI module version 1.20E, because the older one 1.07 was notoriously slow to boot. No other Mod. Latest is F11e, which, though official, is still beta. I am waiting for it to release before updating.

 

Have a nice time with your family. (Oh! reminds me - my son turns 8 in exactly a week! Holy moly - how time flies!)

 

 

/Edit

The newest suggestions implemented in DSDT apparently work but my sleep is broken. System goes to sleep all right but does not wake. Lights & Fans come on but display remains off.

Link to comment
Share on other sites

I know I am not qualified to understand all this yet, but one thing I am interested in is can bonjour networking be enabled via DSDT? I currently use a rebuilt ifconfig command to set the NIC in to promiscuous mode on the EP45-DS3L, and I know this also works on other boards too. Anyway, I guess that's something for the future as I have a lot of reading to do for now. ;)

Link to comment
Share on other sites

Could you please tell us whether your sleep wake works properly, even after the machine has been sleeping more than 20 minutes? Thank you.

 

No problems waking up. This morning woke up after 6 hours of sleep and this afternoon when I came back from work woke up nicely after 7 hours of sleeping. Only thing that doesn't work is automatic sleep because of this stupid Samsung DVD.

Link to comment
Share on other sites

Okay I am going to take my time so I can understand what I am doing and I have downloaded the ACPIspec30b PDF, and both the ICH9R and ICH10 Datahseet PDF's for me to do some reading and for reference. But anyway I will document my progress as and when I get time.

 

ROUND 1

Results after Master Chief's first round of fixes from post #2 for changing USB0-5 to UHC1-6 (I haven't gone as far as USBE yet).

 

My EP45-DS3L uses ICH10 so I have commented out the device specific method to assign device-id for each UHCn device. I found USB3 was in my IOReg so I left it in.

 

Changes successfully made, file re-complied fine and rebooted. Everything working fine and now I can wake from sleep with the keyboard & mouse, which I couldn't do before. So thank you Master Chief. :)

Link to comment
Share on other sites

Hey guys, so I tried these fixes, speedstep works perfectly etc... but with one caveat, with speedstep/applecpupowermanagement enabled the video gets choppy, once I disable it again with nullcpupowermanagement it's as smooth as silk again. Ati 4870, any ideas?

 

 

Yes please go back to http://www.insanelymac.com/forum/index.php?showtopic=181631 The answer is there somewhere. Sorry I do not remember the post so you'll have to sift thru all. It involves some patching in dsdt irq values. I did not have this issue so do not know the exact method.Thanks.

Link to comment
Share on other sites

Hello,

Sorry my noob questions and poor english... mm67 sorry for disturbing, but maybe you can help me. I've tried to apply some fixes as you do in your dsdt file and get kernel panic immediately after booting up... I have EP45-DS3P mobo (as you can see in my signature). Can you take a look on my dsdt file, maybe i've cut some useful things from it, but i have no errors while compiling it.

For now i get working video (there is an issue with incorrect PCI-E link speed, system profiler shows only 2.5GT/s), lan, native sound (only 2.1) and usb via my dsdt. Also i remove some devices such as FDD, system speaker, PS2 mouse & keyboard from dsdt file.

 

kexts in Extra/Extensions: fakesmc, NullCPUPowerManagment, OpenHaltRestart, PlatformUUID, SleepEnabler.

 

There is my working dsdt:

 

dsdt_v1.08.dsl.zip

Link to comment
Share on other sites

Hello,

Sorry my noob questions and poor english... mm67 sorry for disturbing, but maybe you can help me. I've tried to apply some fixes as you do in your dsdt file and get kernel panic immediately after booting up... I have EP45-DS3P mobo (as you can see in my signature). Can you take a look on my dsdt file, maybe i've cut some useful things from it, but i have no errors while compiling it.

For now i get working video (there is an issue with incorrect PCI-E link speed, system profiler shows only 2.5GT/s), lan, native sound (only 2.1) and usb via my dsdt. Also i remove some devices such as FDD, system speaker, PS2 mouse & keyboard from dsdt file.

 

kexts in Extra/Extensions: fakesmc, NullCPUPowerManagment, OpenHaltRestart, PlatformUUID, SleepEnabler.

 

There is my working dsdt:

 

dsdt_v1.08.dsl.zip

 

Can't see any major problems with it, boots just fine for me. Looks like you still have some more modifications to do.

Link to comment
Share on other sites

Hi guys! yes, this is great thread for sure and in no time, i'm sure, it'll be all worked out.

 

I am porting all these new tweaks to my EP35-DS3. A bit different dsdt from P45 models. L,P,R models have very similar dsdt's, if not exactly the same dsdt's - R variant has exactly the same one, but different bioses and they don't work the same way.

 

iSoprano managed to get it to sleep with L model, not 100% sure but i think the same dsdt as mine and my model couldn't wake (immediate restart on wake).

 

So far, with many new tweaks from CM (thanks for helping us bud) sleep/wake is working flawlessly. I continue to slim down the code. Side effect is my temp raised for 7-8C with the same speedstep code, used to sit idle at 38-39C, now its ~47C. I will have to investigate some more, hope i can solve it soon. If someone knows what might raise the temp i am all ears.

 

kextstat | grep AppleIntel
  14	0 0xffffff7f80660000 0x18000	0x18000	com.apple.driver.AppleIntelCPUPowerManagement (90.0.0) <7 6 5 4 3 1>
  24	0 0xffffff7f806c6000 0x3000	 0x3000	 com.apple.driver.AppleIntelCPUPowerManagementClient (90.0.0) <7 6 5 4 3 1>
  54	0 0xffffff7f80888000 0x8000	 0x8000	 com.apple.driver.AppleIntelMeromProfile (19) <53 6 5 4 3>

kextstat | grep SMBus
  28	1 0xffffff7f80713000 0x2000	 0x2000	 com.apple.iokit.IOSMBusFamily (1.1) <5 4 3>

Link to comment
Share on other sites

Ok, here is my latest version with all PICM stuff removed and only APIC code left.

Once again 600 lines shorter.

 

stripped3.dsl.zip

Great. You can also remove the following snippet:

		If (LEqual (Arg0, 0x04))
	{
		If (LNot (PICF))
		{
			Sleep (0x64)
		}
	}

You no longer use PICF – which otherwise should have been 0x01 anyway. Making the following snippet also a prime target for removal:

	Scope (\)
{
	Name (PICF, Zero)
	Method (_PIC, 1, NotSerialized)
	{
		Store (Arg0, PICF)
	}
}

No need to initialize PICF since you no longer use it.

 

Next up: Take a look at DBG1 / ESMI and see what they do. You'll need the ICH9/10 datasheet for this, and please explain people here what you've found out about it... and more importantly how you found this info.

 

p.s. Thank you for the kind words everyone!

 

...I continue to slim down the code. Side effect is my temp raised for 7-8C with the same speedstep code, used to sit idle at 38-39C, now its ~47C. I will have to investigate some more, hope i can solve it soon. If someone knows what might raise the temp i am all ears.

kextstat | grep SMBus
  28	1 0xffffff7f80713000 0x2000	 0x2000	 com.apple.iokit.IOSMBusFamily (1.1) <5 4 3>

Ripped out a little too much? Here's mine:

   30	2 0x555fd000 0x3000	 0x2000	 com.apple.iokit.IOSMBusFamily (1.1) <5 4 3>
  67	0 0x5ca45000 0x2000	 0x1000	 com.apple.driver.AppleSMBusPCI (1.0.2d0) <14 5 4 3>
  79	0 0x5536a000 0x9000	 0x8000	 com.apple.driver.AppleSMBusController (1.0.2d0) <30 14 13 5 4 3>

Concentrate on the Devices SBUS/EC for a starter.

Link to comment
Share on other sites

This is clearly the devils work!! :)

 

Here's where I've got to with GigaByte ICH9-R DSDT DSDT21_10_09.dsl.zip

 

<EDIT> - this is my SmBus device from lspci , so I presume I need the device id patched

00:1f.3 "0c05" "8086" "2930" -r02 "1458" "5001"

Also Jmicron PATA devices removed

</EDIT>

 

 

I've got who knows how many compile errors to work through - any pointers appreciated!

 

Main areas of mess are SATA device and PCI0 device ..

 

I'm the first to admit - half my problem is I've bumbled in without fully understanding and have picked and copied from others. Too many things - not enough time, cest la vie!

 

Anywhos, I need sleep - Many happy returns to the young lady Chief :chef:

 

D

Link to comment
Share on other sites

Hi again! Just want to check one thing:

 

I've got Legacy kexts in /Extra/Extensions, and IIRC I've been able to see them when I run kextstat | grep Legacy. Now I don't. Does this mean they aren't loaded at all?

 

These kexts include LegacyHDA, but also LegacyAGPM and LegacyACPI_SMC_PP.

 

kextstat | grep AppleIntel gives me only one CPU-type though (Penryn), and the SMbus devices are there, three of them. This shows that SBUS and EC are working correctly, right?

 

I'm just a bit confused, please unconfuse me. :rolleyes:

Link to comment
Share on other sites

<EDIT> - this is my SmBus device from lspci , so I presume I need the device id patched

00:1f.3 "0c05" "8086" "2930" -r02 "1458" "5001"

</EDIT>

Yep. pci8086,2930 -> pci8086,3a30

 

I'm the first to admit - half my problem is I've bumbled in without fully understanding and have picked and copied from others. Too many things - not enough time, cest la vie!

But then again we all did :)

 

Anywhos, I need sleep - Many happy returns to the young lady Chief :P

D

Thank you! And sleep tight, while I try to clean up some more stuff for GB peeps.

 

Can't see any major problems with it, boots just fine for me. Looks like you still have some more modifications to do.

Pssst. You too! Just kidding. Anyway. Here's another large block waiting for removal: LNKA through LNK1. Also remove the BUFA and BUFB plus that CreateWordField (BUFB, One, IRQV)

 

@ Master Chief

 

Wishing you daughter a Very Happy Birthday! & God Bless.

 

I know you're pressed for time but if at all possible please do look into the DSDT, I promise not to push any more. This is just a sincere heartfelt request.

As for my BIOS it is F10 & the only mod is AHCI module version 1.20E, because the older one 1.07 was notoriously slow to boot. No other Mod. Latest is F11e, which, though official, is still beta. I am waiting for it to release before updating.

 

Have a nice time with your family. (Oh! reminds me - my son turns 8 in exactly a week! Holy moly - how time flies!)

 

/Edit

The newest suggestions implemented in DSDT apparently work but my sleep is broken. System goes to sleep all right but does not wake. Lights & Fans come on but display remains off.

Thank you very much William!

 

And about that display problem. Does it help when you switch the monitor off and then back on again?

 

If not use diff -uw working.dsl broken.dsl to see what changed, because I cannot possibly know what people have done, or not. But here's a first tip: Start by checking method _WAK and _PRT (in this order) because you'll find the error there.

Link to comment
Share on other sites

 Share

×
×
  • Create New...