Commit 686e54ea authored by Bartosz Golaszewski's avatar Bartosz Golaszewski
Browse files

gpio: deprecate devm_gpiod_unhinge()

This function was introduced as a workaround for an issue with resource
ownership in the regulator subsystem. Rather than passing the ownership
of a GPIO, we should make the regulator core be able to deal with
resources it didn't request. Deprecate this function so that we don't
get more users in the tree.

Link: https://lore.kernel.org/r/20250401-gpio-todo-remove-nonexclusive-v2-2-7c1380797b0d@linaro.org


Signed-off-by: default avatarBartosz Golaszewski <bartosz.golaszewski@linaro.org>
parent 6deb8435
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -317,11 +317,15 @@ EXPORT_SYMBOL_GPL(devm_gpiod_put);
 * @dev:	GPIO consumer
 * @desc:	GPIO descriptor to remove resource management from
 *
 * *DEPRECATED*
 * This function should not be used. It's been provided as a workaround for
 * resource ownership issues in the regulator framework and should be replaced
 * with a better solution.
 *
 * Remove resource management from a GPIO descriptor. This is needed when
 * you want to hand over lifecycle management of a descriptor to another
 * mechanism.
 */

void devm_gpiod_unhinge(struct device *dev, struct gpio_desc *desc)
{
	int ret;