#1
|
|||
|
|||
Asus G60Vx : DSDT help needed
Hi guys. First post here, but I've been lurking for quite some time now, browsing through the treasure trove of goodies you guys have put together here.
Last weekend I threw down a grand and got myself an Asus G60Vx "Republic of Gamers" laptop - C2D P8400, 4Gb RAM, GTX 360M 1Gb, 16" screen, etc. I bought this with the expectation of getting all the important bits working, with the exception of the WiFi (Intel 5100). So far, so good. I've been editing the DSDT for a couple of days now, and its fairly stable. VoodooHDA still occasionally crashes at startup (was very frequent until I nuked AppleHDA.kext), but everything else is good. What is NOT good, is that sleep doesn't work. Well, it does sleep, it just doesn't wake up! The power button works fine, USB devices are all recognized as internal, ditto with SATA. At the moment, closing the lid merely shuts off the screen. The machine is still active... I've commented out that particular hack for the time being. Anyway. If I activate sleep (whether via the apple menu or the powerbutton menu), the computer spins down as expected. If I then press the power button or any button on the keyboard, the lights come on, I hear the DVD drive activating... then nothing. No reaction from anything. Pressing the power button followed by S or R does nothing. Can one of you gurus help me out? I'm at my still-newbie limit here, I haven't a clue how to proceed. That's the priority. Beyond that, any assistance regarding speedstep (which I don't understand at all yet, but realize the importance of), proper power management, and injecting ALC663 or the ethernet would be much appreciated. Plus, although it works fine with regards to QE/CI, I've a suspicion my gfx entry (VGA) is wrong, as this is a laptop with a panel, VGA and HDMI out, not a desktop with two DVI outs. Help in that area would be great, too. Edit 2010/04/03 : I've gone through my DSDT commenting the changes to make it a bit easier for you, plus I've added the original, unmodified DSDT. Last edited by Stone-D; 04-03-2010 at 07:06 AM. Reason: Changed Attachments |
#2
|
|||
|
|||
I have separate device declarations for CRT, LCD, DVI and HDMI. Can something here along with an error in the VGA declaration be responsible?
Code:
Device (P0P1) { Name (_ADR, 0x00010000) Method (_PRW, 0, NotSerialized) { Return (GPRW (0x09, 0x04)) } Method (_PRT, 0, NotSerialized) { If (PICM) { Return (AR01) } Return (PR01) } Device (VGA) { Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { Store (Package (0x1A) { "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,device_type", Buffer (0x08) { "display" }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "NVCAP", Buffer (0x18) { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x00 }, "NVPM", Buffer (0x20) { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x40 }, "device_type", Buffer (0x0D) { "NVDA,GeForce" }, "model", Buffer (0x23) { "Nvidia GeForce GTX 260M 1GB (CUDA)" }, "rom-revision", Buffer () { "nVidia OpenGL Engine" }, "reg", Buffer (0x78) { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x14, 0x00, 0x01, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x24, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00 } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } OperationRegion (VSID, PCI_Config, Zero, 0x04) Field (VSID, ByteAcc, NoLock, Preserve) { REG0, 32 } Method (PRST, 0, NotSerialized) { If (LEqual (REG0, Ones)) { Return (Zero) } Else { Return (One) } } Name (UPDN, One) Name (NXTD, One) Name (LCDM, One) Name (CRTM, 0x02) Name (TVOM, 0x04) Name (HDMM, 0x08) Name (DVIM, 0x10) Name (DONE, Zero) Name (DOSF, One) Name (BRNC, Zero) Method (_INI, 0, NotSerialized) { GETD () } Method (_DOS, 1, NotSerialized) { And (Arg0, 0x03, DOSF) Store (ShiftRight (Arg0, 0x02), BRNC) And (BRNC, One, BRNC) } Name (DODP, Package (0x04) { 0x00010100, 0x00010110, 0x0210, 0x0220 }) Method (_DOD, 0, NotSerialized) { If (LEqual (VGAF, 0x02)) {} Else { Store (0x0120, Index (DODP, 0x02)) } Return (DODP) } Device (CRTD) { Name (_ADR, 0x0100) Method (_DCS, 0, NotSerialized) { Store (AVLD, Local0) If (Local0) { If (And (Local0, CRTM)) { Return (0x1F) } } Return (0x1D) } Method (_DGS, 0, NotSerialized) { And (NXTD, CRTM, Local0) If (Local0) { Return (One) } Return (Zero) } Method (_DSS, 1, NotSerialized) { If (And (Arg0, 0x40000000)) { If (And (Arg0, 0x80000000)) { Store (One, DONE) } } } } Device (DVID) { Method (_ADR, 0, NotSerialized) { If (LEqual (VGAF, 0x02)) { Return (0x0220) } Else { Return (0x0120) } } Method (_DCS, 0, NotSerialized) { Store (AVLD, Local0) If (Local0) { If (And (Local0, DVIM)) { Return (0x1F) } } Return (0x1D) } Method (_DGS, 0, NotSerialized) { And (NXTD, DVIM, Local0) If (Local0) { Return (One) } Return (Zero) } Method (_DSS, 1, NotSerialized) { If (And (Arg0, 0x40000000)) { If (And (Arg0, 0x80000000)) { Store (One, DONE) } } } } Device (HDMI) { Method (_ADR, 0, NotSerialized) { If (LEqual (VGAF, 0x02)) { Return (0x0210) } Else { Return (0x0120) } } Method (_DCS, 0, NotSerialized) { Store (AVLD, Local0) If (Local0) { If (And (Local0, HDMM)) { Return (0x1F) } } Return (0x1D) } Method (_DGS, 0, NotSerialized) { And (NXTD, HDMM, Local0) If (Local0) { Return (One) } Return (Zero) } Method (_DSS, 1, NotSerialized) { If (And (Arg0, 0x40000000)) { If (And (Arg0, 0x80000000)) { Store (One, DONE) } } } } Device (LCDD) { Name (_ADR, 0x0110) Method (_DCS, 0, NotSerialized) { Store (AVLD, Local0) If (Local0) { If (And (Local0, LCDM)) { Return (0x1F) } } Return (0x1D) } Method (_DGS, 0, NotSerialized) { And (NXTD, LCDM, Local0) If (Local0) { Return (One) } Return (Zero) } Method (_DSS, 1, NotSerialized) { If (And (Arg0, 0x40000000)) { If (And (Arg0, 0x80000000)) { Store (One, DONE) } } } Method (_BCL, 0, NotSerialized) { Return (Package (0x10) { 0x0F, 0x0E, 0x0D, 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, One, Zero }) } Name (BCBH, Zero) Method (_BCM, 1, NotSerialized) { If (LGreaterEqual (OSFG, OSVT)) { Store (Arg0, LBTN) ^^^^SBRG.EC0.STBR () If (ATKP) { If (LEqual (BCBH, One)) { Notify (ATKD, Add (LBTN, 0x10)) } If (LEqual (BCBH, 0x02)) { Notify (ATKD, Add (LBTN, 0x20)) } } Store (Zero, BCBH) } } Method (_BQC, 0, NotSerialized) { Return (LBTN) } } 10.6.3 @ Asus P5K-SE : BIOS 1104 >>[email protected] :: 4Gb RAM Corsair :: Asus-EN8800GT@512 10.6.3 @ Asus G60Vx RBBX05 : BIOS 205 >>[email protected] :: 4Gb RAM :: GTX 260M@1024 DOS, Windows 7, OSX 10.6.2 via AsereBLN 1.1.9 Last edited by Stone-D; 04-03-2010 at 07:20 AM. |
#3
|
|||
|
|||
Ne'er mind, I'm getting assistance at tonymacx86.
💡 Deploy cloud instances seamlessly on DigitalOcean. Free credits ($100) for InfMac readers. 10.6.3 @ Asus P5K-SE : BIOS 1104 >>[email protected] :: 4Gb RAM Corsair :: Asus-EN8800GT@512 10.6.3 @ Asus G60Vx RBBX05 : BIOS 205 >>[email protected] :: 4Gb RAM :: GTX 260M@1024 DOS, Windows 7, OSX 10.6.2 via AsereBLN 1.1.9 |