Re: [PATCH v4 4/5] Input: add haptic drvier on max77843

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hi Dmitry Torokhov,

On 02/24/2015 02:26 AM, Dmitry Torokhov wrote:
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 <dmitry.torokhov@xxxxxxxxx>
Signed-off-by: Jaewon Kim <jaewon02.kim@xxxxxxxxxxx>
...

+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?
This code prevent to play haptic when entering suspend state.
But I forgot return.
I will add return 0 in version 6.


+
+	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.
Okay, I will add mutex_unlock().

+	}
+
+	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.

Thanks to review my patch.


Thanks,
Jaewon Kim
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux