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)