chris7519 Posted September 7, 2009 Share Posted September 7, 2009 Thanks to mormegil I was successful in enabling audio with a patched AppleHDA and DSDT (no HDAEnabler), however I am now running into the no sound after sleep issue and was wondering if this could be resolved by further patching the DSDT? Most are able to patch the dsdt by modifying their AZAL sections, but I had none in mine, so I had to create "Device (HDEF)". However, I noticed a key difference was most had a "Notify (\_SB.PCI0.AZAL, 0x02)" in the "Scope (_GPE)" section which I was missing. I thought maybe inserting "Notify (\_SB.PCI0.HDEF, 0x02)" in the "Method (_L0D or _L05) would possibly resolve the issue, but I was wrong... anyone have any ideas or is it just not possible to patch this in the DSDT? Scope (_GPE): Scope (_GPE) { Method (_L01, 0, NotSerialized) { Add (L01C, One, L01C) P8XH (Zero, One) P8XH (One, L01C) TRAP (TRTI, 0xA1) If (LAnd (LEqual (RP1D, Zero), \_SB.PCI0.EXP1.HPSX)) { Sleep (0x64) If (\_SB.PCI0.EXP1.PDCX) { Store (One, \_SB.PCI0.EXP1.PDCX) Store (One, \_SB.PCI0.EXP1.HPSX) Notify (\_SB.PCI0.EXP1, Zero) Store (One, PRM0) Store (PEHS, SSMP) } Else { Store (One, \_SB.PCI0.EXP1.HPSX) } } If (LAnd (LEqual (RP2D, Zero), \_SB.PCI0.EXP2.HPSX)) { Sleep (0x64) If (\_SB.PCI0.EXP2.PDCX) { Store (One, \_SB.PCI0.EXP2.PDCX) Store (One, \_SB.PCI0.EXP2.HPSX) Notify (\_SB.PCI0.EXP2, Zero) Store (0x02, PRM0) Store (PEHS, SSMP) } Else { Store (One, \_SB.PCI0.EXP2.HPSX) } } If (LAnd (LEqual (RP4D, Zero), \_SB.PCI0.EXP4.HPSX)) { Sleep (0x64) If (\_SB.PCI0.EXP4.PDCX) { Store (One, \_SB.PCI0.EXP4.PDCX) Store (One, \_SB.PCI0.EXP4.HPSX) Notify (\_SB.PCI0.EXP4, Zero) Store (0x04, PRM0) Store (PEHS, SSMP) } Else { Store (One, \_SB.PCI0.EXP4.HPSX) } } If (LAnd (LEqual (CRPS, One), LGreaterEqual (MCHD, 0x04))) { If (LAnd (LEqual (RP5D, Zero), \_SB.PCI0.EXP5.HPSX)) { Sleep (0x64) If (\_SB.PCI0.EXP5.PDCX) { Store (One, \_SB.PCI0.EXP5.PDCX) Store (One, \_SB.PCI0.EXP5.HPSX) If (\_SB.PCI0.EXP5.PDSX) { TRAP (TRTI, 0x5A) CMSW (0x75, Zero) If (And (One, \_SB.PCI0.LPC.EC0.SW2S)) { CMSW (0x75, 0xAA) Store (Zero, \_SB.PCI0.EXP5.J380.D3EF) } } Notify (\_SB.PCI0.EXP5, Zero) Store (0x05, PRM0) Store (PEHS, SSMP) } Else { Store (One, \_SB.PCI0.EXP5.HPSX) } } } If (LAnd (LEqual (RP6D, Zero), \_SB.PCI0.EXP6.HPSX)) { Sleep (0x64) If (\_SB.PCI0.EXP6.PDCX) { Store (One, \_SB.PCI0.EXP6.PDCX) Store (One, \_SB.PCI0.EXP6.HPSX) Notify (\_SB.PCI0.EXP6, Zero) Store (0x06, PRM0) Store (PEHS, SSMP) } Else { Store (One, \_SB.PCI0.EXP6.HPSX) } } } Method (_L06, 0, NotSerialized) { If (LAnd (\_SB.PCI0.OVGA.GSSE, LNot (GSMI))) { \_SB.PCI0.OVGA.GSCI () } Else { If (LEqual (And (\_SB.PCI0.ESCS, 0x08), 0x08)) { Store (One, Local0) Store (\_SB.PCI0.T0IS, \_SB.PCI0.T0IS) Store (\_SB.PCI0.T0IS, Local0) Store (\_SB.PCI0.T1IS, \_SB.PCI0.T1IS) Store (\_SB.PCI0.T1IS, Local0) Store (One, SCIS) Store (One, \_SB.PCI0.GTSE) } Else { Store (One, SCIS) } } } Method (_L07, 0, NotSerialized) { } Method (_L08, 0, NotSerialized) { } Method (_L0B, 0, NotSerialized) { Notify (\_SB.PCI0.P32, 0x02) } Method (_L03, 0, NotSerialized) { Notify (\_SB.PCI0.UHC1, 0x02) } Method (_L04, 0, NotSerialized) { Notify (\_SB.PCI0.UHC2, 0x02) } Method (_L0C, 0, NotSerialized) { Notify (\_SB.PCI0.UHC3, 0x02) } Method (_L20, 0, NotSerialized) { } Method (_L0D, 0, NotSerialized) { } Method (_L0E, 0, NotSerialized) { } Method (_L05, 0, NotSerialized) { Notify (\_SB.PCI0.HDEF, 0x02) } } Device (HDEF) Device (HDEF) { Name (_ADR, 0x001B0000) Method (_DSM, 4, NotSerialized) { Store (Package (0x04) { "layout-id", Buffer (0x04) { 0x0C, 0x00, 0x00, 0x00 }, "PinConfigurations", Buffer (Zero) {} }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } Link to comment Share on other sites More sharing options...
Recommended Posts