summaryrefslogtreecommitdiffstats
path: root/sys/isa/sio.c
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>2000-01-12 22:24:05 +0000
committerwpaul <wpaul@FreeBSD.org>2000-01-12 22:24:05 +0000
commit63989277ed024ba8b198a1947c05480dce176be8 (patch)
tree93868a6b47ec79bea8a06e01ac932f75ed9d4785 /sys/isa/sio.c
parent1e3f91cfff7a8c5321271c132f7e4f705cb23bf3 (diff)
downloadFreeBSD-src-63989277ed024ba8b198a1947c05480dce176be8.zip
FreeBSD-src-63989277ed024ba8b198a1947c05480dce176be8.tar.gz
Reintroduce the dc_coal() workaround routine for coalescing outbound
packets into a single buffer, and set the DC_TX_COALESCE flag for the Davicom DM9102 chip. I thought I had escaped this problem, but... This chip appears to silently corrupt or discard transmitted frames when using scatter/gather DMA (i.e. DMAing each packet fragment in place with a separate descriptor). The only way to insure reliable transmission is to coalesce transmitted packets into a single cluster buffer. (There may also be an alignment constraint here, but mbuf cluster buffers are naturally aligned on 2K boundaries, which seems to be good enough.) The DM9102 driver for Linux written by Davicom also uses this workaround. Unfortunately, the Davicom datasheet has no errata section describing this or any other apparently known defect. Problem noted by: allan_chou@davicom.com.tw
Diffstat (limited to 'sys/isa/sio.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud