Deleted Added
full compact
38c38
< * $FreeBSD: head/sys/dev/hme/if_hmevar.h 93043 2002-03-23 19:37:11Z tmm $
---
> * $FreeBSD: head/sys/dev/hme/if_hmevar.h 108834 2003-01-06 22:12:57Z tmm $
48,50c48,52
< * TX descriptors have less static cost (a dma map is allocated which could
< * cause bounce buffers to be reserved; other that that, the only required
< * memory is sizeof(struct hme_txdesc)).
---
> * TX descriptors have no static cost, except for the memory directly allocated
> * for them. TX queue elements (the number of which is fixed by HME_NTXQ) hold
> * the software state for a transmit job; each has a dmamap allocated for it.
> * There may be multiple descriptors allocated to a single queue element.
> * HME_NTXQ is completely arbitrary.
53c55,56
< #define HME_NTXDESC 64
---
> #define HME_NTXDESC 128
> #define HME_NTXQ (HME_NTXDESC / 2)
65,66d67
< int hrx_offs;
< bus_size_t hrx_len;
68a70,73
> /* Lazily leave at least one burst size grace space. */
> #define HME_DESC_RXLEN(sc, d) \
> ulmin(HME_BUFSZ, (d)->hrx_m->m_len - (sc)->sc_burst)
>
72c77,78
< int htx_flags;
---
> int htx_lastdesc;
> STAILQ_ENTRY(hme_txdesc) htx_q;
74a81,82
> STAILQ_HEAD(hme_txdq, hme_txdesc);
>
88,90c96,98
< int rb_tdhead, rb_tdtail;
< int rb_rdtail;
< int rb_td_nbusy;
---
> int rb_tdhead, rb_tdtail;
> int rb_rdtail;
> int rb_td_nbusy;
93,94c101,102
< struct hme_rxdesc rb_rxdesc[HME_NRXDESC];
< struct hme_txdesc rb_txdesc[HME_NTXDESC];
---
> struct hme_rxdesc rb_rxdesc[HME_NRXDESC];
> struct hme_txdesc rb_txdesc[HME_NTXQ];
95a104,106
> struct hme_txdq rb_txfreeq;
> struct hme_txdq rb_txbusyq;
>
137,140d147
<
< /* Special hardware hooks */
< void (*sc_hwreset)(struct hme_softc *);
< void (*sc_hwinit)(struct hme_softc *);