CYPD5225 burnside bridge retimer setup after exiting S4/S5 to enable alt modes on resume

Announcements

Live Webinar: USB-C adoption. Simple & Cost-efficient solutions | April 18th @9am or 5pm CEST. Register now !

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
KiLe_4629881
Level 3
Level 3
25 sign-ins 10 replies posted 10 questions asked

Hi Cypress,  

We have a design that is using the CYPD5225 with TGL and a burnside bridge retimer on each port, however after the system exits S4/S5 after the first boot we cannot enumerate usb3/DP alt mode/thunderbolt unless we physically unplug/replug. 

This is based on the CYPD5225-96BZXI_notebook_tbt project based on sdk 3.4.0. 

After some discussion, we have a workaround of issuing a port reset command based on the system power state changes written to SYS_PWR_STATE register from the EC. (This was disabled on the project due to BC1.2 being disabled due to size requirements. 

So I shortened the callback handler for this in app.c app_update_sys_pwr_state to only trigger dpm_typec_command (i, DPM_CMD_TYPEC_ERR_RECOVERY, NULL); 

 

This fixes the issue of devices not being recognized after resume, however it will reset power to the device - which we want to avoid, as we cannot resume/hibernate etc without the device resetting. 

Is there a way to trigger only re-configuring the retimer/SOC on resume? 

I have noticed the following: 
It seems the SDK code monitors VSYS - and will trigger retimer_set_evt(param_1,RT_EVT_VSYS_ADDED); for each retimer when VSYS is restored. However in our design the retimer is on a different supply than the CCG5225 (which is always on). So I do not think this will get triggered. 

I tried to manually call this from our power state transition handler: 
retimer_set_evt(TYPEC_PORT_0_IDX,RT_EVT_VSYS_ADDED);  and RT_EVT_VSYS_REMOVED when we would enter/exit S0 (using the EC command handler app_update_sys_pwr_state)  for each port, however this does not seem to enable the alternate modes through the retimer. 

I did some additional digging and thinking, and I also wondered if the PD controller needs to notify the SOC to configure alt modes as well? perhaps through the call ridge_force_status_update or some other method? 

0 Likes
4 Replies