Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Jun 2009 05:46:33 +0000 (UTC)
From:      Pyun YongHyeon <yongari@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/dev/msk if_msk.c if_mskreg.h
Message-ID:  <200906180546.n5I5kgLF057437@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
yongari     2009-06-18 05:46:33 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_7)
    sys/dev/msk          if_msk.c if_mskreg.h 
  Log:
  SVN rev 194422 on 2009-06-18 05:46:33Z by yongari
  
  MFC r193293-193294:
  r193293:
    Add preliminary Yukon Extreme support and register definitions.
    Yukon Extreme uses new descriptor format for TSO and has Tx frame
    parser which greatly reduces CPU cycles spent in computing TCP/UDP
    payload offset calculation in Tx checksum offloading path. The new
    descriptor format also removed TCP/UDP payload computation for TSO
    which in turn results in better TSO performance. It seems Yukon
    Extreme has a lot of new (unknown) features but only basic
    offloading is supported at this time. So far there are two known
    issues.
     o Sometimes Rx overrun errors happen when pulling data over
       gigabit link. Running over 100Mbps seem to ok.
     o Ethernet hardware address shows all-zeroed value on 88E8070.
       Assigning ethernet address with ifconfig is necessary to make it
       work.
    Support for Yukon Extreme is not perfect but it would be better
    than having a non-working device. Special thanks to jbh who fixed
    several bugs of initial patch.
  
    Tested by:    jhb, Warren Block ( wblock <> wonkity dot com )
  
  r193294:
    Add frame parser capability of Yukon FE+ and Yukon Extreme. With
    this feature hardware automatically computes TCP/UDP payload
    offset. Introduce MSK_FLAG_AUTOTX_CSUM to mark the capability.
    Yukon Extreme B0 revision is known to have a silicon for the
    feature so disable it. Yukon Extreme B0 still can do Tx checksum
    offloading but CPU have to compute TCP/UDP payload offset. To
    enable traditional checksum offloading, disable automatic Tx
    checksum calculation capability.
    Yukon Extreme A0 revision could not use store-and-forward mode for
    jumbo frames(silicon bug) so disable Tx checksum offloading for
    jumbo frames.
  
    I believe controllers that have MSK_FLAG_AUTOTX_CSUM capability or
    new descriptor format do not have Tx checksum offload bug so
    disable checksum offloading workaround for for short frames.
    Tested by:    jhb, Warren Block ( wblock <> wonkity dot com )
  
  Revision   Changes    Path
  1.18.2.24  +132 -37   src/sys/dev/msk/if_msk.c
  1.6.2.14   +112 -9    src/sys/dev/msk/if_mskreg.h



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906180546.n5I5kgLF057437>