summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/exynos5800-peach-pi.dts
diff options
context:
space:
mode:
authorVikas Sajjan <vikas.sajjan@samsung.com>2014-07-16 02:38:44 +0900
committerKukjin Kim <kgene.kim@samsung.com>2014-07-16 02:39:57 +0900
commit73a9bb2e7a48bb47c092f407812a0100c79d5180 (patch)
treed14f6933a279eafb93fd8f484de69e5301866f8b /arch/arm/boot/dts/exynos5800-peach-pi.dts
parentac5ce09e140c0238a8fb61d1c198ce9945e8be47 (diff)
ARM: dts: Add mask-tpm-reset node in exynos5800-peach-pi
The mask-tpm-reset GPIO is used by the kernel to prevent the TPM from being reset across sleep/wake. If we don't set it to anything then the TPM will be reset. U-Boot will detect this as invalid and will reset the system on resume time. This GPIO can always be low and not hurt anything. It will get pulled back high again during a normal warm reset when it will default back to an input. To properly preserve the TPM state across suspend/resume and to make the chrome U-Boot happy, properly set the GPIO to mask the reset to the TPM. Signed-off-by: Vikas Sajjan <vikas.sajjan@samsung.com> Reviewed-by: Doug Anderson <dianders@chromium.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm/boot/dts/exynos5800-peach-pi.dts')
-rw-r--r--arch/arm/boot/dts/exynos5800-peach-pi.dts12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/exynos5800-peach-pi.dts b/arch/arm/boot/dts/exynos5800-peach-pi.dts
index 28f2a251aee5..0bc97d94474c 100644
--- a/arch/arm/boot/dts/exynos5800-peach-pi.dts
+++ b/arch/arm/boot/dts/exynos5800-peach-pi.dts
@@ -209,6 +209,9 @@
&pinctrl_0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&mask_tpm_reset>;
+
max98091_irq: max98091-irq {
samsung,pins = "gpx0-2";
samsung,pin-function = <0>;
@@ -216,6 +219,15 @@
samsung,pin-drv = <0>;
};
+ /* We need GPX0_6 to be low at sleep time; just keep it low always */
+ mask_tpm_reset: mask-tpm-reset {
+ samsung,pins = "gpx0-6";
+ samsung,pin-function = <1>;
+ samsung,pin-pud = <0>;
+ samsung,pin-drv = <0>;
+ samsung,pin-val = <0>;
+ };
+
tpm_irq: tpm-irq {
samsung,pins = "gpx1-0";
samsung,pin-function = <0>;