-
-
Save rickybrent/1dabaf78ad03c290aa97489bef7d36fb to your computer and use it in GitHub Desktop.
--- dsdt.dsl 2018-03-04 16:00:00.866484238 -0800 | |
+++ dsdt.dsl 2018-03-04 16:28:07.933272752 -0800 | |
@@ -18,9 +18,8 @@ | |
* Compiler ID "INTL" | |
* Compiler Version 0x20160527 (538314023) | |
*/ | |
-DefinitionBlock ("", "DSDT", 2, "LENOVO", "SKL ", 0x00000000) | |
+DefinitionBlock ("", "DSDT", 2, "LENOVO", "SKL ", 0x00000001) | |
{ | |
- External (_GPE.TBNF, MethodObj) // 0 Arguments | |
External (_PR_.BGIA, UnknownObj) | |
External (_PR_.BGMA, UnknownObj) | |
External (_PR_.BGMS, UnknownObj) | |
@@ -40,19 +39,15 @@ | |
External (_PR_.PDTS, UnknownObj) | |
External (_PR_.PKGA, UnknownObj) | |
External (_PR_.POWS, UnknownObj) | |
- External (_PR_.PR00, DeviceObj) | |
External (_PR_.PR00.LPSS, PkgObj) | |
External (_PR_.PR00.TPSS, PkgObj) | |
External (_PR_.TRPD, UnknownObj) | |
External (_PR_.TRPF, UnknownObj) | |
- External (_SB_.GGIV, MethodObj) // 1 Arguments | |
- External (_SB_.GGOV, MethodObj) // 1 Arguments | |
External (_SB_.IETM, DeviceObj) | |
External (_SB_.IETM.DPTE, UnknownObj) | |
External (_SB_.PCI0.B0D4.NPCC, PkgObj) | |
External (_SB_.PCI0.CTCD, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.CTCN, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.GFX0, DeviceObj) | |
External (_SB_.PCI0.GFX0.AINT, MethodObj) // 2 Arguments | |
External (_SB_.PCI0.GFX0.ALSI, UnknownObj) | |
External (_SB_.PCI0.GFX0.CBLV, UnknownObj) | |
@@ -71,108 +66,81 @@ | |
External (_SB_.PCI0.HDAS.PS3X, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.HIDW, MethodObj) // 4 Arguments | |
External (_SB_.PCI0.HIWC, MethodObj) // 1 Arguments | |
- External (_SB_.PCI0.ISP0, DeviceObj) | |
External (_SB_.PCI0.LPCB.H_EC.XDAT, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.PAUD.PUAM, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.PEG0, DeviceObj) | |
- External (_SB_.PCI0.PEG0.PEGP, DeviceObj) | |
External (_SB_.PCI0.PEG0.PG00.PEGP, DeviceObj) | |
- External (_SB_.PCI0.PEG1, DeviceObj) | |
External (_SB_.PCI0.PEG1.PG01.PEGP, DeviceObj) | |
- External (_SB_.PCI0.PEG2, DeviceObj) | |
External (_SB_.PCI0.PEG2.PG02.PEGP, DeviceObj) | |
External (_SB_.PCI0.PTDP, UnknownObj) | |
External (_SB_.PCI0.RP01.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP01.PXSX, DeviceObj) | |
- External (_SB_.PCI0.RP01.PXSX.WGST, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP01.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP02.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP02.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP02.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP02.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP03.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP03.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP03.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP03.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP04.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP04.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP04.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP04.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP05.PON_, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP05.PWRG, UnknownObj) | |
- External (_SB_.PCI0.RP05.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP05.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP05.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP05.RSTG, UnknownObj) | |
External (_SB_.PCI0.RP05.SCLK, UnknownObj) | |
External (_SB_.PCI0.RP06.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP06.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP06.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP06.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP07.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP07.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP07.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP07.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP08.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP08.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP08.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP08.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP09.PEGP.NVST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP09.PON_, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP09.PWRG, UnknownObj) | |
- External (_SB_.PCI0.RP09.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP09.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP09.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP09.RSTG, UnknownObj) | |
External (_SB_.PCI0.RP09.SCLK, UnknownObj) | |
External (_SB_.PCI0.RP10.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP10.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP10.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP10.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP11.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP11.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP11.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP11.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP12.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP12.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP12.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP12.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP13.PON_, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP13.PWRG, UnknownObj) | |
- External (_SB_.PCI0.RP13.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP13.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP13.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP13.RSTG, UnknownObj) | |
External (_SB_.PCI0.RP13.SCLK, UnknownObj) | |
External (_SB_.PCI0.RP14.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP14.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP14.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP14.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP15.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP15.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP15.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP15.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP16.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP16.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP16.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP16.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP17.PON_, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP17.PWRG, UnknownObj) | |
- External (_SB_.PCI0.RP17.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP17.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP17.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP17.RSTG, UnknownObj) | |
External (_SB_.PCI0.RP17.SCLK, UnknownObj) | |
External (_SB_.PCI0.RP18.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP18.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP18.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP18.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP19.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP19.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP19.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP19.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP20.PON_, MethodObj) // 0 Arguments | |
- External (_SB_.PCI0.RP20.PXSX, DeviceObj) | |
External (_SB_.PCI0.RP20.PXSX.WGST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.RP20.PXSX.WIST, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.SAT0.NVM1.VLPM, UnknownObj) | |
@@ -191,16 +159,12 @@ | |
External (_SB_.PCI0.XHC_.RHUB.PS0X, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.XHC_.RHUB.PS2X, MethodObj) // 0 Arguments | |
External (_SB_.PCI0.XHC_.RHUB.PS3X, MethodObj) // 0 Arguments | |
- External (_SB_.SGOV, MethodObj) // 2 Arguments | |
- External (_SB_.TBFP, MethodObj) // 1 Arguments | |
External (_SB_.TPM_.PTS_, MethodObj) // 1 Arguments | |
External (_SB_.UBTC.NTFY, MethodObj) // 0 Arguments | |
External (_TZ_.ETMD, IntObj) | |
External (_TZ_.TZ00, DeviceObj) | |
External (_TZ_.TZ01, DeviceObj) | |
- External (ADBG, MethodObj) // 1 Arguments | |
External (ALSE, UnknownObj) | |
- External (BNUM, UnknownObj) | |
External (BRTL, UnknownObj) | |
External (CFGD, UnknownObj) | |
External (DIDX, UnknownObj) | |
@@ -213,28 +177,6 @@ | |
External (M32L, UnknownObj) | |
External (M64B, UnknownObj) | |
External (M64L, UnknownObj) | |
- External (MMRP, MethodObj) // 1 Arguments | |
- External (MMTB, MethodObj) // 1 Arguments | |
- External (ODV0, IntObj) | |
- External (ODV1, IntObj) | |
- External (ODV2, IntObj) | |
- External (ODV3, IntObj) | |
- External (ODV4, IntObj) | |
- External (ODV5, IntObj) | |
- External (ODV6, IntObj) | |
- External (ODV7, IntObj) | |
- External (ODV8, IntObj) | |
- External (ODV9, IntObj) | |
- External (ODVA, IntObj) | |
- External (ODVB, IntObj) | |
- External (ODVC, IntObj) | |
- External (ODVD, IntObj) | |
- External (ODVE, IntObj) | |
- External (ODVF, IntObj) | |
- External (ODVG, IntObj) | |
- External (ODVH, IntObj) | |
- External (ODVI, IntObj) | |
- External (ODVJ, IntObj) | |
External (PC00, IntObj) | |
External (PC01, UnknownObj) | |
External (PC02, UnknownObj) | |
@@ -253,16 +195,11 @@ | |
External (PC15, UnknownObj) | |
External (PTTB, UnknownObj) | |
External (SGMD, UnknownObj) | |
- External (STDV, IntObj) | |
- External (TBTD, MethodObj) // 1 Arguments | |
- External (TBTF, MethodObj) // 1 Arguments | |
Name (SS1, 0x00) | |
Name (SS2, 0x00) | |
Name (SS3, One) | |
- One | |
Name (SS4, One) | |
- One | |
OperationRegion (GNVS, SystemMemory, 0x4FF4E000, 0x0767) | |
Field (GNVS, AnyAcc, Lock, Preserve) | |
{ | |
@@ -27548,6 +27485,13 @@ | |
0x00, | |
0x00 | |
}) | |
+ Name (\_S3, Package (0x04) // _S3_: S3 System State | |
+ { | |
+ 0x05, | |
+ 0x05, | |
+ 0x00, | |
+ 0x00 | |
+ }) | |
Name (\_S4, Package (0x04) // _S4_: S4 System State | |
{ | |
0x06, |
@tobstarr, I get your same error (after the patch issue with Hunk 7), any luck in solving this?
Thank you
I'm also getting the compile error with Name (SS4, One)
... did you guys have problems decompiling your DSDT? I was actually having problems with the patch because my iasl -d dsdl.aml
produces the following in my dsdl.dsl
:
* iASL Warning: There were 95 external control methods found during
* disassembly, but only 94 were resolved (1 unresolved). Additional
...etc, and then later:
External (HIWC, MethodObj) // Warning: Unknown method, guessing 1 arguments
This patch has worked for me, however I've noticed that the touchscreen fails to wake from sleep with the rest of the computer. Curious if anyone else has run into this issue. 🤞 that Lenovo releases a bios update with a proper S3 state in it soon, but until then this has been a life saver
@jasminabasurita I have the same issue, the touchscreen also fails to wake up after suspend, everything else is waking up and running just fine, but the touch screen doesn't respond.
@jasminabasurita, @taaem,
I had the same problem with touch screen after suspend, thanks to this:
https://forums.lenovo.com/t5/Other-Linux-Discussions/X1Y3-Touchscreen-not-working-after-resume-on-Linux/td-p/4021200
Its solved.
/usr/sbin/rtcwake -m freeze -s 1
Create systemd service
vi /etc/systemd/system/wake_wacom_hack.service
[Unit]
Description= s2idle fo 1 second after resume
After=suspend.target
[Service]
Type=oneshot
ExecStart=/usr/sbin/rtcwake -m freeze -s 1
[Install]
WantedBy=suspend.target
Enable the service
systemctl enable wake_wacom_hack.service
Following the instructions from https://delta-xi.net/#056 I run into the patch issues in Hunk 7 (that is those two
One
lines). When I compile with the broken patch I do get a compilation error:After removing both
One
lines I do end up getting a segmentation fault though:Any ideas? Thanks!