STRUCT XIIC_I2C_PLATFORM_DATA(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct xiic_i2c_platform_data πŸ’–

okay bestie, welcome to the Kernel API Manual ✨ we're talking about struct xiic_i2c_platform_data, which is literally the platform data of the Xilinx I2C driver. yeah. that one. πŸ¦‹


🌸 NAME 🌸

struct xiic_i2c_platform_data β€” Platform data of the Xilinx I2C driver πŸŽ€


✨ SYNOPSIS ✨

the whole vibe, in code:

struct xiic_i2c_platform_data {
    u8 num_devices;
    struct i2c_board_info const     *devices;
 };

two fields. that's it. iconic minimalism πŸ’…


🫢 Members 🫢

  • num_devices β€” Number of devices that shall be added when the driver is probed. like, how many besties are we bringing to the bus πŸ«‚
  • devices β€” The actuall devices to add. yes bestie, the actual devices themselves, the real ones, no fake ones πŸŽ€

πŸ’œ Description πŸ’œ

so the whole purpose of this platform data struct is to be able to provide a number of devices that should be added to the I2C bus. and the reason?? 😭 sometimes the I2C board info is just not enough. like, a new PCI board can for instance be plugged into a standard PC, and the bus number might be unknown at early init time. so you can't just rely on the board info alone β€” you gotta hand it the list. it's giving "trust me, I brought my own guest list" ✨


πŸ‘‘ SEE ALSO πŸ‘‘

  • Kernel file ./include/linux/platform_data/i2c-xiic.h β€” go read it, iykyk πŸ“–πŸ’«

and that's a wrap, bestie!! πŸŽ€ source/version vibes came from ./include/linux/platform_data and we're stamped October 2026 β€” date checks out, slay, periodt πŸ’…βœ¨πŸ¦‹πŸŒ·

πŸ“¦ where this page comes from