]> git.ipfire.org Git - thirdparty/linux.git/commit
pwm: bcm2835: Make sure the channel is enabled after pwm_request()
authorUwe Kleine-König <u.kleine-koenig@baylibre.com>
Tue, 18 Nov 2025 17:43:02 +0000 (18:43 +0100)
committerUwe Kleine-König <ukleinek@kernel.org>
Wed, 19 Nov 2025 10:41:00 +0000 (11:41 +0100)
commitcda323dbda76600bf9761970d58517648f0de67d
tree271550e07734640a6fa4960b23dcf46ca894e1f7
parenta5d51e02d6fa550aed4b31ed67d230e82a771ed5
pwm: bcm2835: Make sure the channel is enabled after pwm_request()

The .free callback cleared among others the enable bit PWENx in the
control register. When the PWM is requested later again this bit isn't
restored but the core assumes the PWM is enabled and thus skips a
request to configure the same state as before.

To fix that don't touch the hardware configuration in .free(). For
symmetry also drop .request() and configure the mode completely in
.apply().

Fixes: e5a06dc5ac1f ("pwm: Add BCM2835 PWM driver")
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Link: https://patch.msgid.link/20251118174303.1761577-2-u.kleine-koenig@baylibre.com
Signed-off-by: Uwe Kleine-König <ukleinek@kernel.org>
drivers/pwm/pwm-bcm2835.c