SLVUCF6 july 2023
NVM programming can be done in Initialize or Active state. The current state can be read from STATE bits (bits 4-3) in POWER_UP_STATUS_REG register. After a valid supply is connected to VSYS, the device goes to Initialize state and loads the default NVM content into the register map. Loading the NVM content takes approximately 2.3ms. Once register map is loaded with the default settings, PMIC is ready for NVM programming. Figure 5-2 shows the steps required to reprogram the NVM in Initialize state while the PMIC rails are OFF. The process starts with enabling the oscillator for I2C communication. This command also disables the rails active discharge. Then, update the NVM register fields and save the new settings into the memory. Several register settings are available to indicate the status of an I2C command. For example, Register field CUST_PROG_DONE (bit 5, address 0x34) indicates the status of the NVM programming after CUST_PROG_CMD is executed. Similarly, register field CUST_NVM_VERIFY_DONE (bit 6, address 0x34) indicates the status (not the result) of the NVM verification after CUST_NVM_VERIFY_CMD is executed.