Q: When VUSB3V1_DEV_GRP register is written zero(0x00), the VUSB3V1_SLEEP bit in VUSB_DEDICATED2 register seems to go up. Do you know why?
This is a problem since the regulator driver for TPS65950 uses DEV_GRP registers to switch regulators active/off. Now in active state the regulator should really be active, but the VUSB3V1_SLEEP bit remaps active state to sleep state.
Explanation: (Please refer TRM for the register/bit values)
Reset value of bit “3” of VUSB_DEDICATED2 is “1”
A: Reset value of '1' in the field VUSB_DEDICATED2 means that when this LDO is turned ON, it will ALWAYS turn ON in Sleep mode. Once it turns ON, we can write “0” on this above bit “3” . This will transit the LDO to ACTIVE state.
When the LDO is turned OFF by setting DEV_GRP=0x000, the above register bit “3” in VUSB_DEDICATED2 register will go to its reset value which is “1”.
From this condition, to enable the LDO, DEV_GRP register [7:5] needs to be 001-111 but not 000. This will assign it to at-least one device group and turn ON the LDO in Sleep mode.
Then we must write “0” in bit “3” of DEDICATED2 register to make it transit to ON state.