STRUCT STMPE_VARIANT_INFO(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

struct stmpe_variant_info β€” variant-specific information. Okay bestie, this is the Kernel API Manual page for that exact struct, and it’s giving extremely niche kernel-struct main character energy. ✨

✨ SYNOPSIS ✨

struct stmpe_variant_info {
    const char *name;
    u16 id_val;
    u16 id_mask;
    int num_gpios;
    int af_bits;
    const u8 *regs;
    struct stmpe_variant_block *blocks;
    int num_blocks;
    int num_irqs;
    int (*enable)(struct stmpe *stmpe, unsigned int blocks, bool
enable);
    int (*get_altfunc)(struct stmpe *stmpe, enum stmpe_block block);
    int (*enable_autosleep)(struct stmpe *stmpe, int autosleep_timeout);
};

πŸ’… Members πŸ’…

Vibe check on every member, because they all matter β€” no skipping, fr fr. πŸ’–

  • name β€” part name πŸŽ€
  • id_val β€” content of CHIPID register ⭐
  • id_mask β€” bits valid in CHIPID register for comparison with id_val πŸ’…
  • num_gpios β€” number of GPIOS 🌈
  • af_bits β€” number of bits used to specify the alternate function πŸ¦‹
  • regs β€” variant specific registers. πŸ“
  • blocks β€” list of blocks present on this device 🧚
  • num_blocks β€” number of blocks present on this device πŸ”₯
  • num_irqs β€” number of internal IRQs available on this device ⚑
  • enable β€” callback to enable the specified blocks. Called with the I/O lock held. πŸ‘‘
  • get_altfunc β€” callback to get the alternate function number for the specific block 🎯
  • enable_autosleep β€” callback to configure autosleep with specified timeout πŸŒ™
bestie note: enable is literally called with the I/O lock held β€” that detail is iconic and important, so don’t lose it. πŸ’…

πŸ”Ž SEE ALSO πŸ”Ž

  • Kernel file ./drivers/mfd/stmpe.h πŸ“‚
  • struct stmpe_variant_block(9)
  • struct stmpe_client_info(9)

That’s the whole page, bestie. Source/version situation: ./drivers/mfd, dated October 2026, and it’s the manual for struct stmpe_variant_info(9). Mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from