STRUCT PCS_SOC_DATA(9)
π struct pcs_soc_data(9) β SoC specific settings π
okay bestie, so this is a page straight out of the Kernel API Manual (struct pcs_soc_data(9), iykyk) and it's literally just the lil settings bag for your SoC. no cap, it's giving "one struct to hold all the board-specific vibes" β¨
πΈ NAME πΈ
struct pcs_soc_data β SoC specific settings π«Ά
β SYNOPSIS β
struct pcs_soc_data {
unsigned flags;
int irq;
unsigned irq_enable_mask;
unsigned irq_status_mask;
void (*rearm)(void);
};
like, that's the whole thing. five fields. short queen energy π copy it exactly, don't be out here renaming stuff fr fr.
π Members π
flagsβ the initial SoC specificPCS_FEAT_xxxvalues π these are your starting feature vibes.irqβ an optional interrupt for the controller π¦ optional! it can just. not be there.irq_enable_maskβ an optional SoC specific interrupt enable mask β¨irq_status_maskβ an optional SoC specific interrupt status mask πrearmβ an optional SoC specific wake-up rearm function π it's a function pointer,void (*rearm)(void), no args, returns nothing, main character energy.
ngl three of these are optional and one is "initial values" β so if your struct looks mostly empty, that's valid, bestie π
π SEE ALSO π
literally the whole pinctrl-single squad, all documented in the kernel file ./drivers/pinctrl/pinctrl-single.c β go read the whole friend group π:
struct pcs_func_vals(9)struct pcs_conf_vals(9)struct pcs_conf_type(9)struct pcs_function(9)struct pcs_gpiofunc_range(9)struct pcs_data(9)struct pcs_device(9)pcs_add_pin(9)pcs_allocate_pin_table(9)pcs_add_function(9)pcs_get_pin_by_offset(9)pcs_parse_one_pinctrl_entry(9)pcs_dt_node_to_map(9)pcs_irq_free(9)pcs_free_resources(9)struct pcs_interrupt(9)pcs_irq_set(9)pcs_irq_mask(9)pcs_irq_unmask(9)pcs_irq_set_wake(9)pcs_irq_handle(9)pcs_irq_handler(9)pcs_irq_chain_handler(9)pcs_irq_init_chained_handler(9)pcs_quirk_missing_pinctrl_cells(9)
that's 25 entries, count 'em, I did not skip a single one π
that's the whole page, bestie β sourced from ./drivers/pinctrl, dated October 2026, and yeah the footer repeats struct pcs_soc_data(9) because the manual loves a callback π slay, go forth and configure your SoC π
π₯
π¦ 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