read_i2c(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 read_i2c(9) β€” the Kernel API Manual page, bestie edition 🌸

okay so this is the man page for read_i2c, straight out of the Kernel API Manual, and honestly? she's short but she's doing her thing. let's get into it πŸ’…


✨ NAME ✨

read_i2c β€” literally just: read from an I2C client device. that's the whole vibe. πŸ¦‹


✨ SYNOPSIS ✨

int read_i2c (struct nmk_i2c_dev *priv , u16 flags );

like yes, that's the signature, no cap, copy it exactly bestie πŸ’–


✨ ARGUMENTS ✨

  • priv β€” the private data of the I2C Driver. it's the driver's own little bag of stuff, and you're handing it over. πŸŽ€
  • flags β€” the message flags. yes, flags. iconic behavior honestly. ⭐

✨ DESCRIPTION ✨

so this function reads from the i2c client device when the controller is in master mode. main character controller energy only πŸ‘‘

here's the thing though β€” there's a completion timeout. and if there's no transfer before that timeout hits? boom, an error is returned. not me getting ghosted by the bus 😭

fr fr: no transfer before timeout = error returned. that's not a vibe, that's just the rules. πŸ’€

✨ SEE ALSO ✨

the kernel file is ./drivers/i2c/busses/i2c-nomadik.c β€” go peek at her, she's the source of truth 🫢

and then the whole friend group:


and that's the page!! πŸŽ€ source is ./drivers/i2c/busses, dated October 2026, and it's read_i2c(9) β€” slay, periodt, go read your i2c devices responsibly bestie πŸ’–βœ¨πŸŒˆ

πŸ“¦ where this page comes from