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

Commit 7eb49b32 authored by Anirudh Ghayal's avatar Anirudh Ghayal
Browse files

qcom: qpnp-haptic: Disable haptics when enable time specified is zero



The vibrator HAL expects vibration to be disabled when the 'enable'
time specified is 0. Fix this.

CRs-Fixed: 2083994
Change-Id: I12843233da5429ed2fd53f33617952b1dd0ddcd5
Signed-off-by: default avatarAnirudh Ghayal <aghayal@codeaurora.org>
parent 86db2549
Loading
Loading
Loading
Loading
+12 −2
Original line number Diff line number Diff line
@@ -2233,13 +2233,23 @@ static void qpnp_hap_td_enable(struct timed_output_dev *dev, int time_ms)
					 timed_dev);
	int rc;

	if (time_ms <= 0)
	if (time_ms < 0)
		return;

	mutex_lock(&hap->lock);

	if (time_ms == 0) {
		/* disable haptics */
		hrtimer_cancel(&hap->hap_timer);
		hap->state = 0;
		schedule_work(&hap->work);
		mutex_unlock(&hap->lock);
		return;
	}

	if (time_ms < 10)
		time_ms = 10;

	mutex_lock(&hap->lock);
	if (is_sw_lra_auto_resonance_control(hap))
		hrtimer_cancel(&hap->auto_res_err_poll_timer);