STRUCT PECI_CONTROLLER_OPS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct peci_controller_ops(9)

okay so this is a page from the Kernel API Manual, and honestly? it's a short one, but it's iconic. we're talking about struct peci_controller_ops β€” the little struct that holds the PECI controller specific methods. bestie, it's giving "small but powerful" energy fr fr πŸŽ€


✨ NAME ✨

struct peci_controller_ops β€” the PECI controller specific methods. that's it, that's the vibe. πŸ¦‹


🌸 SYNOPSIS 🌸

struct peci_controller_ops {
    int (*xfer)(struct peci_controller *controller, u8 addr, struct
peci_request *req);
 };

like, look at it. one member. no cap, that's the whole struct. lowkey elegant πŸ’…


πŸ‘‘ Members πŸ‘‘

  • xfer β€” the PECI transfer function. this is the one function pointer in the whole struct, and she's the main character. ✨

🧚 Description 🧚

so here's the tea: PECI controllers may have different hardware interfaces. (yes, plural, different, all of them doing their own thing 😭)

the drivers implementing PECI controllers can use this structure to abstract away those differences by exposing a common interface for the PECI core. literally the whole point: hide the messy hardware-specific details behind one shared interface so the PECI core doesn't have to care. ate and left no crumbs. πŸ”₯


🌈 SEE ALSO 🌈

  • Kernel file ./include/linux/peci.h
  • struct peci_controller(9)
  • struct peci_device(9)
  • struct peci_request(9)

go read those next, iykyk 🫢


ngl this one's short, but every detail still matters β€” the abstraction is used by the PECI core, so don't sleep on it. πŸ’œ

and that's the page, bestie! 🌸 sourced from ./include/linux, dated October 2026, and it's struct peci_controller_ops(9) forever and always. periodt. πŸ’–πŸŽ€βœ¨

πŸ“¦ where this page comes from