STRUCT STM32F7_I2C_SPEC(9)
β¨ NAME β¨
struct stm32f7_i2c_spec β the private i2c specification timing struct, bestie π
So like, this is a Kernel API Manual page, and it's about one little struct that holds all the timing deets for the STM32F7 I2C driver. It's private, meaning it's the driver's own business, not some public API you should go poking at, iykyk π«Ά
πΈ SYNOPSIS πΈ
struct stm32f7_i2c_spec {
u32 rate;
u32 fall_max;
u32 rise_max;
u32 hddat_min;
u32 vddat_max;
u32 sudat_min;
u32 l_min;
u32 h_min;
};
That's the whole struct, no cap. Eight u32 fields, all vibing together π¦
π Members π
okay so let's meet the cast, member by member π
rateβ I2C bus speed, in Hz. This is the main character of the timing world fr β¨fall_maxβ max fall time of both SDA and SCL signals, in ns. Both signals, bestie, not just one πrise_maxβ max rise time of both SDA and SCL signals, in ns. Rise and fall, they're a package deal πhddat_minβ min data hold time, in ns. Hold it, don't rush it πvddat_maxβ max data valid time, in ns. Valid and maxed out, iconic βsudat_minβ min data setup time, in ns. Set it up before you go, periodt πl_minβ min low period of the SCL clock, in ns. Lowkey the low phase πh_minβ min high period of the SCL clock, in ns. Highkey the high phase π₯
ngl all the timing values are in ns except rate, which is in Hz. Do not mix those up, I'm begging π
π SEE ALSO π
- Kernel file
./drivers/i2c/busses/i2c-stm32f7.cstructstm32f7_i2c_regs(9),struct stm32f7_i2c_setup(9),struct stm32f7_i2c_timings(9),struct stm32f7_i2c_msg(9),struct stm32f7_i2c_alert(9),struct stm32f7_i2c_dev(9)
Like, go read the whole family, they're all in ./drivers/i2c/busses and they all slay in their own way π
that's the whole page, mwah π this gem was living in ./drivers/i2c/busses and it's dated October 2026 β see you in the next manual page, bestie! π§ββοΈ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms