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.

Use SmartReflex over I2C for TPS659112 and DM8168?

Other Parts Discussed in Thread: TPS65910, TPS40041, TPS65911

We are hoping to use the TPS659112 to power the DM8168 on the conditions that SmartReflex will work over an I2C interface and  the TPS65910 Linux driver can work with the DM8168 with minimal changes. All that I have read so far seems to indicate that this PMIC pairing with DM8168 will work with SmartReflex over I2C; I have several assumptions and questions to clarify:

I see that the TPS65910 Linux driver can be used with the TPS659113 and the DM8148, as verified in this post:

http://e2e.ti.com/support/power_management/pmu/f/43/t/216202.aspx

Question 1: Can the TPS65910 Linux driver also be used with the TPS659112 and the DM8168?

I also understand that the DM8168 CVDDC cannot be supplied by the VDD1 1.0V switcher because the current requirements > 1500mA, so we'll use a separate 1.0V switcher for that. Our power budget using the DM8168 Power spreadsheet confirms this (~1600mA). Also, 0.9V for the DM8168 USB PHY must be supplied separately because the TPS659113 LDOs can only scale down to 1.1V. This post discusses this a bit:

http://e2e.ti.com/support/power_management/pmu/f/43/t/153353.aspx

Question 2: I think the TPS659112 will work for our application with those exceptions, does this reasoning seem correct?

The DM8168 datasheet SPRS614E section 8.1.4 SmartReflex states: "...The communication link between the host processor and the external regulators is a system-level decision and can be accomplished using GPIOs or I2C."

Question 3: We would like to use I2C for SR and are trying to avoid using the Spectrum Digital reference design that uses GPIO and the TPS40041 for AVS. Is there a specific reference design for the DM8168 that uses SR over I2C with the Netra TPS659112?

Question 4: We are currently using I2C1 for other peripherals. I have assumed that we can we dedicate I2C0 for SR on the DM8168? Or is the SmartReflex I2C port hardwired to a specific I2C as in some other TI processors (AM335x has SR on I2C3, for example)?

The TPS659112 apparently uses the EN2 and EN1 pins for SR over I2C, but this function is not enabled by default. I assume the TPS65910 Linux driver would have to enable SR over the EN2 and EN1 pins before SR will work, as mentioned in TPS659112 Netra User Guide SWCU082A section 4.1.2, "Voltage scaling for VDD1, VDD2, and VDDCtrl can be done either through the main I2C interface or through dedicated interface EN1/EN2. Refer to the processor documentation for information on which one is supported. To enable the dedicated voltage scaling interface, set the SR_CTL_I2C_SEL bit to 0 in the DEVCTRL_REG register."

Question 5: I assume the TPS65910 driver enables I2C SmartReflex on the TPS659112 by clearing this bit, correct? (I suppose I could go look at the driver code to find out!)

Question 6: The TPS659112 datasheet seems somewhat ambiguous with EN2 and EN1 and their I2C functions. I think EN2 is I2C SDA (data), and EN1 is I2C SCL (clock), is this correct?

Thanks!

Braden

Braden Marr

Pacific Design Engineering (PDE)

  • Branden,

    The base for TPS65911 and TPS65910 is very simillar, so TPS65910 drivers can be used to build TPS65911 drivers. these drivers are open source. we highly recommends to consult a software develeoper for restruting the drivers.I wwould aslo receoomds to consutl the datasheet before reading the drivers as it is because this datasheet clarifies most of the doubt above. If there is still any confusion please do let us  know.

     

     

  • Thanks for the quick response Puneet,

    I will assume for now that the TPS659112 will operate with the TPS65910 driver, and that the SmartReflex software mechanism provided with this driver, over a dedicated I2C bus, will provide Adaptive Voltage Scaling for the DM8168.

    Braden