2025-01-15 01:31 PM
Hello,
I am integrating an STPMIC1x component to power my STM32MP153C-based system. This design is closely following the STM32MP157F-DK2 schematic found here. The issue comes from the fact that some of the default output voltages for STPMIC1APQR used in the design do not align with the necessary power inputs for some of the peripherals, namely the DDR3L chip. For example (in the EVK schematic), VDD_DDR on BUCK2 is by default Rank0 and set to 1.1V, which does not meet the DDR3L specification of 1.35V.
The STPMIC1x datasheet implies that the A/B/D/E part numbers can provide the correct voltages for VDD and VDD_CORE by default (through Rank1, Rank2, or Rank3 outputs), and then the STPMIC1A/B/D/E can be (re)programmed by the MPU to provide the correct voltages on its other outputs such as its DDR3L peripheral.
Q: Is this (re)programming of the STPMIC1x chips handled early in the boot process through OpenSTLinux and carried out on I2C4 from the MPU? If so, where does this occur in the codebase? Otherwise, do these STPMIC1x chips require pre-programming from an external programmer prior to use in a board design?
Table of default configurations: