@@ -76,6 +76,8 @@ static int regulator_haptic_set_voltage(struct regulator_haptic *haptic,
return error;
}
+ regulator_haptic_toggle(haptic, !!magnitude);
+
return 0;
}
@@ -84,7 +86,6 @@ static void regulator_haptic_work(struct work_struct *work)
struct regulator_haptic *haptic = container_of(work,
struct regulator_haptic, work);
unsigned int magnitude;
- int error;
mutex_lock(&haptic->mutex);
@@ -93,12 +94,7 @@ static void regulator_haptic_work(struct work_struct *work)
magnitude = ACCESS_ONCE(haptic->magnitude);
- error = regulator_haptic_set_voltage(haptic, magnitude);
- if (error)
- goto out;
-
- regulator_haptic_toggle(haptic, magnitude != 0);
-
+ regulator_haptic_set_voltage(haptic, magnitude);
out:
mutex_unlock(&haptic->mutex);
}
@@ -123,7 +119,6 @@ static void regulator_haptic_close(struct input_dev *input)
cancel_work_sync(&haptic->work);
regulator_haptic_set_voltage(haptic, 0);
- regulator_haptic_toggle(haptic, false);
}
static int __maybe_unused
@@ -225,7 +220,6 @@ static int __maybe_unused regulator_haptic_suspend(struct device *dev)
return error;
regulator_haptic_set_voltage(haptic, 0);
- regulator_haptic_toggle(haptic, false);
haptic->suspended = true;
@@ -245,10 +239,8 @@ static int __maybe_unused regulator_haptic_resume(struct device *dev)
haptic->suspended = false;
magnitude = ACCESS_ONCE(haptic->magnitude);
- if (magnitude) {
+ if (magnitude)
regulator_haptic_set_voltage(haptic, magnitude);
- regulator_haptic_toggle(haptic, true);
- }
mutex_unlock(&haptic->mutex);
All the use cases in this driver has a regulator_haptic_toggle() call after regulator_haptic_set_voltage(). So make regulator_haptic_set_voltage() call regulator_haptic_toggle() to simplify the code. Signed-off-by: Axel Lin <axel.lin@ingics.com> --- drivers/input/misc/regulator-haptic.c | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-)