Ejemplo n.º 1
0
void enet_mac_tx_isr(void *enetIfPtr) {
  struct k64f_enetdata *k64f_enet = &k64f_enetdata;

  /*Clear interrupt*/
  enet_hal_clear_interrupt(((enet_dev_if_t *)enetIfPtr)->deviceNumber, kEnetTxFrameInterrupt);
  k64f_tx_reclaim(k64f_enet);
}
Ejemplo n.º 2
0
/** \brief  Transmit cleanup task
 *
 * This task is called when a transmit interrupt occurs and
 * reclaims the pbuf and descriptor used for the packet once
 * the packet has been transferred.
 *
 *  \param[in] pvParameters pointer to the interface data
 */
static void packet_tx(void* pvParameters) {
  struct k64f_enetdata *k64f_enet = pvParameters;

  while (1) {
    /* Wait for transmit cleanup task to wakeup */
    sys_arch_sem_wait(&k64f_enet->TxCleanSem, 0);
    k64f_tx_reclaim(k64f_enet);
  }
}