How to download the mtd block via TFTP?

Franz Leu franz.leu at norfolk.ch
Mon Dec 7 07:48:47 UTC 2015


FWIW: I had issues with TFTP timeout's as well while downloading . I
found that the length error is not handled correctly and I got timeouts
(T) even when the data was perfect. May not be the perfect solution or
the correct place to fix it for good, but it fixed my problem. I'm
downloading binary files up to more than 30MB without any issues now.

 

---
C:/Users/FranzLeu/AppData/Local/Temp/lipp_6300eth.c-rev75.svn000.tmp.c
Mo 14. Apr 14:09:20 2014

+++
C:/Users/FranzLeu/AppData/Local/Temp/lipp_6300eth.c-rev76.svn000.tmp.c
Mo 14. Apr 14:49:43 2014

@@ -328,9 +328,11 @@

         }

         /* If length Error bit is set */

-        if(pPriv->p_rx_descr[pPriv->rx_consume_index].RDES0 &
RXDESC_RDES0_LEN_ERR_VAL )

+        /* Check if the actual length of the frame received and that
the Length/Type field does not match*/

+        if((pPriv->p_rx_descr[pPriv->rx_consume_index].RDES0 &
RXDESC_RDES0_LEN_ERR_VAL) &&

+            (!(pPriv->p_rx_descr[pPriv->rx_consume_index].RDES0 &
RXDESC_RDES0_FRM_TYP_VAL)))

         {

-            GMAC_DBG("\nhandle_receive_packets: Length Errors");

+            GMAC_DBG("\nhandle_receive_packets: IEEE Length Error");

             goto _err_drop_packet ;

         }

@@ -436,7 +438,7 @@

//                          GMAC_DBG("Current Rx DMA desc
:%08x\n",*(UInt32*)(GMAC_UNIT_BASE(0)+0x104C));

                                /* Set back the own bit for this
descriptor, use the same buffer */

- //       pPriv->p_rx_descr[pPriv->rx_consume_index].RDES0 =
RXDESC_RDES0_OWN_VAL;

+        pPriv->p_rx_descr[pPriv->rx_consume_index].RDES0 =
RXDESC_RDES0_OWN_VAL;

 #if ENABLE_CACHE

         /* After setting & upating the buffer, flush cache */

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/busybox/attachments/20151207/0792c94a/attachment.html>


More information about the busybox mailing list