cvs commit: src/sys/dev/vr if_vr.c if_vrreg.h

Pyun YongHyeon yongari at FreeBSD.org
Wed Jul 23 08:18:48 UTC 2008


yongari     2008-07-23 08:18:42 UTC

  FreeBSD src repository

  Modified files:        (Branch: RELENG_7)
    sys/dev/vr           if_vr.c if_vrreg.h 
  Log:
  SVN rev 180737 on 2008-07-23 08:18:42Z by yongari
  
  MFC r180552.
    Fix a multicast handling regression on VT6105M introduced in
    vr(4) overhauling(r177050).
  
    It seems that filtering multicast addresses with multicast CAM
    entries require accessing 'CAM enable bit' for each CAM entry.
    Subsequent accessing multicast CAM control register without
    toggling the 'CAM enable bit' seem to no effects.
    In order to fix that separate CAM setup from CAM mask configuration
    and CAM entry modification. While I'm here add VLAN CAM filtering
    feature which will be enabled in future(FreeBSD now can receive
    VLAN id insertion/removal event from vlan(4) on the fly).
  
    For VT6105M hardware, explicitly disable VLAN hardware tag
    insertion/stripping and enable VLAN CAM filtering for VLAN id 0.
    This shall make non-VLAN frames set VR_RXSTAT_VIDHIT bit in Rx
    status word.
  
    Added multicast/VLAN CAM address definition to header file.
  
    PR:   kern/125010, kern/125024
  
  Revision   Changes    Path
  1.130.2.3  +48 -25    src/sys/dev/vr/if_vr.c
  1.36.2.3   +12 -0     src/sys/dev/vr/if_vrreg.h


More information about the cvs-src mailing list