- Joined
- Mar 10, 2012
- Messages
- 204
- Motherboard
- ASUS ROG Strix B760-I
- CPU
- i5-13500
- Graphics
- RX 6600 XT
- Mac
- Mobile Phone
It troubles me for long time.... tried many workaround but without luck......
My laptop has 3 USB ports, 2 of them are USB3, and 1 is USB2.
So here is what I did:
1. USB patched for EHC1 and XHC using Rehabman's patch. But laptop instantly wake after sleep.
2. _PRW seems to be the troublemaker. Here is the original _PRW DSDT for XHC device:
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
If (WUSB)
{
If (LEqual (PWRS, One))
{
Return (GPRW (0x6D, 0x04))
}
Else
{
Return (Package (0x02)
{
Zero,
Zero
})
}
}
Else
{
Return (Package (0x02)
{
Zero,
Zero
})
}
}
So I changed to:
Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
{
0x6D,
0x00
})
for both EHC and XHC to disable USB wake. Now sleep has no problem.
However, new problem arises that USB drive get ejected after sleep/wake.
3. I've noticed that only Lid Sleep will cause the above problem. If click sleep button under Apple logo and not close lid, the USB drive will not be ejected after sleep, thus no error.
One workaround I used is to change _PRW under Device (Lid0) from:
Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
{
0x18,
0x03
})
to:
Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
{
0x18,
0x00
})
or just delete it.
By doing this the USB ejection problem can be solved, but I will lose Lid wake. I wonder if I can get both Lid wake and USB ejection working properly. For now only one of them work at a time.
My laptop has 3 USB ports, 2 of them are USB3, and 1 is USB2.
So here is what I did:
1. USB patched for EHC1 and XHC using Rehabman's patch. But laptop instantly wake after sleep.
2. _PRW seems to be the troublemaker. Here is the original _PRW DSDT for XHC device:
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
If (WUSB)
{
If (LEqual (PWRS, One))
{
Return (GPRW (0x6D, 0x04))
}
Else
{
Return (Package (0x02)
{
Zero,
Zero
})
}
}
Else
{
Return (Package (0x02)
{
Zero,
Zero
})
}
}
So I changed to:
Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
{
0x6D,
0x00
})
for both EHC and XHC to disable USB wake. Now sleep has no problem.
However, new problem arises that USB drive get ejected after sleep/wake.
3. I've noticed that only Lid Sleep will cause the above problem. If click sleep button under Apple logo and not close lid, the USB drive will not be ejected after sleep, thus no error.
One workaround I used is to change _PRW under Device (Lid0) from:
Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
{
0x18,
0x03
})
to:
Name (_PRW, Package (0x02) // _PRW: Power Resources for Wake
{
0x18,
0x00
})
or just delete it.
By doing this the USB ejection problem can be solved, but I will lose Lid wake. I wonder if I can get both Lid wake and USB ejection working properly. For now only one of them work at a time.