UTILS I3C Timing Types ¶
UTILS I3C Timing Types ¶
- group UTILS_I3C_Exported_Types
-
Enums
-
enum
stm32_utils_i3c_status_t
¶
-
I3C utils status structure definition.
Values:
-
enumerator
STM32_UTILS_I3C_OK
¶
-
Utils I3C operation completed successfully
-
enumerator
STM32_UTILS_I3C_ERROR
¶
-
Utils I3C operation completed with error
-
enumerator
STM32_UTILS_I3C_INVALID_PARAM
¶
-
Utils I3C invalid parameter
-
enumerator
STM32_UTILS_I3C_OK
¶
-
enum
stm32_utils_i3c_bus_type_t
¶
-
Bus type defines that can be used with STM32_UTILS_I3C_CTRL_CalculateTiming function.
Values:
-
enumerator
STM32_UTILS_I3C_PURE_I3C_BUS
¶
-
Pure I3C bus, no I2C
-
enumerator
STM32_UTILS_I3C_I2C_MIXED_BUS
¶
-
Mixed bus I3C and I2C
-
enumerator
STM32_UTILS_I3C_PURE_I3C_BUS
¶
-
enum
stm32_utils_i3c_activity_state_t
¶
-
Activity state, own activity state.
Values:
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_0
¶
-
Own ctrl activity state 0
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_1
¶
-
0x00000100 Own ctrl activity state 1
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_2
¶
-
0x00000200 Own ctrl activity state 2
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_3
¶
-
Own ctrl activity state 3
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_0
¶
-
enum
stm32_utils_i3c_sda_hold_time_t
¶
-
SDA_hold_time SDA hold time.
Values:
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_0_5
¶
-
SDA hold time is 0.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_1_5
¶
-
0x10000000 SDA hold time is 1.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_2_5
¶
-
0x20000000 SDA hold time is 2.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_3_5
¶
-
SDA hold time is 3.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_0_5
¶
-
struct
stm32_utils_i3c_ctrl_timing_config_t
¶
-
#include <stm32_utils_i3c.h>
I3C utils controller timing structure definition.
Public Members
-
uint32_t
clock_src_freq_hz
¶
-
I3C clock source in Hz
-
uint32_t
i3c_pp_freq_hz
¶
-
I3C required bus clock for push-pull phase in Hz
-
uint32_t
i2c_od_freq_hz
¶
-
I2C required bus clock for Open-Drain phase in Hz
-
uint32_t
duty_cycle_purcent
¶
-
I3C duty cycle for pure I3C bus or I2C duty cycle for mixed bus in percent. This parameter must be a value less than or equal to 50 percent
-
stm32_utils_i3c_activity_state_t
wait_time
¶
-
Time that the main and the new controllers must wait before issuing a start. This parameter must be a value of stm32_utils_i3c_activity_state_t
-
stm32_utils_i3c_bus_type_t
bus_type
¶
-
Bus configuration type. This parameter must be a value of stm32_utils_i3c_bus_type_t
-
uint32_t
clock_src_freq_hz
¶
-
struct
stm32_utils_i3c_ctrl_raw_timing_t
¶
-
#include <stm32_utils_i3c.h>
I3C utils controller bus configuration structure definition.
Public Members
-
stm32_utils_i3c_sda_hold_time_t
sda_hold_time
¶
-
I3C SDA hold time. This parameter must be a value of stm32_utils_i3c_sda_hold_time_t
-
stm32_utils_i3c_activity_state_t
wait_time
¶
-
Time that the main and the new controllers must wait before issuing a start. This parameter must be a value of stm32_utils_i3c_activity_state_t
-
uint8_t
scl_pp_low_duration
¶
-
I3C SCL low duration in number of kernel clock cycles in I3C push-pull phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_i3c_high_duration
¶
-
I3C SCL high duration in number of kernel clock cycles, used for I3C messages for I3C open-drain and push pull phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_od_low_duration
¶
-
I3C SCL low duration in number of kernel clock cycles in open-drain phases, used for legacy I2C commands and for I3C open-drain phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_i2c_high_duration
¶
-
I3C SCL high duration in number of kernel clock cycles, used for legacy I2C commands. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
bus_free_duration
¶
-
I3C controller duration in number of kernel clock cycles, after a stop and before a start. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
bus_idle_duration
¶
-
I3C controller duration in number of kernel clock cycles to be elapsed, after that both SDA and SCL are continuously high and stable before issuing a hot-join event. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
stm32_utils_i3c_sda_hold_time_t
sda_hold_time
¶
-
enum
stm32_utils_i3c_status_t
¶
- group UTILS_I3C_Exported_Types
-
Enums
-
enum
stm32_utils_i3c_status_t
-
I3C utils status structure definition.
Values:
-
enumerator
STM32_UTILS_I3C_OK
-
Utils I3C operation completed successfully
-
enumerator
STM32_UTILS_I3C_ERROR
-
Utils I3C operation completed with error
-
enumerator
STM32_UTILS_I3C_INVALID_PARAM
-
Utils I3C invalid parameter
-
enumerator
STM32_UTILS_I3C_OK
-
enum
stm32_utils_i3c_bus_type_t
-
Bus type defines that can be used with STM32_UTILS_I3C_CTRL_CalculateTiming function.
Values:
-
enumerator
STM32_UTILS_I3C_PURE_I3C_BUS
-
Pure I3C bus, no I2C
-
enumerator
STM32_UTILS_I3C_I2C_MIXED_BUS
-
Mixed bus I3C and I2C
-
enumerator
STM32_UTILS_I3C_PURE_I3C_BUS
-
enum
stm32_utils_i3c_activity_state_t
-
Activity state, own activity state.
Values:
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_0
-
Own ctrl activity state 0
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_1
-
0x00000100 Own ctrl activity state 1
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_2
-
0x00000200 Own ctrl activity state 2
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_3
-
Own ctrl activity state 3
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_0
-
enum
stm32_utils_i3c_sda_hold_time_t
-
SDA_hold_time SDA hold time.
Values:
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_0_5
-
SDA hold time is 0.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_1_5
-
0x10000000 SDA hold time is 1.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_2_5
-
0x20000000 SDA hold time is 2.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_3_5
-
SDA hold time is 3.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_0_5
-
struct
stm32_utils_i3c_ctrl_timing_config_t
-
#include <stm32_utils_i3c.h>
I3C utils controller timing structure definition.
Public Members
-
uint32_t
clock_src_freq_hz
-
I3C clock source in Hz
-
uint32_t
i3c_pp_freq_hz
-
I3C required bus clock for push-pull phase in Hz
-
uint32_t
i2c_od_freq_hz
-
I2C required bus clock for Open-Drain phase in Hz
-
uint32_t
duty_cycle_purcent
-
I3C duty cycle for pure I3C bus or I2C duty cycle for mixed bus in percent. This parameter must be a value less than or equal to 50 percent
-
stm32_utils_i3c_activity_state_t
wait_time
-
Time that the main and the new controllers must wait before issuing a start. This parameter must be a value of stm32_utils_i3c_activity_state_t
-
stm32_utils_i3c_bus_type_t
bus_type
-
Bus configuration type. This parameter must be a value of stm32_utils_i3c_bus_type_t
-
uint32_t
clock_src_freq_hz
-
struct
stm32_utils_i3c_ctrl_raw_timing_t
-
#include <stm32_utils_i3c.h>
I3C utils controller bus configuration structure definition.
Public Members
-
stm32_utils_i3c_sda_hold_time_t
sda_hold_time
-
I3C SDA hold time. This parameter must be a value of stm32_utils_i3c_sda_hold_time_t
-
stm32_utils_i3c_activity_state_t
wait_time
-
Time that the main and the new controllers must wait before issuing a start. This parameter must be a value of stm32_utils_i3c_activity_state_t
-
uint8_t
scl_pp_low_duration
-
I3C SCL low duration in number of kernel clock cycles in I3C push-pull phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_i3c_high_duration
-
I3C SCL high duration in number of kernel clock cycles, used for I3C messages for I3C open-drain and push pull phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_od_low_duration
-
I3C SCL low duration in number of kernel clock cycles in open-drain phases, used for legacy I2C commands and for I3C open-drain phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_i2c_high_duration
-
I3C SCL high duration in number of kernel clock cycles, used for legacy I2C commands. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
bus_free_duration
-
I3C controller duration in number of kernel clock cycles, after a stop and before a start. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
bus_idle_duration
-
I3C controller duration in number of kernel clock cycles to be elapsed, after that both SDA and SCL are continuously high and stable before issuing a hot-join event. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
stm32_utils_i3c_sda_hold_time_t
sda_hold_time
-
struct
stm32_utils_i3c_tgt_timing_config_t
-
#include <stm32_utils_i3c.h>
I3C utils Target Timing structure definition.
Public Members
-
uint32_t
clock_src_freq_hz
-
I3C clock source (in Hz).
-
uint32_t
clock_src_freq_hz
-
enum
stm32_utils_i3c_status_t
- group UTILS_I3C_Exported_Types
-
Enums
-
enum
stm32_utils_i3c_status_t
-
I3C utils status structure definition.
Values:
-
enumerator
STM32_UTILS_I3C_OK
-
Utils I3C operation completed successfully
-
enumerator
STM32_UTILS_I3C_ERROR
-
Utils I3C operation completed with error
-
enumerator
STM32_UTILS_I3C_INVALID_PARAM
-
Utils I3C invalid parameter
-
enumerator
STM32_UTILS_I3C_OK
-
enum
stm32_utils_i3c_bus_type_t
-
Bus type defines that can be used with STM32_UTILS_I3C_CTRL_CalculateTiming function.
Values:
-
enumerator
STM32_UTILS_I3C_PURE_I3C_BUS
-
Pure I3C bus, no I2C
-
enumerator
STM32_UTILS_I3C_I2C_MIXED_BUS
-
Mixed bus I3C and I2C
-
enumerator
STM32_UTILS_I3C_PURE_I3C_BUS
-
enum
stm32_utils_i3c_activity_state_t
-
Activity state, own activity state.
Values:
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_0
-
Own ctrl activity state 0
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_1
-
0x00000100 Own ctrl activity state 1
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_2
-
0x00000200 Own ctrl activity state 2
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_3
-
Own ctrl activity state 3
-
enumerator
STM32_UTILS_I3C_ACTIVITY_STATE_0
-
enum
stm32_utils_i3c_sda_hold_time_t
-
SDA_hold_time SDA hold time.
Values:
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_0_5
-
SDA hold time is 0.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_1_5
-
0x10000000 SDA hold time is 1.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_2_5
-
0x20000000 SDA hold time is 2.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_3_5
-
SDA hold time is 3.5 x ti3cclk
-
enumerator
STM32_UTILS_I3C_SDA_HOLD_TIME_0_5
-
struct
stm32_utils_i3c_ctrl_timing_config_t
-
#include <stm32_utils_i3c.h>
I3C utils controller timing structure definition.
Public Members
-
uint32_t
clock_src_freq_hz
-
I3C clock source in Hz
-
uint32_t
i3c_pp_freq_hz
-
I3C required bus clock for push-pull phase in Hz
-
uint32_t
i2c_od_freq_hz
-
I2C required bus clock for Open-Drain phase in Hz
-
uint32_t
duty_cycle_purcent
-
I3C duty cycle for pure I3C bus or I2C duty cycle for mixed bus in percent. This parameter must be a value less than or equal to 50 percent
-
stm32_utils_i3c_activity_state_t
wait_time
-
Time that the main and the new controllers must wait before issuing a start. This parameter must be a value of stm32_utils_i3c_activity_state_t
-
stm32_utils_i3c_bus_type_t
bus_type
-
Bus configuration type. This parameter must be a value of stm32_utils_i3c_bus_type_t
-
uint32_t
clock_src_freq_hz
-
struct
stm32_utils_i3c_ctrl_raw_timing_t
-
#include <stm32_utils_i3c.h>
I3C utils controller bus configuration structure definition.
Public Members
-
stm32_utils_i3c_sda_hold_time_t
sda_hold_time
-
I3C SDA hold time. This parameter must be a value of stm32_utils_i3c_sda_hold_time_t
-
stm32_utils_i3c_activity_state_t
wait_time
-
Time that the main and the new controllers must wait before issuing a start. This parameter must be a value of stm32_utils_i3c_activity_state_t
-
uint8_t
scl_pp_low_duration
-
I3C SCL low duration in number of kernel clock cycles in I3C push-pull phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_i3c_high_duration
-
I3C SCL high duration in number of kernel clock cycles, used for I3C messages for I3C open-drain and push pull phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_od_low_duration
-
I3C SCL low duration in number of kernel clock cycles in open-drain phases, used for legacy I2C commands and for I3C open-drain phases. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
scl_i2c_high_duration
-
I3C SCL high duration in number of kernel clock cycles, used for legacy I2C commands. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
bus_free_duration
-
I3C controller duration in number of kernel clock cycles, after a stop and before a start. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
uint8_t
bus_idle_duration
-
I3C controller duration in number of kernel clock cycles to be elapsed, after that both SDA and SCL are continuously high and stable before issuing a hot-join event. This parameter must be a number between Min_Data=0 and Max_Data=0xFF.
-
stm32_utils_i3c_sda_hold_time_t
sda_hold_time
-
struct
stm32_utils_i3c_tgt_timing_config_t
-
#include <stm32_utils_i3c.h>
I3C utils Target Timing structure definition.
Public Members
-
uint32_t
clock_src_freq_hz
-
I3C clock source (in Hz).
-
uint32_t
clock_src_freq_hz
-
enum
stm32_utils_i3c_status_t