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万:状态寄存器(0x5f)行为的详细信息

Guru**** 2481465 points


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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/659492/tps65982-details-of-the-behavior-of-status-register-0x5f

部件号:TPS6.5982万

大家好,

尽管我们在接下来的线程中讨论了如何获得DP角色分配,但我的客户注意 到DPSourceSink位上存在一个错误。 此位根本不起作用,他们无法 从该位获得DP角色。

e2e.ti.com/.../63.9715万

请帮助我们澄清 其EC驱动程序的状态寄存器(0x5f)的行为。
要对EC驱动程序进行编码,必须了解"访问计时"和"如何处理寄存器"。

1. 判断DP角色和任务的适当阅读时间
 在未连接任何内容的状态中,数据状态寄存器显示0x00。
因此,如果仅从下表判断"任务",则表示DFP_D分配E。
由于EC可能会错误地识别分配, 因此在 读取DPPinAssignment, DPSourceSink和 USB3Connection位之前,必须确认这些位的值是否由Alt模式通信更新。

DPPinAssignment USB3Connection DPSourceSink = 0 DPSourceSink = 1.
00 0 DP源针脚分配"E" DP源针脚分配"E"
00 1. DP源引脚分配"F" 无效
01. 0 DP源针脚分配"C" DP源针脚分配"C"
01. 1. DP源针脚分配"D" DP源针脚分配"D"
10. 0 DP源引脚分配"A" DP源引脚分配"A"
10. 1. DP源针脚分配"B" DP源针脚分配"B"
11. 0 无效 无效
11. 1. 无效 无效

EC应读取寄存器的哪个时间?  
在内部更新此日期状态寄存器(0x5f)的触发器是什么?


如果他们可以使用IRQ事件或数据状态寄存器中的DPconnection位来获取计时,则他们正在漫游。


2.数据状态行为及其参考

以下位引用哪些寄存器值?

‐DPPinAssignment
‐DPSourceSink (存在错误,在FW版本3.10 中此信息从未更新)
‐DPConnection
‐USB3Connection

请详细说明哪个寄存器位由数据状态寄存器的值组成。看起来这些位值是从 0x58 DP SID状态的值创建的,但我不确定。 特别是,我的客户需要解决 DPSourceSink中的错误。

换言之, 在数据状态寄存器(0x5f)中,我们应该引用哪个寄存器来判断DP角色而不是DPSourceSink寄存器?

此致,

Takashi Onawa

此致,

Takashi Onawa

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

    我们收到了您的问题,应该能够在星期一之前回复。 谢谢你:-)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Aramis San,

    我今天可以获得任何更新吗?
    如果您有延迟,请告诉我。

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

    很抱歉耽误你的时间。

    以下是对您的查询的回答:

    1.请检查DP SID寄存器(0x58)中的"DPModeActive"位。 设置此位后,您可以读取数据状态寄存器中的所有其他位,以获得有关分配的准确数据。

    2.这些寄存器在任何其他地方都不可用。 我们正在查看您报告的错误,一旦有任何更新,我们将更新您。

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

    >请检查DP SID寄存器(0x58)中的"DPModeActive"位。
    >设置此位后,您可以读取数据状态寄存器中的所有其他位,以获得有关分配的准确数据。

    "DPModeActive"(DPModeActive)仅显示DP连接是否处于活动状态,对吗?
    因此我理解“DPModeActive”与数据状态寄存器(0x58)中的DPConnection位具有相同的含义。
    正如我在上文所述,我们还需要澄清哪些双边投资条约应被引用,以便获得与以下双边投资条约相同的信息。

    ‐DPPinAssignment
    ‐DPSourceSink (存在错误,在FW版本3.10 中此信息从未更新)
    ‐USB3Connection

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

    您能否就以上剩余的问题发表意见?

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

    有什么意见?

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

    有什么意见?

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

    有什么意见?

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

    DPModeActive和DPConnection位的功能非常相似,但略有不同。 只要进入DisplayPort备用模式,就会设置DPModeActive位。 在备用模式下发送和确认配置消息后,将设置DPConnection位。

    因此,设置DPModeActive位的时间段非常短,但尚未设置DPConnection位,但在大多数情况下,这些位的值相同。 (由于某种原因,设备可能会进入模式,但不会发送配置消息,在这种情况下,将设置DPModeActive,但不会设置DPConnection位。 但这种情况不太可能发生。)

    正如您所说的,DataStatus寄存器(0x5F)和其他一些寄存器(主要是DPStatus (0x58)和IntelStatus (0x59)寄存器)之间存在一些重叠。 这是因为DataStatus寄存器由英特尔规范定义,用于连接英特尔器件,而其他寄存器则由TI定义。

    要完成您的问题,请在以下位置找到您的查询:
    -- DPPinAssignment
    -->在0x5F中可用,但在DPStatus寄存器0x58配置消息中也可用,位[72:95]

    ‐DPSourceSink (存在错误,在FW版本3.10 中此信息从未更新)
    -->这可以通过以下方法确定:首先从状态寄存器0x1A读取设备是UFP_U还是DFP_U,然后从DPStatus寄存器[72:73]检查DPConfig消息的前两位。 具有以下翻译:
    00B =仅USB
    01B = UFP_U作为DFP_D
    10B = DFP_U作为DFP_D
    11b =保留

    ‐USB3Connection
    -->我不知道有其他注册表显示此信息