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

Pyun YongHyeon yongari at FreeBSD.org
Wed Dec 14 21:48:51 PST 2005


yongari     2005-12-15 05:48:49 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/bge          if_bge.c if_bgereg.h 
  Log:
  Add bge(4) support for big-endian architectures(part 1/2).
   - Give up endianess support and switch to native-endian format for
     accessing hardware structures. In fact embedded processor for
     BCM57xx is big-endian architure(MIPS) and it requires native-endian
     format for NIC structures.The NIC performs necessary byte/word
     swapping depending on programmed endian type.
   - With above changes all htole16/htole32 calls were gone.
   - Remove bge_vhandle member in softc and changed to use explicit
     register access. This may add additional performance penalty
     that than that of previous memory access. But most of the access
     is performed on initialization phase(e.g. RCB setup), it would be
     negligible.
  
  Due to incorrect use of bus_dma(9) in bge(4) it still panics sparc64
  system in device detach path. The issue would be fixed in next patch.
  
  Reviewed by:    jkim (initial version)
  Silence from:   ps
  Tested by:      glebius
  Obtained from:  NetBSD via OpenBSD
  
  Revision  Changes    Path
  1.105     +74 -80    src/sys/dev/bge/if_bge.c
  1.40      +66 -9     src/sys/dev/bge/if_bgereg.h


More information about the cvs-src mailing list