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.

[参考译文] DP83867IR:魔包唤醒

Guru**** 2752855 points

Other Parts Discussed in Thread: DP83867IR

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1088279/dp83867ir-wake-on-magic-packet

器件型号:DP83867IR
主题中讨论的其他器件: DP83869

您好!

我尝试在 基于 x86的模块上使用 DP83867IR 通过 INT 引脚在 Magic Packet 上唤醒电路板、但至今未成功。

以下是我的配置步骤:

-将0x82写入寄存器。 0x1E

-将 0x8888写入寄存器。 0x136

-将 0x8888写入寄存器。 0x137

-将 0x8888写入寄存器。 0x138

-将0x0081写入寄存器。 0x134

-将0x0008写入寄存器。 0x012

根据数据表、PHY 现在应在收到 MAC 地址为88:88:88:88:88:88:88:88的 Magic Packet 时将 INT 置为有效、但实际上它不会使用以下数据包(尝试使用 UDP 和纯 TCP):

我也看不到 reg。 0x135[0](MAGIC_RCVD)设置 NOR 寄存器 0x13[3](WOL_INT)。

UDP 封装:

0000关断关断 FF e0 db 55 E2 34 0e 08 00 45 00
0010 00 82 D9 57 00 00 80 11 7a 9f c0 A8 B2 23 c0 A8
0020 b2 ff CD ce 00 09 00 6e b1 2c ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
0030 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0040 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0050 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0060 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0070 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0080 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88

原始 以太网:

0000关断关断 FF f0 b0 14 38 b4 00 08 42 ff
0010关断88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0020 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0030 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0040 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0050 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0060 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
0070 88 88 88 88 88 88

当我将 PHY 配置为在数据包匹配时唤醒时、一切都按预期工作。 但是、这不是一个选项、因为 Windows 驱动程序仅支持

魔术包、我们没有它的源代码。

我是否错过了一些配置步骤、或者是否有其他我不满足的要求?

此致

1月

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

    您好、Jan、

    您可以在多个位置写入保留位或只读寄存器。例如、 (将0x82写入寄存器。 0x1E)(0000 0000 01010 0010)

    而位4是保留的、位1是只读的。  

    原因是什么?  

    您是否能够使用 WoL、但只能使用 wo-Magic Packet?  

    将0x0081写入寄存器。 0x134 ->同样、位6被保留

    否则、您执行的写入操作对我来说似乎是正确的。

    您是否确保使用正确的数据表?

    最棒的

    Alon  

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

    尊敬的 Alan:

    寄存器0x1E 在读取时返回0x02、因此我向保留位写入零、因为默认值为零、RO 位为1  1.与 reg 相同。 0x134:位6读为零、所以写入0应该是可以的。

    数据表为文档 ID SNLS484F、日期为2015年2月、2019年12月修订。

    WoL 适用于  除魔术包之外的所有(单播、广播、模式)。 因此、如果我将数据包配置为在魔术包的特定字节上触发、PHY 将唤醒、因此我确信数据包会到达。

    实际上、我发送的魔术包与数据表第15页上魔术包的描述有区别: DS 表示魔术包末尾必须具有4字节 CRC。此描述似乎直接来自 AMD 关于魔术包技术的文档(https://www.amd.com/system/files/TechDocs/20213.pdf)。 但是 ,我尝试过的工具都不会生成此 CRC,但这些工具适用于 其它网卡。 那么、TI-PHY 实际上是否会检查这个4字节 CRC?  

    我在该论坛(https://e2e.ti.com/support/interface-group/interface/f/interface-forum/863908/dp83867cr-magic-packets-over-udp)中发现了一个类似的问题、解决方案是在 reg 中调整 pattern_start_point。 0x161到0x30、这是 USP 封装的魔术包中16 x MAC 块的开始。 不过、据我了解、该寄存器仅对 模式匹配有效、不适用于魔术包检测。 是这样吗?

    此致

    1月

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

    您好、Jan、

    这是一种解决方法、应该起作用、所以请继续尝试。 我们在内部提出了这个问题、如果我们提出了答案、就会得到很好的更新。

    最棒的

    Alon  

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

    尊敬的 Alan:

    已经尝试过、运气不好。 同时、我发现 PHY 对 发送单播而不是广播的魔术包做出反应、因此以下目标地址设置为站点地址的数据包 在 Windows 下会唤醒:

    0000 88 88 88 88 88 88 88 88 88 88 88 00 5d 73 19 de 7d 08 00 45 00 ........ ]s.}..e.
    0010 00 82 E5 1e 00 00 7f 11 E3 83 ac 1e 8c 3a ac 1e… :.
    0020 8e 51 f0 ca 00 09 00 6e 01直流关断关断 FF .Q. N.
    0030 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
    0040 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
    0050 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
    0060 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
    0070 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88
    0080 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88 88

    数据表显示:

    "魔包帧还必须满足所选 LAN 技术的基本要求、如源
    地址、目标地址(可能是接收站的 IEEE 地址或广播)
    地址)和 CRC"。

    那么、我希望通过广播发送的魔术包能够像处理其他 PHY 一样工作吗?

    谢谢、此致

    1月

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

    您好、Jan、

    我感谢您付出的努力、在我的方面、我与一位在本主题上拥有更多经验的前工程师进行了联系、并尝试了解广播和单播魔术包之间的差异。

    根据您在上一次回复中撰写的摘录、我假设 Magic 数据包应该通过广播工作、正如您所提到的、最好至少知道单播魔术数据包是否正常工作、但我正在努力了解为什么您的广播不成功

    我将在获得更多相关信息以提供帮助后立即更新。

    最棒的

    Alon

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

    您好、Jan、

    我与以前有过这方面经验的人取得了联系。 请参阅下面的 E2E 链接、并告诉我它是否有用。  

    https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1005750/dp83867ir-wol-erratic-operation

    我还收到了一个用于寄存器写入的脚本、该脚本可能有用、但我仍在尝试自己了解它。  

    请仔细阅读我所连接的螺纹、并告诉我它是否有用、如果没有、我们可以继续在其他方向上挖掘。  

    最棒的

    Alon

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

    尊敬的 Alan:

    不确定此问题是否真正相关。 他们似乎在模式匹配上使用 WOL、这对我也很有用。 只有作为广播发送的 Magic 数据包(即目标地址设置为 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff) 不会生成唤醒事件。

    谢谢、此致

    1月

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

    您好!

    只需确认以下广播(UDP 封装)数据包被检测为魔术包并生成唤醒事件:

    0000关断关断 FF 50 81 40 F6 55 b4 08 00 45 00
    0010 00 82 8e C1 00 00 80 11 00 c0 A8 B2 4a c0 A8
    0020 b2 ff ef 37 00 09 00 6e 29 36 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
    0030关断关断 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF
    0040关断关断 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF
    0050 ff ff ff ff ff ff ff ff ff ff (关断时间 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF
    0060 ff ff ff ff ff ff ff ff ff ff (关断时间 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF
    0070 ff ff ff ff ff ff ff ff ff ff (关断时间 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF
    0080关断关断 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF ff ff ff ff ff ff ff ff ff (FF 关闭 FF

    RXFPMD1-3已设置为 FF-FF-FF-FF-FF-FF-FF。 因此、魔术包检测功能可以按预期工作、只不过它坚持数据包目标地址必须与  RXFPMD1-3中给出的地址相匹配。 这就是为什么以下数据包(原始以太网)在 RXFPMD1-3设置为02-22-33-44-55-66时不会唤醒的原因、原因只是因为目的地址(偏移量0000、6字节)不匹配:

    0000关断关断 FF f0 b0 14 38 b4 00 08 42 ff
    0010关闭02 22 33 44 55 66 02 22 33 44 55 66
    0020 02 22 33 44 55 66 02 22 33 44 55 66 02 22 33 44
    0030 55 66 02 22 33 44 55 66 02 22 33 44 55 66 02 22
    0040 33 44 55 66 02 22 33 44 55 66 02 22 33 44 55 66
    0050 02 22 33 44 55 66 02 22 33 44 55 66 02 22 33 44
    0060 55 66 02 22 33 44 55 66 02 22 33 44 55 66 02 22
    0070 33 44 55 66

    此致

    1月

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

    您好、Jan、

    只是想更新一下、我们仍在研究这一点、很抱歉、由于周转时间较长、但这一问题确实非常具体。  

    最棒的

    Alon

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

    您好、Jan、

    请尝试使用以下脚本吗?

    最棒的  
    Alon

    e2e.ti.com/.../8713.DP83867-WoL-Rev2.txt

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

    您好、Alon、

    很抱歉、我上周休假 了。 该配置应生成唤醒事件的数据包是哪个数据包?  根据我的理解、 它将在目标地址为5F:47:0c:0e:fb:4b、源地址[0:1]= 1D:64、字节60/61 = 49 E6和字节62/63 = 54 fb 的数据包中唤醒。 不管怎样、它没有解决问题。 我想知道您是否可以重现此问题、是否有可用的硬件设置?

    此致

    1月

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

    您好、Jan、

    好的、感谢您的尝试。 我已经安排了周一在实验室中举行的一次会议、尝试重新创建这个。 我将进行更新。  

    最棒的  

    Alon

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

    您好、 Alon、

    如会议中所讨论的那样、我将 WOL 信号路由到 GPIO_1 (对于级别模式、寄存器0x172 = 0x36、寄存器0x134 = 0x1xx)、但它显示相同的行为: 根据配置、 信号针对  BCAST、UCAST、Pattern 和单播 Magic 数据包有效、但不适用于广播的 Magic Package。

    此致

    1月

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

    您好、Alon、

    有关此问题的任何新闻、您可以在实验室中再现该问题吗?

    此致

    1月

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

    您好、Jan、

    是的、我们已经在实验室中、我们确实复制了它。  

    我一直在等待与 Marion 保持一致、因为她提到她想再召开一次会议。  

    目前、我们似乎不得不找到一种解决方法。 让我们等待 Marion 设置会议吗?

    最棒的

    Alon  

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

    您好、Alon、

    对我来说听起来不错。

    此致

    1月  

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

    您好、Jan、

    我没有听说过 Marion、如果您想打电话、请给我发送一封电子邮件、我可以在方便的时间或时间给您。  

    您在这里确实发现了一个缺点、我们正在制定一份应用手册来解决这个问题。 我们必须在您当前的系统中解决此问题、或者切换到 DP83869、因为 DP83869已经解决了此问题、但这不是一个简单的解决方案。  

    如果您已经找到解决此问题的方法、请告诉我您的解决方案。  

    感谢您提出此问题、并识别此问题。

    最棒的

    Alon

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

    您好、Alon、

    我已经实施了一种解决方法、它将适用于大多数客户。 该解决方案的缺点是原始以太网封装不再会导致唤醒事件。 基本上、我已经重新配置 PHY、使其在3倍于 MAC 上进行数据包匹配、从数据包中的偏移30h 开始。 这是在 x86睡眠 SMI 处理程序中完成的,该处理程序在平台实际发送到睡眠之前执行。 我想 DP83869不是直接替代产品、因此硬件重新设计时需要考虑这一点。 我认为我们不需要安排会议、因为我们再也没有什么可以做的了。 感谢您的努力、我们的大力支持!

    谢谢、此致

    1月