pinctrl_gpio_free(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ pinctrl_gpio_free(9) ✨

Okay bestie, welcome to the <pink>Kernel API Manual</pink> entry for pinctrl_gpio_free(9) β€” the function that literally frees control on a single pin, and rn that pin is being used as a GPIO. Slay. πŸŽ€


🌸 SYNOPSIS 🌸

void pinctrl_gpio_free (struct gpio_chip *gc , unsigned int offset );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • gc β€” the GPIO chip structure, fresh from the GPIO subsystem. That's her home base, periodt. πŸ‘‘
  • offset β€” the hardware offset of the GPIO relative to the controller. Like her exact address in the chip, iykyk. πŸ“

πŸ’… DESCRIPTION πŸ’…

So here's the tea: this function should ONLY be used from gpiolib-based GPIO drivers, as part of their gpio_request semantics. That's the only vibe it's giving. Platforms and individual drivers shall NOT request GPIO pins to be muxed in β€” like, do not. Not your moment. πŸ™ˆ

Bestie, I cannot stress this enough: the asterisks around ONLY and NOT are not decorative. They are the whole entire point. Respect the boundaries. πŸ’€

🌈 SEE ALSO 🌈

Kernel file: ./drivers/pinctrl/core.c β€” and honestly the friend group is huge, so let's get into it:

Like I said β€” entire friend group. Go say hi. 🫢


This page is brought to you by ./drivers/pinctrl on the cover, and it’s stamped October 2026. Stay iconic, bestie β€” and remember, only gpiolib drivers get to call this one. Everyone else, do not try it. πŸ’œπŸŒŸ

πŸ“¦ where this page comes from