diff --git a/dts/bindings/i2c/st,stm32-i2c-v2.yaml b/dts/bindings/i2c/st,stm32-i2c-v2.yaml index 5dcf30b3934..ffa3f9f7853 100644 --- a/dts/bindings/i2c/st,stm32-i2c-v2.yaml +++ b/dts/bindings/i2c/st,stm32-i2c-v2.yaml @@ -13,3 +13,28 @@ properties: interrupts: required: true + + timings: + type: array + required: false + description: | + An optional table of pre-computed i2c timing values with the + matching clock configuration. + + Precise timings values for a given Hardware can be pre-computed + with a tool like STM32CubeMX or directly from I2C_TIMINGR register + description. + + Because timing value is valid for a given I2C peripheral clock + frequency and target I2C bus clock, each timing value must be + provided with the matching configuration. + + The resulting table entries should look like + + For example timings could be defined as + + timings = <64000000 I2C_BITRATE_STANDARD 0x10707DBC>, + <64000000 I2C_BITRATE_FAST 0x00603D56>, + <56000000 I2C_BITRATE_STANDARD 0x10606DA4>, + <56000000 I2C_BITRATE_FAST 0x00501D63>;