1. 06 12月, 2016 1 次提交
  2. 04 12月, 2016 9 次提交
  3. 29 11月, 2016 3 次提交
  4. 25 11月, 2016 3 次提交
  5. 22 11月, 2016 11 次提交
  6. 21 11月, 2016 6 次提交
  7. 19 11月, 2016 1 次提交
  8. 17 11月, 2016 2 次提交
    • F
      net: dsa: b53: Fix VLAN usage and how we treat CPU port · e47112d9
      Florian Fainelli 提交于
      We currently have a fundamental problem in how we treat the CPU port and
      its VLAN membership. As soon as a second VLAN is configured to be
      untagged, the CPU automatically becomes untagged for that VLAN as well,
      and yet, we don't gracefully make sure that the CPU becomes tagged in
      the other VLANs it could be a member of. This results in only one VLAN
      being effectively usable from the CPU's perspective.
      
      Instead of having some pretty complex logic which tries to maintain the
      CPU port's default VLAN and its untagged properties, just do something
      very simple which consists in neither altering the CPU port's PVID
      settings, nor its untagged settings:
      
      - whenever a VLAN is added, the CPU is automatically a member of this
        VLAN group, as a tagged member
      - PVID settings for downstream ports do not alter the CPU port's PVID
        since it now is part of all VLANs in the system
      
      This means that a typical example where e.g: LAN ports are in VLAN1, and
      WAN port is in VLAN2, now require having two VLAN interfaces for the
      host to properly terminate and send traffic from/to.
      
      Fixes: Fixes: a2482d2c ("net: dsa: b53: Plug in VLAN support")
      Reported-by: NHartmut Knaack <knaack.h@gmx.de>
      Signed-off-by: NFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e47112d9
    • A
      net: dsa: mv88e6xxx: Respect SPEED_UNFORCED, don't set force bit · 0b6e3d03
      Andrew Lunn 提交于
      The SPEED_UNFORCED indicates the MAC & PHY should perform
      auto-negotiation to determine a speed which works. If this is called
      for, don't set the force bit. If it is set, the MAC actually does
      10Gbps, why the internal PHYs don't support.
      Signed-off-by: NAndrew Lunn <andrew@lunn.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0b6e3d03
  9. 14 11月, 2016 2 次提交
  10. 05 11月, 2016 2 次提交
    • V
      net: dsa: mv88e6xxx: setup port's MAC · d78343d2
      Vivien Didelot 提交于
      Now that we have setters to configure the port's MAC, use them to
      refactor the port setup and adjust_link code.
      
      Note that port's MAC speed, duplex or RGMII delay must not be changed
      unless the port's link is forced down. So wrap all that in a
      mv88e6xxx_port_setup_mac function.
      Signed-off-by: NVivien Didelot <vivien.didelot@savoirfairelinux.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d78343d2
    • V
      net: dsa: mv88e6xxx: add port's MAC speed setter · 96a2b40c
      Vivien Didelot 提交于
      While the two bits for link, duplex or RGMII delays are used the same
      way on chips supporting the said feature, the two bits for speed have
      different meaning for most of the chips out there.
      
      Speed value is stored in bits 1:0, 0x3 means unforce (normal detection).
      
      Some chips reuse values for alternative speeds when bit 12 is set.
      
      Newer chips with speed > 1Gbps reuse value 0x3 thus need a new bit 13.
      
      Here are the values to write in register 0x1 to (un)force speed:
      
          | Speed   | 88E6065 | 88E6185 | 88E6352 | 88E6390 | 88E6390X |
          | ------- | ------- | ------- | ------- | ------- | -------- |
          | 10      | 0x0000  | 0x0000  | 0x0000  | 0x2000  | 0x2000   |
          | 100     | 0x0001  | 0x0001  | 0x0001  | 0x2001  | 0x2001   |
          | 200     | 0x0002  | NA      | 0x1001  | 0x3001  | 0x3001   |
          | 1000    | NA      | 0x0002  | 0x0002  | 0x2002  | 0x2002   |
          | 2500    | NA      | NA      | NA      | 0x3003  | 0x3003   |
          | 10000   | NA      | NA      | NA      | NA      | 0x2003   |
          | unforce | 0x0003  | 0x0003  | 0x0003  | 0x0000  | 0x0000   |
      
      This patch implements a generic mv88e6xxx_port_set_speed() function used
      by chip-specific wrappers to filter supported ports and speeds.
      Signed-off-by: NVivien Didelot <vivien.didelot@savoirfairelinux.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      96a2b40c