From 88712991ba390c309b4586864aa04a9680fd8320 Mon Sep 17 00:00:00 2001 From: Aamir Bohra Date: Mon, 18 May 2020 11:11:19 +0530 Subject: [PATCH] soc/intel/jasperlake: Add ACPI method to get GPIO PCR PID Add method acpi method GPID to return the GPIO PCR port ID. This method is further planned to be used for GPIO power management configuration. TEST=Build waddledoo board Change-Id: Ic45b40bbe39e303cddcc82e0e848786b7311ab64 Signed-off-by: Aamir Bohra Reviewed-on: https://review.coreboot.org/c/coreboot/+/41501 Tested-by: build bot (Jenkins) Reviewed-by: Karthik Ramasubramanian --- src/soc/intel/jasperlake/acpi/gpio.asl | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) 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 #include "gpio_op.asl" +#include + 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) +}