Skip to content

Commit

Permalink
Input: regulator-haptic - simplify code
Browse files Browse the repository at this point in the history
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>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
  • Loading branch information
Axel Lin authored and Dmitry Torokhov committed Jan 11, 2015
1 parent f17effb commit 3cb6dcf
Showing 1 changed file with 5 additions and 18 deletions.
23 changes: 5 additions & 18 deletions drivers/input/misc/regulator-haptic.c
Original file line number Diff line number Diff line change
Expand Up @@ -76,30 +76,21 @@ static int regulator_haptic_set_voltage(struct regulator_haptic *haptic,
return error;
}

regulator_haptic_toggle(haptic, !!magnitude);

return 0;
}

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);

if (haptic->suspended)
goto out;

magnitude = ACCESS_ONCE(haptic->magnitude);
if (!haptic->suspended)
regulator_haptic_set_voltage(haptic, haptic->magnitude);

error = regulator_haptic_set_voltage(haptic, magnitude);
if (error)
goto out;

regulator_haptic_toggle(haptic, magnitude != 0);

out:
mutex_unlock(&haptic->mutex);
}

Expand All @@ -123,7 +114,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
Expand Down Expand Up @@ -225,7 +215,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;

Expand All @@ -245,10 +234,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);

Expand Down

0 comments on commit 3cb6dcf

Please sign in to comment.