summaryrefslogtreecommitdiff
path: root/src/mainboard/system76/whl-u/acpi
diff options
context:
space:
mode:
authorTim Crawford <tcrawford@system76.com>2021-03-25 16:40:53 -0600
committerPatrick Georgi <pgeorgi@google.com>2021-04-14 19:59:46 +0000
commit3647e86862ddc5cf200b0f552518d66b72996d8d (patch)
tree8056f3977f327e80e9c09908e820554ce10484b5 /src/mainboard/system76/whl-u/acpi
parentc0538d46130fe091c3e544eeb6fba7ffb5fc38f0 (diff)
mb/system76/whl-u: Add System76 Galago Pro 3 Rev C
Tested with TianoCore payload (UefiPayloadPkg). Working: - PS/2 keyboard, touchpad - Both DIMM slots - NVMe port - SATA port - SD card slot - Left USB 3 Type-A port - Right USB 3 Type-A port - Right USB 3 Type-C port - Webcam - Ethernet - Integrated graphics using Intel GOP driver - mDP output - HDMI output - Internal microphone - Internal speakers - 3.5mm audio input - 3.5mm audio output - S3 suspend/resume - Flashing with flashrom - Booting to Ubuntu Linux 20.10 and Windows 10 Not tested: - Thunderbolt functionality Change-Id: I5c992e603dbd57ae1b4ddc3a0f9bfc92d6acc813 Signed-off-by: Jeremy Soller <jeremy@system76.com> Signed-off-by: Tim Crawford <tcrawford@system76.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/51832 Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/mainboard/system76/whl-u/acpi')
-rw-r--r--src/mainboard/system76/whl-u/acpi/gpe.asl11
-rw-r--r--src/mainboard/system76/whl-u/acpi/mainboard.asl15
-rw-r--r--src/mainboard/system76/whl-u/acpi/sleep.asl11
-rw-r--r--src/mainboard/system76/whl-u/acpi/tbt.asl29
4 files changed, 66 insertions, 0 deletions
diff --git a/src/mainboard/system76/whl-u/acpi/gpe.asl b/src/mainboard/system76/whl-u/acpi/gpe.asl
new file mode 100644
index 0000000000..e0da476705
--- /dev/null
+++ b/src/mainboard/system76/whl-u/acpi/gpe.asl
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+// GPP_D9 SCI
+Method (_L29, 0, Serialized) {
+ Debug = Concatenate("GPE _L29: ", ToHexString(\_SB.PCI0.LPCB.EC0.WFNO))
+ If (\_SB.PCI0.LPCB.EC0.ECOK) {
+ If (\_SB.PCI0.LPCB.EC0.WFNO == 1) {
+ Notify(\_SB.LID0, 0x80)
+ }
+ }
+}
diff --git a/src/mainboard/system76/whl-u/acpi/mainboard.asl b/src/mainboard/system76/whl-u/acpi/mainboard.asl
new file mode 100644
index 0000000000..ade0bb2625
--- /dev/null
+++ b/src/mainboard/system76/whl-u/acpi/mainboard.asl
@@ -0,0 +1,15 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#define EC_GPE_SCI 0x50 /* GPP_E16 */
+#define EC_GPE_SWI 0x29 /* GPP_D9 */
+#include <ec/system76/ec/acpi/ec.asl>
+
+Scope (\_SB) {
+ #include "sleep.asl"
+}
+
+Scope (\_GPE) {
+ #include "gpe.asl"
+}
+
+#include "tbt.asl"
diff --git a/src/mainboard/system76/whl-u/acpi/sleep.asl b/src/mainboard/system76/whl-u/acpi/sleep.asl
new file mode 100644
index 0000000000..48c50e075e
--- /dev/null
+++ b/src/mainboard/system76/whl-u/acpi/sleep.asl
@@ -0,0 +1,11 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+/* Method called from _PTS prior to enter sleep state */
+Method (MPTS, 1) {
+ \_SB.PCI0.LPCB.EC0.PTS (Arg0)
+}
+
+/* Method called from _WAK prior to wakeup */
+Method (MWAK, 1) {
+ \_SB.PCI0.LPCB.EC0.WAK (Arg0)
+}
diff --git a/src/mainboard/system76/whl-u/acpi/tbt.asl b/src/mainboard/system76/whl-u/acpi/tbt.asl
new file mode 100644
index 0000000000..56c2c9b991
--- /dev/null
+++ b/src/mainboard/system76/whl-u/acpi/tbt.asl
@@ -0,0 +1,29 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+// See https://docs.microsoft.com/en-us/windows-hardware/drivers/pci/dsd-for-pcie-root-ports
+Scope(\_SB.PCI0.RP05) {
+ Method(_DSD, 0, NotSerialized) {
+ Return (Package(4) {
+ // https://docs.microsoft.com/en-us/windows-hardware/drivers/pci/dsd-for-pcie-root-ports#identifying-pcie-root-ports-supporting-hot-plug-in-d3
+ ToUUID("6211e2c0-58a3-4af3-90e1-927a4e0c55a4"),
+ Package(1) {
+ Package(2) {
+ "HotPlugSupportInD3",
+ 1
+ }
+ },
+ // https://docs.microsoft.com/en-us/windows-hardware/drivers/pci/dsd-for-pcie-root-ports#identifying-externally-exposed-pcie-root-ports
+ ToUUID("efcc06cc-73ac-4bc3-bff0-76143807c389"),
+ Package(2) {
+ Package(2) {
+ "ExternalFacingPort",
+ 1
+ },
+ Package(2) {
+ "UID",
+ 0
+ }
+ }
+ })
+ }
+}