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.

TPS65916: TPS65916 and the Sitara AM5716AABCD: any U-boot requirement or Does the PMIC can be standalone during the boot sequence?

Part Number: TPS65916
Other Parts Discussed in Thread: AM5716, AM5718, DRA722

During the boot-up of the AM5716, does it require any special interraction with the TPS65916? Any I2C communication to adjust voltage rail or any others features (any specific code for the boot-loader)?

We find some code which write in some register, but doesn't make sense, since it's a different PMIC or eval board.

Thanks

  • Jasmin,

    The TPS65916 will take care of the sequencing and voltage requirements for the AM571x processor. Once the PMIC is enabled, the device will automatically begin the startup sequence for the processor.

    For additional information about how this PMIC and AM571x processor are used together (including block diagrams), check out this user guide: http://www.ti.com/lit/pdf/slvuao4
     
    Please let me know if I have answered your question or if you have any further questions.

    Thanks,
    Nastasha

  • Thanks Nastasha.

    We already read that document. And we already have a board with both unit on it. We are trying to boot the board and we find some code issue when the AM5716 is initializing and it access the TPS65916. But the code doesn't make sense (lowering a SMPS rail 1.8V down to 1.06V!!). We skip that section of code (u-boot) and it's working.

    So my question is related to what is the function of AM5716 with the TPS65916 during the power-up of the unit (U-Boot). It seems that AM5716 is reading its internal eFUSE values for the voltage core (mpu, eve, gpu...etc) then trying to adjust these values by accessing the PMIC (TPS65916) through the I2C interface.

    Here's the function that we find in U-boot: 

    void scale_vcores(struct vcores_data const *vcores)

    But the code doesn't work properly for our application (AM5716 with TPS65916). Even if the TPS65916 is almost the same as the TPS65917.

    Regards

  • Also, base on the table 18-29 (from technical reference manual, SPRUHZ7G), three rails are tie together when using the TPS65916: vdd_iva, vdd_dsp & vdd_gpu. Which register do we take to adjust the PMIC voltage? Or we don't adjust the rail at all... Just use as default without AVS?

  • Jasmin,

    Can you confirm which part number your are using for the TPS65916? The part number should be TPS659162RGZR.

    Also, do you have the same power mapping as in the user guide?
    SMPS1 -> VDD_MPU
    SMPS2 -> VDD_CORE, VDD_RTC
    SMPS3 -> VDD_DSPEVE, VDD_GPU, VDD_IVAHD
    SMPS4 -> 1.8 V
    SMPS5 -> 1.35V or 1.5V

    According to the AM5716 datasheet (section 5.5.1), you are required to use AVS for VDD_IVA, VDD_DSP, VDD_GPU. Since these lines are tied together, you would use the highest of the three values to adjust the PMIC voltage.

    Thanks,
    Nastasha
  • Hello Nastasha.

    We have currently installed on our board the TPS659161RGZR version. The TPS659162 is still not available yet through distributor!! It seems the the 162 version is only available through TI web site.

    Yes, we have follow the suggested power mapping as in the user guide (and as you write).

    So base on your writing, we have to use the highest voltage of three VDD_IVA, VDD_DSP, VDD_GPU (which is available in the eFUSE section of the AM5716), to adjust the PMIC voltage.

    But we do really need to adjust all three SMPS voltage controller (SMPS1, SMPS2 and SMPS3)?? We are using a low speed version of the AM5716 (AM5716AABCD, core at 500MHz).
    What will be the effect or behavior is we don't adjust the these voltage rails?

    Regards,

    Jasmin
  • Hi Nastasha.

    Please note that with the AM5716, the IVA and GPU are not supported. So can we only check the eFuse value and adjust voltage of VDD_DSP? (if required!)

    Regards,
  • Hi Jasmin,

    For the combination of TPS65916 and the AM571x, I want to point you to the DRA72x vcores_data as reference. In the u-boot source, go to <u-boot>/board/ti/dra7xx/evm.c and find the "dra722_volts" struct. Use that as your configuration in your own "vcores_init(void)" function. It is the same for AM5718 and AM5716.

    • "What will be the effect or behavior is we don't adjust the these voltage rails"

    Your power consumption will be much, much higher than it needs to be. 

    FYI you need to configure the PMIC in the device tree for Linux as well. Use dra72-evm-common.dtsi and dra72-evm-tps65917.dtsi as reference for your dts and modify as necessary.