aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/tigerlake/acpi/tcss_pcierp.asl
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/tigerlake/acpi/tcss_pcierp.asl')
-rw-r--r--src/soc/intel/tigerlake/acpi/tcss_pcierp.asl95
1 files changed, 62 insertions, 33 deletions
diff --git a/src/soc/intel/tigerlake/acpi/tcss_pcierp.asl b/src/soc/intel/tigerlake/acpi/tcss_pcierp.asl
index a7eafa40bf..096a6735c9 100644
--- a/src/soc/intel/tigerlake/acpi/tcss_pcierp.asl
+++ b/src/soc/intel/tigerlake/acpi/tcss_pcierp.asl
@@ -64,7 +64,7 @@ Field (PXCS, AnyAcc, NoLock, WriteAsZeros)
*/
Method (_DSM, 4, Serialized)
{
- Return (Buffer() {0x00})
+ Return (Buffer() { 0x00 })
}
Device (PXSX)
@@ -195,34 +195,8 @@ Method (_PS0, 0, Serialized)
If (PMEX == 1) {
PMEX = 0 /* Disable Power Management SCI */
}
- Sleep(100) /* Wait for 100ms before return to OS starts any DS activities. */
- If ((TUID == 0) || (TUID == 1)) {
- If (\_SB.PCI0.TDM0.WACT == 1) {
- /*
- * Indicate other thread's _PS0 to wait the response.
- */
- \_SB.PCI0.TDM0.WACT = 2
- \_SB.PCI0.TDM0.WFCC (10) /* Wait for command complete. */
- \_SB.PCI0.TDM0.WACT = 0
- } ElseIf (\_SB.PCI0.TDM0.WACT == 2) {
- While (\_SB.PCI0.TDM0.WACT != 0) {
- Sleep (5)
- }
- }
- } Else {
- If (\_SB.PCI0.TDM1.WACT == 1) {
- /*
- * Indicate other thread's _PS0 to wait the response.
- */
- \_SB.PCI0.TDM1.WACT = 2
- \_SB.PCI0.TDM1.WFCC (10) /* Wait for command complete. */
- \_SB.PCI0.TDM1.WACT = 0
- } ElseIf (\_SB.PCI0.TDM1.WACT == 2) {
- While (\_SB.PCI0.TDM1.WACT != 0) {
- Sleep (5)
- }
- }
- }
+
+ Sleep(100) /* Wait for 100ms before return to OS starts any OS activities. */
}
Method (_PS3, 0, Serialized)
@@ -246,8 +220,8 @@ Method (_PS3, 0, Serialized)
}
Method (_DSD, 0) {
- Return (
- Package () {
+ If ((TUID == 0) || (TUID == 1)) {
+ Return ( Package() {
/* acpi_pci_bridge_d3 at ../drivers/pci/pci-acpi.c */
ToUUID("6211E2C0-58A3-4AF3-90E1-927A4E0C55A4"),
Package ()
@@ -264,9 +238,64 @@ Method (_DSD, 0) {
* (NumOfTBTRP - 1).
*/
Package (2) { "UID", TUID },
+ },
+ ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+ Package () {
+ Package (2) { "usb4-host-interface", \_SB.PCI0.TDM0 },
+ Package (2) { "usb4-port-number", TUID },
}
- }
- )
+ })
+ } ElseIf (TUID == 2) {
+ Return ( Package () {
+ /* acpi_pci_bridge_d3 at ../drivers/pci/pci-acpi.c */
+ ToUUID("6211E2C0-58A3-4AF3-90E1-927A4E0C55A4"),
+ Package ()
+ {
+ Package (2) { "HotPlugSupportInD3", 1 },
+ },
+
+ /* pci_acpi_set_untrusted at ../drivers/pci/pci-acpi.c */
+ ToUUID("EFCC06CC-73AC-4BC3-BFF0-76143807C389"),
+ Package () {
+ Package (2) { "ExternalFacingPort", 1 }, /* TBT/CIO port */
+ /*
+ * UID of the TBT RP on platform, range is: 0, 1 ...,
+ * (NumOfTBTRP - 1).
+ */
+ Package (2) { "UID", TUID },
+ },
+ ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+ Package () {
+ Package (2) { "usb4-host-interface", \_SB.PCI0.TDM1 },
+ Package (2) { "usb4-port-number", 0 },
+ }
+ })
+ } Else { /* TUID == 3 */
+ Return ( Package () {
+ /* acpi_pci_bridge_d3 at ../drivers/pci/pci-acpi.c */
+ ToUUID("6211E2C0-58A3-4AF3-90E1-927A4E0C55A4"),
+ Package ()
+ {
+ Package (2) { "HotPlugSupportInD3", 1 },
+ },
+
+ /* pci_acpi_set_untrusted at ../drivers/pci/pci-acpi.c */
+ ToUUID("EFCC06CC-73AC-4BC3-BFF0-76143807C389"),
+ Package () {
+ Package (2) { "ExternalFacingPort", 1 }, /* TBT/CIO port */
+ /*
+ * UID of the TBT RP on platform, range is: 0, 1 ...,
+ * (NumOfTBTRP - 1).
+ */
+ Package (2) { "UID", TUID },
+ },
+ ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
+ Package () {
+ Package (2) { "usb4-host-interface", \_SB.PCI0.TDM1 },
+ Package (2) { "usb4-port-number", 1 },
+ }
+ })
+ }
}
Method (_S0W, 0x0, NotSerialized)