Use common syscore_shutdown for RK818 PMIC to do clean I2C shutdown, drop the unused pm_pwroff_fn function pointers. Cc: Heiko Stuebner <heiko@xxxxxxxxx> Signed-off-by: Anand Moon <linux.amoon@xxxxxxxxx> --- drivers/mfd/rk808.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/drivers/mfd/rk808.c b/drivers/mfd/rk808.c index 0a098fbdf112..4b3b90dad4f8 100644 --- a/drivers/mfd/rk808.c +++ b/drivers/mfd/rk808.c @@ -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: -- 2.24.0