usleep_range(16000, 16000);
max77620_allow_atomic_xfer(max77620_poweroff->max77620);
+ if (soc_specific_power_off)
+ return;
+
ret = max77620_reg_update(max77620_poweroff->max77620->dev,
MAX77620_PWR_SLAVE, MAX77620_REG_ONOFFCNFG2,
MAX77620_ONOFFCNFG2_SFT_RST_WK, 0);
_max77620_prepare_system_power_off(max77620_poweroff);
- if (max77620_poweroff->need_rtc_power_on)
+ if (max77620_poweroff->need_rtc_power_on) {
max77620_auto_power_on(max77620_poweroff);
+ return;
+ }
+
+ if (soc_specific_power_off)
+ return;
ret = max77620_reg_update(max77620_poweroff->max77620->dev,
MAX77620_PWR_SLAVE, MAX77620_REG_ONOFFCNFG2,