The Host Processor Interface (HPI) library implements the HPI transport, Protocol, Register and PD message handling. It allow the Host Processor or EC to monitor the status of the USB-PD ports, change configuration, perform firmware updates and transparently interact with other USB-PD devices connected.
HPI communicates over an I2C interface (supported clock frequencies are 1 MHz, 400 KHz and 100 KHz), with an interrupt line using a GPIO.
Features:
The library offers functionality for two operational modes:
These two libraries operate independently of each other and require separate configuration. For a comprehensive guide on integrating these libraries into a ModusToolbox(TM) based application, please refer to the API reference documentation of HPIM (HPI Master) and HPIS (HPI Slave)
This version of the HPI middleware was validated for the compatibility with the following software and tools:
Software and tools | Version |
---|---|
ModusToolbox(TM) software environment | 3.3 |
mtb-pdl-cat2 | 2.13.0 |
GCC compiler | 11.3.1 |
IAR compiler | 9.50.2 |
Arm(R) compiler 6 | 6.22 |
Version | Changes | Reason for change |
---|---|---|
1.1.0 | Added support for the HPI slave interface | Feature Addition |
1.0 | Initial version |
For more information, see the following documents: