1. 24 12月, 2015 1 次提交
    • A
      dsa: mv88e6xxx: Add Second back of statistics · f5e2ed02
      Andrew Lunn 提交于
      The 6320 family of switch chips has a second bank for statistics, but
      is missing three statistics in the port registers. Generalise and
      extend the code:
      
      * adding a field to the statistics table indicating the bank/register
        set where each statistics is.
      * add a function indicating if an individual statistics
        is available on this device
      * calculate at run time the sset_count.
      * return strings based on the available statistics of the device
      * return statistics based on the available statistics of the device
      * Add support for reading from the second bank.
      Signed-off-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f5e2ed02
  2. 06 11月, 2015 1 次提交
  3. 04 11月, 2015 1 次提交
  4. 03 11月, 2015 1 次提交
  5. 02 11月, 2015 1 次提交
  6. 23 10月, 2015 1 次提交
  7. 22 10月, 2015 2 次提交
  8. 13 10月, 2015 3 次提交
    • V
      net: dsa: mv88e6xxx: fix hardware bridging · 5fe7f680
      Vivien Didelot 提交于
      Playing with the VLAN map of every port to implement "hardware bridging"
      in the 88E6352 driver was a hack until full 802.1Q was supported.
      
      Indeed with 802.1Q port mode "Disabled" or "Fallback", this feature is
      used to restrict which output ports an input port can egress frames to.
      
      A Linux bridge is an untagged VLAN. With full 802.1Q support, we don't
      need this hack anymore and can use the "Secure" strict 802.1Q port mode.
      
      With this mode, the port-based VLAN map still needs to be configured,
      but all the logic is VTU-centric. This means that the switch only cares
      about rules described in its hardware VLAN table, which is exactly what
      Linux bridge expects and what we want.
      
      Note also that the hardware bridging was broken with the previous
      flexible "Fallback" 802.1Q port mode. Here's an example:
      
      Port0 and Port1 belong to the same bridge. If Port0 sends crafted tagged
      frames with VID 200 to Port1, Port1 receives it. Even if Port1 is in
      hardware VLAN 200, but not Port0, Port1 will still receive it, because
      Fallback mode doesn't care about invalid VID or non-member source port.
      Signed-off-by: NVivien Didelot <vivien.didelot@savoirfairelinux.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5fe7f680
    • V
      net: dsa: mv88e6xxx: do not support per-port FID · f02bdffc
      Vivien Didelot 提交于
      Since we configure a switch chip through a Linux bridge, and a bridge is
      implemented as a VLAN, there is no need for per-port FID anymore.
      
      This patch gets rid of this and simplifies the driver code since we can
      now directly map all 4095 FIDs available to all VLANs.
      Signed-off-by: NVivien Didelot <vivien.didelot@savoirfairelinux.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f02bdffc
    • V
      net: dsa: mv88e6xxx: bridges do not need an FID · ede8098d
      Vivien Didelot 提交于
      With 88E6352 and similar switch chips, each port has a map to restrict
      which output port this input port can egress frames to.
      
      The current driver code implements hardware bridging using this feature,
      and assigns to a bridge group the FID of its first member.
      
      Now that 802.1Q is fully implemented in this driver, a Linux bridge
      which is a simple untagged VLAN, already gets its own FID.
      
      This patch gets rid of the per-bridge FID and explicits the usage of the
      port based VLAN map feature.
      Signed-off-by: NVivien Didelot <vivien.didelot@savoirfairelinux.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ede8098d
  9. 11 10月, 2015 3 次提交
  10. 07 10月, 2015 1 次提交
  11. 16 9月, 2015 1 次提交
    • V
      net: dsa: mv88e6xxx: rework ATU Flush operation · 7fb5e755
      Vivien Didelot 提交于
      These Marvell switches have 4 operations to flush or (re)move, all or
      only non-static MAC addresses, from the entire set of databases or from
      just a particular one.
      
      The value of the EntryState bits will determine if the operation is
      either a Flush (0x0) or a Move (0xF).
      
      When moving entries from one port to another, entries will be removed if
      the destination port is 0xF.
      
      This patch renames these operations for consistency, add a new generic
      _mv88e6xxx_atu_flush_move function, and change _mv88e6xxx_flush_fid to
      use it.
      Signed-off-by: NVivien Didelot <vivien.didelot@savoirfairelinux.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7fb5e755
  12. 01 9月, 2015 2 次提交
  13. 14 8月, 2015 5 次提交
  14. 12 8月, 2015 5 次提交
  15. 11 8月, 2015 1 次提交
  16. 10 8月, 2015 3 次提交
  17. 27 7月, 2015 1 次提交
  18. 10 7月, 2015 1 次提交
  19. 23 6月, 2015 5 次提交
  20. 10 5月, 2015 1 次提交