This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TPS6.5982万:连接后能否读取SVID响应?

Guru**** 2461710 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/599294/tps65982-can-i-read-the-svids-response-after-connection

部件号:TPS6.5982万

我使用TPS6.5982万在电路板上加载图像,然后连接到TI-EVM设置为开关=5,10或11。 这些模式都有不同的DP和TBlt alt模式组合。 如果我将其设置为5并建立连接,探测CC线路并解码通信,我可以看到'Discover SVID Response ACK'消息,该消息指出TI-EVM的SVID = FF01 (Dport),SVID = 8087 (Intel/TBlt)。 我希望能够从主板上的TPS6.5982万中的寄存器中读取该信息,以了解在连接到的TI-EVM或器件上可以使用哪些SVID。 如果TI-EVM开关=10,我只看到8087,开关=11,我看到0xFF01。 是否有方法从TPS6.5982万寄存器读取SVID信息? 我只能在读取DataStatus寄存器时看到处于活动状态的注册表。 我确实发现,如果我发送带有0x8087或0xFF01的'GCdm'消息,当TI-EVM上存在该模式时,我将收到模式= 0x1返回(根据HI-Utility)。 这是获取此信息的正确方式还是有更好的方式? I2C通信比HI-Utility GUI中的信息要多一些,但我只是想知道我的连接中是否存在Alt模式,在本例中是TI-EVM。

谢谢!

WST

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,

    我建议使用'VDMs'命令。 发现SVID的示例是使用NumDOs = 0x01,SOP类型= SOP,PD SID = 0xFF00,结构化VDM,并在VDO#1中发送代码0x02以查找发现SVID。 您可以发送USB PD规格中列出的其他命令类型(查找Structured VDM Header - Commands)。 发送VDMS命令后,您可以使用寄存器0x4F RX非Attn VDM来读取发回的内容。 这将返回Discover SVID确认。

    此致,

    Jaime
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我一直在尝试此命令,我的主板连接到TI-EVM主板和具有USB-C连接器的戴尔笔记本电脑。 我将这些字段与您上面的字段相匹配。 当我解码CC流量时,我只看到发现SVID请求发出,设备没有响应,但0x4F寄存器已更新。 似乎我从未在响应中同时获得0xFF01和0x8087,无论设备是否都可用。 VDMS命令是否仅从我的电路板(Aardvark/HI实用程序连接的位置)的角度读取信息? 我想知道连接到电缆另一端的设备提供的Alt模式。
    谢谢!
    WST
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我一直在处理这个问题,发现代码为0x02 (发现SVID)的VDM命令只在我的主板是连接中的DFP时在CC行上得到响应。 否则,如果我的主板是UFP并且命令已发送,我就没有收到DFP的响应。 在这种情况下,0x4F寄存器似乎保存了PD合同最初签订时的信息。 它不会使用VDMS命令更新。 如果我的主板是DFP,则我会得到回复。 此外,我似乎必须是DFP才能获取连接的UFP的所有SVID。 发出VDMS命令后,我可以读取寄存器0x4f并看到VDM,从VDM1的0xFF0.8042万开始。
    如果我作为UFP进行连接(我在TI-EVM板设置为SW =5时尝试了此操作,并且还尝试了戴尔笔记本电脑),则VDM消息不会得到确认,0x4F中的信息反映了当前启用的任何连接的SVID。 例如,如果在配置寄存器中启用了Dport和禁用了TBlt,则我将看到VDM1的0xFF01,如果启用了TBlt,则我将看到VDM1的0x8087...。 当我的主板是UFP时,我永远看不到两者。
    如果我想检查已连接设备的Alt模式,这应该是可行的,但我想确保这是您建议使用VDMS命令时的意思。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的,这种行为是正确的。 根据PD 2.0 规范,只有DFP可以是VDM的发起方(只能由UFP启动的Attention命令除外)。 同样,只有UFP或电缆插头可以对VDM作出响应。