diff options
-rw-r--r-- | drivers/pwm/core.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/pwm/core.c b/drivers/pwm/core.c index b4703dfc9e4d..dc66e3405bf5 100644 --- a/drivers/pwm/core.c +++ b/drivers/pwm/core.c @@ -318,13 +318,13 @@ void pwmchip_remove(struct pwm_chip *chip) { pwmchip_sysfs_unexport(chip); + if (IS_ENABLED(CONFIG_OF)) + of_pwmchip_remove(chip); + mutex_lock(&pwm_lock); list_del_init(&chip->list); - if (IS_ENABLED(CONFIG_OF)) - of_pwmchip_remove(chip); - free_pwms(chip); mutex_unlock(&pwm_lock); |