my version

Fork of lwip-eth by mbed official

Files at this revision

API Documentation at this revision

Comitter:
mbed_official
Date:
Wed Jul 30 16:15:16 2014 +0100
Parent:
15:82aaaa2f4d5c
Child:
17:eb2c8c3aa1cd
Commit message:
Synchronized with git revision 48daa3c4a5e54de413ad58e5bc64d67074cf9f97

Full URL: https://github.com/mbedmicro/mbed/commit/48daa3c4a5e54de413ad58e5bc64d67074cf9f97/

Changed in this revision

arch/TARGET_K64F/k64f_emac.c Show annotated file Show diff for this revision Revisions of this file
--- a/arch/TARGET_K64F/k64f_emac.c	Wed Jun 11 09:30:25 2014 +0100
+++ b/arch/TARGET_K64F/k64f_emac.c	Wed Jul 30 16:15:16 2014 +0100
@@ -271,8 +271,7 @@
 
   // Traverse all descriptors, looking for the ones modified by the uDMA
   i = k64f_enet->tx_consume_index;
-  while(i != k64f_enet->tx_produce_index) {
-    if (bdPtr[i].controlExtend2 & TX_DESC_UPDATED_MASK) { // descriptor updated by uDMA
+  while(i != k64f_enet->tx_produce_index && !(bdPtr[i].control & kEnetTxBdReady)) {
       if (k64f_enet->txb_aligned[i]) {
         free(k64f_enet->txb_aligned[i]);
         k64f_enet->txb_aligned[i] = NULL;
@@ -282,8 +281,7 @@
       }
       osSemaphoreRelease(k64f_enet->xTXDCountSem.id);
       bdPtr[i].controlExtend2 &= ~TX_DESC_UPDATED_MASK;
-    }
-    i = (i + 1) % ENET_TX_RING_LEN;
+      i = (i + 1) % ENET_TX_RING_LEN;
   }
   k64f_enet->tx_consume_index = i;