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.

[参考译文] TDA4VM:CPSW2G MAC 滤波

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1370995/tda4vm-cpsw2g-mac-filtering

器件型号:TDA4VM

工具与软件:

您好、TI!

我希望您做得非常好。

我使用的是来自 MCU1_0内核、PDK 8.2的 CPSW2G、 对 MAC 滤波有以下几点疑问:

用例:我要在 ALE 表中存储包含15个 MAC 地址(多播)、白名单、并且只想从这些存储的 MAC 地址接收。
如果其他某个 MAC 地址要向我发送数据、我只需丢弃数据包。 同时、我还希望接收到 CPSW Port1的单播定向数据包

  1. 如何根据 ALE 中存储的 MAC 地址白名单(多播)进行 MAC 过滤?
  2. 在组播和单播 MAC 地址的用例中、我需要进行哪些配置?

期待收到您的回复。

此致、
哈桑

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

    您好!  

    我可以知道您正在为 CPSW2G 使用哪种应用吗?

    是 Linux 驱动程序还是 AUTOSAR mcal Eth 驱动程序?  

    如果 Linux 需要在 Linux 中使用"ifconfig 命令将多播 MAC 地址添加到网络接口中、并且默认情况下将处理单播自 MAC 地址。  

    如果您使用自动筛选器应用程序、则需要通过调用 Ethh 筛选器 API 来添加 MAC 筛选器。 默认情况下会考虑单播自身。  

    此致、  

    苏德黑尔

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

    尊敬的 Sudheer:

    感谢您的答复。

    我正在开发自己的应用、并将 Enetloopback 示例作为参考、并使用 Enet 库。

    如何根据 ENET 库进行 MAC 过滤? 我需要遵循哪些步骤?

    您还能提供 MAC 过滤的参考示例建议吗?

    此致、
    哈桑  


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

    您好!

    如何根据 Enet 库进行 MAC 过滤? 我需要遵循哪些步骤?

    您可以使用 ENET_ALE_IOCTL 添加 MAC 地址。
    请参考以下参考信息:在 EthFw 中增加了广播条目。


    您可以添加与上述类似的滤波器、在调用 enet_open 之后、并在 IOCTL 调用中使用"gEnetLpbk.hEnet、gEnetLpbk.CoreID"。

    此致、
    苏德黑尔

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

    您好!

    上面提供的参考将在 ALE 查找表中添加 MAC 地址。 如何使 cpsw2g 知道它应该只从存储在 ALE 查找表中的 Mac 地址接收? 我是否需要设置/配置除在 ALE 表中添加 MAC 地址以外的任何其他内容?

     期待收到您的回复。

    此致、
    哈桑

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

    您好!

    以上提供的参考将在 ALE 查找表中添加 MAC 地址。 如何使 cpsw2g 知道它应该只从存储在 ALE 查找表中的 Mac 地址接收? 我是否需要设置/配置除在 ALE 表中添加 MAC 地址以外的任何其他内容?

    默认启用 ALE 后、它将查找 MAC 地址寄存器、然后仅进入数据包。 否则、将丢弃数据包。
    另外、请确保从 ALE 端口配置寄存器将"REG_Py_MACONLY_CAF"(会将所有正常帧复制到主机端口、当它为1时类似于混杂模式)设置为0。

    此致、
    苏德黑尔

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

    您好!

    如果 VLAN 匹配、则可以接受 VLAN 入口数据包、因为已为主机端口+外部端口设置了未知 VLAN 配置。

    您能否将上面的设置为0并进行检查、

    此致、
    苏德黑尔

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

    您好!

    设置为0、我在端口1上不会收到任何内容。

    此致、
    哈桑

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

    您好!

    将成员列表保持为3并保持为零。

    此外,您可以确认您是否注册了 ALE 的自助 MAC 地址,如果不注册自助 MAC 并保留成员列表也为0。

    此致、
    苏德黑尔

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

    尊敬的 Sudheer:

    如果我保持以下位如下:
    UVLAN_MEMBER_LIST:1
    UVLAN_UNREG_MCast_flu_mask:0
    UVLAN_REG_MCast_flu_mask: 1

    我可以根据 ALE 过滤单播和多播数据包。

    在 ALE 表中、条目(共3个)如下:
    1.自 MAC 地址
    2.单播 MAC 地址
    3.多播 MAC 地址

    您是否可以详细说明未注册的 VLAN ID? 为什么多播条目被视为未知 VLAN ID?

    此致、
    哈桑

     

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

    您好!

    抱歉、上面的未知 VLAN 用于 VLAN ID 为无 ALE 条目的数据包。
    默认情况下 、当 ALE 和 CPSW 处于 VLAN 识别模式时、端口的 VLAN 将添加到数据包中(来自 CPSW_Pn_PORT_VLAN_REG_k)。

    有关 Ingress 操作的更多详细信息、请参阅 CPSW 中 ALE 部分的 TRM (可从 TI.com 找到)。
    www.ti.com/.../spruil1

    此致、
    苏德黑尔

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

    尊敬的 Sudheer:

     当 ALE 和 CPSW 处于 VLAN 不可识别模式时、如何获得相同的功能? 在这种情况下需要哪些配置?

    此致、
    哈桑

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

    您好!

     当 ALE 和 CPSW 处于 VLAN 不可识别模式时,如何获得相同的功能? 在这种情况下需要哪些配置?

    您需要添加 ALE VLAN 条目和 MAC 地址以用于 VLAN。

    此致、
    苏德黑尔

x 出现错误。请重试或与管理员联系。