- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Based on CCG3 USB-PD subsystem, how to disable the internal Switch (e.g. VDDD is only provided by VBUS_C)?
Solved! Go to Solution.
- Labels:
-
USB EZ-PD Type-C
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
If you're using CCGx SDK v3.0.2, you will have to manually change the register definition since there is no macro as you mentioned. Yes, VDDD should be 3.3V and not 5V if CCG3 is being powered by VBUS.
The above code snippet should still work, you could refer to the USBPD_VREG_VSYS_CTRL register from the CCG3 Register TRM. To disable VSYS, ENABLE_VDDD_SWITCH bit should be set to 0 and to enable VBUS regulator, VREG20_EN should be set to 1.
Best Regards,
Sananya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
To disable powering from VSYS, please refer to the example usage below from pd_hal_init() function (Host SDK 3.4). You could also try disabling the macro VBUS_TO_VSYS_SWITCH_ENABLE.
tmp = pd->vreg_vsys_ctrl;
tmp |= PDSS_VREG_VSYS_CTRL_VREG20_EN;
tmp &= ~(PDSS_VREG_VSYS_CTRL_ENABLE_VDDD_SWITCH | PDSS_VREG_VSYS_CTRL_VREG20_ONOFF_CNTR_MASK);
pd->vreg_vsys_ctrl = tmp;
Best Regards,
Sananya
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am trying to add these code into pd_hal_init(), but the VDDD (=VDDIO) voltage is still 5V.
There is no macro VBUS_TO_VSYS_SWITCH_ENABLE in SDK v3.0.2
Here is my power circuit about VSYS, VDDD and VDDIO
If the Switch powering from VSYS is disabled, I should measure 3.3V on the VDDD pin (the LDO output provided by Vbus)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
If you're using CCGx SDK v3.0.2, you will have to manually change the register definition since there is no macro as you mentioned. Yes, VDDD should be 3.3V and not 5V if CCG3 is being powered by VBUS.
The above code snippet should still work, you could refer to the USBPD_VREG_VSYS_CTRL register from the CCG3 Register TRM. To disable VSYS, ENABLE_VDDD_SWITCH bit should be set to 0 and to enable VBUS regulator, VREG20_EN should be set to 1.
Best Regards,
Sananya