pwm: samsung: Don't uses devm_*() functions in ->request()

A call to ->request() is always paired by a call to ->free() before a
given device is disposed. So the simplification that usually is possible
when using devm_*() functions cannot be used here. So use plain
kzalloc() and kfree() for improved runtime behaviour and reduced memory
footprint.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
[thierry.reding@gmail.com: fix build failure]
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
This commit is contained in:
Uwe Kleine-König 2019-03-25 10:49:34 +01:00 committed by Thierry Reding
parent e926b12c61
commit b05232d624

View File

@ -226,7 +226,7 @@ static int pwm_samsung_request(struct pwm_chip *chip, struct pwm_device *pwm)
return -EINVAL; return -EINVAL;
} }
our_chan = devm_kzalloc(chip->dev, sizeof(*our_chan), GFP_KERNEL); our_chan = kzalloc(sizeof(*our_chan), GFP_KERNEL);
if (!our_chan) if (!our_chan)
return -ENOMEM; return -ENOMEM;
@ -237,7 +237,7 @@ static int pwm_samsung_request(struct pwm_chip *chip, struct pwm_device *pwm)
static void pwm_samsung_free(struct pwm_chip *chip, struct pwm_device *pwm) static void pwm_samsung_free(struct pwm_chip *chip, struct pwm_device *pwm)
{ {
devm_kfree(chip->dev, pwm_get_chip_data(pwm)); kfree(pwm_get_chip_data(pwm));
} }
static int pwm_samsung_enable(struct pwm_chip *chip, struct pwm_device *pwm) static int pwm_samsung_enable(struct pwm_chip *chip, struct pwm_device *pwm)