summaryrefslogtreecommitdiff
path: root/src/soc/intel/elkhartlake/acpi/gpio.asl
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/elkhartlake/acpi/gpio.asl')
-rw-r--r--src/soc/intel/elkhartlake/acpi/gpio.asl18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/soc/intel/elkhartlake/acpi/gpio.asl b/src/soc/intel/elkhartlake/acpi/gpio.asl
index 27cb503f45..fa3ef57ec7 100644
--- a/src/soc/intel/elkhartlake/acpi/gpio.asl
+++ b/src/soc/intel/elkhartlake/acpi/gpio.asl
@@ -18,6 +18,7 @@ Device (GPIO)
Memory32Fixed (ReadWrite, 0, 0, COM0)
Memory32Fixed (ReadWrite, 0, 0, COM1)
Memory32Fixed (ReadWrite, 0, 0, COM2)
+ Memory32Fixed (ReadWrite, 0, 0, COM3)
Memory32Fixed (ReadWrite, 0, 0, COM4)
Memory32Fixed (ReadWrite, 0, 0, COM5)
Interrupt (ResourceConsumer, Level, ActiveLow, Shared,,, GIRQ)
@@ -44,6 +45,12 @@ Device (GPIO)
BAS2 = ^^PCRB (PID_GPIOCOM2)
LEN2 = GPIO_BASE_SIZE
+ /* GPIO Community 3 */
+ CreateDWordField (^RBUF, ^COM3._BAS, BAS3)
+ CreateDWordField (^RBUF, ^COM3._LEN, LEN3)
+ BAS3 = ^^PCRB (PID_GPIOCOM3)
+ LEN3 = GPIO_BASE_SIZE
+
/* GPIO Community 4 */
CreateDWordField (^RBUF, ^COM4._BAS, BAS4)
CreateDWordField (^RBUF, ^COM4._LEN, LEN4)
@@ -88,13 +95,19 @@ Method (GADD, 1, NotSerialized)
Local0 = PID_GPIOCOM2
Local1 = Arg0 - GPIO_COM2_START
}
+ /* GPIO Community 3 */
+ If (Arg0 >= GPIO_COM3_START && Arg0 <= GPIO_COM3_END)
+ {
+ Local0 = PID_GPIOCOM3
+ Local1 = Arg0 - GPIO_COM3_START
+ }
/* GPIO Community 4 */
If (Arg0 >= GPIO_COM4_START && Arg0 <= GPIO_COM4_END)
{
Local0 = PID_GPIOCOM4
Local1 = Arg0 - GPIO_COM4_START
}
- /* GPIO Community 05*/
+ /* GPIO Community 5 */
If (Arg0 >= GPIO_COM5_START && Arg0 <= GPIO_COM5_END)
{
Local0 = PID_GPIOCOM5
@@ -123,6 +136,9 @@ Method (GPID, 1, Serialized)
Case (COMM_2) {
Local0 = PID_GPIOCOM2
}
+ Case (COMM_3) {
+ Local0 = PID_GPIOCOM3
+ }
Case (COMM_4) {
Local0 = PID_GPIOCOM4
}