Jump to content
InsanelyMac Forum
rayap

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

Recommended Posts

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)

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

Comment 1st day of Septemebr, 2011

You may wish to put the patched kext in E/E and leave the Vanilla kext in S/L/E alone.

 

October 24th, 2011 - Above patch reportedly good for 10.7.2 too.

Share this post


Link to post
Share on other sites
Advertisement
you need a Patch in DSDT, use DSDT Auto-Patcher

 

The same dsdt.aml is perfect in 10.6.7. Which additional patch then for dsdt in 10.7 plse?

Share this post


Link to post
Share on other sites

I too am experiencing this same problem in Lion. The system goes into S3 sleep as expected, but upon wake the system restarts and resets CMOS. Same DSDT is used with Snow Leopard and is 100% functional.

 

I'd like others who are experiencing this issue as well to make a post here as well. Thanks all!

 

-Stell

 

MSI X58 Big Bang X-Power.

Share this post


Link to post
Share on other sites
you need a Patch in DSDT, use DSDT Auto-Patcher

 

Patched original dsdt with DSDT Auto-Patcher, but same problem persists.

Share this post


Link to post
Share on other sites

same here with XPC 0.82.33 on asus p5q lion DP2 and proper DSDT that FULL works in snow 10.6.7 (s3 sleep also)

It seems for now that we have to disable the sleep function.

Cheers

Share this post


Link to post
Share on other sites

I have sleep working on an ASUS P5G41-M LX2/GB. I'll make some edits to my MSI X58 DSDT to see if i can accomplish any sort of sleep fixes.

 

-Stell

Share this post


Link to post
Share on other sites

I have the same problem.. my dsdt.aml works well in Snow... but CMOS reset after sleep in lion.

when reboot , the CMOS display message

" Overclock failed. CMOS reset. press F1 to go to setup and F10 to load default"

 

My system

Asus P6TSE, 9800GT 512Mhz and 6G working memory, icore7 930.

DP2 with update for DP2 installed.

Share this post


Link to post
Share on other sites

May be length = 2 in RTC Device is not the solution for lion:

MacPro 8.2

   Device (RTC)
			{
				Name (_HID, EisaId ("PNP0B00"))
				Name (_CRS, ResourceTemplate ()
				{
					IO (Decode16,
						0x0070,			 // Range Minimum
						0x0070,			 // Range Maximum
						0x01,			   // Alignment
						0x08,			   // Length
						)
					IRQNoFlags ()
						{8}
				})
			}

 

not sure could also be because sandy bridge is different.

Share this post


Link to post
Share on other sites
May be length = 2 in RTC Device is not the solution for lion:

MacPro 8.2

   Device (RTC)
			{
				Name (_HID, EisaId ("PNP0B00"))
				Name (_CRS, ResourceTemplate ()
				{
					IO (Decode16,
						0x0070,			 // Range Minimum
						0x0070,			 // Range Maximum
						0x01,			   // Alignment
						0x08,			   // Length
						)
					IRQNoFlags ()
						{8}
				})
			}

 

not sure could also be because sandy bridge is different.

 

I'll give it a shot later, but the ASUS board my girlfriend uses still has the original RTC code and it works just fine with sleep. Thanks for the response!

 

Stell

Share this post


Link to post
Share on other sites
works fine here.have not patched anything. yet

 

bossob,

 

Can you upload the DSDT you're using now for Lion.

 

Thanks,

 

Stell

Share this post


Link to post
Share on other sites
bossob,

 

Can you upload the DSDT you're using now for Lion.

 

Thanks,

 

Stell

 

+1 here, thanks maybe we can find a solution in that one

:P tnx

Share this post


Link to post
Share on other sites

How do you know the DSDT has been loaded correctly to your system?

 

From my experiences these new bootloaders named XPC or [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] don't support my custom DSDT. Or it's my fault because I am missing something?

 

I noticed that, because I had to use NullCPUPowerManagement.kext and Elliot's RTC fix to prevent resetting CSMOS.

 

When using a DSDT editor and telling to extract DSDT from system I also get a clean DSDT as if no DSDT was loaded. (would this method be correct to prove if it's loaded or not?)

Share this post


Link to post
Share on other sites
How do you know the DSDT has been loaded correctly to your system?

 

From my experiences these new bootloaders named XPC or [url="http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/"]#####[/url] don't support my custom DSDT. Or it's my fault because I am missing something?

 

I noticed that, because I had to use NullCPUPowerManagement.kext and Elliot's RTC fix to prevent resetting CSMOS.

 

When using a DSDT editor and telling to extract DSDT from system I also get a clean DSDT as if no DSDT was loaded. (would this method be correct to prove if it's loaded or not?)

 

For me with XPC (v 0.82.55) loads my dsdt custom correctly, in fact i have all fixes that i have in snow (audio, usb fix, ecc). Actually the only problem that i have is reset cmos after sleep mode.

 

To get rid of nullcpupowemnagagment.kext since XPC doesn't have automatic P-State and C-states generator, you have to add them manually it to your dsdt like before that was implemented in chameleon.

Cheers

Share this post


Link to post
Share on other sites
works fine here.have not patched anything. yet

 

What MotherBoard are you using? Gigabyte!

 

And for those without problems, do you have the ' System Sleep' and 'System Wake' kernel log messages as in SL?

Share this post


Link to post
Share on other sites

I have this problem also.

10.7 (all preview releases) will sleep and wake just fine. But after doing so, CMOS will be reset for next boot after restart or shutdown.

 

I've also tried using hibernation with sudo pmset -a hibernate mode 1, but it doesn't make any difference.

Share this post


Link to post
Share on other sites

This kernel message appears after sleep and wake:-

 

kernel: IOPMrootDomain: client 0xffffff7f80bb1e7c returned 120000000 for kIOMessageSystemWillSleep

 

It appears the client vetoes proper sleep so preventing some housekeeping tasks and prompting the above msg instead of a successful 'System Sleep' msg.

 

Anyone knows what the client address refers to?

 

Edit: Found pointing to IOGraphicsFamily.kext

Share this post


Link to post
Share on other sites

Same {censored}in problem here!

 

CMOS reset after try to wake up from sleep!

 

Gigabyte x58a UD7.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.



×