Loading drivers/power/qpnp-charger.c +9 −1 Original line number Diff line number Diff line Loading @@ -1190,9 +1190,16 @@ static irqreturn_t qpnp_chg_usb_chg_gone_irq_handler(int irq, void *_chip) { struct qpnp_chg_chip *chip = _chip; u8 usb_sts; int rc; rc = qpnp_chg_read(chip, &usb_sts, INT_RT_STS(chip->usb_chgpth_base), 1); if (rc) pr_err("failed to read usb_chgpth_sts rc=%d\n", rc); pr_debug("chg_gone triggered\n"); if (qpnp_chg_is_usb_chg_plugged_in(chip)) { if (qpnp_chg_is_usb_chg_plugged_in(chip) && (usb_sts & CHG_GONE_IRQ)) { qpnp_chg_charge_en(chip, 0); qpnp_chg_force_run_on_batt(chip, 1); schedule_delayed_work(&chip->arb_stop_work, Loading Loading @@ -4755,6 +4762,7 @@ qpnp_charger_probe(struct spmi_device *spmi) goto unregister_dc_psy; } qpnp_chg_usb_chg_gone_irq_handler(chip->chg_gone.irq, chip); qpnp_chg_usb_usbin_valid_irq_handler(chip->usbin_valid.irq, chip); qpnp_chg_dc_dcin_valid_irq_handler(chip->dcin_valid.irq, chip); power_supply_set_present(chip->usb_psy, Loading Loading
drivers/power/qpnp-charger.c +9 −1 Original line number Diff line number Diff line Loading @@ -1190,9 +1190,16 @@ static irqreturn_t qpnp_chg_usb_chg_gone_irq_handler(int irq, void *_chip) { struct qpnp_chg_chip *chip = _chip; u8 usb_sts; int rc; rc = qpnp_chg_read(chip, &usb_sts, INT_RT_STS(chip->usb_chgpth_base), 1); if (rc) pr_err("failed to read usb_chgpth_sts rc=%d\n", rc); pr_debug("chg_gone triggered\n"); if (qpnp_chg_is_usb_chg_plugged_in(chip)) { if (qpnp_chg_is_usb_chg_plugged_in(chip) && (usb_sts & CHG_GONE_IRQ)) { qpnp_chg_charge_en(chip, 0); qpnp_chg_force_run_on_batt(chip, 1); schedule_delayed_work(&chip->arb_stop_work, Loading Loading @@ -4755,6 +4762,7 @@ qpnp_charger_probe(struct spmi_device *spmi) goto unregister_dc_psy; } qpnp_chg_usb_chg_gone_irq_handler(chip->chg_gone.irq, chip); qpnp_chg_usb_usbin_valid_irq_handler(chip->usbin_valid.irq, chip); qpnp_chg_dc_dcin_valid_irq_handler(chip->dcin_valid.irq, chip); power_supply_set_present(chip->usb_psy, Loading