From: Greg Kroah-Hartman Date: Fri, 9 Jan 2026 10:24:04 +0000 (+0100) Subject: 5.10-stable patches X-Git-Tag: v6.1.160~23 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=61ba1947b563b78ef75e504c918bac8b2f369433;p=thirdparty%2Fkernel%2Fstable-queue.git 5.10-stable patches added patches: pwm-stm32-always-program-polarity.patch --- diff --git a/queue-5.10/pwm-stm32-always-program-polarity.patch b/queue-5.10/pwm-stm32-always-program-polarity.patch new file mode 100644 index 0000000000..f4958b30ba --- /dev/null +++ b/queue-5.10/pwm-stm32-always-program-polarity.patch @@ -0,0 +1,38 @@ +From sean@geanix.com Fri Jan 9 11:22:32 2026 +From: Sean Nyekjaer +Date: Thu, 08 Jan 2026 13:45:23 +0100 +Subject: pwm: stm32: Always program polarity +To: "Fabrice Gasnier" , "Uwe Kleine-König" , "Maxime Coquelin" , "Alexandre Torgue" +Cc: "Uwe Kleine-König" , linux-pwm@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org, "Sean Nyekjaer" +Message-ID: <20260108-stm32-pwm-v2-1-ced582974f8b@geanix.com> + +From: Sean Nyekjaer + +Commit 7346e7a058a2 ("pwm: stm32: Always do lazy disabling") triggered a +regression where PWM polarity changes could be ignored. + +stm32_pwm_set_polarity() was skipped due to a mismatch between the +cached pwm->state.polarity and the actual hardware state, leaving the +hardware polarity unchanged. + +Fixes: 7edf7369205b ("pwm: Add driver for STM32 plaftorm") +Cc: stable@vger.kernel.org # <= 6.12 +Signed-off-by: Sean Nyekjaer +Co-developed-by: Uwe Kleine-König +Signed-off-by: Uwe Kleine-König +--- + drivers/pwm/pwm-stm32.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +--- a/drivers/pwm/pwm-stm32.c ++++ b/drivers/pwm/pwm-stm32.c +@@ -458,8 +458,7 @@ static int stm32_pwm_apply(struct pwm_ch + return 0; + } + +- if (state->polarity != pwm->state.polarity) +- stm32_pwm_set_polarity(priv, pwm->hwpwm, state->polarity); ++ stm32_pwm_set_polarity(priv, pwm->hwpwm, state->polarity); + + ret = stm32_pwm_config(priv, pwm->hwpwm, + state->duty_cycle, state->period); diff --git a/queue-5.10/series b/queue-5.10/series index 65a3f6d2f5..6ca1945f67 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -406,3 +406,4 @@ leds-lp50xx-reduce-level-of-dereferences.patch leds-lp50xx-get-rid-of-redundant-check-in-lp50xx_enable_disable.patch leds-lp50xx-remove-duplicated-error-reporting-in-.remove.patch leds-leds-lp50xx-enable-chip-before-any-communication.patch +pwm-stm32-always-program-polarity.patch