Re: [PATCH v4 4/5] Input: add haptic drvier on max77843
From: Dmitry Torokhov <hidden>
Date: 2015-02-23 17:27:08
Also in:
linux-devicetree, linux-pm, lkml
Hi Jaew9on, On Mon, Feb 23, 2015 at 05:09:50PM +0900, Jaewon Kim wrote:
This patch adds support for haptic driver on max77843 MFD(Multi Function Device) with PMIC, MUIC, LED, CHARGER. This driver supports external pwm and LRA(Linear Resonant Actuator) motor. And it supports ff-memless interface from inpu framework. Cc: Dmitry Torokhov <redacted> Signed-off-by: Jaewon Kim <redacted>
...
+static void max77843_haptic_play_work(struct work_struct *work)
+{
+ struct max77843_haptic *haptic =
+ container_of(work, struct max77843_haptic, work);
+ int error;
+
+ mutex_lock(&haptic->mutex);
+
+ if (haptic->suspended)
+ mutex_unlock(&haptic->mutex);Huh?
+
+ error = max77843_haptic_set_duty_cycle(haptic);
+ if (error) {
+ dev_err(haptic->dev, "failed to set duty cycle: %d\n", error);
+ return;Here you are leaving with the mutex held.
+ }
+
+ if (haptic->magnitude) {
+ error = max77843_haptic_enable(haptic);
+ if (error)
+ dev_err(haptic->dev,
+ "cannot enable haptic: %d\n", error);
+ } else {
+ max77843_haptic_disable(haptic);
+ if (error)
+ dev_err(haptic->dev,
+ "cannot disable haptic: %d\n", error);
+ }
+
+ mutex_unlock(&haptic->mutex);
+}
+The rest seems quite reasonable. Thanks. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html