Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 53dccac4 authored by qctecmdr Service's avatar qctecmdr Service Committed by Gerrit - the friendly Code Review server
Browse files

Merge "power: smb5: Fix IRQ storm due to WDOG SNARL IRQ"

parents 6e48afd8 9ec22fd9
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -2495,6 +2495,13 @@ static int smb5_request_interrupts(struct smb5 *chip)
	if (chg->irq_info[USBIN_ICL_CHANGE_IRQ].irq)
		chg->usb_icl_change_irq_enabled = true;

	/*
	 * Disable WDOG SNARL IRQ by default to prevent IRQ storm. If required
	 * for any application, enable it through votable.
	 */
	if (chg->irq_info[WDOG_SNARL_IRQ].irq)
		vote(chg->wdog_snarl_irq_en_votable, DEFAULT_VOTER, false, 0);

	return rc;
}

+5 −2
Original line number Diff line number Diff line
@@ -1342,10 +1342,13 @@ static int smblib_wdog_snarl_irq_en_vote_callback(struct votable *votable,
	if (!chg->irq_info[WDOG_SNARL_IRQ].irq)
		return 0;

	if (enable)
	if (enable) {
		enable_irq(chg->irq_info[WDOG_SNARL_IRQ].irq);
	else
		enable_irq_wake(chg->irq_info[WDOG_SNARL_IRQ].irq);
	} else {
		disable_irq_wake(chg->irq_info[WDOG_SNARL_IRQ].irq);
		disable_irq_nosync(chg->irq_info[WDOG_SNARL_IRQ].irq);
	}

	return 0;
}