diff options
author | Daniel Hellstrom <daniel@gaisler.com> | 2019-04-05 15:19:16 +0200 |
---|---|---|
committer | Daniel Hellstrom <daniel@gaisler.com> | 2019-04-05 15:19:16 +0200 |
commit | baa0bea1689522822523d5f59a0f453231b7c9fc (patch) | |
tree | d174b022f5845d0b590db4c2acc82a8733d15cdf | |
parent | 313a7000f1c9eaa5365708948054c1e2ea224296 (diff) |
leon, greth: 10/100 MAC enable TX BD interrupt
Missed to enable interrupt per TX descriptor. Could lead to TX buffer
starvation.
-rw-r--r-- | c/src/lib/libbsp/sparc/shared/net/greth.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/net/greth.c b/c/src/lib/libbsp/sparc/shared/net/greth.c index 71562a1bc1..3bdd40ce18 100644 --- a/c/src/lib/libbsp/sparc/shared/net/greth.c +++ b/c/src/lib/libbsp/sparc/shared/net/greth.c @@ -824,10 +824,12 @@ sendpacket (struct ifnet *ifp, struct mbuf *m) if (len <= GRETH_MAXBUF_LEN) { if (dp->tx_ptr < dp->txbufs-1) { - dp->txdesc[dp->tx_ptr].ctrl = GRETH_TXD_ENABLE | len; + dp->txdesc[dp->tx_ptr].ctrl = GRETH_TXD_IRQ | + GRETH_TXD_ENABLE | len; } else { - dp->txdesc[dp->tx_ptr].ctrl = - GRETH_TXD_WRAP | GRETH_TXD_ENABLE | len; + dp->txdesc[dp->tx_ptr].ctrl = GRETH_TXD_IRQ | + GRETH_TXD_WRAP | + GRETH_TXD_ENABLE | len; } dp->tx_ptr = (dp->tx_ptr + 1) % dp->txbufs; rtems_interrupt_disable(level); |