This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TPS65214: PTPS6521401VAFR - NVM programming

Part Number: TPS65214
Other Parts Discussed in Thread: TPS6521905, TPS65219

Tool/software:

Hello

I received samples of PTPS6521401VAFR.

I'd like to evaluate the chip for our specific application, but default voltage settings do not match requirements.

I'm wondering, is it possible to program NVM of this chip the same way as it is done for TPS6521905? I already checked TPS65214 datasheet (current revision), but it does not provide NVM programming details. 

Any guidance, application notes, or code examples would be greatly appreciated. If there are additional documents beyond the standard datasheet that cover NVM programming procedures, please let me know how to access them.

Thanks

Oleh

  • Hi Oleh, 

    Thank you for your interest in TPS65214.

    NVM programming for this device is possible, but it is unidirectional, meaning that configurable bits can only be written from '0' to '1'.
    So it may not be possible to adjust all settings of the PTPS6521401VAFR to your exact needs. 

    A blank user-programmable version like the TPS6521905 is still in development. 

    May I know more about your specific application requirements to see if we are already working on launching a variant that may fit your needs? 
    I can also provide more details for NVM programming steps, if your settings are achievable to program onto the PTPS6521401VAFR.

    Best Regards, 
    Sarah

  • Hi Sarah,

    I'm evaluating PMIC options to power a 3-rd party SoC (Ingenic T41 to be specific). TPS65214 seems to be right fit, but not with the default configuration. TPS65219 is a bit overkill for this application.

    I haven't tested it with the real SoC yet, just the dev board I made with resistive loads, and it seem to be performing well. The configuration is BUCK1 0v8, BUCK2 1v8, BUCK3 1v35, LDO2 3v3, startup order: 1v8 --> 1v35 --> 0v8 --> 3v3 --> nRESET with 1.5ms slots.

    Blank version would be nice to have to try different options, but if it's possible to achieve the same effect with the demo board we already manufactured, that would be great!

    Other option - without NVM upload - is it possible to somehow suppress initial transition from "INITIALIZE" to "ACTIVE" state so the external controller can upload the configuration over i2c instead of the NVM configuration taking effect?

    Thanks

    Oleh

  • Hi Oleh, 

    Yes, it would be possible to just use I2C to configure the desired settings upon startup, by holding EN low when VSYS is applied. 
    This will prevent an "ON_Request" and keep the device in INITIALIZE state for that initial I2C configuration. 

    For NVM burning, it seems like it would not be possible to set Buck1 to the default or reconfigure the exact timing sequence, because of the particular bits in B1_VOUT that are already set to '1'.

    So I would recommend just the I2C writing step without the NVM upload for testing on your demo board. 
    Let me know if you have any additional questions for this process!

    Best Regards, 
    Sarah 

  • Thanks for the clarification, this would fork for our demo setup. I have a question about the specific procedure of configuring from the INITIALIZE state. I was not able to configure PMIC from it.

    If EN is held low, all PMIC registers read as 00h over i2c, including TI_DEV_ID. Is there a specific command to get it out of this state? Does MODE pin state matter?

    After EN is released, i2c returns expected values, however PMIC immediately turn on power rails with what appears to be default settings - 1.1v, 0.75v, 1.8v, etc. and I'd like to avoid that if possible

    Thanks

    Oleh

  • Hi Oleh, 

    Yes, let me clarify the exact steps for configuration.
    Since I2C communication is not typically accessible during INITIALIZE state, I2C will need to be enabled by writing 0x09 to address 0x34 (USER_NVM_CMD_REG).
    Then your configurations can be made. 
    Then Disable the always-on I2C so the device can transition back into active state.

    1. Hold EN low
    2. Power on VSYS
    3. EN_OSC_DIY (0x34 = 0x09)
    4. Read all registers
    5. Unlock Registers (0x03 = 0x5A)
    6. Configure desired settings
    7. DIS_OSC_DIY (0x34 = 0x06)
    8. Bring EN high
    9. PMIC should now be outputting the configured values. 

    Give this procedure a try, and let me know if there is still trouble.

    Best Regards, 
    Sarah