The TPS25751 and TPS26750 is a highly integrated stand-alone USB Type-C® and Power Delivery (PD) controller optimized for applications supporting USB-C PD Power. The PD Controller application binary can be pushed over I2C to the PD controller using the I2Ct port, or the PD controller can read from an external EEPROM at target address 0x50 on the I2Cc port. When the host must update the Patch Bundle used for booting, the host must follow a particular process. The EEPROM-update process uses 4CC ASCII commands to enable the host to download the patch bundle onto the external EEPROM.
USB Type-C® is a registered trademark of USB Implementers Forum.
All trademarks are the property of their respective owners.
This application note details the EEPROM update process of the device by enabling external hosts to program the patch bundles onto the attached external EEPROM using the host interface of the device.
The document also details the EEPROM boot flow, how to update the EEPROM image, and an EEPROM update example through flow charts and code examples.
During the boot process, the PD controller can load the Patch Bundle from the external EEPROM connected to the I2Cc port as described in the following. After the PD controller is in the APP mode, that is MODE register reads as APP, the host can write to the EEPROM as described in the following to update the Patch Bundle used for booting the PD controller. During the process the previous Patch Bundle is kept intact so that the PD controller can boot from the Patch Bundle in case errors occur when writing the new Patch Bundle into the EEPROM.
The Patch Bundle contains a FW patch image in addition to a set of configurations that set the default value of the Host Interface (HI) registers.
The EEPROM is divided into two regions to allow for it being updated without invalidating the previous Patch Bundle until the new Patch Bundle has been verified. The active region is the one containing the latest Patch Bundle.