summaryrefslogtreecommitdiff
path: root/src/soc/intel/icelake/acpi
diff options
context:
space:
mode:
authorAamir Bohra <aamir.bohra@intel.com>2018-11-06 11:37:44 +0530
committerSubrata Banik <subrata.banik@intel.com>2018-11-13 15:11:42 +0000
commit6efa5c38460b28d650231429ae4fc9a0be7fddba (patch)
treec34b3ad4147805a37df90c166f19cd21c5d1bb23 /src/soc/intel/icelake/acpi
parentd913d490b50b583d3c86bc532a17c042ae2bef81 (diff)
soc/intel/icelake: Update GPIOs for Icelake SOC
This implementation updates the GPIO pins, communities and group mapping. Change details: 1. Update 5 GPIO community includes 11 GPIO groups GPIO COM 0 GPP_G, GPP_B, GPP_A GPIO COM 1 GPP_H, GPP_D, GPP_F GPIO COM 2 GPD GPIO COM 4 GPP_C, GPP_E GPIO COM 5 GPP_R, GPP_S 2. Update GPIO IRQ routing. 3. Add GPIO configuration for iclrvp board. Change-Id: I223abacc18f78631a42f340952f13d45fa9a4703 Signed-off-by: Subrata Banik <subrata.banik@intel.com> Signed-off-by: Aamir Bohra <aamir.bohra@intel.com> Reviewed-on: https://review.coreboot.org/29495 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Shelley Chen <shchen@google.com>
Diffstat (limited to 'src/soc/intel/icelake/acpi')
-rw-r--r--src/soc/intel/icelake/acpi/gpio.asl39
1 files changed, 19 insertions, 20 deletions
diff --git a/src/soc/intel/icelake/acpi/gpio.asl b/src/soc/intel/icelake/acpi/gpio.asl
index 5784fb150e..c8d4fefdbd 100644
--- a/src/soc/intel/icelake/acpi/gpio.asl
+++ b/src/soc/intel/icelake/acpi/gpio.asl
@@ -19,7 +19,7 @@
Device (GPIO)
{
- Name (_HID, "INT34BB")
+ Name (_HID, "INT3455")
Name (_UID, 0)
Name (_DDN, "GPIO Controller")
@@ -28,8 +28,8 @@ 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)
{ GPIO_IRQ14 }
})
@@ -54,19 +54,18 @@ Device (GPIO)
Store (^^PCRB (PID_GPIOCOM2), BAS2)
Store (GPIO_BASE_SIZE, LEN2)
- /* GPIO Community 3 */
- CreateDWordField (^RBUF, ^COM3._BAS, BAS3)
- CreateDWordField (^RBUF, ^COM3._LEN, LEN3)
- Store (^^PCRB (PID_GPIOCOM3), BAS3)
- Store (GPIO_BASE_SIZE, LEN3)
-
-
/* GPIO Community 4 */
CreateDWordField (^RBUF, ^COM4._BAS, BAS4)
CreateDWordField (^RBUF, ^COM4._LEN, LEN4)
Store (^^PCRB (PID_GPIOCOM4), BAS4)
Store (GPIO_BASE_SIZE, LEN4)
+ /* GPIO Community 5 */
+ CreateDWordField (^RBUF, ^COM5._BAS, BAS5)
+ CreateDWordField (^RBUF, ^COM5._LEN, LEN5)
+ Store (^^PCRB (PID_GPIOCOM5), BAS5)
+ Store (GPIO_BASE_SIZE, LEN5)
+
Return (RBUF)
}
@@ -83,13 +82,13 @@ Device (GPIO)
Method (GADD, 1, NotSerialized)
{
/* GPIO Community 0 */
- If (LAnd (LGreaterEqual (Arg0, GPP_A0), LLessEqual (Arg0, GPIO_RSVD_11)))
+ If (LAnd (LGreaterEqual (Arg0, GPP_G0), LLessEqual (Arg0, GPP_A23)))
{
Store (PID_GPIOCOM0, Local0)
Subtract (Arg0, GPP_A0, Local1)
}
/* GPIO Community 1 */
- If (LAnd (LGreaterEqual (Arg0, GPP_D0), LLessEqual (Arg0, GPIO_RSVD_52)))
+ If (LAnd (LGreaterEqual (Arg0, GPP_H0), LLessEqual (Arg0, GPP_F19)))
{
Store (PID_GPIOCOM1, Local0)
Subtract (Arg0, GPP_D0, Local1)
@@ -97,21 +96,21 @@ Method (GADD, 1, NotSerialized)
/* GPIO Community 2 */
If (LAnd (LGreaterEqual (Arg0, GPD0), LLessEqual (Arg0, GPD11)))
{
- Store (PID_GPIOCOM1, Local0)
+ Store (PID_GPIOCOM2, Local0)
Subtract (Arg0, GPD0, Local1)
}
- /* GPIO Community 3 */
- If (LAnd (LGreaterEqual (Arg0, HDA_BCLK), LLessEqual (Arg0, GPIO_RSVD_78)))
- {
- Store (PID_GPIOCOM1, Local0)
- Subtract (Arg0, HDA_BCLK, Local1)
- }
- /* GPIO Community 04*/
- If (LAnd (LGreaterEqual (Arg0, GPP_C0), LLessEqual (Arg0, GPIO_RSVD_67)))
+ /* GPIO Community 4 */
+ If (LAnd (LGreaterEqual (Arg0, GPP_C0), LLessEqual (Arg0, GPP_E23)))
{
Store (PID_GPIOCOM4, Local0)
Subtract (Arg0, GPP_C0, Local1)
}
+ /* GPIO Community 05*/
+ If (LAnd (LGreaterEqual (Arg0, GPP_R0), LLessEqual (Arg0, GPP_S7)))
+ {
+ Store (PID_GPIOCOM5, Local0)
+ Subtract (Arg0, GPP_R0, Local1)
+ }
Store (PCRB (Local0), Local2)
Add (Local2, PAD_CFG_BASE, Local2)
Return (Add (Local2, Multiply (Local1, 16)))