STRUCT OMNIA_LEDS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct omnia_leds(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual ✨ β€” this one's a little struct deep-dive from the kernel world, and honestly? it's giving "backstage pass to the LED driver" πŸŽ€


🌸 NAME 🌸

struct omnia_leds β€” the driver's very own private data structure. like, this is her diary, nobody else reads it πŸ’…


✨ SYNOPSIS ✨

struct omnia_leds {
    struct i2c_client *client;
    struct mutex lock;
    bool has_gamma_correction;
    struct kernfs_node *brightness_knode;
    struct omnia_led leds[];
 };

lowkey iconic little struct ngl πŸ¦‹


🫢 Members 🫢

here's the cast, one by one, main character energy all around πŸ‘‘

  • client β€” the I2C client device. that's her connection to the hardware, fr fr 😌
  • lock β€” a mutex whose whole job is protecting the cached state. do NOT skip the lock bestie, that's how you get chaos πŸ’€
  • has_gamma_correction β€” a bool that tells you whether the MCU firmware supports gamma correction or not. yes/no, slay or nay 🌈
  • brightness_knode β€” the kernel node of the "brightness" device sysfs attribute. and listen, this is the driver specific global brightness, not the LED classdev brightness β€” don't mix them up, iykyk πŸ™ˆ
  • leds β€” a flexible array of per-LED data. flexible = she grows, she adapts, she's that girl 🌸

🌟 SEE ALSO 🌟

  • Kernel file ./drivers/leds/leds-turris-omnia.c
  • struct omnia_led(9)

go read those too, they're literally linked πŸ’–


ngl this struct is short but she's doing a LOT of work behind the scenes 🧚

that's the whole page, bestie β€” you ate it up πŸ’…βœ¨

shoutout to ./drivers/leds, stamped October 2026, living in struct omnia_leds(9) β€” see you in the next manpage, mwah πŸŽ€

πŸ“¦ where this page comes from