mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
48 lines
1.9 KiB
Diff
48 lines
1.9 KiB
Diff
From 8cece584b73434c1eb76a553424ff5b875fd1022 Mon Sep 17 00:00:00 2001
|
|
From: Robin Gong <B38343@freescale.com>
|
|
Date: Sat, 8 Oct 2011 11:17:42 +0800
|
|
Subject: [PATCH] ENGR00155891 mx53_loco: enable mc34708's WDI function and pin configuration
|
|
|
|
Because of reboot failure, we add mc34708's WDI reset function and the pin's
|
|
mux function when system reboot. So mc34708 will be reset when AP reboot.
|
|
Signed-off-by: Robin Gong <B38343@freescale.com>
|
|
(cherry picked from commit 8e03278824625e8d528e129ad49e094e4d533f87)
|
|
---
|
|
arch/arm/mach-mx5/mx53_loco_pmic_mc34708.c | 5 +++++
|
|
arch/arm/plat-mxc/system.c | 4 ++++
|
|
2 files changed, 9 insertions(+), 0 deletions(-)
|
|
|
|
diff --git a/arch/arm/mach-mx5/mx53_loco_pmic_mc34708.c b/arch/arm/mach-mx5/mx53_loco_pmic_mc34708.c
|
|
index ca5a052..3ad0206 100644
|
|
--- a/arch/arm/mach-mx5/mx53_loco_pmic_mc34708.c
|
|
+++ b/arch/arm/mach-mx5/mx53_loco_pmic_mc34708.c
|
|
@@ -285,6 +285,11 @@ static int mc34708_regulator_init(struct mc34708 *mc34708)
|
|
value &= ~SWHOLD_MASK;
|
|
pmic_write_reg(REG_MC34708_USB_CONTROL, value, 0xffffff);
|
|
|
|
+ /* enable WDI reset*/
|
|
+ pmic_read_reg(REG_MC34708_POWER_CTL2, &value, 0xffffff);
|
|
+ value |= 0x1000;
|
|
+ pmic_write_reg(REG_MC34708_POWER_CTL2, value, 0xffffff);
|
|
+
|
|
mc34708_register_regulator(mc34708, MC34708_SW1A, &sw1a_init);
|
|
mc34708_register_regulator(mc34708, MC34708_SW1B, &sw1b_init);
|
|
mc34708_register_regulator(mc34708, MC34708_SW2, &sw2_init);
|
|
diff --git a/arch/arm/plat-mxc/system.c b/arch/arm/plat-mxc/system.c
|
|
index e4665a2..4f21d5c 100644
|
|
--- a/arch/arm/plat-mxc/system.c
|
|
+++ b/arch/arm/plat-mxc/system.c
|
|
@@ -78,6 +78,10 @@ void arch_reset(char mode, const char *cmd)
|
|
}
|
|
|
|
/* Assert SRS signal */
|
|
+#ifdef CONFIG_ARCH_MX5
|
|
+ if (board_is_mx53_loco_mc34708()) /*only for mx53_loco_mc34708*/
|
|
+ mxc_iomux_v3_setup_pad(MX53_PAD_GPIO_9__WDOG1_WDOG_B);
|
|
+#endif
|
|
__raw_writew(wcr_enable, wdog_base);
|
|
|
|
/* wait for reset to assert... */
|
|
--
|
|
1.5.4.4
|
|
|