aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/jasperlake/acpi/gpio.asl
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/jasperlake/acpi/gpio.asl')
-rw-r--r--src/soc/intel/jasperlake/acpi/gpio.asl34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/soc/intel/jasperlake/acpi/gpio.asl b/src/soc/intel/jasperlake/acpi/gpio.asl
index d8326c7789..60951f0b6b 100644
--- a/src/soc/intel/jasperlake/acpi/gpio.asl
+++ b/src/soc/intel/jasperlake/acpi/gpio.asl
@@ -6,6 +6,8 @@
#include <soc/pcr_ids.h>
#include "gpio_op.asl"
+#include <soc/intel/common/acpi/gpio.asl>
+
Device (GPIO)
{
Name (_HID, CROS_GPIO_NAME)
@@ -103,3 +105,35 @@ Method (GADD, 1, NotSerialized)
Local2 = PCRB(Local0) + PAD_CFG_BASE + (Local1 * 16)
Return (Local2)
}
+
+/*
+ * Return PCR Port ID of GPIO Communities
+ *
+ * Arg0: GPIO Community (0-5)
+ */
+Method (GPID, 1, Serialized)
+{
+ Switch (ToInteger (Arg0))
+ {
+ Case (0) {
+ Local0 = PID_GPIOCOM0
+ }
+ Case (1) {
+ Local0 = PID_GPIOCOM1
+ }
+ Case (2) {
+ Local0 = PID_GPIOCOM2
+ }
+ Case (4) {
+ Local0 = PID_GPIOCOM4
+ }
+ Case (5) {
+ Local0 = PID_GPIOCOM5
+ }
+ Default {
+ Return (0)
+ }
+ }
+
+ Return (Local0)
+}