octeon_i2c_read(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… octeon_i2c_read β€” Kernel API Manual, bestie edition πŸ’…

okay so you're in the Kernel API Manual and the function on the menu today is octeon_i2c_read β€” it's giving "receive data from the bus via low-level controller" energy, and honestly? iconic. Let's get into it. πŸ¦‹


✨ NAME ✨

octeon_i2c_read β€” receive data from the bus via low-level controller 🌸

literally what it says: you want bytes off the bus, this is the low-level controller way to get them. no cap.


πŸŽ€ SYNOPSIS πŸŽ€

int octeon_i2c_read (struct octeon_i2c *i2c , int target , u8 *data ,
u16 *rlength , bool recv_len );

five arguments, returns an int, slay. πŸ’…


πŸ”₯ ARGUMENTS πŸ”₯

  • i2c β€” The struct octeon_i2c. that's your controller bestie, the whole struct, hand it over 🫢
  • target β€” Target address. who we talkin' to on the bus πŸ‘‘
  • data β€” Pointer to the location to store the data. this is where the good stuff lands ✨
  • rlength β€” Length of the data. it's a u16 *, so pointer, not a plain number, keep that in mind πŸ’œ
  • recv_len β€” flag for length byte. a bool, and yeah it's the flag that says we're doing the length byte thing πŸ™ˆ

🌈 DESCRIPTION 🌈

The address is sent over the bus, then the data is read. that's the whole vibe check, fr fr β€” first the address goes out, then the read happens. 🎯


⭐ RETURN ⭐

0 on success, otherwise a negative errno. so like, zero means we ate, negative means something went sideways 😭


πŸ’– SEE ALSO πŸ’–

Kernel file ./drivers/i2c/busses/i2c-octeon-core.c β€” plus the whole friend group:

go read them too, iykyk 🧚


ok and for the receipts: this page lives under ./drivers/i2c/busses and it's dated October 2026. πŸ’€

and that's the whole page bestie β€” stay hydrated, read your errno values, and remember: negative means no πŸ’” mwah πŸ“βœ¨

πŸ“¦ where this page comes from