STRUCT CCWGROUP_DRIVER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

NAME πŸ’–

okay so bestie, welcome to the Kernel API Manual β€” this page is literally all about struct ccwgroup_driver, which is, like, the driver for ccw group devices. that's the whole vibe. main character struct energy, no cap πŸŽ€


✨ SYNOPSIS ✨

here's the glow-up in code form, copying it exactly so nobody comes for me:

struct ccwgroup_driver {
    int (*setup) (struct ccwgroup_device *);
    void (*remove) (struct ccwgroup_device *);
    int (*set_online) (struct ccwgroup_device *);
    int (*set_offline) (struct ccwgroup_device *);
    void (*shutdown)(struct ccwgroup_device *);
    struct device_driver driver;
    struct ccw_driver *ccw_driver;
 };

like, look at her. seven whole members. she's serving structure, she's serving function pointers, she's serving embedded driver. iconic πŸ’…


🌸 Members 🌸

bestie, let's go through the cast one by one, they all have a job and they're all doing it:

  • setup β€” this one gets called during device creation to setup the device 🫢 like she's the one setting up the party before anyone arrives.
  • remove β€” called on remove. that's it, that's the job. she shows up when the device is getting taken out πŸ™ˆ
  • set_online β€” called when the device is set online ⭐ the "we're so back" function, fr fr.
  • set_offline β€” called when the device is set offline 😭 the "it's over" function. opposite energy, same amount of commitment.
  • shutdown β€” called when the device is shut down πŸ’€ she's the one locking up on the way out.
  • driver β€” the embedded driver structure πŸ¦‹ lowkey just a struct device_driver chilling inside, being supportive.
  • ccw_driver β€” the supported ccw_driver, and ngl, she's optional πŸ‘‘ a struct ccw_driver * that doesn't have to be there. queen of "if you want".
heads up bestie: keep track of which of these are plain functions and which are pointers β€” the synopsis is right there and it does not lie to you πŸ’–

πŸ¦‹ SEE ALSO πŸ¦‹

  • Kernel file ./arch/s390/include/asm/ccwgroup.h β€” go read the header, she's got the lore πŸ”₯
  • struct ccwgroup_device(9) β€” the other half of this whole situation, you literally cannot skip her πŸ’œ

and that's the page!! πŸŽ€ written by the good people over at ./arch/s390/include/asm, dated October 2026, and officially titled struct ccwgroup_driver(9) β€” mwah, slay, periodt πŸ’…βœ¨πŸŒˆ

πŸ“¦ where this page comes from