mfd: rk808: add rk818 suspend/resume registers setting

set 3.4v interrupt signal assert when suspend, set 3.0v shutdown
signal assert when resume.

Change-Id: Id15b721bbdc9665a18cf9946b92c435a23f1666c
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
This commit is contained in:
Joseph Chen
2017-11-21 10:27:59 +08:00
committed by Tao Huang
parent 2518489472
commit adb91abb82

View File

@@ -432,6 +432,18 @@ static const struct regmap_irq rk816_irqs[] = {
},
};
static struct rk808_reg_data rk818_suspend_reg[] = {
/* set bat 3.4v low and act irq */
{ RK808_VB_MON_REG, VBAT_LOW_VOL_MASK | VBAT_LOW_ACT_MASK,
RK808_VBAT_LOW_3V4 | EN_VBAT_LOW_IRQ },
};
static struct rk808_reg_data rk818_resume_reg[] = {
/* set bat 3.0v low and act shutdown */
{ RK808_VB_MON_REG, VBAT_LOW_VOL_MASK | VBAT_LOW_ACT_MASK,
RK808_VBAT_LOW_3V0 | EN_VABT_LOW_SHUT_DOWN },
};
static const struct regmap_irq rk818_irqs[] = {
/* INT_STS */
[RK818_IRQ_VOUT_LO] = {
@@ -807,6 +819,10 @@ static int rk808_probe(struct i2c_client *client,
cells = rk818s;
nr_cells = ARRAY_SIZE(rk818s);
pm_pwroff_fn = rk818_device_shutdown;
suspend_reg = rk818_suspend_reg;
suspend_reg_num = ARRAY_SIZE(rk818_suspend_reg);
resume_reg = rk818_resume_reg;
resume_reg_num = ARRAY_SIZE(rk818_resume_reg);
break;
default:
dev_err(&client->dev, "Unsupported RK8XX ID %lu\n",