Jump to content

AppleRTC patch = random HDD issue?


  • Please log in to reply
5 replies to this topic

#1
nyolc8

nyolc8

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 802 posts
  • Gender:Male
  • Location:Budapest, Hungary
I patched my AppleRTC to fix the CMOS reset at reboot after sleep with THIS method. Then my sleep broke, so the machine didn't went into full sleep, only the display turned off and maybe the HDDs. So I made the following modifications to my DSDT:

I changed this:
evice (TMR)
			 {
				 Name (_HID, EisaId ("PNP0100"))
				 Name (ATT5, ResourceTemplate ()
				 {
					 IO (Decode16,
						 0x0040,			 // Range Minimum
						 0x0040,			 // Range Maximum
						 0x00,			 // Alignment
						 0x04,			 // Length
						 )
					 IRQNoFlags ()
						 {0}
				 })
				 Name (ATT6, ResourceTemplate ()
				 {
					 IO (Decode16,
						 0x0040,			 // Range Minimum
						 0x0040,			 // Range Maximum
						 0x00,			 // Alignment
						 0x04,			 // Length
						 )
				 })
				 Method (_CRS, 0, NotSerialized)
				 {
					 If (LGreaterEqual (OSFX, 0x03))
					 {
						 If (HPTF)
						 {
							 Return (ATT6)
						 }
						 Else
						 {
							 Return (ATT5)
						 }
					 }
					 Else
					 {
						 Return (ATT5)
					 }
				 }
			 }

To this:
Device (TIMR)
			 {
				 Name (_HID, EisaId ("PNP0100"))
				 Name (_CRS, ResourceTemplate ()
				 {
					 IO (Decode16,
						 0x0040,			 // Range Minimum
						 0x0040,			 // Range Maximum
						 0x00,			 // Alignment
						 0x04,			 // Length
						 )
					 IO (Decode16,
						 0x0050,			 // Range Minimum
						 0x0050,			 // Range Maximum
						 0x00,			 // Alignment
						 0x04,			 // Length
						 )
				 })
			 }

And changed this:
Device (RTC)
			 {
				 Name (_HID, EisaId ("PNP0B00"))
				 Name (ATT0, ResourceTemplate ()
				 {
					 IO (Decode16,
						 0x0070,			 // Range Minimum
						 0x0070,			 // Range Maximum
						 0x00,			 // Alignment
						 0x04,			 // Length
						 )
				 })
				 Name (ATT1, ResourceTemplate ()
				 {
					 IO (Decode16,
						 0x0070,			 // Range Minimum
						 0x0070,			 // Range Maximum
						 0x00,			 // Alignment
						 0x04,			 // Length
						 )
				 })
				 Method (_CRS, 0, NotSerialized)
				 {
					 If (LGreaterEqual (OSFX, 0x03))
					 {
						 If (HPTF)
						 {
							 Return (ATT1)
						 }
						 Else
						 {
							 Return (ATT0)
						 }
					 }
					 Else
					 {
						 Return (ATT0)
					 }
				 }
			 }

To this:
Device (RTC)
			 {
				 Name (_HID, EisaId ("PNP0B00"))
				 Name (_CRS, ResourceTemplate ()
				 {
					 IO (Decode16,
						 0x0070,			 // Range Minimum
						 0x0070,			 // Range Maximum
						 0x00,			 // Alignment
						 0x02,			 // Length
						 )
					 IRQNoFlags ()
						 {8}
				 })
			 }

These modifications fixed nicely the issue, I got proper sleep and no cmos reset at restart.



So here is the problematic part:

I have two SATA HDD in my pc, one for OSX(all partitions are hfs), and one for Win8(all partitions are ntfs).
Sometimes my OSX not recognizes the Win8 HDD at all. So it's not appearing in disk utility, not in finder, and there is no ntfs related messages at boot in the console. If I restart, it recognizes it. Or not :D If not, then I restart again and then it recognizes it. So it seems totally random.

But this is definitely not happened before patching appleRTC and the DSDT changes.

Any idea how to fix my problem? Is the DSDT changes made this HDD problem? If yes, how to fix it?

#2
3.14r2

3.14r2

    The Round One

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,333 posts
  • Location:Molvania
IRQ problem most likely.

#3
Dr. Hurt

Dr. Hurt

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,479 posts
  • Gender:Male
  • Location:Cairo, Egypt and NYC, USA
  • Interests:Wandering around on the internet!! Politics, Sci/Tech, Medicine.
Try removing the IRQ from device RTC and change alignment to 1 and length to 8

#4
nyolc8

nyolc8

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 802 posts
  • Gender:Male
  • Location:Budapest, Hungary
Thanks you for the answers, I removed the "IRQNoFlags () {8}" and changed the alignment and length. I'll report back that is fixed or not.

Edit: 3 restart since the modifications, it's good since then. I'll post here if the problem appear again. :)

#5
nyolc8

nyolc8

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 802 posts
  • Gender:Male
  • Location:Budapest, Hungary
Today I restarted and win8 HDD doesn't recognized :( Any other idea what should I change?

#6
nyolc8

nyolc8

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 802 posts
  • Gender:Male
  • Location:Budapest, Hungary
I figured out that sleep doesn't worked because many times my (btech - cambridge silicon chip) bluetooth dongle wakes up the system imidiatelly (on windows too, so not osx issue) when I put the system into sleep mode, so I changed back the DSDT RTC and TMR devices for (almost) the same as before. I really hoping that this fix the hdd issue... No problem yet.
Now I need to figure out what is the problem with my bluetooth dongle.... :)





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy