STRUCT I8255_REGMAP_CONFIG(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct i8255_regmap_config(9) β€” the Kernel API Manual, bestie edition πŸŽ€

okay so this is the Kernel API Manual page for struct i8255_regmap_config, and it's literally the configuration blueprint for the register map of an i8255. it's giving "backstage pass to the GPIO controller" energy, and honestly? iconic. let's get into it ✨


✨ NAME ✨

struct i8255_regmap_config β€” the config for the register map of an i8255, no cap 🫢


🌸 SYNOPSIS 🌸

struct i8255_regmap_config {
    struct device *parent;
    struct regmap *map;
    int num_ppi;
    const char *const *names;
    struct irq_domain *domain;
 };

that's the whole vibe right there, bestie. five members, zero fluff πŸ‘‘


πŸ¦‹ Members πŸ¦‹

  • parent β€” the parent device, aka the one who brought you into this world 🫢
  • map β€” the regmap for the i8255, like the group chat where all the register messages live πŸ’¬
  • num_ppi β€” number of i8255 Programmable Peripheral Interface (yes that's what PPI stands for, and yes you should know it, iykyk) πŸ”’
  • names β€” (optional) array of names for gpios. cute little name tags for your pins 🏷️
  • domain β€” (optional) IRQ domain, but only if the controller is interrupt-capable. it's giving "main character energy if you've got the hardware for it" ⚑

πŸ’€ Note πŸ’€

The regmap is expected to have cache enabled, and the i8255 control registers are not to be marked as volatile. this is not a suggestion, bestie β€” the regmap expects it, so set it up right or don't come crying to me 😭

🌈 SEE ALSO 🌈

  • Kernel file ./drivers/gpio/gpio-i8255.h β€” go read it, fr fr πŸ“–

πŸŽ€ sign-off πŸŽ€

this page lives in ./drivers/gpio, dated October 2026, and it's literally titled struct i8255_regmap_config(9) β€” that's the whole source, version and date situation, periodt. slay, go configure some registers, and stay hydrated πŸ’–πŸ’…βœ¨

πŸ“¦ where this page comes from