STRUCT NMK_PINCTRL_SOC_DATA(9)
π¦ struct nmk_pinctrl_soc_data(9) π¦
okay so bestie, this is a Kernel API Manual page and it's literally all about struct nmk_pinctrl_soc_data β the Nomadik pin controller per-SoC configuration struct. yes, the whole page. it's giving "one struct, so much lore" and honestly? we stan a focused queen. π
β¨ NAME β¨
struct nmk_pinctrl_soc_data β the Nomadik pin controller per-SoC configuration. that's it, that's the vibe. π
πΈ SYNOPSIS πΈ
here's the whole struct, character for character, no cap β do not touch a single semicolon:
struct nmk_pinctrl_soc_data {
const struct pinctrl_pin_desc *pins;
unsigned int npins;
const struct nmk_function *functions;
unsigned int nfunctions;
const struct nmk_pingroup *groups;
unsigned int ngroups;
const struct prcm_gpiocr_altcx_pin_desc *altcx_pins;
unsigned int npins_altcx;
const u16 *prcm_gpiocr_registers;
};
look at her. nine fields. immaculate. π«Ά
π Members π
okay now the main character energy β every single member, explained:
pinsβ an array describing all the pins the pin controller affects. and listen, this part is important: all pins which are also GPIOs must be listed first within the array, and they have to be numbered identically to the GPIO controller's numbering. no exceptions, no vibes-based reordering, fr fr. πnpinsβ the number of entries inpins. the headcount. thepinsattendance sheet. β¨functionsβ the functions supported on this SoC. this SoC's whole personality, basically. πnfunctionsβ the number of entries infunctions. math, but make it necessary. π₯groupsβ an array describing all pin groups the pin SoC supports. squad goals, but hardware. πngroupsβ the number of entries ingroups. bestie, count your group chat members. π§altcx_pinsβ the pins that support Other alternate-C function on this SoC. yes, "Other" is capitalised in the original, we are respecting the proper noun. π¦npins_altcxβ the number of Other alternate-C pins. again: count. π’prcm_gpiocr_registersβ the array ofPRCM GPIOCRregisters on this SoC. the one with the long name that ate and left no crumbs. π
π SEE ALSO π
go read these next, iykyk:
- Kernel file
./include/linux/gpio/gpio-nomadik.henum prcm_gpiocr_reg_index(9) enum prcm_gpiocr_altcx_index(9)struct prcm_gpiocr_altcx(9)struct prcm_gpiocr_altcx_pin_desc(9)struct nmk_function(9)struct nmk_pingroup(9)
literally a whole reading list. take notes. β
π tiny reminder that this page lives in ./include/linux/gpio β don't go looking for it in the wrong directory and then @ me about it. π
and that's the page!! tysm for coming to my TED talk, mwah π
β with love, from ./include/linux/gpio, dated October 2026, on behalf of struct nmk_pinctrl_soc_data(9). slay, periodt, and go configure some pins. πβ¨
π¦ 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