Contribute
Register

ASUS X550LD-XX082D - RealTek ALC233 Audio & Qualcomm Atheros AR9565 (AR956X) Wi-Fi Not Working

Status
Not open for further replies.
No idea without seeing the code you added to the method (rmdt traces) and the output from it.

I do not know what needs to be added in the _BST as RMDT has too many methods...
 
Forget it.There must be too many wrongs in it.So I upload the original DSDT & SSDT file with other files extracted in your way your way you told.Please patched it for me.Thanks and sorry for disturbing you for so many times and you are still willing to answer my questions not to mention your patient for my poor English.

View attachment 137404
View attachment 137405
View attachment 137407

I won't be patching it for you. But I'll help you with analysing the debug output if you were to instrument your _BST method with ACPIDebug. Your hack... your responsibility to determine what is wrong.
 
I won't be patching it for you. But I'll help you with analysing the debug output if you were to instrument your _BST method with ACPIDebug. Your hack... your responsibility to determine what is wrong.
Here is the code :
Method (_BST, 0, NotSerialized) // _BST: Battery Status
{
Store (Zero, Index (PBST, Zero))
Store (Ones, Index (PBST, One))
Store (Ones, Index (PBST, 0x02))
Store (Ones, Index (PBST, 0x03))
If (LNot (^^LPCB.EC0.BATP (Zero)))
{
Store (One, Index (PBST, Zero))
Return (PBST)
}


If (LEqual (^^LPCB.EC0.GBTT (Zero), 0xFF))
{
Return (PBST)
}


If (MES4)
{
Decrement (MES4)
Return (PBST)
}


BATO ()
BATS (Zero)
Store (^^LPCB.EC0.BSTS (), Local0)
Store (^^LPCB.EC0.BCRT (), Local1)
Store (^^LPCB.EC0.BRCP (), Local2)
Store (^^LPCB.EC0.BVOT (), Local3)
If (LNotEqual (Local0, Ones))
{
If (LNotEqual (Local1, Ones))
{
If (LNotEqual (Local2, Ones))
{
If (LNotEqual (Local3, Ones))
{
FBST (Local0, Local1, Local2, Local3)
CBST ()
}
}
}
}


BATR ()
\RMDT.P1 (DerefOf (Index (PBST, Zero)))
\RMDT.P1 (DerefOf (Index (PBST, One)))
\RMDT.P1 (DerefOf (Index (PBST, 0x02)))
\RMDT.P1 (DerefOf (Index (PBST, 0x03)))
Return (PBST)
}
Because the method will execute the last "Return (PBST)" So I just add fours debug commands before the last RETURN .And the debug output :
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x39d0 ......

every value comes from the Package PBST...I think it controls the status...And the first element should be 0x0 not 0x1 above if fully charged.I maybe wrong.:banghead:
 
Here is the code :
Code:
Method (_BST, 0, NotSerialized)  // _BST: Battery Status
            {
                Store (Zero, Index (PBST, Zero))
                Store (Ones, Index (PBST, One))
                Store (Ones, Index (PBST, 0x02))
                Store (Ones, Index (PBST, 0x03))
                If (LNot (^^LPCB.EC0.BATP (Zero)))
                {
                    Store (One, Index (PBST, Zero))
                    Return (PBST)
                }


                If (LEqual (^^LPCB.EC0.GBTT (Zero), 0xFF))
                {
                    Return (PBST)
                }


                If (MES4)
                {
                    Decrement (MES4)
                    Return (PBST)
                }


                BATO ()
                BATS (Zero)
                Store (^^LPCB.EC0.BSTS (), Local0)
                Store (^^LPCB.EC0.BCRT (), Local1)
                Store (^^LPCB.EC0.BRCP (), Local2)
                Store (^^LPCB.EC0.BVOT (), Local3)
                If (LNotEqual (Local0, Ones))
                {
                    If (LNotEqual (Local1, Ones))
                    {
                        If (LNotEqual (Local2, Ones))
                        {
                            If (LNotEqual (Local3, Ones))
                            {
                                FBST (Local0, Local1, Local2, Local3)
                                CBST ()
                            }
                        }
                    }
                }


                BATR ()
                \RMDT.P1 (DerefOf (Index (PBST, Zero)))
                \RMDT.P1 (DerefOf (Index (PBST, One)))
                \RMDT.P1 (DerefOf (Index (PBST, 0x02)))
                \RMDT.P1 (DerefOf (Index (PBST, 0x03)))
                Return (PBST)
            }

Note that you can write the entire contents of the PBST package with one RMDT call:
Code:
\rmdt.p2("PBST is", PBST)

Because the method will execute the last "Return (PBST)" So I just add fours debug commands before the last RETURN .And the debug output :

You may not be reaching that Return statement in the case you're trying to track down. Note that there are a couple of other Return statements prior to that one at the end....

Code:
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:42:31.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:43:01.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:43:31.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:44:01.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:44:31.000 kernel[0]: ACPIDebug: 0x39d0


15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x1
15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x0
15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x8cf2
15/5/15 00:45:01.000 kernel[0]: ACPIDebug: 0x39d0 ......

All these show battery state 1, which is BATTERY_DISCHARGING. Also, note that present rate is zero... So, the DSDT _BST is saying that "battery is discharging at zero rate" (which is, of course, wrong... the battery cannot be "discharging" if there is no "discharging rate").

You might be able to fix it with something like this:
Code:
...
                BATR ()
                if (LNot(DerefOf(Index(PBST,1)))) { Store(0, Index(PBST,0)) }
                Return (PBST)

Note also that patching DSDT properly might help. See guide: http://www.tonymacx86.com/yosemite-laptop-support/152573-guide-patching-laptop-dsdt-ssdts.html. In particular, your DSDT has no patch for simulating a Windows version for "Darwin". See the "OS Check Fix" patches...
 
Note that you can write the entire contents of the PBST package with one RMDT call:
Code:
\rmdt.p2("PBST is", PBST)



You may not be reaching that Return statement in the case you're trying to track down. Note that there are a couple of other Return statements prior to that one at the end....



All these show battery state 1, which is BATTERY_DISCHARGING. Also, note that present rate is zero... So, the DSDT _BST is saying that "battery is discharging at zero rate" (which is, of course, wrong... the battery cannot be "discharging" if there is no "discharging rate").

You might be able to fix it with something like this:
Code:
...
                BATR ()
                if (LNot(DerefOf(Index(PBST,1)))) { Store(0, Index(PBST,0)) }
                Return (PBST)

Note also that patching DSDT properly might help. See guide: http://www.tonymacx86.com/yosemite-laptop-support/152573-guide-patching-laptop-dsdt-ssdts.html. In particular, your DSDT has no patch for simulating a Windows version for "Darwin". See the "OS Check Fix" patches...
Your fix code works...Thank you:D
 
Note that you can write the entire contents of the PBST package with one RMDT call:
Code:
\rmdt.p2("PBST is", PBST)



You may not be reaching that Return statement in the case you're trying to track down. Note that there are a couple of other Return statements prior to that one at the end....



All these show battery state 1, which is BATTERY_DISCHARGING. Also, note that present rate is zero... So, the DSDT _BST is saying that "battery is discharging at zero rate" (which is, of course, wrong... the battery cannot be "discharging" if there is no "discharging rate").

You might be able to fix it with something like this:
Code:
...
                BATR ()
                if (LNot(DerefOf(Index(PBST,1)))) { Store(0, Index(PBST,0)) }
                Return (PBST)

Note also that patching DSDT properly might help. See guide: http://www.tonymacx86.com/yosemite-laptop-support/152573-guide-patching-laptop-dsdt-ssdts.html. In particular, your DSDT has no patch for simulating a Windows version for "Darwin". See the "OS Check Fix" patches...
It's me again...I want to know why it takes me 30s to have my Yosemite booted even though by using one SSD.
 
It's me again...I want to know why it takes me 30s to have my Yosemite booted even though by using one SSD.

What hardware?
What SSD?
What bootloader?
Method of installation?

Please provide complete details in your profile/signature
(Profile/Settings link in upper right corner of this site)

System: manufacturer/model + bootloader(Clover/Chameleon/Chimera)
CPU: detailed CPU model + motherboard chipset
Graphics: all graphics devices + laptop internal screen resolution

For example, typical Ivy laptop:
System: HP ProBook 4540s (Clover)
CPU: i5-3320m/HM76
Graphics: HD4000, 1366x768

Use CPU-Z on Windows to find CPU (Core iX-xxx) and motherboard chipset (HMxx), and graphics capabilities. For a laptop, these details are important and affect critical installation procedures.
 
What hardware?
What SSD?
What bootloader?
Method of installation?

Please provide complete details in your profile/signature
(Profile/Settings link in upper right corner of this site)

System: manufacturer/model + bootloader(Clover/Chameleon/Chimera)
CPU: detailed CPU model + motherboard chipset
Graphics: all graphics devices + laptop internal screen resolution

For example, typical Ivy laptop:
System: HP ProBook 4540s (Clover)
CPU: i5-3320m/HM76
Graphics: HD4000, 1366x768

Use CPU-Z on Windows to find CPU (Core iX-xxx) and motherboard chipset (HMxx), and graphics capabilities. For a laptop, these details are important and affect critical installation procedures.
All right.I updated it already...My SSD is Crucial_CT240M500SSD.And the OS X 10.10.4 was installed in GPT.The bootloader is Clover.
 
Status
Not open for further replies.
Back
Top