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.

TPS65217SW-LINUX: Disabling VLDO1 of TPS65217 in Linux

Part Number: TPS65217
Other Parts Discussed in Thread: TPS65218D0, AM3352

Hi,

I'd like to know if I can disable the voltage regulator ldo1. Why I wanted to do that is to check if my external power circuitry for RTC is working or not.
I saw that RTC power supply comes from LDO1 on TPS65217. Also, I've a doubt that if I disable LDO1, then the whole board can lose the power, is that true ?

FYI, I am using custom board with two PMICs,
Primary PMIC deals with the Voltage regulation and provides stable 5V to Secondary PMIC (TPS65217) which is connected to AM335x.

  • Moses,

    Currently, your question is regarding whether or not Linux can disable LDO1 so I will reassign this question to the Sitara Processors team.

    From the perspective of the TPS65217, you can disable any rail at any time via I2C. The impact on the entire system depends on the processor and how it handles losing power to the RTC rail when all other rails are still active.

    If you are not using the Battery Charger or WLED driver integrated in the TPS65217 device, I would also like to recommend that you consider using the TPS65218D0 device in your design, which has separate dedicated DC-DC rails for providing power to the RTC domain of AM335x and AM43x processors.

  • Thanks for the prompt reply Brian,

    Brian Berner said:

    Currently, your question is regarding whether or not Linux can disable LDO1 so I will reassign this question to the Sitara Processors team.

    Ok, Sure.

    Brian Berner said:

    If you are not using the Battery Charger or WLED driver integrated in the TPS65217 device, I would also like to recommend that you consider using the TPS65218D0 device in your design, which has separate dedicated DC-DC rails for providing power to the RTC domain of AM335x and AM43x processors.

    Well, we do use WLED driver from TPS65217.

  • Hello Moses,

    I apologize for the delayed response. There are two questions here:

    1) Will disabling LDO1 during runtime cause problems?

    2) If not, is there a way to disable it from Linux?

    I am digging into 2). We'll get a hardware engineer to comment on 1).

    Regards,

    Nick

  • Hi Nick,

    Nick Saulnier said:

    1) Will disabling LDO1 during runtime cause problems?
    2) If not, is there a way to disable it from Linux?
    I am digging into 2). We'll get a hardware engineer to comment on 1)

    Sure, I'd be waiting for your response on the same. Thank you.

  • Edited 2019-Oct-11

    Hello Moses,

    From the processor side, we only support enabling our power sources VDDS_RTC during the power on sequence and disabling our power sources VDDS_RTC during the power down sequence. So the AM335x does not support use cases where we disable the power to VDDS_RTC LDO1 during runtime. Note: please see next response for follow-up.

    Regards,

    Nick

  • Hello Moses,

    Disclaimers

    Please see corrections to my previous post in that post.

    We neither support nor test use cases where VDDS_RTC is the only power source that loses power. If VDDS_RTC loses power, the AM335x may (or may not) get damaged.

    I am not clear on your overall design. The rest of my answer assumes you have ensured that VDDS_RTC will continue to be supplied even if TPS65217 LDO1 turns off.

    How to change PMIC outputs from Linux

    First off: note that the Linux OS discourages manually disabling PMIC outputs, because disabling different power sources could potentially damage the processor.

    Because of that, the Linux power drivers do not provide ways for userspace to turn off TPS65217 LDO1 during runtime. If you wanted to use a Linux driver to turn off LDO1, you would need to write your own upper level driver to get the LDO1 regulator defined in the TPS65217 lower level driver. Your upper level driver could then turn off the regulator.

    Another option is to simply use i2c commands to turn off LDO1. If you are interested in using i2c register writes, I'll reassign the thread to Brian to help with that.

    Regards,

    Nick

  • Hi Nick,

    In that case, I'd like to know if there is any problem in supplying VDDS_RTC with LDO1 from PMIC (TPS65217) and also Supply a stable 1.8V from Coincell through a Voltage Regulator to the VDDS_RTC.

    LDO1  ->  VDDS_RTC  <-  V_1.8_Regulated_From_CoinCell

    Because, in our case, at the end of poweroff sequence the PMIC (TPS65217) is completely shut, therefore to use RTC block of AM3352, we supply 1.8V from Coincell, such that the RTC Block doesn't loose power as long as the Coincell is present.

  • Hi Moses,

    Can I assume you are using the TPS65217 rev C or D version of the PMIC for DDR3 / DDR3L? If you can please refer to Figure 5 in our TPS65217 PMIC User Guide for AM335x, the recommendation is to connect LDO1 with both VDDS_RTC and VDDS.

    Is this matching with your schematic? If so there are two consequences:

    1. disabling LDO1 will cause the SoC to shut off and possibly fail because VDDS is required to be on, so don't do this
    2. keeping this line powered through the Coin Cell battery will not last long because you are powering both VDDS_RTC and VDDS

    My recommendation is one of two things:

    1. keep VDDS connected to LDO1 and add a power mux to allow VDDS_RTC to switch between LDO1 and Coin Cell dynamically
    2. keep VDDS on LDO1 and supply VDDS_RTC externally 100% of the time (again with a power mux to choose between external supply and coin cell)

    The quiescent current of the regulator you use on the coin cell is important otherwise it will discharge on its own.

  • Also this is an important tip: RTC_PORz must be delayed by 1 to 2 ms to make sure VDDS_RTC is stable at 1.8V. If the RTC_PORz is released too soon while VDDS_RTC is still ramping then the SoC will sometimes not boot.