UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 65592

2015.3 lwIP designs for ZC702 and ZC706 do not respond to packets sent from Iperf client

Description

My lwIP design does compile but does not respond to packets sent from the Iperf client to Zynq (server).

Solution

Certain barriers required for emacps in lwIP were missing as a result of which lwIP Iperf will not work.

The following file needs to be updated in the Xilinx installation folder:

\SDK\2015.3\data\embeddedsw\ThirdParty\sw_services\lwip141_v1_2\src\contrib\ports\xilinx\netif\xemacpsif_dma.c

The modification is below:

 @@ -286,6 +286,10 @@ XStatus emacps_sgsend(xemacpsif_s *xemacpsif, struct pbuf *p)
286 286     txbd = XEmacPs_BdRingNext(txring, txbd); 
287 287    } 
288 288    XEmacPs_BdClearTxUsed(temp_txbd); 
        289  +#if defined (ARMR5) || defined (ARMA53) 
        290  +#else 
        291  +   dsb(); 
        292  +#endif 
289 293    
290 294    status = XEmacPs_BdRingToHw(txring, n_pbufs, txbdset); 
291 295    if (status != XST_SUCCESS) { 

 @@ -358,6 +362,10 @@ void setup_rx_bds(xemacpsif_s *xemacpsif, XEmacPs_BdRing *rxring)
358 362     } 
359 363     temp++; 
360 364     *temp = 0; 
       365  +#if defined (ARMR5) || defined (ARMA53) 
       366  +#else 
       367  +   dsb();  
       368  +#endif 
361 369    
362 370     XEmacPs_BdSetAddressRx(rxbd, (UINTPTR)p->payload); 
363 371     rx_pbufs_storage[index + bdindex] = (s32_t)p;

 

A modified version of the file is attached to this Answer Record.

This issue will be resolved in the 2015.4 release.

Attachments

Associated Attachments

Name File Size File Type
xemacpsif_dma.c 23 KB C
AR# 65592
Date Created 10/07/2015
Last Updated 11/30/2015
Status Active
Type Known Issues
Devices
  • Zynq-7000
Tools
  • Vivado Design Suite - 2015.3