Dock not sending Discover Identity

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
lock attach
Attachments are accessible only for community members.
OlEr_1999891
Level 5
Level 5
50 replies posted 25 replies posted 25 sign-ins

Hi!

We have a need for our dock to ask the connecting device what VID and PID they have through a Discover Identity message. Problem is that as far as we can see (and think), the connecting laptop send a "DR_Swap" directly after the 20V voltage has been negotiated and then it is the laptop sending the Discover Identity to the dock instead to initiate the alt-mode communication. See analyzer log dump.

Is there way get the dock to send a Disocver Identity before the DR-role swap? Or any other way for the dock to get VID/PID of the connecting device.

Noticed the main:sln_pd_event_handler  method that is used in the CCG4 Dock ref design:

pastedImage_0.png

Could something be done here? Or change some PD Configuration-settings in the configuration of the FW?

Cheers

Olof

0 Likes
1 Solution
ShifangZ_26
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 1000 replies posted

Hi Olof,

You can change the DR_SWAP logic as per your requirements. You can see that the default firmware setting as when PD contract is established and the role is DFP, initial DR_SWAP.

pastedImage_0.png

You can use same way, but gate difference, for example, you can sent the Discovery Identify first and then get the VID&PID, ans then inital DR_SWAP use same API.

Best Regards,

Lisa

View solution in original post

0 Likes
3 Replies
ShifangZ_26
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 1000 replies posted

Hi Olof,

You can change the DR_SWAP logic as per your requirements. You can see that the default firmware setting as when PD contract is established and the role is DFP, initial DR_SWAP.

pastedImage_0.png

You can use same way, but gate difference, for example, you can sent the Discovery Identify first and then get the VID&PID, ans then inital DR_SWAP use same API.

Best Regards,

Lisa

0 Likes

Hi Lisa!

Thanks for getting back. Got 3 follow-up questions:

1. In the attached PD-log it looks like it is the laptop that initiates the DR_SWAP so will it still be possible to trigger the DI at the APP_EVT_PD_CONTRACT_NEGOTIATE_COMPLETE ?

2. If yes, how would that code look like?

3. Noticed the define "UFP_MODE_DISC_ENABLE?" that is used in vdm_task_mgr.c among other files. Is this a better way to do it? Or that would be releventa if the device in question is a dock?

Cheers

Olof

0 Likes

Hi Olof,

1. There is no stick define for this as per PD SPEC.

pastedImage_0.png

2. You can initial Discovery Identify as per your want, but after APP_EVT_PD_CONTRACT_NEGOTIATE_COMPLETE and check whether CCG4 is UFP or not, And then initial Discovery Identify is OK.

3. I do not recommend you use this, since this is for DFP and identify all of ALT mode as per DisplayPort Alt Mode. And your hardware design is not support DisplayPort host.

Best Regards,

Lisa

0 Likes