summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFurquan Shaikh <furquan@chromium.org>2016-12-13 09:15:07 -0800
committerMartin Roth <martinroth@google.com>2016-12-17 04:21:38 +0100
commit2fe0d75d42904b224be344b1865a2582b20ecea2 (patch)
tree3accad02c625353c06581e9e20b8bf5401184a8b
parent60f3217ed9a91bcf96a49af83fac3dcbaf54aa88 (diff)
downloadcoreboot-2fe0d75d42904b224be344b1865a2582b20ecea2.tar.gz
coreboot-2fe0d75d42904b224be344b1865a2582b20ecea2.tar.bz2
coreboot-2fe0d75d42904b224be344b1865a2582b20ecea2.zip
google/reef: Use exported GPIOs and ACPI regulator for touchscreen
ELAN touchscreen device expects firmware to export GPIOs and ACPI regulators for managing power to the device. Thus, provide the required ACPI elements for OS driver to properly manage this device. BUG=chrome-os-partner:60194 BRANCH=None TEST=Verified that touchscreen works properly on boot-up and after suspend/resume. Change-Id: I298ca5de9c0ae302309d87e3dffb65f9be1e882e Signed-off-by: Furquan Shaikh <furquan@chromium.org> Reviewed-on: https://review.coreboot.org/17799 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
-rw-r--r--src/mainboard/google/reef/Kconfig3
-rw-r--r--src/mainboard/google/reef/variants/baseboard/devicetree.cb9
2 files changed, 11 insertions, 1 deletions
diff --git a/src/mainboard/google/reef/Kconfig b/src/mainboard/google/reef/Kconfig
index c5625b68a07c..0766577a1f74 100644
--- a/src/mainboard/google/reef/Kconfig
+++ b/src/mainboard/google/reef/Kconfig
@@ -50,6 +50,9 @@ config DRIVERS_I2C_WACOM
config DRIVERS_PS2_KEYBOARD
default y
+config DRIVERS_GENERIC_GPIO_REGULATOR
+ default y
+
config MAINBOARD_DIR
string
default google/reef
diff --git a/src/mainboard/google/reef/variants/baseboard/devicetree.cb b/src/mainboard/google/reef/variants/baseboard/devicetree.cb
index 1d9dcbb624e5..7db4f156b8ba 100644
--- a/src/mainboard/google/reef/variants/baseboard/devicetree.cb
+++ b/src/mainboard/google/reef/variants/baseboard/devicetree.cb
@@ -179,7 +179,14 @@ chip soc/intel/apollolake
register "probed" = "1"
register "pwr_mgmt_type" = "GPIO_EXPORT"
register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_36)"
- register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
+
+ chip drivers/generic/gpio_regulator
+ register "name" = ""vcc33""
+ register "gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_152)"
+ register "enabled_on_boot" = "1"
+ device generic 0 on end
+ end
+
device i2c 10 on end
end
end # - I2C 3