STRUCT ULPI_DRIVER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ struct ulpi_driver(9) β€” like, the whole kernel API manual vibe

okay so bestie, we're in the Kernel API Manual today and the main character is struct ulpi_driver(9). Buckle up πŸŽ€


✨ NAME ✨

struct ulpi_driver β€” literally describes a ULPI PHY driver. that's it, that's the whole name section, and she ate πŸ’…


🌸 SYNOPSIS 🌸

here's the shape of her, exact, no cap:

struct ulpi_driver {
    const struct ulpi_device_id *id_table;
    int (*probe)(struct ulpi *ulpi);
    void (*remove)(struct ulpi *ulpi);
    struct device_driver driver;
 };

πŸ¦‹ Members πŸ¦‹

okay so let's meet the cast, one by one 🫢

🌈 id_table

array of device identifiers supported by this driver. it's giving "who's allowed in the group chat" energy ✨

πŸ’– probe

binds this driver to ULPI device. this is the moment they become besties fr fr πŸ”₯

πŸŽ€ remove

unbinds this driver from ULPI device. sad era, but we move 😭 it's the goodbye part.

⭐ driver

the name and owner members must be initialized by the drivers.

no cap on that one β€” name and owner are on you, the driver author. don't show up with them uninitialized, that's not the vibe πŸ™ˆ

πŸ‘‘ SEE ALSO πŸ‘‘

  • Kernel file ./include/linux/ulpi/driver.h
  • struct ulpi(9)

that's the whole page, bestie, every last crumb of it 🧚 mwah

source path: ./include/linux/ulpi 🌸 October 2026 🌸 and yeah, the page signed off as struct ulpi_driver(9) β€” iconic of her πŸ’œβœ¨

πŸ“¦ where this page comes from