Commit 9ee124ca authored by Uwe Kleine-König's avatar Uwe Kleine-König Committed by Uwe Kleine-König
Browse files

pwm: Fix invalid state detection

Commit 9dd42d01 ("pwm: Allow pwm state transitions from an invalid
state") intended to allow some state transitions that were not allowed
before. The idea is sane and back then I also got the code comment
right, but the check for enabled is bogus. This resulted in state
transitions for enabled states to be allowed to have invalid duty/period
settings and thus it can happen that low-level drivers get requests for
invalid states🙄

.

Invert the check to allow state transitions for disabled states only.

Fixes: 9dd42d01 ("pwm: Allow pwm state transitions from an invalid state")
Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@baylibre.com>
Link: https://lore.kernel.org/r/20250704172416.626433-2-u.kleine-koenig@baylibre.com


Cc: stable@vger.kernel.org
Signed-off-by: default avatarUwe Kleine-König <ukleinek@kernel.org>
parent 19272b37
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -596,7 +596,7 @@ static bool pwm_state_valid(const struct pwm_state *state)
	 * and supposed to be ignored. So also ignore any strange values and
	 * consider the state ok.
	 */
	if (state->enabled)
	if (!state->enabled)
		return true;

	if (!state->period)