STRUCT PINCTRL_SETTING(9)
π struct pinctrl_setting(9) β from the Kernel API Manual, bestie β¨
Okay so picture this: you're deep in struct pinctrl_setting territory, page 9 of the Kernel API Manual, and honestly? This little struct is lowkey the moment. It's literally one individual mux or config setting π β one. singular. setting. Not the whole map, not the whole state, just the one gorgeous little unit. Main character energy fr.
β¨ NAME β¨
struct pinctrl_setting β an individual mux or config setting π¦
πΈ SYNOPSIS πΈ
struct pinctrl_setting {
struct list_head node;
enum pinctrl_map_type type;
struct pinctrl_dev *pctldev;
const char *dev_name;
union {
struct pinctrl_setting_mux mux;
struct pinctrl_setting_configs configs;
} data;
};
Look at her. She's got a node, she's got a type, she's got an anonymous union that's giving "choose your fighter" π β it's mux or it's configs, never both, that's just how she rolls π
π― Members β squad goals π―
nodeβ the list node forstruct pinctrl_settings'ssettingsfield. She's a team player, she links up with her girls πtypeβ the type of setting. Gotta know what kind of vibe you're dealing with before you do anything β¨pctldevβ the pin control device handling that's gonna be programmed. Small caveat bestie: this one is not used forPIN_MAP_TYPE_DUMMY_STATEπ like she's literally off duty for that one, no cap.dev_nameβ the name of the device using this state. Name tag on, iykyk π·οΈdataβ data specific to the setting type. This is the union doing all the work β it'sstruct pinctrl_setting_mux muxorstruct pinctrl_setting_configs configsdepending on thetype, and honestly the way that works is so iconic π
π SEE ALSO π
Kernel file ./drivers/pinctrl/core.h β that's home base, go read it π«Ά
And her friends, all of them, no skipping:
struct pinctrl_dev(9)struct pinctrl(9)struct pinctrl_state(9)struct pinctrl_setting_mux(9)struct pinctrl_setting_configs(9)struct pin_desc(9)struct pinctrl_maps(9)struct group_desc(9)
That's the whole page, periodt π This one lives in ./drivers/pinctrl, dated October 2026, and yes it's still struct pinctrl_setting(9) β she's booked and busy in the Kernel API Manual βπ
π¦ 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