Jump to content

CMOS Resets on Restarts after Sleep and Wake in 10.7 (Lion)


rayap
 Share

474 posts in this topic

Recommended Posts

Hi again, these are vanilla Acpi tables dumped from Windows (not pure vanilla since bios has slic table added to it) :

acpi.zip

 

And this is all that I have in my Extra folder (I use same dedicated Chameleon partition to boot both SL and Lion so both run with same Extra folder) :

Extra.zip

Very interesting!

 

Asus X58 Sabertooth obviously haves AMI BIOS and the structure of that DSDT is very close to mine, which could be good since now we have two similar situations in structure and I have CMOS reset anomaly!

 

I was check code, also made another variation of my DSDT, closer to this one from X58 in some parts of the code, but that didn't change anything! I still have CMOS reset!

 

There are slight differences in Device (RMSC) and Method (_PTS, 1, NotSerialized), but other than that (as far as I can see) everything is the same, except the fact that X58 content some Devices in the code which I don't have in mine!

 

I don't know… Maybe I was miss something… Perhaps Cartri will notice something which I didn't, so I will leave here mine DSDT's.

 

Inside this pack, you will find DSDT extracted from windows, then the one slightly modified according to this one from X58 and finally my fully patched DSDT…

 

Foxconn P35A DSDT

Link to comment
Share on other sites

Ich habe ein kleinen problem. Wenn ich den Ruhezustand das erst mal Ausführe fährt der PC nach einigen Sekunden wieder hoch und ich habe Probleme mit den Apple Magic Trackpad. Dann fahre ich den PC wieder in den Ruhezustand und der PC bleibt dann auch im Ruhezustand. Wenn ich den PC dann wieder aufwache habe ich immer noch Probleme mit den Apple Magic Trackpad. Kennt da einer eine Lösung? Ich habe seit nutzen des Belkin Mini Bluetooth-Adapter die Probleme.

 

Symtome:

 

Ich habe bei meinem PC folgendes Problem nach jedem Ruhezustand mit den Apple TrackPad:

1. Rechtsklick geht nicht

2. Klicken durch Tippen geht nicht

3. Zeigerbeschleunigung ist auf Null

 

 

I have a small problem. If I hibernate the first time at length, the PC goes back up after a few seconds and I'm having problems with the Apple Trackpad Magic. Then I take the PC back into hibernation and then the PC will remain at rest. When I wake up the PC again, I still have problems with the Apple Trackpad Magic. Because one knows a solution? I've been using the Belkin Mini Bluetooth Adapter problems.

 

symptoms:

 

I have the following problem with my PC after every sleep with the Apple trackpad:

1st Right-clicking does not work

2nd Click by tapping does not work

3rd Pointer acceleration is zero

 

Mein System:

 

Motherboard: GA-P35-DS4 (Rev. 2.1)

Prozessor: Intel Core 2 Quad Q6600 | 2.4 GHz 8MB L2 FSB1600 Sockel 775

Onboard Sound: Realtek ALC889A Audio Codec

RAM: 2x1GB DDR2 800MHz (1GB OCZ CL4 XTC Titanium PC2-6400), 2x 2GB DDR2 800MHz (2GB OCZ CL4 XTC Titanium PC2-6400)

Onboard Lan: RTL8111B Chip

Grafikkarte: ATI Radeon™ HD 5770 Graphics

Festplatte(n): 3x500GB(HDD), 1x1TB(HDD), 1x60GB(SSD)

Laufwerk(e): 1xSATA DVD+-R RW DL

Wlan: ASUS WL138g V2

Bluetooth: Belkin Mini Bluetooth-Adapter

Tastatur: Apple Wireless Tastatur

TrackPad: Apple Magic Trackpad

Link to comment
Share on other sites

This is an alternate patch for Vanilla AppleRTC.kext of Lion GM. An unconditional jump over the rtcWrites() in updateChecksum() to prevent CMOS Resets.

 

sudo perl -pi -e 's|\x75\x30\x44\x89\xf8|\xeb\x30\x44\x89\xf8|; s|\x75\x3d\x8b\x75\x08|\xeb\x3d\x8b\x75\x08|' /System/Library/Extensions/AppleRTC.kext/Contents/MacOS/AppleRTC

 

 

Great job, fixed my machine with gigabyte EP45T-UD3LR, Intel E8200 and Lion GM. But my usb keyboard is still totally lost after wakeup, no any response, no numlock light. But the usb mouse is full functional. Does anyone knows why?

Link to comment
Share on other sites

Patch for GM:

 

perl -pi -e 's|\x8b\x45\xc8\x39\x45\xcc\x74\x0b|\x8b\x45\xc8\x39\x45\xcc\xeb\x0b|; s|\x8b\x45\xb4\x39\x45\xb8\x74\x08|\x8b\x45\xb4\x39\x45\xb8\xeb\x08|' /System/Library/Extensions/AppleRTC.kext/Contents/MacOS/AppleRTC

 

GA-EX58-UD5-F12

 

 

Works perfectly, DSDT is from ######, DSDT-GA-EX58-UD5-F12.aml

 

Plus I checked this guide and made sure all are on, ######

Link to comment
Share on other sites

Hi blackosx:

 

Thank you for the AppleRTC patch fix.

 

sudo perl -pi -e 's|\xBC\x00\x74\x10|\xBC\x00\xEB\x10|; s|\x45\xB8\x74\x08|\x45\xB8\xEB\x08|; s|\xD0\x00\x74\x13|\xD0\x00\xEB\x13|; s|\x45\xCC\x74\x0B|\x45\xCC\xEB\x0B|;' /System/Library/Extensions/AppleRTC.kext/Contents/MacOS/AppleRTC

 

Works perfectly for Zotac H55ITX-A-E

 

We had perfect sleep & wake from sleep in Snow Leopard, and as others reported for Lion, we had CMOS reset to defaults on a reboot after sleep. I too looked at DSDT fixes but none worked.

 

The Zotac H55ITX-A-E community thank you.

Link to comment
Share on other sites

sudo perl -pi -e 's|\xBC\x00\x74\x10|\xBC\x00\xEB\x10|; s|\x45\xB8\x74\x08|\x45\xB8\xEB\x08|; s|\xD0\x00\x74\x13|\xD0\x00\xEB\x13|; s|\x45\xCC\x74\x0B|\x45\xCC\xEB\x0B|;' /System/Library/Extensions/AppleRTC.kext/Contents/MacOS/AppleRTC

Working for my board (@Signature) too, also AutoSleep seems to be broken again, didnt work in SL, but did work under Lion with DSDT out of the box.

Link to comment
Share on other sites

Thanks for the dumps, but for x58 and p45 users, MacPro@Lion would be the perfect dump (ad systemmodel, of course)

 

About DSDT methods to solve this I did think in more 2 (remembering I am without a install to check it myself)

 

Some possible fixes for the problem:

ATTENTION: TOTAL THEORIZATION, Just posting because i can not try it myself and need feedback;

 

Adventurers may try to insert _FIX to their RTC, also, we can try changing the alignment to 1 and play with the irq something like:

				Device (RTC)
			{
				Name (_HID, EisaId ("PNP0B00"))
				Name (_FIX, Package(1) {EISAID("PNP0B00")})
				Name (_CRS, ResourceTemplate() {IO(Decode16, 0x70, 0x70, 0x1, 0x2)})
			}

 

Just some ideas, sorry for posting without testing them myself (and their combination), maybe only one of the remarks I am doing solves the problem, maybe none, and maybe a combination...

Hey, Cartri

 

You may be on to something here. Just did a clean install of 10.7 with tonymacx86 database dsdt for GA-X58A-UD7 Rev.1.0 F7 dsdt.

 

Am having problem that it will go to sleep and wake, but no graphics on wake so have to hard power off and reboot. Getting this CMOS reset problem so went looking and found this thread. Was going to try the fixes you suggest one by one and see if any of them worked. Made the one change to DSDT from database - same as above to add _FIX. Compiled no erros. Replaced DSDT.aml in /Extra with compiled file and hit apple -> sleep. Rig went to sleep, no problem. Waited a few minutes and hit the left mouse button. Disc spun up, DVD-RW lights came on but still no graphics (I know, but that's for another topic). Still, hard power off at the surge supressor. Power back on, hit the start button and normal boot - no CMOS reset! I have attached 3 DSDT files - one extracted with DSDTSE for winXP with the iasleme file replaced with latest so it will work in Win7, one from tonymac86 dsdt database I used on original install and the last with the _FIX. That was all I did to it.

GA_X58A_UD7_DSDT.zip

Link to comment
Share on other sites

Was going to try the fixes you suggest one by one and see if any of them worked. Made the one change to DSDT from database - same as above to add _FIX.

 

Adding _FIX to RTC device on GA-P35-DS4 has no effect on CMOS reset.

Link to comment
Share on other sites

Just found one thing that causes CMOS reset on my Sabertooth system and that's enabling onboard audio in bios. As soon as I disable it sleep again works perfectly without any patches.

Link to comment
Share on other sites

Hey, Cartri

 

You may be on to something here. Just did a clean install of 10.7 with tonymacx86 database dsdt for GA-X58A-UD7 Rev.1.0 F7 dsdt.

 

Am having problem that it will go to sleep and wake, but no graphics on wake so have to hard power off and reboot. Getting this CMOS reset problem so went looking and found this thread. Was going to try the fixes you suggest one by one and see if any of them worked. Made the one change to DSDT from database - same as above to add _FIX. Compiled no erros. Replaced DSDT.aml in /Extra with compiled file and hit apple -> sleep. Rig went to sleep, no problem. Waited a few minutes and hit the left mouse button. Disc spun up, DVD-RW lights came on but still no graphics (I know, but that's for another topic). Still, hard power off at the surge supressor. Power back on, hit the start button and normal boot - no CMOS reset! I have attached 3 DSDT files - one extracted with DSDTSE for winXP with the iasleme file replaced with latest so it will work in Win7, one from tonymac86 dsdt database I used on original install and the last with the _FIX. That was all I did to it.

 

 

Adding _FIX to RTC device on GA-P35-DS4 has no effect on CMOS reset.

 

I have more to read in this topic, sorry for the absence after so many shots, just updated my os to lion final, finally. I am no fan of sleep, everything i did about this in the old times was due to requests, as i leave my machine always on (I hate the fact that Apple Cinema Display has no power button, no button at all btw, but i just unplug the cord when I go to sleep).

Still having big problems with graphics drivers, using a salad of 10.6.7 controllers together with 10.7.0 opengl (X3000) drivers, so i guess right now my system is not a comparison yet.

 

The _FIX seems to be an incomplete fix to the problem, as always I was just shooting everywhere, and I still think that if something has to be done to the CMOS in the ACPI we should start by the way chameleon is reconstructing ACPI himself. This is only opinion, But The other posting i did about the RTC registers that may be set to read-only may avoid osx from changing the RTC. (As I said, this can solve the problem, or create others, if the known bits were made also RO)

 

About Going Bald's machine, its valid to remember that, differently from most gigabyte first x58 bioses it uses a 2MB (16Mbit) chip, which lengths 0x8, maybe this is a relevant difference as the new checksum may be considering the whole cmos size, maybe not. Also valid to remember that the new bioses for these 2MB chips are hybrid EFI-Bios in order to give native support to GUID, and the module is giant.

 

Sorry for being too busy with my own system in my free time, I still fight my graphics drivers, the normal patch in vanilla 5000controller doesn't work for me for some reason. When I fix this I'll be back here, and able to make my own tests. With tseug, black, mm67 and everyone else here trying a fix on this, soon or later we will catch the mouse. I will surely come back to this thread, it interests me, besides of not using sleep, and take a better look over everybody's gigabyte dsdts to better opine.

For now, i keep receiving the posts by mail.

 

BTW, Going Bald, how are your peripherals? New appleHDA is constructing my audio from the main module, i have no more need to rewrite the main module config data into a DSM... may this really have something to do with peripherals not waking? Much to check, I am just raising some questions for thinking, I know it is nothing new, but it was what popped to my mind at the time.

 

See ya!

 

----

quick edit: Are you guys CID"ing" your power button? Cause with a normal hid it will be a sleep button, as long as you have a F4 size FACP (instead of chameleon's facp patch)

 

EDIT2:

Fixing or not an IRQ8 to the RTC will not make real difference except its booted with this IRQ set, as it is not used as an IRQ would normally use, but a switch to ich10 activate or not RTC as a slave IRL from LPC. IRQ8 can only be generated internally, like 0 & 2. This info is only valid for ich10 based systems

Link to comment
Share on other sites

Amended 24th day of June, 2011

 

On Lion DP1-4 installations, after using sleep and wake in the system normally, BIOS reports CMOS Checksum Error on reboot or boot after shutdown. It seems that the new AppleRTC.kext v1.4 added functionatality is causing this Error.

 

Initially, a workaround suggested by JUN Ho is to use the AppleRTC.kext from SnowLeopard

 

Then by blocking a few jumps and calls in the procedures of AppleRTC.kext, the Checksum Error was overcome. It appears APPLE has left in-situ much of their realtime testing code in this kext and these modifications do not apparently affect their basic functionatility in normal cases.

On further investigation by tseug and with the assistance of his DumpCMOS.kext , an updated patch (post# 217) was prepared by blackosx. This patch for vanilla AppleRTC.kext is effective on the latest build 11A494a. (besides also on recent builds)

 

This solution will not affect those osx86 setups which inherently have Sleep or Wake problems. However, it will overcome the CMOS Checksum Error caused by RTC register length of 0x04 or 0x08 in DSDT and eliminate log msg RTC: Only single RAM bank (128 bytes) if, when a RTC register length of 0x02 is used.

 

Added 2nd day of July, 2011

New patch for AppleRTC.kext of Lion GM - Build 11A511 by tseug (Post #248). The binary patch now, is a single unconditional jump for each arch to bypass Checksum changes.

 

Added 10th day of July, 2011

An alternate patch for AppleRTC.kext of Lion GM. (Post # 340)

 

I have a Gigabyte GA-EX58-UD5 (rev. 1.0) F13u bios. I installed Lion using a DSDT file from tonymacx86 for the F12 bios and [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url]. Both the F12 and F13u BIOS have the CMOS reset problem.

 

What is the benefit of patching the 10.7 AppleRTC.kext as opposed to just using the SL 10.6.8 kext if the SL kext solves the problem? What about the ElliottForceLegacyRTC.kext?

 

If one does decide to patch the 10.7 kext, which of the several patches listed on this site should one use?

 

Thanks,

MartyBoston

Link to comment
Share on other sites

What is the benefit of patching the 10.7 AppleRTC.kext as opposed to just using the SL 10.6.8 kext if the SL kext solves the problem? What about the ElliottForceLegacyRTC.kext?

 

If one does decide to patch the 10.7 kext, which of the several patches listed on this site should one use?

 

There is no definitive answer. All are sharing their experiences with their machines to contribute towards this community. You need to try any method you fancy and to tell us which works best for you. Reading the posts may help you decide which to use for your particular setup.

Link to comment
Share on other sites

Still looking for a fix to this, I'm on a g41-es2l, adding the SL sleepenabler didn't made any difference, deleting the nullcpupowermanagement allows it to sleep and waking up properly most of the time, sometimes graphics on wake won't load back again requiring a hard reset with the subsequent CMOS issue everyone described here; next I will replace the original AppleRTC.kext with the patched one, and/or try the read-only option.

Link to comment
Share on other sites

Thanks -- perfect fix for EP45-UD3P

I applied the patch and on restart got the CMOS CHECKSUM ERROR screen. I allowed it to use the last known good boot and the system restarted normally. Should I see the CMOS CHECKSUM ERROR screen after applying this patch?

 

MY MB is a EP45-UD3P

Link to comment
Share on other sites

I applied the patch and on restart got the CMOS CHECKSUM ERROR screen. I allowed it to use the last known good boot and the system restarted normally. Should I see the CMOS CHECKSUM ERROR screen after applying this patch?

 

MY MB is a EP45-UD3P

 

You got what you last started(1) with - when you start(2) with the patched kext you should not see it @ the next start(3).

Link to comment
Share on other sites

 Share

×
×
  • Create New...