mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-07 12:25:00 -04:00
add reset charger pump cmd during power down
Some pump ic's register do not reset to defaul value after shutdown for example cps2023, if acdrv mos set to manual mode and Usb mos at off status. phone can not boot up by cable. Reset register after power down for this case. Change-Id: I2749c185f6504ccf7352238d686d7b77688b725c Signed-off-by: xuwei9 <xuwei9@lenovo.com> Reviewed-on: https://gerrit.mot.com/2779131 SLTApproved: Slta Waiver SME-Granted: SME Approvals Granted Tested-by: Jira Key Reviewed-by: Xiangpo Zhao <zhaoxp3@motorola.com> Submit-Approved: Jira Key
This commit is contained in:
parent
3582d300e2
commit
d3c84c683b
2 changed files with 32 additions and 0 deletions
|
|
@ -2814,6 +2814,36 @@ static int qti_charger_init(struct qti_charger *chg)
|
|||
return 0;
|
||||
}
|
||||
|
||||
bool qti_charger_reset_chargepump(struct qti_charger *chg)
|
||||
{
|
||||
unsigned long reset = 0x1;
|
||||
int rc ;
|
||||
|
||||
if(!chg) {
|
||||
pr_err("QTI: chip not valid");
|
||||
return false;
|
||||
}
|
||||
|
||||
rc = qti_charger_write(chg, OEM_PROP_MASTER_SWITCHEDCAP_RESET, &reset, sizeof(reset));
|
||||
if(rc) {
|
||||
mmi_err(chg, "qit charger reset charger pump register fail:%d\n", rc);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static void qti_charger_shutdown(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
struct qti_charger *chg= dev_get_drvdata(dev);
|
||||
|
||||
//reset charger pump register before shutdown.
|
||||
qti_charger_reset_chargepump(chg);
|
||||
mmi_info(chg, "qti_charger_shutdown\n");
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void qti_charger_deinit(struct qti_charger *chg)
|
||||
{
|
||||
int rc;
|
||||
|
|
@ -3096,6 +3126,7 @@ static struct platform_driver qti_charger_driver = {
|
|||
},
|
||||
.probe = qti_charger_probe,
|
||||
.remove = qti_charger_remove,
|
||||
.shutdown = qti_charger_shutdown,
|
||||
};
|
||||
|
||||
module_platform_driver(qti_charger_driver);
|
||||
|
|
|
|||
|
|
@ -73,6 +73,7 @@ enum oem_property_type {
|
|||
OEM_PROP_MSB_DEV_INFO,
|
||||
OEM_PROP_MASTER_SWITCHEDCAP_INFO,
|
||||
OEM_PROP_SLAVE_SWITCHEDCAP_INFO,
|
||||
OEM_PROP_MASTER_SWITCHEDCAP_RESET,
|
||||
OEM_PROP_MAX,
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue