STRUCT CGBC_DEVICE_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

hey bestie, you're reading struct cgbc_device_data(9) from the Kernel API Manual β€” and yes, the manual name is folded in right up top like a lil name tag πŸŽ€. This page is about the kernel's own internal rep of the Board Controller device, and we're gonna make it make sense, fr fr.

πŸ’– NAME πŸ’–

struct cgbc_device_data β€” Internal representation of the Board Controller device. That's the whole gig: it's the kernel-side struct that reps the Board Controller. No cap, she's iconic πŸ‘‘

✨ SYNOPSIS ✨

       struct cgbc_device_data {
           void __iomem            *io_session;
           void __iomem            *io_cmd;
           u8 session;
           struct device           *dev;
           struct cgbc_version     version;
           struct mutex            lock;
        };

okay so that's the struct in all its glory β€” every field is literally right there, spaced exactly like the original because we do not mess with code πŸ’…

🫢 Members 🫢

  • io_session β€” Pointer to the session IO memory. Session IO memory goes here.
  • io_cmd β€” Pointer to the command IO memory. Command IO memory goes here.
  • session β€” Session id returned by the Board Controller. It's the Board Controller's session id.
  • dev β€” Pointer to kernel device structure. Kernel device pointer, slay.
  • version β€” Board Controller version structure. Version struct for the Board Controller.
  • lock β€” Board Controller mutex. The Board Controller mutex, periodt.

πŸ”— SEE ALSO πŸ”—

  • Kernel file ./include/linux/mfd/cgbc.h
  • struct cgbc_version(9)

xoxo, source/version ./include/linux/mfd, dated October 2026 β€” this was struct cgbc_device_data(9), signing off with a πŸ’‹

πŸ“¦ where this page comes from