STRUCT STM32F4_I2C_DEV(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ¦‹ struct stm32f4_i2c_dev(9) β€” the private-data glow-up πŸ¦‹

okay so this is a page from the Kernel API Manual, and bestie, we're talking about struct stm32f4_i2c_dev β€” literally the private data of the controller. it's giving backstage-pass energy: all the stuff the I2C controller keeps to itself and doesn't show the world. iykyk πŸ’…


✨ NAME ✨

struct stm32f4_i2c_dev β€” the private data of the controller. no cap, that's the whole vibe. πŸŽ€


🌸 SYNOPSIS 🌸

struct stm32f4_i2c_dev {
    struct i2c_adapter adap;
    struct device *dev;
    void __iomem *base;
    struct completion complete;
    struct clk *clk;
    int speed;
    int parent_rate;
    struct stm32f4_i2c_msg msg;
 };

like, that's the whole struct, verbatim, don't @ me 🫢


πŸ’– Members πŸ’–

(the original just calls this "Members" so we're keeping it, but know that we are obsessed with each one)

  • adap β€” the I2C adapter for this controller. it's literally the controller's main character energy in the I2C subsystem ✨
  • dev β€” the device for this controller. yes bestie, the struct device * β€” the whole device-model hookup 🌸
  • base β€” the virtual memory area. like, the mapped-in address space where the registers live πŸ¦‹
  • complete β€” the completion of the I2C message. it's how the driver signals "hey, that message is DONE" 😭
  • clk β€” the hw i2c clock. hardware clock, not a vibe πŸ’…
  • speed β€” the I2C clock frequency of the controller. and heads up: Standard or Fast are supported β€” those are the only two, so don't come for anything else πŸ”₯
  • parent_rate β€” the I2C clock parent rate, in MHz. note the units, they matter fr fr ⭐
  • msg β€” the I2C transfer information. a struct stm32f4_i2c_msg, holding the deets of the transfer in flight πŸŽ€

πŸ‘‘ SEE ALSO πŸ‘‘

if you wanna keep the rabbit hole going (and you do, bestie):

like, that's the whole group chat. read them all, slay πŸ’œ


that's the page, periodt. this one lives in ./drivers/i2c/busses, and the date on it is October 2026 β€” so yeah, mark your calendar bestie, it's a whole era πŸ—“οΈπŸŒˆπŸ’–

πŸ“¦ where this page comes from