TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS570 TCPIP组播帧接收不到

TI工程师,你好

 

我们最近在TMS570上移植lwip1.4.1和TCN TRDP的时候,遇到组播帧没有收到的问题,广播和单播帧可以正确收到。后来,发现从EMAC的接口就没有获得到组播帧。

不知道是不是驱动配置有问题,我们的驱动使用HALCOGEN生成,根据需要做了一些修改,

驱动代码如下

  EMACInit(hdkif->emac_ctrl_base, hdkif->emac_base);

 

  MDIOInit(hdkif->mdio_base, MDIO_FREQ_INPUT, MDIO_FREQ_OUTPUT);

  while(delay–);

 

  EMACRxBroadCastEnable(hdkif->emac_base, 0);

 

  /* Set the MAC Addresses in EMAC hardware */

  EMACMACSrcAddrSet(hdkif->emac_base, hdkif->mac_addr);

 

  /* Acknowledge receive and transmit interrupts for proper interrupt pulsing*/

  EMACCoreIntAck(hdkif->emac_base, EMAC_INT_CORE0_RX);

  EMACCoreIntAck(hdkif->emac_base, EMAC_INT_CORE0_TX);

 

  EMACRxUnicastSet(hdkif->emac_base, 0);

EMACRxMultiCastEnable(hdkif->emac_base, 0);

  EMACNumFreeBufSet(hdkif->emac_base, 0, 10);

 

  /* Write the RX HDP for channel 0 */

  EMACRxHdrDescPtrWrite(hdkif->emac_base, (U32)rxch->active_head, 0);

 

  EMACTxEnable(hdkif->emac_base);

  EMACRxEnable(hdkif->emac_base);

 

  EMACMIIEnable(hdkif->emac_base);

 

 

  /**

  * Enable the Transmission and reception, enable the interrupts for

  * channel 0 and for control core 0

  */

  EMACTxIntPulseEnable(hdkif->emac_base, hdkif->emac_ctrl_base, 0, 0);

  EMACRxIntPulseEnable(hdkif->emac_base, hdkif->emac_ctrl_base, 0, 0);

 

代码没有全部贴出来,这些都是调用EMAC接口的部分。这样配置有没有什么问题?

 

期望能帮忙解答,谢谢

Nancy Wang:

建议您去英文hercules论坛咨询。
e2e.ti.com/…/312

赞(0)
未经允许不得转载:TI中文支持网 » TMS570 TCPIP组播帧接收不到
分享到: 更多 (0)