cvs commit: src/sys/dev/bge if_bge.c

From: Pyun YongHyeon <yongari_at_FreeBSD.org>
Date: Thu, 22 Dec 2005 01:44:27 +0000 (UTC)
yongari     2005-12-22 01:44:27 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/bge          if_bge.c 
  Log:
  Add bge(4) support for big-endian architectures(part 2/2).
   - removed unused funtion bge_handle_events().
   - removed bus_dmamap_destroy(9) calls for DMA maps created by
     bus_dmamem_alloc(9). This should fix panics seen on sparc64
     in device detach.
   - added check for parent DMA tag creation.
   - switched to use __NO_STRICT_ALIGNMENT as bge(4) supports all
     architectures.
   - added missing bus_dmamap_sync(9) in bge_txeof().
   - added missing bus_dmamap_sync(9) in bge_encap().
   - corrected memory synchronization operation on status block.
     As the driver just read status block that was DMAed by NIC it
     should use BUS_DMASYNC_POSTREAD. Likewise the driver does not
     need to write status block back, so remove unnecessary
     bus_dmamap_sync(9) calls in bge_intr().
   - corrected memory synchronization operation on RX return ring.
     The driver only read the block so remove unnecessary
     bus_dmamap_sync(9) in bge_rxeof().
   - force bus_dmamap_sync(9) for only modified descriptors. Blindly
     synching all desciptor rings would reduce performance.
   - call bus_dmamap_sync(9) for DMA maps that were modified in bge_rxeof().
  
  Reviewed by:    jkim(initial version)
  Tested by:      glebius(i386), jkim(amd64 initial version)
  
  Revision  Changes    Path
  1.109     +75 -92    src/sys/dev/bge/if_bge.c
Received on Thu Dec 22 2005 - 01:44:27 UTC