mb/google/octopus: Use a single GPIO for trackpad wake and IRQ
This change uses the newly added macros for configuring the same GPI pad(GPIO_135) for IRQ (normal interrupt operations) and wake (interrupt for waking from S3/S0ix) for the trackpad device. The other pad GPIO_142 is now configured as not connected. BUG=b:117553222 TEST=Verified that yorp and bobba wake from S3 and S0ix using trackpad. Change-Id: I2b704f1be493141629c647b79723b0025b0f7dd6 Signed-off-by: Furquan Shaikh <furquan@google.com> Reviewed-on: https://review.coreboot.org/29189 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Justin TerAvest <teravest@chromium.org> Reviewed-by: Karthik Ramasubramanian <kramasub@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
2c36889437
commit
2c2650a3c2
|
@ -31,8 +31,8 @@ chip soc/intel/apollolake
|
||||||
chip drivers/i2c/generic
|
chip drivers/i2c/generic
|
||||||
register "hid" = ""ELAN0000""
|
register "hid" = ""ELAN0000""
|
||||||
register "desc" = ""ELAN Touchpad""
|
register "desc" = ""ELAN Touchpad""
|
||||||
register "irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "wake" = "GPE0_DW2_02"
|
register "wake" = "GPE0_DW3_27"
|
||||||
register "probed" = "1"
|
register "probed" = "1"
|
||||||
device i2c 15 on end
|
device i2c 15 on end
|
||||||
end
|
end
|
||||||
|
|
|
@ -196,7 +196,7 @@ static const struct pad_config gpio_table[] = {
|
||||||
PAD_CFG_NF_IOSSTATE_IOSTERM(GPIO_133, NONE, DEEP, NF1, HIZCRx1, DISPUPD),/* HV_EDP_HPD */
|
PAD_CFG_NF_IOSSTATE_IOSTERM(GPIO_133, NONE, DEEP, NF1, HIZCRx1, DISPUPD),/* HV_EDP_HPD */
|
||||||
|
|
||||||
PAD_NC(GPIO_134, NONE),/* GPIO_134 -- unused */
|
PAD_NC(GPIO_134, NONE),/* GPIO_134 -- unused */
|
||||||
PAD_CFG_GPI_APIC_IOS(GPIO_135, NONE, DEEP, LEVEL, INVERT, HIZCRx1, DISPUPD),/* GPIO_135 -- TRACKPAD_INT1_1V8_ODL */
|
PAD_CFG_GPI_IRQ_WAKE(GPIO_135, NONE, DEEP, LEVEL, INVERT),/* GPIO_135 -- TRACKPAD_INT1_1V8_ODL */
|
||||||
PAD_CFG_GPI_APIC_IOS(GPIO_136, NONE, DEEP, LEVEL, INVERT, TxDRxE, DISPUPD),/* GPIO_136 -- PMIC_PCH_INT_ODL */
|
PAD_CFG_GPI_APIC_IOS(GPIO_136, NONE, DEEP, LEVEL, INVERT, TxDRxE, DISPUPD),/* GPIO_136 -- PMIC_PCH_INT_ODL */
|
||||||
PAD_CFG_GPI_APIC_IOS(GPIO_137, NONE, DEEP, LEVEL, INVERT, HIZCRx1, DISPUPD),/* GPIO_137 -- HP_INT_ODL */
|
PAD_CFG_GPI_APIC_IOS(GPIO_137, NONE, DEEP, LEVEL, INVERT, HIZCRx1, DISPUPD),/* GPIO_137 -- HP_INT_ODL */
|
||||||
PAD_CFG_GPI_APIC_IOS(GPIO_138, NONE, DEEP, LEVEL, INVERT, HIZCRx1, DISPUPD),/* GPIO_138 -- PEN_PDCT_ODL */
|
PAD_CFG_GPI_APIC_IOS(GPIO_138, NONE, DEEP, LEVEL, INVERT, HIZCRx1, DISPUPD),/* GPIO_138 -- PEN_PDCT_ODL */
|
||||||
|
@ -204,7 +204,7 @@ static const struct pad_config gpio_table[] = {
|
||||||
PAD_CFG_GPO_IOSSTATE_IOSTERM(GPIO_140, 1, DEEP, NONE, Tx1RxDCRx0, DISPUPD),/* GPIO_140 -- PEN_RESET */
|
PAD_CFG_GPO_IOSSTATE_IOSTERM(GPIO_140, 1, DEEP, NONE, Tx1RxDCRx0, DISPUPD),/* GPIO_140 -- PEN_RESET */
|
||||||
// Also we may be able to use eSPI WAKE# Virtual Wire instead
|
// Also we may be able to use eSPI WAKE# Virtual Wire instead
|
||||||
PAD_CFG_GPI_SCI_IOS(GPIO_141, NONE, DEEP, EDGE_SINGLE, INVERT, IGNORE, DISPUPD),/* GPIO_141 -- EC_PCH_WAKE_ODL */
|
PAD_CFG_GPI_SCI_IOS(GPIO_141, NONE, DEEP, EDGE_SINGLE, INVERT, IGNORE, DISPUPD),/* GPIO_141 -- EC_PCH_WAKE_ODL */
|
||||||
PAD_CFG_GPI_SCI_LOW(GPIO_142, NONE, DEEP, LEVEL),/* GPIO_142 -- TRACKPAD_INT2_1V8_ODL */
|
PAD_NC(GPIO_142, UP_20K),/* GPIO_142 -- TRACKPAD_INT2_1V8_ODL(unused) */
|
||||||
PAD_CFG_GPO_IOSSTATE_IOSTERM(GPIO_143, 1, DEEP, UP_20K, HIZCRx1, ENPU),/* GPIO_143 -- LTE_SAR_ODL */
|
PAD_CFG_GPO_IOSSTATE_IOSTERM(GPIO_143, 1, DEEP, UP_20K, HIZCRx1, ENPU),/* GPIO_143 -- LTE_SAR_ODL */
|
||||||
PAD_CFG_GPI_SCI_LOW(GPIO_144, NONE, DEEP, LEVEL),/* GPIO_144 -- PEN_EJECT_ODL(wake) */
|
PAD_CFG_GPI_SCI_LOW(GPIO_144, NONE, DEEP, LEVEL),/* GPIO_144 -- PEN_EJECT_ODL(wake) */
|
||||||
PAD_CFG_GPI_GPIO_DRIVER(GPIO_145, NONE, DEEP),/* GPIO_145 -- PEN_EJECT_ODL(notifications) */
|
PAD_CFG_GPI_GPIO_DRIVER(GPIO_145, NONE, DEEP),/* GPIO_145 -- PEN_EJECT_ODL(notifications) */
|
||||||
|
|
|
@ -31,8 +31,8 @@ chip soc/intel/apollolake
|
||||||
chip drivers/i2c/generic
|
chip drivers/i2c/generic
|
||||||
register "hid" = ""ELAN0000""
|
register "hid" = ""ELAN0000""
|
||||||
register "desc" = ""ELAN Touchpad""
|
register "desc" = ""ELAN Touchpad""
|
||||||
register "irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "wake" = "GPE0_DW2_02"
|
register "wake" = "GPE0_DW3_27"
|
||||||
register "probed" = "1"
|
register "probed" = "1"
|
||||||
device i2c 15 on end
|
device i2c 15 on end
|
||||||
end
|
end
|
||||||
|
|
|
@ -76,16 +76,16 @@ chip soc/intel/apollolake
|
||||||
chip drivers/i2c/generic
|
chip drivers/i2c/generic
|
||||||
register "hid" = ""ELAN0000""
|
register "hid" = ""ELAN0000""
|
||||||
register "desc" = ""ELAN Touchpad""
|
register "desc" = ""ELAN Touchpad""
|
||||||
register "irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "wake" = "GPE0_DW2_02"
|
register "wake" = "GPE0_DW3_27"
|
||||||
register "probed" = "1"
|
register "probed" = "1"
|
||||||
device i2c 15 on end
|
device i2c 15 on end
|
||||||
end
|
end
|
||||||
chip drivers/i2c/hid
|
chip drivers/i2c/hid
|
||||||
register "generic.hid" = ""PNP0C50""
|
register "generic.hid" = ""PNP0C50""
|
||||||
register "generic.desc" = ""Synaptics Touchpad""
|
register "generic.desc" = ""Synaptics Touchpad""
|
||||||
register "generic.irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "generic.irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "generic.wake" = "GPE0_DW2_02"
|
register "generic.wake" = "GPE0_DW3_27"
|
||||||
register "generic.probed" = "1"
|
register "generic.probed" = "1"
|
||||||
register "hid_desc_reg_offset" = "0x20"
|
register "hid_desc_reg_offset" = "0x20"
|
||||||
device i2c 0x2c on end
|
device i2c 0x2c on end
|
||||||
|
|
|
@ -62,8 +62,8 @@ chip soc/intel/apollolake
|
||||||
chip drivers/i2c/generic
|
chip drivers/i2c/generic
|
||||||
register "hid" = ""ELAN0000""
|
register "hid" = ""ELAN0000""
|
||||||
register "desc" = ""ELAN Touchpad""
|
register "desc" = ""ELAN Touchpad""
|
||||||
register "irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "wake" = "GPE0_DW2_02"
|
register "wake" = "GPE0_DW3_27"
|
||||||
register "probed" = "1"
|
register "probed" = "1"
|
||||||
device i2c 15 on end
|
device i2c 15 on end
|
||||||
end
|
end
|
||||||
|
|
|
@ -76,8 +76,8 @@ chip soc/intel/apollolake
|
||||||
chip drivers/i2c/generic
|
chip drivers/i2c/generic
|
||||||
register "hid" = ""ELAN0000""
|
register "hid" = ""ELAN0000""
|
||||||
register "desc" = ""ELAN Touchpad""
|
register "desc" = ""ELAN Touchpad""
|
||||||
register "irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "wake" = "GPE0_DW2_02"
|
register "wake" = "GPE0_DW3_27"
|
||||||
register "probed" = "1"
|
register "probed" = "1"
|
||||||
device i2c 15 on end
|
device i2c 15 on end
|
||||||
end
|
end
|
||||||
|
|
|
@ -76,8 +76,8 @@ chip soc/intel/apollolake
|
||||||
chip drivers/i2c/generic
|
chip drivers/i2c/generic
|
||||||
register "hid" = ""ELAN0000""
|
register "hid" = ""ELAN0000""
|
||||||
register "desc" = ""ELAN Touchpad""
|
register "desc" = ""ELAN Touchpad""
|
||||||
register "irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "wake" = "GPE0_DW2_02"
|
register "wake" = "GPE0_DW3_27"
|
||||||
register "probed" = "1"
|
register "probed" = "1"
|
||||||
device i2c 15 on end
|
device i2c 15 on end
|
||||||
end
|
end
|
||||||
|
|
|
@ -35,8 +35,8 @@ chip soc/intel/apollolake
|
||||||
chip drivers/i2c/generic
|
chip drivers/i2c/generic
|
||||||
register "hid" = ""ELAN0000""
|
register "hid" = ""ELAN0000""
|
||||||
register "desc" = ""ELAN Touchpad""
|
register "desc" = ""ELAN Touchpad""
|
||||||
register "irq" = "ACPI_IRQ_EDGE_LOW(GPIO_135_IRQ)"
|
register "irq" = "ACPI_IRQ_WAKE_EDGE_LOW(GPIO_135_IRQ)"
|
||||||
register "wake" = "GPE0_DW2_02"
|
register "wake" = "GPE0_DW3_27"
|
||||||
register "probed" = "1"
|
register "probed" = "1"
|
||||||
device i2c 15 on end
|
device i2c 15 on end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue