diff options
author | yongari <yongari@FreeBSD.org> | 2005-10-25 03:56:21 +0000 |
---|---|---|
committer | yongari <yongari@FreeBSD.org> | 2005-10-25 03:56:21 +0000 |
commit | a337a58fa75e7757df7c86182611f2cbb3466833 (patch) | |
tree | aa9696ac9b681fd05b2b48261f90cf361ef098a3 /sys/dev/hme/if_hmevar.h | |
parent | bc465e4070b38b1e2ea496664d1e74e49c182fd7 (diff) | |
download | FreeBSD-src-a337a58fa75e7757df7c86182611f2cbb3466833.zip FreeBSD-src-a337a58fa75e7757df7c86182611f2cbb3466833.tar.gz |
- Convert hme(4) to use TX side bus_dmamap_load_mbuf_sg(9).
- Move hardware counter reading/zeroing to hme_tick(). This saves
8 register access per interrupt. [1]
- Use imax macro for getting max. argument between two integers.
- Invoke bus_dmamap_sync(9) first before freeing mbuf.
- Check driver queue first to reduce locking operation in hme_start_locked()
and interrupt handler.
- Simplyfy watchdog timer setup in interrupt handler.
- Don't log normal errors such as RX overrun. If we have DMA stuck
condition, reinitialize the driver and log it.
Reviewed by: marius
Obtained from: OpenBSD [1]
Diffstat (limited to 'sys/dev/hme/if_hmevar.h')
-rw-r--r-- | sys/dev/hme/if_hmevar.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/dev/hme/if_hmevar.h b/sys/dev/hme/if_hmevar.h index 25b0552..a5d50e2 100644 --- a/sys/dev/hme/if_hmevar.h +++ b/sys/dev/hme/if_hmevar.h @@ -100,6 +100,7 @@ struct hme_ring { /* Descriptors */ struct hme_rxdesc rb_rxdesc[HME_NRXDESC]; struct hme_txdesc rb_txdesc[HME_NTXQ]; + bus_dma_segment_t rb_txsegs[HME_NTXQ]; struct hme_txdq rb_txfreeq; struct hme_txdq rb_txbusyq; |