summaryrefslogtreecommitdiffstats
path: root/src/mainboard/google/zork/variants/dalboz
diff options
context:
space:
mode:
authorFurquan Shaikh <furquan@google.com>2020-08-04 20:16:55 -0700
committerFurquan Shaikh <furquan@google.com>2020-08-06 19:09:03 +0000
commitcc6c41f8d8b6880a7ad4947599350758cd18f85f (patch)
treed47ce96bb7a3c021e11d59b55078859475d293a4 /src/mainboard/google/zork/variants/dalboz
parent55fefbe39d9637e93031efe7b59746df8ebf733a (diff)
downloadcoreboot-cc6c41f8d8b6880a7ad4947599350758cd18f85f.tar.gz
coreboot-cc6c41f8d8b6880a7ad4947599350758cd18f85f.tar.bz2
coreboot-cc6c41f8d8b6880a7ad4947599350758cd18f85f.zip
mb/google/zork: Switch USI_RESET to active low polarity for v3.6+
v3.6 of reference schematics have switched the polarity of reset signal to touchscreen controller from active high to active low. This change updates the default configuration in baseboard gpio tables to set the reset GPIO to output low and override tables in variants to set the reset GPIO to output high. Additionally, devicetree by default exposes ACTIVE_LOW configuration for reset GPIO. In order to support pre-v3.6 boards, reset GPIO is updated to ACTIVE_HIGH based on board version. BUG=b:161937506 Change-Id: I092f274d8eb1920a1cd6d3eccbe8f26b0b28928a Signed-off-by: Furquan Shaikh <furquan@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/44192 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Diffstat (limited to 'src/mainboard/google/zork/variants/dalboz')
-rw-r--r--src/mainboard/google/zork/variants/dalboz/gpio.c4
-rw-r--r--src/mainboard/google/zork/variants/dalboz/overridetree.cb8
2 files changed, 8 insertions, 4 deletions
diff --git a/src/mainboard/google/zork/variants/dalboz/gpio.c b/src/mainboard/google/zork/variants/dalboz/gpio.c
index 73c0042f0b37..7b13d839da6d 100644
--- a/src/mainboard/google/zork/variants/dalboz/gpio.c
+++ b/src/mainboard/google/zork/variants/dalboz/gpio.c
@@ -15,6 +15,8 @@ static const struct soc_amd_gpio bid_1_gpio_set_stage_ram[] = {
PAD_NF(GPIO_18, USB_OC2_L, PULL_NONE),
/* EN_PWR_TOUCHPAD_PS2 */
PAD_GPO(GPIO_67, HIGH),
+ /* USI_RESET */
+ PAD_GPO(GPIO_140, HIGH),
/* Unused */
PAD_NC(GPIO_143),
};
@@ -24,6 +26,8 @@ static const struct soc_amd_gpio bid_2_gpio_set_stage_ram[] = {
PAD_GPO(GPIO_6, LOW), // Select Camera 1 DMIC
/* EN_PWR_TOUCHPAD_PS2 */
PAD_GPO(GPIO_67, HIGH),
+ /* USI_RESET */
+ PAD_GPO(GPIO_140, HIGH),
};
const struct soc_amd_gpio *variant_override_gpio_table(size_t *size)
diff --git a/src/mainboard/google/zork/variants/dalboz/overridetree.cb b/src/mainboard/google/zork/variants/dalboz/overridetree.cb
index 9fe15c5d34f5..8735a0692147 100644
--- a/src/mainboard/google/zork/variants/dalboz/overridetree.cb
+++ b/src/mainboard/google/zork/variants/dalboz/overridetree.cb
@@ -48,7 +48,7 @@ chip soc/amd/picasso
register "desc" = ""Raydium Touchscreen""
register "probed" = "1"
register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_LOW(GPIO_12)"
- register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
+ register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPIO_140)"
# 32ms: Rise time of the reset line
# 20ms: Firmware ready time
register "reset_delay_ms" = "32 + 20"
@@ -61,7 +61,7 @@ chip soc/amd/picasso
register "desc" = ""ELAN Touchscreen""
register "probed" = "1"
register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_LOW(GPIO_12)"
- register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
+ register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPIO_140)"
register "reset_delay_ms" = "20"
register "has_power_resource" = "1"
device i2c 10 on end
@@ -71,7 +71,7 @@ chip soc/amd/picasso
register "generic.desc" = ""Synaptics Touchscreen""
register "generic.irq_gpio" = "ACPI_GPIO_IRQ_EDGE_LOW(GPIO_12)"
register "generic.probed" = "1"
- register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
+ register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPIO_140)"
register "generic.reset_delay_ms" = "45"
register "generic.has_power_resource" = "1"
register "generic.disable_gpio_export_in_crs" = "1"
@@ -83,7 +83,7 @@ chip soc/amd/picasso
register "generic.desc" = ""Goodix Touchscreen""
register "generic.irq_gpio" = "ACPI_GPIO_IRQ_EDGE_LOW(GPIO_12)"
register "generic.probed" = "1"
- register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
+ register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPIO_140)"
register "generic.reset_delay_ms" = "120"
register "generic.reset_off_delay_ms" = "1"
register "generic.stop_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_144)"