Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Oct 2010 20:37:13 +0000 (UTC)
From:      Pyun YongHyeon <yongari@FreeBSD.org>
To:        cvs-src-old@freebsd.org
Subject:   cvs commit: src/sys/dev/sis if_sis.c if_sisreg.h
Message-ID:  <201010082037.o98KbM2t017875@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
yongari     2010-10-08 20:37:13 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_7)
    sys/dev/sis          if_sis.c if_sisreg.h 
  Log:
  SVN rev 213618 on 2010-10-08 20:37:13Z by yongari
  
  MFC r212116:
    Overhaul link state change handling. Previously sis(4) blindly
    configured TX/RX MACs before getting a valid link. After that, when
    link state change callback is called, it called device
    initialization again to reconfigure TX/RX MACs depending on
    resolved link state. This hack created several bad side effects and
    it required more hacks to not collide with sis_tick callback as
    well as disabling switching to currently selected media in device
    initialization. Also it seems sis(4) was used to be a template
    driver for long time so other drivers which was modeled after
    sis(4) also should be changed.
  
    TX/RX MACs are now reconfigured after getting a valid link. Fix for
    short cable error is also applied after getting a link because it's
    only valid when the resolved speed is 100Mbps.
  
    While I'm here slightly reorganize interrupt handler such that
    sis(4) always read SIS_ISR register to see whether the interrupt is
    ours or not. This change removes another hack and make it possible
    to nuke sis_stopped variable in softc.
  
  Revision  Changes    Path
  1.7.2.9   +100 -86   src/sys/dev/sis/if_sis.c
  1.2.2.6   +0 -2      src/sys/dev/sis/if_sisreg.h



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