-
-
Save mverrilli/598fa96a5d23d76fbbf5d674a61ebaab to your computer and use it in GitHub Desktop.
Dell Precision 5510 1.10.0 DSDT fixes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- dsdt.orig 2019-06-10 16:09:40.945676250 +0200 | |
+++ dsdt.dsl 2019-06-10 16:28:15.274723137 +0200 | |
@@ -3905,11 +3905,13 @@ | |
If (LEqual (PM6H, One)) | |
{ | |
CreateBitField (BUF0, \_SB.PCI0._Y0C._RW, ECRW) // _RW_: Read-Write Status | |
- Store (Zero, ECRW (If (PM0H) | |
- { | |
- CreateDWordField (BUF0, \_SB.PCI0._Y0D._LEN, F0LN) // _LEN: Length | |
- Store (Zero, F0LN) /* \_SB_.PCI0._CRS.F0LN */ | |
- })) | |
+ Store (Zero, ECRW) | |
+ } | |
+ | |
+ If (PM0H) | |
+ { | |
+ CreateDWordField (BUF0, \_SB.PCI0._Y0D._LEN, F0LN) // _LEN: Length | |
+ Store (Zero, F0LN) /* \_SB_.PCI0._CRS.F0LN */ | |
} | |
If (LEqual (PM0H, One)) | |
@@ -17012,14 +17014,6 @@ | |
P8XH (One, 0xAB) | |
ADBG ("_WAK") | |
\_SB.PCI0.GEXP.INVC () | |
- If (LEqual (Arg0, 0x03)) | |
- { | |
- Store (One, \_SB.PCI0.SAT0.TFGF) /* External reference */ | |
- } | |
- Else | |
- { | |
- Store (Zero, \_SB.PCI0.SAT0.TFGF) /* External reference */ | |
- } | |
If (LEqual (S0ID, One)) | |
{ | |
@@ -17317,10 +17311,16 @@ | |
If (LEqual (DPTF, One)) | |
{ | |
- Notify (\_SB.IETM, 0x86) // Device-Specific | |
- If (LEqual (CHGE, One)) | |
+ If (CondRefOf (\_SB.IETM)) | |
{ | |
- Notify (\_SB.PCI0.LPCB.H_EC.CHRG, 0x80) // Status Change | |
+ Notify (\_SB.IETM, 0x86) // Device-Specific | |
+ If (LEqual (CHGE, One)) | |
+ { | |
+ If (CondRefOf (\_SB.PCI0.LPCB.H_EC.CHRG)) | |
+ { | |
+ Notify (\_SB.PCI0.LPCB.H_EC.CHRG, 0x80) // Status Change | |
+ } | |
+ } | |
} | |
} | |
} | |
@@ -18527,6 +18527,84 @@ | |
ADBG ("OS_Up_Received") | |
If (LEqual (DPTF, One)) | |
{ | |
+ XE42 () | |
+ } | |
+ | |
+ Return (Zero) | |
+ } | |
+ | |
+ If (LEqual (Local1, 0x02)) | |
+ { | |
+ NTFY () | |
+ Sleep (0x10) | |
+ Release (OSUM) | |
+ P8XH (Zero, 0x7D) | |
+ ADBG ("Disconnect") | |
+ Return (Zero) | |
+ } | |
+ | |
+ If (LEqual (SOHP, One)) | |
+ { | |
+ ADBG ("TBT SW SMI") | |
+ Store (TBSW, SSMP) /* \_GPE._E42.SSMP */ | |
+ } | |
+ | |
+ Sleep (0x20) | |
+ NTFY () | |
+ Sleep (0x10) | |
+ Release (OSUM) | |
+ ADBG ("End-of-_E42") | |
+ } | |
+ | |
+ Method (XE42, 0, NotSerialized) // _Exx: Edge-Triggered GPE, xx=0x00-0xFF | |
+ { | |
+ ADBG ("_E42") | |
+ If (LEqual (CF2T, One)) | |
+ { | |
+ ADBG ("Clear") | |
+ ADBG ("GPI_GPE_STS") | |
+ \_SB.CAGS (CPGN) | |
+ } | |
+ | |
+ WWAK () | |
+ WSUB () | |
+ If (LEqual (TNAT, One)) | |
+ { | |
+ Store (RSMI (), Local0) | |
+ If (LNot (Local0)) | |
+ { | |
+ Return (Zero) | |
+ } | |
+ | |
+ If (DMSI ()) | |
+ { | |
+ Return (Zero) | |
+ } | |
+ } | |
+ | |
+ If (GNIS ()) | |
+ { | |
+ Return (Zero) | |
+ } | |
+ | |
+ OperationRegion (SPRT, SystemIO, 0xB2, 0x02) | |
+ Field (SPRT, ByteAcc, Lock, Preserve) | |
+ { | |
+ SSMP, 8 | |
+ } | |
+ | |
+ ADBG ("TBT-HP-Handler") | |
+ ADBG ("PEG WorkAround") | |
+ PGWA () | |
+ Acquire (OSUM, 0xFFFF) | |
+ Store (TBFF (), Local1) | |
+ If (LEqual (Local1, One)) | |
+ { | |
+ Sleep (0x10) | |
+ Release (OSUM) | |
+ ADBG ("OS_Up_Received") | |
+ If (LEqual (DPTF, One)) | |
+ { | |
_E42 () | |
} | |
@@ -33363,6 +33441,75 @@ | |
} | |
} | |
} | |
+ | |
+ Scope (_SB.PCI0.LPCB) | |
+ { | |
+ Device (H_EC) | |
+ { | |
+ Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID | |
+ Name (_UID, One) // _UID: Unique ID | |
+ Method (_STA, 0, NotSerialized) // _STA: Status | |
+ { | |
+ Return (Zero) | |
+ } | |
+ | |
+ Name (B1CC, Zero) | |
+ Name (B1ST, Zero) | |
+ Name (B2CC, Zero) | |
+ Name (B2ST, Zero) | |
+ Name (CFAN, Zero) | |
+ Name (CMDR, Zero) | |
+ Name (DOCK, Zero) | |
+ Name (EJET, Zero) | |
+ Name (MCAP, Zero) | |
+ Name (PLMX, Zero) | |
+ Name (PECH, Zero) | |
+ Name (PECL, Zero) | |
+ Name (PENV, Zero) | |
+ Name (PINV, Zero) | |
+ Name (PPSH, Zero) | |
+ Name (PPSL, Zero) | |
+ Name (PSTP, Zero) | |
+ Name (RPWR, Zero) | |
+ Name (LIDS, Zero) | |
+ Name (LSTE, Zero) | |
+ Name (SLPC, Zero) | |
+ Name (VPWR, Zero) | |
+ Name (WTMS, Zero) | |
+ Name (AWT2, Zero) | |
+ Name (AWT1, Zero) | |
+ Name (AWT0, Zero) | |
+ Name (DLED, Zero) | |
+ Name (IBT1, Zero) | |
+ Name (ECAV, Zero) | |
+ Name (SPT2, Zero) | |
+ Name (PB10, Zero) | |
+ Name (IWCW, Zero) | |
+ Name (IWCR, Zero) | |
+ Method (ECMD, 1, Serialized) | |
+ { | |
+ If (ECON) | |
+ { | |
+ While (CMDR) | |
+ { | |
+ Stall (0x14) | |
+ } | |
+ | |
+ Store (Arg0, CMDR) | |
+ } | |
+ } | |
+ | |
+ Method (ECRD, 1, Serialized) | |
+ { | |
+ Return (DerefOf (Arg0)) | |
+ } | |
+ | |
+ Method (ECWT, 2, Serialized) | |
+ { | |
+ Store (Arg0, Arg1) | |
+ } | |
+ } | |
+ } | |
Scope (_SB.PCI0.LPCB) | |
{ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// iasl -fe refs.txt -dl -e ssdt01.dat ssdt02.dat ssdt03.dat ssdt04.dat ssdt05.dat ssdt06.dat ssdt07.dat ssdt08.dat ssdt09.dat ssdt10.dat ssdt11.dat ssdt12.dat ssdt13.dat ssdt14.dat ssdt15.dat ssdt16.dat -d dsdt.dat | |
// be careful using iasl -da, since it might not load the SSDT in the correct order! | |
// missing refs for dsdt.dsl that iasl will most likely guess correctly | |
External (_SB_.PCI0.PAUD.PUAM, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
External (_SB_.PCI0.XHC_.DUAM, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
External (_SB_.PCI0.XHC_.RHUB.INIR, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
External (_SB_.TPM_.PTS_, MethodObj, 1) // Warning: Unknown method, guessing 1 arguments | |
External (AL6F, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
External (HLVT, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
External (PS0X, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
External (PS2X, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
External (PS3X, MethodObj) // Warning: Unknown method, guessing 0 arguments | |
//dsdt.dsl 13182: Arg1 | |
//Error 6126 - ^ syntax error, unexpected PARSEOP_ARG1 | |
External (_SB.PCI0.SAT0.SDSM, MethodObj, 4) | |
External (_SB.PCI0.SAT1.SDSM, MethodObj, 4) | |
//dsdt.dsl 16955: } | |
//Error 6126 - ^ syntax error, unexpected '}' | |
External (MDBG, MethodObj, 1) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment