@@ -467,11 +467,6 @@ static void rk808_update_bits(unsigned int reg, unsigned int mask,
"can't write to register 0x%x: %x!\n", reg, ret);
}
-static void rk818_device_shutdown(void)
-{
- rk808_update_bits(RK818_DEVCTRL_REG, DEV_OFF, DEV_OFF);
-}
-
static void rk8xx_syscore_shutdown(void)
{
struct rk808 *rk808 = i2c_get_clientdata(rk808_i2c_client);
@@ -494,6 +489,9 @@ static void rk8xx_syscore_shutdown(void)
rk808_update_bits(RK817_SYS_CFG(3),
RK817_SLPPIN_FUNC_MSK, SLPPIN_DN_FUN);
break;
+ case RK818_ID:
+ rk808_update_bits(RK818_DEVCTRL_REG, DEV_OFF, DEV_OFF);
+ break;
default:
break;
}
@@ -583,7 +581,6 @@ static int rk808_probe(struct i2c_client *client,
nr_pre_init_regs = ARRAY_SIZE(rk818_pre_init_reg);
cells = rk818s;
nr_cells = ARRAY_SIZE(rk818s);
- rk808->pm_pwroff_fn = rk818_device_shutdown;
break;
case RK809_ID:
case RK817_ID:
Use common syscore_shutdown for RK818 PMIC to do clean I2C shutdown, drop the unused pm_pwroff_fn function pointers. Cc: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Anand Moon <linux.amoon@gmail.com> --- drivers/mfd/rk808.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-)