A host controller interface for efficiently accessing MIPI I3C devices and capabilities
MIPI I3C HCI delivers crucially needed efficiency for designers of smartphones, computers, Internet of Things (IoT) devices, automotive systems and other applications that leverage the scalable, low-power, medium-speed, two-wire I3C utility and control bus interface. This specification provides application processor vendors with a consistent method for interfacing to MIPI I3C, eliminating the need for product-specific I3C drivers, helping to control cost and complexity, and freeing designers to focus their efforts on developing applications rather than interfaces.
Using MIPI I3C HCI v1.1
The current version of MIPI I3C HCI, version 1.1, aligns with the latest I3C advances by enhancing existing features and adding new capabilities. Key features include:
- Support for MIPI I3C primary controller operation on the I3C bus
- Two modes of operation: programmable input/output (PIO) mode, delivering direct data interface support with programmable buffer depths for the transmit/response and data buffer, and direct memory access (DMA) mode, providing interface support for scatter gather transfers for data buffers
- Power-efficient operation of the host controller, which helps maximize battery life in mobile devices
- Support for I3C data rates, including I2C fast mode (up to 400Kbps), I2C fast mode+ (up to 1Mbps), I3C SDR (up to 12.5Mbps) and optional I3C HDR Modes (for faster transfers)
- Support for extended capabilities, including vendor-specific ones, to enable more sophisticated hardware or additional functionality
- Group addressing, which enables multicast-type addresses to be assigned to multiple peripheral devices
- Defining bytes for common command codes (CCCs), extending greater flexibility to create additional CCCs or augment the existing CCCs defined in I3C
- Scatter gather for ring pointer, flow control, PIO/DMA mode indicator, ring full indication and other features for improved performance in DMA mode
MIPI Alliance welcomes contributions to the specification. If you would like to contribute, please contact the MIPI Software Working Group at firstname.lastname@example.org.
Learn more about MIPI Alliance
Visit the MIPI Alliance website to learn more about MIPI membership and see MIPI's entire portfolio of specifications.