Jump to content

Anyone else running an ASUS G51 with i7 core?


  • Please log in to reply
35 replies to this topic

#1
Tamed G

Tamed G

    InsanelyMac Protégé

  • Members
  • PipPip
  • 55 posts
I have an ASUS G51-JC with a dual boot set up. This laptop has two hard drives so I have one dedicated to windows and one dedicated to OS X.

SCREEN: 15.6" FULL HD 1080p 1920x1080 "CSV-Colorshine" WIDE-SCREEN LED LCD
* CPU: Intel® Core i7 720QM Quad Core 6MB Cache (1.60GHz) Processor
* RAM: 4GB/4096MB DDR3 RAM
* HDD: 640GB HDD Set = 320GB HDD @ 7200RPM
* ODD: DVD-Burner Dual Layer DVD+/-RW
* VIDEO: nVidia GeForce GTX 260M 1GB/1024MB DDR3
* OS: Windows 7 Home Premium
* OTHER FEATURES: 802.11N, 2.0m Web-Cam, Bluetooth, RJ-45 LAN, eSATA, HDMI, 56k Fax/Modem

I have Snow Leopard Retail 10.6.4 running on the second hard drive using the Empire EFi boot disk, overall it looks very very good.

Only glitches I am noticing so far are...

- Memory is reporting as only being 1gb, not sure if the system is only using 1gb or the full 4gb
- Shutdown and deep sleep/hibernate not working
- iphone won't charge or mount on USB ports
- sound forgets settings on reboot using VoodooHDA 2.61
- video seems good, full 1080p playback using ATY_Init but no idea about ce/iq yet, audio goes out of sync on QT vids
- built in video camera is blank on apple apps
- having to swap out internal Intel WiFi for Dell 1510 card to get Wireless

Wondering if anyone else is using a similar setup and has got any further than this with it.

Some good help here for owners of this laptop...

http://www.insanelym...howtopic=211724

#2
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

Thanks for the reply. I see now. I do have an SMbus contoller though, that is why I was not sure about Device (sbus)?

So I don't have to mod the DSDT and insert a Device (sbus) code as as they did in these two posts?

http://www.insanelym...howtopic=190780

and

http://www.projectos...p?showtopic=685

If you have SMBus controller, you can obtain it's device & vendor ID in windows Device Manager. You can add manually the Device (SBUS) in your DSDT by following the guide/instruction from the above threads. This can solve the AppleSMBusPCI start::failed error. Mine doesn't have SMBus controller. Can you post the screenshot of the Device Manager? I just want to see where the SMBus controller located on your notebook.

WHat mods where done to the USB? I have seen mods for USB on wake insertion error fix, for EHCI. Is this the fix you did? DId you add that DTGP method for each USB device in your DSDT or just for the EHCI? My EHCI device sais built in per IOREG. My EHC's are labelled EHC0 and EHC1.

My mod is not for wake from sleep since my Acer Aspire 9420 can wake from sleep just fine. It is for fixing a couple of things that preventing it from entering sleep mode. When entering the notebook to sleep mode, I found two internal devices that causing it to failed:-
1) Bluetooth
2) Webcam
The bluetooth is connected to USB 1.1 port, USB4 to be exact. By referring to ACPI documentation, I concluded that by altering the Power State Wake (_PSW) control method, I can prevent the bluetooth device from waking the notebook from sleep mode. This is the altered code for USB4 device in DSDT:-


Method (_PSW, 1, NotSerialized)
				{
					If (Arg0)
					{
						// Store (0x03, U4EN)
						// Disable USB4 capability to wake a sleeping system
						Store (0x00, U4EN)
					}
					Else
					{
						Store (0x00, U4EN)
					}
				}
Arguments for _PSW are:-

Arguments: (1)
Arg0 – An Integer containing a wake capability control
0 – Disable the device’s wake capabilities
1 – Enable the device’s wake capabilities

What I do is, I didn't change the Arg0 value but I change the behavior where even when the Arg0 value is 1, it will always execute the same thing as it was Arg0=0. So, it will always disabled the device's wake capabilities.
The webcam is a logitech webcam which is not supported in Mac OS X. Not even by macam driver. This device is connected to USB 2.0 port, USB7 to be exact. The above method no longer work since in my USB7 entry some codes/variables are missing. Fortunately there is another solution. From my understanding, to prevent the device from waking the notebook from sleep, we need to control the current supplied to it. I found this fix from the above thread (first link). It also fixed the USB drive insertion error after waking from sleep.
// start - USB drive sleep fix
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x0B)
					{
						"AAPL,clock-id",
						Buffer (One)
						{
							0x01
						},

						"device_type",
						Buffer (0x05)
						{
							"EHCI"
						},

						"AAPL,current-available",
						0x04B0,
						"AAPL,current-extra",
						0x02BC,
						"AAPL,current-in-sleep",
						0x03E8,
						Buffer (One)
						{
							0x00
						}
					}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					Return (Local0)
				}
				// end - USB drive sleep fix


All of this is to allow the notebook goes to sleep. For wake, I only add ForceWake=Yes in com.apple.Boot.plist file.

I added these scripts an now sleep/wake works. I also added script from EVO DSDTSE Lid Fix to get Sleep to work when lid is closed but when I open lid no wake. I have to either strike the keyboard or click once on the power button.

For waking the notebook after opening the lid, it is depending on your DSDT. I'm afraid it is not supported. Maybe there is a fix for this but I haven't found it yet. All of people that able to get this to work is because it work out-of-the-box.

Here is what my LID, EHC0 and EHC1 looked like before the mod and after. For some reason the Device ID in IOREG keeps showing EHC0 as <"4;"> instead of it showing what its suppose to be, <34 3b 00 00>. EHC1 shows correct id as <3c 3b 00 00>.

I think the correct fix for LID sleep function for you is like this:-
Scope (_SB)     {         Device (LID)         {             Name (_HID, EisaId ("PNP0C0D"))             Method (_LID, 0, NotSerialized)             {                 Store (One, Local0)                 Store (^^PCI0.SBRG.EC0.RPIN (0x0A), Local0)                 If (LEqual (Local0, Ones))                 {                     Store (One, Local0)Notify (SLPB, 0x80)                 }                  Return (Local0)             }         }     }
This way you will preserved the original codes. We don't want something else to failed just because we want the LID sleep working. About the Device ID not showing correctly, I don't think it is a problem. It maybe just cosmetic. As long as it works as it should be, you can safely ignore it. :blink:

#3
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.
kizwan,

Screenshot and my LSPCI Using EVO ToolsX below. Both show 3b30 and I inserted those IDs into the SBUS fix and it did not see any functional difference in the G51Jx-X5 nor did it remove the "** AppleSMBusPCI::start failed to get acpi path for provider". I will try it again since I have been adding and removing DSDT script and who knows one thing interfering with another or fixing one thing and breaking another.

The Lid fix is not working that way so I decided to put the Original Lid script back the way it was and just used this Clamshell Fix from the XPS M1530 Guide Link:

Device (PNLF)            {                Name (_HID, EisaId ("APP0002"))                Name (_CID, "backlight")                Name (_UID, 0x0A)                Name (_STA, 0x0B)            }

Like I said though the Republic of Gamer LED still blinks and there is no Deep Sleep. The XPS M1530 Guide mentioned something about doing the HDEF mod or there would be sleep issues. This may be only for the M1330/M1530 not sure?


jpg Screenshot from Win7 Device Manager:

Attached File  SmBios_Screenshot.jpg   536.4KB   23 downloads

EVO ToolsX LSPCI:

Attached File  LsPci_info_normal.txt   4.67KB   6 downloads




EDITED ABOUT 30 MINUTES LATER:

I have re-inserted the sbus script and the DBEN method per the M1530 thread but the OperationRegion always exists in my DSDT so I cannot add that script.

I attached my DSDT to see if you think I have placed the Sbus script correctly or not?

Thanks

Attached File  dsdt.aml.zip   22.7KB   9 downloads

#4
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts
@oSxFr33k, I will need more time to look into this. Checking DSDT is a time consuming process. :D I'll let you know as soon as possible. I will compare the modified DSDT with the original one (the one you posted at Mammoth's thread - assuming it is original DSDT).

#5
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.
@kizwan,

Let me attach this DSDT because I upgraded the firmware after I posted over at Mammoth's thread. This is an untouched DSDT (Vanilla) Extracted in Win7 using EVO DSDTSE.

I really don't know which SBUS script to use the one over at projectOSX, the one from the M1530 Guide or the one from the HP DV6t, DV7t, DV8t thread?

None of them seem to get rid of the "AppleSMBusPCI::start failed to get acpi path" Message in the kernel. I am also lost as to how the one posted in the M1530 should work. According to the script its suppose to spoof the sbus in thinking its "pci8086,283e -> pci8086,3a30", but mine is a 3b30. Its also suppose to be inserted above the Device (ISAB) which there is none. SO maybe I am inserting the script in the wrong section of my DSDT?

Thanks for helping out.

Win7 Vanilla Extracted DSDT Below:


Attached File  Asus_G51Jx_Bios_108_DSDT.aml.zip   21.95KB   11 downloads


EDITED:

I finally figured it out and the message is gone now. I just copied over the SBUS script from the Mammoth's DSDT from his latest "MammothDVxtBCDv1.15.iso" image.

But not sure if I should use that one, the one from ProjectOSX or the M1530 thread? I don't think I could get it inserted before because of the Scopes. I had them wrong. I had to add the PCI scope and now its inserted and the IOREG shows the correct Vender and ID version.

So how will this help my system other than getting rid of the "AppleSMBusPCI::start failed to get acpi path"? I still have the USB insertion error after wake.

Maybe I have to do something with the HDEF as I mentioned before from the M1530 thread?

Attached below is the SBUS fix and EHC fixes. I may have not needed to add them to each USB device and only the EHC device. Does not affect or make any difference it seems?

Attached File  Asus_G51_SBUS_FIX_EHCI_FIXES.aml.zip   22.69KB   5 downloads


EDITED:

Ok I cleaned up the DSDT and removed all the extra EHCI scripts I inserted into each USB Device and only applied it to the EHC0 and EHC1. I am also using the Generic EHCI Fix that does not have the Device IDs of each EHC device. So its the one your using.

SBUS is now inserted as I said above and message from kernel gone. SBUS shows up in the Ioreg now with the Correct Vender and Device Ids. Not sure how this will help my system. The SBUS script was copied as I from Mammoth's ISO as I said above.

Let me know what you think when you have time?

Most current Modified and Cleaned DSDT and Ioreg below:


Attached File  Asus_G51Jx_Most_Current_Most_Cleaned_Still_Working_On_Insertion_Error_Fix_SBUS_Working_Now.aml.zip   22.76KB   16 downloads

Attached File  osxfr33k___s_MacBook_Pro.ioreg.zip   409.8KB   8 downloads


EDITED:

I have provided the SBUS scripts from all three sources in as a dsl file. Have a look. AS I said the only one I could get to work without Object errors and other type of errors was the one I got directly from Mammoth's DVxT DSDT from the ISO he provided.

Attached File  SMBUS_HACKS_Mammoths_HP_DVxT_THEKiNGS_ANd_XPSM1530.dsl.zip   4.85KB   10 downloads



kizwan check you PM real quick its worthwhile!!

#6
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts
It is a nice offer. ;) But I have to decline. ;) I will help you on this matter. However, I will not be able to help you until end of next week. For the mean time, you can try it yourself. I think you should copy the SBUS codes from the Dell XPS thread. Just put your SMBUS controller vendor & device ID in it.

I don't think USB insertion error during wake is related to SBUS. Please put the "USB drive sleep fix" I posted earlier in your EHCI code.

#7
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.

It is a nice offer. :D But I have to decline. ;) I will help you on this matter. However, I will not be able to help you until end of next week. For the mean time, you can try it yourself. I think you should copy the SBUS codes from the Dell XPS thread. Just put your SMBUS controller vendor & device ID in it.

I don't think USB insertion error during wake is related to SBUS. Please put the "USB drive sleep fix" I posted earlier in your EHCI code.


The code you displayed a couple posts up is the exact code I put into place but there is this one method that was already there so I just inserted your code above it. I wonder if that is what could be causing the Wake USB FLash Drive Disk Insertion error?

My EHC0 Code:

Device (EHC0)            {                Name (_ADR, 0x001D0000)                Name (_S1D, 0x02)                Name (_S3D, 0x02)                Method (_DSM, 4, NotSerialized)                {                    Store (Package (0x0B)                        {                            "AAPL,clock-id",                             Buffer (One)                            {                                0x01                            },                             "device_type",                             Buffer (0x05)                            {                                "EHCI"                            },                             "AAPL,current-available",                             0x04B0,                             "AAPL,current-extra",                             0x02BC,                             "AAPL,current-in-sleep",                             0x03E8,                             Buffer (One)                            {                                0x00                            }                        }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }                Method (_PRW, 0, NotSerialized)                {                    Return (GPRW (0x0D, 0x03))                }            }


My EHC1 Code:

Device (EHC1)            {                Name (_ADR, 0x001A0000)                Name (_S1D, 0x02)                Name (_S3D, 0x02)                Method (_DSM, 4, NotSerialized)                {                    Store (Package (0x0B)                        {                            "AAPL,clock-id",                             Buffer (One)                            {                                0x01                            },                             "device_type",                             Buffer (0x05)                            {                                "EHCI"                            },                             "AAPL,current-available",                             0x04B0,                             "AAPL,current-extra",                             0x02BC,                             "AAPL,current-in-sleep",                             0x03E8,                             Buffer (One)                            {                                0x00                            }                        }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }                Method (_PRW, 0, NotSerialized)                {                    Return (GPRW (0x0D, 0x03))                }            }

I even tried the fix from this thread and that does not help still have the Disk Insertion Error:

http://osx86.net/f84...1960/page3.html

As far as the SBUS code from the XPS thread I get a ton of Object/Device Errors and can't compile it. I most likely will have to either find the equivalent device or object and change the names in the SBUS or just add them as new devices. This part will be tricky for me. The one from Mammoth's HP inserts perfectly and shows up in the Ioreg with the correct IDs, but not sure what extra functionality I will get from having the sbus insert correctly? Everest shows the Smbus but still does not insert the code into ACPI-DSDT. I wonder if I grab the Bios Bin and use Koalala's DSDT editor to convert to DSDT would it then display the Smbus code in the DSST? I will give that a try and hope I am proceeding in the right direction with this or not?

Have a look at my Ioreg I posted above your post.

Thanks for helping and I am going to keep trial and error until I hope I can master this. I use to know Power Builder Programing but its been years and remember a little which helps a bit with DSDT code as far as structure but the code is still nothing like C or C Plus etc.

#8
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.
kizwan,

I have tried just about everything I can think of and still no luck with the USB DIsk Insertion Error upon wake.

The SBUS script from Mammoth's HP is identical to the one on a imac i7 Quad core and that one was just copy and paste no compilation errors and shows up in ioreg with correct ids etc. The "AppleSMBusPCI::start failed to get acpi path for provider" message is now gone.

I don't think sleep is deep sleep but good enough for now. All that remains is the Disk Insertion Error.

I also added SATA device but this just may be a cosmetic thing to show up in Ioreg I dunno?

Here are some other sources I tired and none of these worked either:

http://osx86.net/f84...1960/page3.html

http://osx86.net/f84...t-in-fix-t6477/

http://www.projectos...?...

http://osx86.net/f84...dsdt-fix-t3849/

http://www.insanelym...p...68014&st=20

http://www.insanelym...p...55345&st=20


I know your very busy but if you think you could forward me in the right direction. I to have the USB Webcam and Bluetooth but according to my Ioreg they are EHCI USB 2.0 and when inserted I see them appear in ioreg under those sections so I don't think they are USB 1.1. I observe them in real time and when the system sleeps/wake, they go from red to green to black which I assume is normal. The USB flash drive Disk Insertion Error does go from Red to Green to Black also even though the Error happens.

I am totally lost on this issue and where to go next?



My latest DSDT and Ioreg attached.


Attached File  Asus.G51JX.dsdt.aml.zip   22.78KB   14 downloads

Attached File  Asus_G51Jx_Current.ioreg.zip   416.65KB   9 downloads

#9
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts
@oSxFr33k,

Sorry for MIA last couple of days. ;) I lost already what what have you done to your DSDT. I'm sorry but can you post your modified DSDT which only contains additional codes for SBUS & EHCI sleep fix? I need to compare it with original DSDT you gave me earlier. This way it will be much easier for me to look whether you put the additional codes correctly or not. Also please post the ioreg dump using IORegistryExplorer application for this modified DSDT. :rolleyes:

#10
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.

@oSxFr33k,

Sorry for MIA last couple of days. ;) I lost already what what have you done to your DSDT. I'm sorry but can you post your modified DSDT which only contains additional codes for SBUS & EHCI sleep fix? I need to compare it with original DSDT you gave me earlier. This way it will be much easier for me to look whether you put the additional codes correctly or not. Also please post the ioreg dump using IORegistryExplorer application for this modified DSDT. :rolleyes:



I only added three things Device (Sata), only two lines of script thats it. Wlan method to insert the name of my wireless card and the PNLF from the XPS 1530 thread. Scripts added are below but I am removing them now and inserting the DSDT which will be attached below:


Here are the three additions I made and they work.


Wlan Method

Method (_DSM, 4, NotSerialized)                    {                        Store (Package (0x0C)                            {                                "AAPL,slot-name",                                 Buffer (0x08)                                {                                    "AirPort"                                },                                 "device-id",                                 Unicode ("*"),                                 "device_type",                                 Buffer (0x08)                                {                                    "AirPort"                                },                                 "model",                                 Buffer (0x34)                                {                                    "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"                                },                                 "subsystem-id",                                 Buffer (0x04)                                {                                    0x8F, 0x00, 0x00, 0x00                                },                                 "subsystem-vendor-id",                                 Buffer (0x04)                                {                                    0x6B, 0x10, 0x00, 0x00                                }                            }, Local0)                        DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                        Return (Local0)                    }


Sata


Scope (_SB.PCI0)    {        Device (SATA)        {            Name (_ADR, 0x001F0002)        }


Clamshell fix, PNLF. Won't sleep when I close the lid unless thats inserted but I removed it for now.


Device (PNLF)            {                Name (_HID, EisaId ("APP0002"))                Name (_CID, "backlight")                Name (_UID, 0x0A)                Name (_STA, 0x0B)            }




Here is a DSDT and Ioreg with only the EHCI, SBUS and the DTGP of course fix and nothing else. All my ioreg's files are created from Ioreg Explorer. I just put the ioreg extension at the end is all.

Something isn't correct with the clock Id. Should EHC0 be 0x01 and EHC1 be 0x02? Anyhow they are both 0x01 as yours is.


Attached File  Asus_G51Jx_EHCI_and_SBUS_FIx_only.aml.zip   22.61KB   6 downloads

Attached File  Asus_G51JX_EHCI_and_SBUS_FIX_ONLY.ioreg.zip   411.06KB   2 downloads

#11
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts
@oSxFr33k,

One question, does Atheros AR9285 working after injecting the code in DSDT?

I already compared the latest modified DSDT (previous post) with the original one, I noticed that you make a couple of changes which are not necessary. I'm going to do a cleanup to your modified DSDT. Only airport, PNLF, SBUS & EHCI code will remain after cleanup. Our chipset, HM55, is fully support in Mac OS X, so SATA fix is not necessary. Do you have problem with SATA controller?

EDIT: May I know what is this for?
Device (SBRG)
			{
				Name (_ADR, 0x001F0000)
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x02)
						{
							"device-id", 
							Buffer (0x04)
							{
								0x09, 0x3B, 0x00, 0x00
							}
						}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					Return (Local0)
				}


#12
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.
Oh Im sorry I forgot about adding the DTGP method to the LPCB Equivalent SBRG. Sorry about that.

I only added Device (sata) so it would show up in Ioreg as I mentioned only a cosmetic thing.

The Script I added for the AR9285 was only to show up in System Profiler Ethernet section is all.

To get it to work you need this kext file by ThEKiNG.

Link:

http://www.kexts.com...ros_ar9285.html





Here is the original SBRG script:


Device (SBRG)            {                Name (_ADR, 0x001F0000)                Scope (\_SB)                {                    OperationRegion (\_SB.PCI0.SBRG.LPC1, PCI_Config, 0x40, 0xC0)                    Field (\_SB.PCI0.SBRG.LPC1, AnyAcc, NoLock, Preserve)                    {                                Offset (0x20),                         PARC,   8,                         PBRC,   8,                         PCRC,   8,                         PDRC,   8,                                 Offset (0x28),                         PERC,   8,                         PFRC,   8,                         PGRC,   8,                         PHRC,   8                    }

And most important my Kernel.log sleep/wake see the last messages if they may help any?

Attached File  kernel.9_18_10.txt   622.94KB   5 downloads

#13
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

And most important my Kernel.log sleep/wake see the last messages if they may help any?

Attached File  kernel.9_18_10.txt   622.94KB   5 downloads

I'll get back to you later.

#14
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.

I'll get back to you later.


Thanks. I remember now why I added the DTGP to SRBG. I thought that might get rid of the "** AppleSMBusPCI::start failed to get acpi path for provider" which it did not and forgot to put it back to the original script.

What got rid of the message was adding the SBUS script which is directly from an iMAC I7 DSDT posted by iFABIO from the ProjectOSX forum. That script is 100% the same as far as I can see as Mammoth's HP Sbus Script.

I also noticed the iMAC had Device (Sata) in the DSDT and Ioreg so that was the reason I added Device (Sata). No other reason.

From the kernel log, it does look like my Bluetooth is a problem when it sleeps and wakes. It does wake but takes a long time.

Could that be why I get the USB DIsk insertion Error because of the Bluetooth? There are a couple posts in the Apple support Forum regarding the Bluetooth messages you see in my kernel.log and they mention it to be some kind of bug related to iSync and the sony ericsson phone.

http://discussions.i...ssageID=5928918

http://discussions.a...ssageID=5922979

#15
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

Could that be why I get the USB DIsk insertion Error because of the Bluetooth? There are a couple posts in the Apple support Forum regarding the Bluetooth messages you see in my kernel.log and they mention it to be some kind of bug related to iSync and the sony ericsson phone.

No, bluetooth has nothing to do with USB Disk insertion error. I just realize you use "insertion" word here, so I want to make sure I understand you correctly. Is this USB Disk ejection error after waking from sleep (like it was not ejected properly)?

I'm now cleaning up your DSDT. I just put back PNLF, AirPort, SBUS & EHCI sleep fix. I didn't put PWRB codes because I don't think it is necessary. One more thing, please check in windows Device Manager for SMBUS controller address. Is it 001F0003?

#16
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts
@oSxFr33k,

This is the modified DSDT for Asus G51Jx with PNLF, AirPort, SBUS, EHCI Sleep FIX, RTC, HPET, LID Sleep FIX (sleep when LID close) & CMOS Reset FIX.
http://www.mediafire...m25ymr7i6y28gm4
Please test & let me know the result.

#17
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.
@kizwan,

Everything works great thanks for cleaning it up and sorry about the Device (PWRB) forgot about that one to.

The SMbus address "0x001F0003" is correct.

Since I am still learning about ACPI and DSDT can I ask a couple questions about some of the cleanup and warning fixes.


Lid Fix Question:

It seemed that just adding the clamshell PNLF device fix did the job. WIll I still need the PNLF device with the Lid script fix you added? Both PNLF and the Lid script is needed to have the Lid close put system to sleep?

[codebox] Else
{
If (LEqual (Local0, Zero))
{
Store (Zero, Local0)
Notify (SLPB, 0x80)
}
}[/codebox]


HPET fix looked the same as mine.

CMOS, Device RTC Fix you basically changed the address 0x08 to 0x02? I forget to do that?

[codebox] IO (Decode16,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x01, // Alignment
0x02, // Length
)[/codebox]


Airport Method was inserted after last method instead of near the beginning of the Wlan device. Does that make a difference of placement?

DTGP Method just before "Method (_WAK, 1, Serialized)" Is this the normal place for it currently? I have read to place it just after the header in some topics.

Quote from the EVO DSDTSE Application:

Method DTGP Hack:

"This method must be included in the DSDT (In any location, preferably right after the Headers, so the hacks of video audio, net etc work)"

Sbus Device placement. Same question about placement? Is it important to have it near the beginning of the DSDT, The first Scope (_SB.PCI0) rather than further down the DSDT?

EHCI questions. What is the purpose of adding these two methods?

[codebox] Method (_S3D, 0, NotSerialized)
{
Return (0x02)
}

Method (_S4D, 0, NotSerialized)
{
Return (0x02)[/codebox]



Now for the Warning fixes. Our Mute, 0x03E8 and _T_0 fixes are exactly the same but there is a different looking fix you made for the "Not all control paths return a value ^" warnings for KPTS, KWAK, _QOC, _QOD, and MF42.


I applied a Return (Zero)


Versus your fix:

[codebox] Return (Package (0x02)
{
Zero,
Zero
})[/codebox]


Whats the main difference in applying either your fix or the one I applied?

After Wake from sleep I still have the USB device was not ejected properly. Thats what I meant by Disk Insertion Error.

Do you think there ever will be a fix for this?



Thanks so much for your effort and cleaning up my DSDT. It looks great and works great.

Any other things you can think I might need to try to fix the USB Device Error on wake let me know.

#18
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

Lid Fix Question:

It seemed that just adding the clamshell PNLF device fix did the job. WIll I still need the PNLF device with the Lid script fix you added? Both PNLF and the Lid script is needed to have the Lid close put system to sleep?

Else                {                    If (LEqual (Local0, Zero))                    {                        Store (Zero, Local0)                        Notify (SLPB, 0x80)                    }                }

I only know that PNLF device fix is to enable brightness control in System Preferences (look in the display section). However, the brightness control doesn't work for all hardware. I did read about PNLF fix enabled LID sleep function but it doesn't work for all hardware too. You can try commented out the LID sleep FIX codes. After that, if closing the LID make the computer goes to sleep, you don't need the LID sleep FIX codes.

CMOS, Device RTC Fix you basically changed the address 0x08 to 0x02? I forget to do that?

IO (Decode16,                            0x0070,             // Range Minimum                            0x0070,             // Range Maximum                            0x01,               // Alignment                            0x02,               // Length                            )

This is for CMOS Reset FIX. If you didn't change the Length to 0x02, BIOS setting will reset to default every time rebooting the computer (or after kernel panic).

Airport Method was inserted after last method instead of near the beginning of the Wlan device. Does that make a difference of placement?

No, you can put wherever you want as long as it is in WLAN device.

DTGP Method just before "Method (_WAK, 1, Serialized)" Is this the normal place for it currently? I have read to place it just after the header in some topics.

Quote from the EVO DSDTSE Application:

Method DTGP Hack:

"This method must be included in the DSDT (In any location, preferably right after the Headers, so the hacks of video audio, net etc work)"

You can put DTGP codes wherever you want as long as it is accessible from anywhere in the DSDT. I don't want to mess the header, that is why I put it near _WAK & _PTS method.

Sbus Device placement. Same question about placement? Is it important to have it near the beginning of the DSDT, The first Scope (_SB.PCI0) rather than further down the DSDT?

When compared to my DSDT (Acer Aspire 9420), I found SBUS is placed at _SB.PCI0.SBUS. There is already Scope (_SB.PCI0) exist in your DSDT, so I put SBUS there.

EHCI questions. What is the purpose of adding these two methods?

Method (_S3D, 0, NotSerialized)                {                    Return (0x02)                }                Method (_S4D, 0, NotSerialized)                {                    Return (0x02)

This methods was taken from my DSDT (Acer Aspire 9420). Sleep work on my Acer.
Quoting from ACPI Specification Rev4 (_S3D as an example):-
This object evaluates to an integer that conveys to OSPM the highest power (lowest number) D-state supported by this device in the S3 system sleeping state.
I doesn't fully understand how it work either. :(

Now for the Warning fixes. Our Mute, 0x03E8 and _T_0 fixes are exactly the same but there is a different looking fix you made for the "Not all control paths return a value ^" warnings for KPTS, KWAK, _QOC, _QOD, and MF42.


I applied a Return (Zero)


Versus your fix:

Return (Package (0x02)            {                Zero,                 Zero            })

There is no difference since both fixes just to satisfy the compiler, so that when compiling it doesn't produced the warning message.

Whats the main difference in applying either your fix or the one I applied?

When troubleshooting specific problem, it is best to put less additional codes in DSDT. If you put everything, it is difficult to pinpoint which ones fix or caused the problem. ;) Basically there are no differences between my fix & yours. I just removed the unnecessary changes you did.

After Wake from sleep I still have the USB device was not ejected properly. Thats what I meant by Disk Insertion Error.

Do you think there ever will be a fix for this?

Unfortunately, the EHCI Sleep FIX doesn't work for all hardware too. On my Asus notebook which have identical chipset with yours (HM55), sleep still doesn't work. I haven't fix the DSDT yet. I will let you know when I'm able to get sleep working on my Asus. On my Acer Aspire 9420, there is an additional method in EHCI device but it didn't have any codes in it:-
Method (_PSW, 1, NotSerialized)
				  {
					  If (Arg0) {}
					  Else
					  {
					  }
				  }
_PSW (Power State Wake)
In addition to the _PRW control method, this control method can be used to enable or disable the device’s ability to wake a sleeping system.
You can try put it in your DSDT.
On my Acer, when sleeping (except hibernate mode), power is still being supplied to USB Disk drive. After wake-up, there is no warning message about it doesn't properly ejected (including waking up from hibernate). This is possible with the EHCI Sleep FIX.

EDIT: Can you post the kernel & system logs when you resume from sleep? I want to see what happened during sleep & waking from sleep. Of course with USB disk plugged in. Thank you. :D

#19
oSxFr33k

oSxFr33k

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 903 posts
  • Gender:Male
  • Interests:Sound and Graphic Design. Electronics in general.
@kizwan,

Thanks so much for answering all the questions. Makes things much clearer for me.

Here are three logs. Kernel, System and I decided to install Apples IOUSBFamily.kext debugger kext with USB Prober and attaching that log as well. Tried to read through it and not sure about some of the information in it and not sure if it will help you much either?

Thanks again for taking the time to look this over:


Attached File  kernel.log_9_19_10.txt   64.44KB   2 downloads

Attached File  system.log_9_19_10.txt   17.25KB   1 downloads

Attached File  IOUSBFamily_Debugger_USB_Log.txt.zip   1.04MB   1 downloads


This AMI Aptio UEFI Bios has very limited options in it and I bet there is an issue with that. No advanced features like do not wake on USB device options etc and maybe that is on by default and that can be an issue on some systems. Turning that off on one of my dells made that Disk Error go away from what I remember.

#20
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts
@oSxFr33k, please try set "AAPL,clock-id" for EHC1 to 0x02. See whether it fix the USB disk insertion error or not.

I already fix the DSDT for my Asus in order for me to investigate the sleep issue since it have almost similar DSDT with yours. Unfortunately, sleep still doesn't work. No error messages at all. I guess this is because it have Optimus technology & monitor (including the external monitor) is controlled by Intel HD Graphic (not recognized properly), not by the Nvidia GT 335M. Looks like my Asus can't help us investigate the USB disk insertion error. :rolleyes: BTW, I did put SBUS device in my DSDT & Mac OS X picked-up the subsystem-id, subsystem-vendor-id, etc automatically. This means my Asus does have SMBUS controller. I wonder why it didn't show up in Device Manager. I guess I need to do fresh windows setup (still use pre-installed windows). I can inject the modified DSDT into registry but I don't want to mess it right now. :D





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

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