Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 29f5f486 authored by Mark Brown's avatar Mark Brown
Browse files

regulator: core: Move more deallocation into class unregister



We really ought to be using the class dvice lifetime management features
more than we are rather than open coding them so take a step towards that
by moving some of the simplest deallocations to the dev_release() function.

Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 1768514e
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -3598,6 +3598,9 @@ static const struct attribute_group *regulator_dev_groups[] = {
static void regulator_dev_release(struct device *dev)
{
	struct regulator_dev *rdev = dev_get_drvdata(dev);

	kfree(rdev->constraints);
	of_node_put(rdev->dev.of_node);
	kfree(rdev);
}

@@ -3829,9 +3832,7 @@ void regulator_unregister(struct regulator_dev *rdev)
	unset_regulator_supplies(rdev);
	list_del(&rdev->list);
	mutex_unlock(&regulator_list_mutex);
	kfree(rdev->constraints);
	regulator_ena_gpio_free(rdev);
	of_node_put(rdev->dev.of_node);
	device_unregister(&rdev->dev);
}
EXPORT_SYMBOL_GPL(regulator_unregister);