pwm: Ensure that pwm_chips are allocated using pwmchip_alloc()
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Wed, 14 Feb 2024 09:33:28 +0000 (10:33 +0100)
committerUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Fri, 26 Apr 2024 19:29:16 +0000 (21:29 +0200)
commit05947224ff469bf17b3791fd009bc27ce5151997
treef0de00606652bfd6cc833e32ba5090198626f8de
parent79dedfadb79e527ca4dc6f3727dace96e3333f82
pwm: Ensure that pwm_chips are allocated using pwmchip_alloc()

Memory holding a struct device must not be freed before the reference
count drops to zero. So a struct pwm_chip must not live in memory
freed by a driver on unbind. All in-tree drivers were fixed accordingly,
but as out-of-tree drivers, that were not adapted, still compile fine,
catch these in pwmchip_add().

Link: https://lore.kernel.org/r/35f5b229c98f78b2f6ce2397259a4a936be477c0.1707900770.git.u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
drivers/pwm/core.c
include/linux/pwm.h