b3rg3r Posted April 16 Share Posted April 16 (edited) Hello and thanks in advance for any light you can bring to this problem, I have a Lenovo Thinkpad X250 with macOS Monterey 12.7.3 installed and OpenCore 0.9.9, everything works perfectly including sleep mode S3. But I have a little problem with hibernation (hibernatemode 25 or 29) which works but produce a strange error on the next boot/reboot after being resumed. The behavior is the following: - I put the system to hibernate (either mode 25 or 29), everything OK. - I wake the system and resume from hibernation, everything OK. - I reboot (or shutdown and power on) and the BIOS shows me the following error: 0251: System CMOS Checksum bad - Default configuration used. Press Esc to continue or F1 to enter Setup. - Then I press Esc and everything boots normally (no BIOS setting is affected) and the message disappear on the next boot/reboot, unless I hibernate again (then the message shows up again). I'm thinking that it could be an RTC related problem, but what is strange is that I tried to block all the possible offsets with "rtc-blacklist" from 09 to FF (before 09 I loose date/time) and I am still able to hibernate and the error still shows up. If you look at the different logs you will see that the RTC data gets changed after masOS has been resumed from hibernation, so even with "rtc-blacklist" something is able to write in the RTC which probably cause the Checksum Error. I tried all possible combinations/options in OpenCore, (I am also using HibernationFixup and RTCMemoryFixup) but without success. The only thing I can think of is changing the size of my RTC in my SSDT, which is by default 0x02, but if I put 0x04 or 0x08 it breaks hibernation (black screen and laptop not shutting down) but S3 sleep still works fine. So I'm open to any testing and advices. Thanks in advance! PS: I have to add that there is a dual boot on this system with Linux, but they are completely independent from each other, booting from BIOS menu. On Linux the problem does not appear with hibernation. EDIT: Problem SOLVED by modding the BIOS directly, I removed the "DxeCmosInit" module (responsible for CMOS checks/validation at boot) from the BIOS with UEFITool, then flashed back with CH341A programmer. Now no more complains/checks about CMOS at Boot! Edited June 27 by b3rg3r Link to comment Share on other sites More sharing options...
Recommended Posts