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

Commit d44691fd authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "input: sensors: add ap3426 queue_work return value check"

parents 3dedc09b 922f8288
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -920,12 +920,13 @@ exit:
static irqreturn_t ap3426_irq_handler(int irq, void *data)
{
	struct ap3426_data *di = data;
	bool rc;

	rc = queue_work(di->workqueue, &di->report_work);
	/* wake up event should hold a wake lock until reported */
	if (atomic_inc_return(&di->wake_count) == 1)
	if (rc && (atomic_inc_return(&di->wake_count) == 1))
		pm_stay_awake(&di->i2c->dev);

	queue_work(di->workqueue, &di->report_work);

	return IRQ_HANDLED;
}
@@ -971,8 +972,10 @@ static void ap3426_report_work(struct work_struct *work)
	}

exit:
	if (atomic_dec_and_test(&di->wake_count))
	if (atomic_dec_and_test(&di->wake_count)) {
		pm_relax(&di->i2c->dev);
		dev_dbg(&di->i2c->dev, "wake lock released\n");
	}

	/* clear interrupt */
	if (di->power_enabled) {