STRUCT PINCONF_OPS(9)
hey bestie!! welcome to the struct pinconf_ops(9) page from the Kernel API Manual πβ¨ this one is literally the pin config operations struct, and itβs giving βdrivers with pin configuration superpowers, come implement meβ energy. no cap.
πΈ NAME πΈ
struct pinconf_ops β the pin config operations hookup, to be implemented by pin configuration capable drivers. π
β¨ SYNOPSIS β¨
struct pinconf_ops {
#ifdef CONFIG_GENERIC_PINCONF;
bool is_generic;
#endif;
int (*pin_config_get) (struct pinctrl_dev *pctldev, unsigned int
pin, unsigned long *config);
int (*pin_config_set) (struct pinctrl_dev *pctldev, unsigned int
pin, unsigned long *configs, unsigned int num_configs);
int (*pin_config_group_get) (struct pinctrl_dev *pctldev, unsigned
int selector, unsigned long *config);
int (*pin_config_group_set) (struct pinctrl_dev *pctldev, unsigned
int selector, unsigned long *configs, unsigned int num_configs);
void (*pin_config_dbg_show) (struct pinctrl_dev *pctldev, struct
seq_file *s, unsigned int offset);
void (*pin_config_group_dbg_show) (struct pinctrl_dev *pctldev,
struct seq_file *s, unsigned int selector);
void (*pin_config_config_dbg_show) (struct pinctrl_dev *pctldev,
struct seq_file *s, unsigned long config);
};
π Members π
okay so hereβs the member-by-member vibe check, and yes every single one matters:
is_genericβ for pin controllers that wanna use the generic interface, this flag tells the framework that itβs generic. π«Άpin_config_getβ get the config of a certain pin. if the requested config is not available on this controller, this should return-ENOTSUPP; and if it is available but disabled, it should return-EINVAL. periodt.pin_config_setβ configure an individual pin. slay.pin_config_group_getβ get configurations for an entire pin group; should return-ENOTSUPPand-EINVALusing the same rules aspin_config_get. iykyk.pin_config_group_setβ configure all pins in a group. πpin_config_dbg_showβ optional debugfs display hook that will provide per-device info for a certain pin in debugfs. no cap.pin_config_group_dbg_showβ optional debugfs display hook that will provide per-device info for a certain group in debugfs. π¦pin_config_config_dbg_showβ optional debugfs display hook that will decode and display a driverβs pin configuration parameter. iconic.
π SEE ALSO π
Kernel file ./include/linux/pinctrl/pinconf.h β go read it bestie, itβs right there. πβ¨
cute sign-off time: source is ./include/linux/pinctrl, date is October 2026, and the page is struct pinconf_ops(9). mwah πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms