I³C controller configuration structure. More...
#include <i3c.h>
Data Fields | |
| uint32_t | slave_bus_idle_time_ns |
| i3c_mode_en | op_mode |
| i3c_threshold_ctrl_t | threshold_ctrl |
| i3c_sdr_timing_preset_en | sdr_timing_preset |
| i3c_scl_timing_t | scl_timing |
| i3c_bus_avail_timing_t | bus_avail_timing |
| uint16_t | slave_bus_available_time_ns |
| uint8_t | self_static_addr |
| uint8_t | self_dynamic_addr |
| uint8_t | num_of_devices |
| bool | i2c_target_present |
I³C controller configuration structure.
Holds configuration parameters for I³C controller operation, including mode, addressing, timing, and thresholds. Event policy and notification behavior are configured separately via i3c_controller_set_policy_config and i3c_controller_set_interrupt_config.
| uint32_t i3c_controller_config_t::slave_bus_idle_time_ns |
Idle time before entering target-bus available state (in ns)
| i3c_mode_en i3c_controller_config_t::op_mode |
Operating mode (I³C controller/target)
| i3c_threshold_ctrl_t i3c_controller_config_t::threshold_ctrl |
Threshold control settings
| i3c_sdr_timing_preset_en i3c_controller_config_t::sdr_timing_preset |
SDR timing preset; manual uses scl_timing
| i3c_scl_timing_t i3c_controller_config_t::scl_timing |
SCL timing configuration
| i3c_bus_avail_timing_t i3c_controller_config_t::bus_avail_timing |
Bus availability timing settings
| uint16_t i3c_controller_config_t::slave_bus_available_time_ns |
Bus available time in target mode (in ns)
| uint8_t i3c_controller_config_t::self_static_addr |
Controller's static address (if applicable)
| uint8_t i3c_controller_config_t::self_dynamic_addr |
Controller's dynamic address (if applicable)
| uint8_t i3c_controller_config_t::num_of_devices |
Number of connected devices on the bus
| bool i3c_controller_config_t::i2c_target_present |
Indicates whether any Legacy I²C devices are present in the system.