EMlyDinEsH, ok, I solved this problem, there was interesting bug in ASUS N56VB original DSDT, I've found it when compared it with DSDT from relative K56CB, which doesn't have this problem. There was unnecessary if-statement in PRJW method, you must just remove condition and left everything in it. Here is a patch (sorry, i don't know MaciASL patch language, so you can do it only with your hands)
Method (PRJW, 1, Serialized)
{
- If (LAnd (LEqual (Arg0, 0x03), \_SB.DP3S))
- {
\_SB.PCI0.LPCB.EC0.SPIN (0x35, One)
Store (\_SB.PCI0.LPCB.EC0.RRAM (0x0449), Local0)
Or (Local0, \_SB.LKBF, Local1)
\_SB.PCI0.LPCB.EC0.WRAM (0x0449, Local1)
- }
KINI ()
\_SB.PCI0.LPCB.EC0.STBR ()
Notify (\_SB.PCI0.PEG0.PEGP, 0xD1)
I really don't know, why it helps, this method is called on _WAK and I think that it should power DSP on LPC bus (based on method ODSP which stores something in \_SB.DP3S).