tx_q->tx_count_frames = 0;
                stmmac_set_tx_ic(priv, desc);
                priv->xstats.tx_set_ic_bit++;
-       } else {
-               stmmac_tx_timer_arm(priv, queue);
        }
 
        /* We've used all descriptors we need for this skb, however,
 
        tx_q->tx_tail_addr = tx_q->dma_tx_phy + (tx_q->cur_tx * sizeof(*desc));
        stmmac_set_tx_tail_ptr(priv, priv->ioaddr, tx_q->tx_tail_addr, queue);
+       stmmac_tx_timer_arm(priv, queue);
 
        return NETDEV_TX_OK;
 
                tx_q->tx_count_frames = 0;
                stmmac_set_tx_ic(priv, desc);
                priv->xstats.tx_set_ic_bit++;
-       } else {
-               stmmac_tx_timer_arm(priv, queue);
        }
 
        /* We've used all descriptors we need for this skb, however,
 
        tx_q->tx_tail_addr = tx_q->dma_tx_phy + (tx_q->cur_tx * sizeof(*desc));
        stmmac_set_tx_tail_ptr(priv, priv->ioaddr, tx_q->tx_tail_addr, queue);
+       stmmac_tx_timer_arm(priv, queue);
 
        return NETDEV_TX_OK;