STRUCT STM32F7_I2C_SETUP(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ struct stm32f7_i2c_setup(9) πŸ’œ

okay so bestie, welcome to the Kernel API Manual β€” this is the page for struct stm32f7_i2c_setup, and it's literally the little private stash of I2C timing setup params. private as in "for the driver's eyes only", not "weird", okay? πŸŽ€


✨ NAME ✨

struct stm32f7_i2c_setup β€” private I2C timing setup parameters πŸ’…


🌸 SYNOPSIS 🌸

here's the whole struct, no cap, every field exactly where it lives:

struct stm32f7_i2c_setup {
    u32 speed_freq;
    u32 clock_src;
    u32 rise_time;
    u32 fall_time;
    u32 fmp_clr_offset;
    bool single_it_line;
    bool fmp_cr1_bit;
 };

πŸ¦‹ Members πŸ¦‹

time for the vibe check on every single field, one by one, because none of them are getting skipped:

  • speed_freq β€” the I2C speed frequency, measured in Hz. this is the "how fast are we going" number 🏎️
  • clock_src β€” the I2C clock source frequency, also in Hz. the source of truth for the clock, iykyk ⏰
  • rise_time β€” rise time, in ns. yes, nanoseconds, we're being precise πŸ’«
  • fall_time β€” fall time, in ns. same energy, opposite direction 🌈
  • fmp_clr_offset β€” the Fast Mode Plus clear register offset, measured from the set register. it's giving "where's the clear one relative to the set one" energy πŸ”₯
  • single_it_line β€” when this is set, only a single IT line is used for both events/errors. one line carrying everything, main character energy fr fr πŸ‘‘
  • fmp_cr1_bit β€” Fast Mode Plus control is done via a bit in CR1 instead. a whole bit, doing the whole job πŸ™ˆ

⭐ SEE ALSO ⭐

go read these next, bestie, they're all in the kernel file ./drivers/i2c/busses/i2c-stm32f7.c struct:

  • stm32f7_i2c_regs(9)
  • stm32f7_i2c_spec(9)
  • stm32f7_i2c_timings(9)
  • stm32f7_i2c_msg(9)
  • stm32f7_i2c_alert(9)
  • stm32f7_i2c_dev(9)

and that's the whole page, periodt πŸ’– this lil cutie lives over in ./drivers/i2c/busses and the page is dated October 2026 β€” mwah, go slay some I2C timings 🫢✨

πŸ“¦ where this page comes from