STRUCT EC_I2C_DEVICE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ struct ec_i2c_device(9) β€” the Kernel API Manual glow-up

okay bestie, so this is a page from the Kernel API Manual about struct ec_i2c_device(9), and honestly? it's giving "small struct, big responsibilities" energy. let's get into it ✨


🌸 NAME 🌸

struct ec_i2c_device β€” literally the driver data for the I2C tunnel πŸš‡ no cap, that's the whole vibe.


✨ SYNOPSIS ✨

struct ec_i2c_device {
    struct device *dev;
    struct i2c_adapter adap;
    struct cros_ec_device *ec;
    u16 remote_bus;
    u8 request_buf[256];
    u8 response_buf[256];
 };

like, look at her. five fields and two chonky buffers. icon behavior πŸ’…


πŸŽ€ Members πŸŽ€

  • dev β€” the device node 🫢 that's her home address basically.
  • adap β€” the I2C adapter. the actual machinery, the main character of the bus world πŸ‘‘
  • ec β€” a pointer to the EC device 🧚 that's who we're talking to on the other side.
  • remote_bus β€” the EC bus number we tunnel to on the other side 🌈 like, the far-away bus we're reaching through the tunnel. it's a u16, noted.
  • request_buf β€” buffer for transmitting data πŸ“€ and fr fr, we expect most transfers to fit. it's u8 request_buf[256] β€” 256 bytes of sending space, bestie.
  • response_buf β€” buffer for receiving data πŸ“₯ same deal, we expect most transfers to fit. u8 response_buf[256], 256 bytes of incoming room. it's giving symmetry πŸ’–
ngl the "we expect most transfers to fit" is doing a lot of heavy lifting in both of those descriptions. just saying. 😭

πŸ¦‹ SEE ALSO πŸ¦‹

the whole lil friend group, all together, slay 🫢


and that's the page, bestie!! this one came from ./drivers/i2c/busses and it's dated October 2026 β€” so like, go off, future manpage πŸ’€βœ¨ mwah, see you in the next man page πŸ’œπŸŽ€

πŸ“¦ where this page comes from