Jump to content

Enable sound after wake with DSDT?


chris7519
 Share

1 post in this topic

Recommended Posts

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

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...