summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorguoyin.chen <guoyin.chen@freescale.com>2014-07-04 15:26:41 +0800
committerguoyin.chen <guoyin.chen@freescale.com>2014-07-04 15:26:41 +0800
commit33e30fb38c578c9db7400fd605ac84994a2a1dba (patch)
tree479629daaf88ca15714495a66068be490678481d /drivers
parent9a37f431167d1b8442384a016b929e5bdf7edb60 (diff)
ENGR00321285 snvs_pwrkey: default timeout for snvs power key is too short(5s)
Make cold shutdown timeout to 15s for snvs power keyboard Signed-off-by: guoyin.chen <guoyin.chen@freescale.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/input/keyboard/snvs_pwrkey.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/input/keyboard/snvs_pwrkey.c b/drivers/input/keyboard/snvs_pwrkey.c
index 1d6d62c4e663..7dfb5db6a340 100644
--- a/drivers/input/keyboard/snvs_pwrkey.c
+++ b/drivers/input/keyboard/snvs_pwrkey.c
@@ -28,6 +28,10 @@
#define SNVS_HPSR_BTN (0x1 << 6)
#define SNVS_LPSR_SPO (0x1 << 18)
#define SNVS_LPCR_DEP_EN (0x1 << 5)
+#define SNVS_LPCR_BTN_PRESSTIME_5S (0x0 << 16)
+#define SNVS_LPCR_BTN_PRESSTIME_10S (0x1 << 16)
+#define SNVS_LPCR_BTN_PRESSTIME_15S (0x2 << 16)
+#define SNVS_LPCR_BTN_PRESSTIME_DISABLE (0x3 << 16)
struct pwrkey_drv_data {
void __iomem *ioaddr;
@@ -116,7 +120,9 @@ static int imx_snvs_pwrkey_probe(struct platform_device *pdev)
ioaddr = pdata->ioaddr;
val = readl_relaxed(ioaddr + SNVS_LPCR_REG);
- val |= SNVS_LPCR_DEP_EN,
+ val |= SNVS_LPCR_DEP_EN;
+ val &= ~SNVS_LPCR_BTN_PRESSTIME_DISABLE;
+ val |= SNVS_LPCR_BTN_PRESSTIME_15S;
writel_relaxed(val, ioaddr + SNVS_LPCR_REG);
/* clear the unexpected interrupt before driver ready */
val = readl_relaxed(ioaddr + SNVS_LPSR_REG);