1. 30 Apr, 2020 36 commits
  2. 29 Apr, 2020 4 commits
    • David S. Miller's avatar
      Merge branch 'net-bcmgenet-add-support-for-Wake-on-Filter' · 9e9f6e72
      David S. Miller authored
      Doug Berger says:
      
      ====================
      net: bcmgenet: add support for Wake on Filter
      
      Changes in v2:
      	Corrected Signed-off-by for commit 3/7.
      
      This commit set adds support for waking from 'standby' using a
      Rx Network Flow Classification filter specified with ethtool.
      
      The first two commits are bug fixes that should be applied to the
      stable branches, but are included in this patch set to reduce merge
      conflicts that might occur if not applied before the other commits
      in this set.
      
      The next commit consolidates WoL clock managment as a part of the
      overall WoL configuration.
      
      The next commit restores a set of functions that were removed from
      the driver just prior to the 4.9 kernel release.
      
      The following commit relocates the functions in the file to prevent
      the need for additional forward declarations.
      
      Next, support for the Rx Network Flow Classification interface of
      ethtool is added.
      
      Finally, support for the WAKE_FILTER wol method is added.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      9e9f6e72
    • Doug Berger's avatar
      net: bcmgenet: add WAKE_FILTER support · f50932cc
      Doug Berger authored
      This commit enables support for the WAKE_FILTER method of Wake on
      LAN for the GENET driver. The method can be enabled by adding 'f'
      to the interface 'wol' setting specified by ethtool.
      
      Rx network flow rules can be specified using ethtool. Rules that
      define a flow-type with the RX_CLS_FLOW_WAKE action (i.e. -2) can
      wake the system from the 'standby' power state when the WAKE_FILTER
      WoL method is enabled.
      Signed-off-by: default avatarDoug Berger <opendmb@gmail.com>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f50932cc
    • Doug Berger's avatar
      net: bcmgenet: add support for ethtool rxnfc flows · 3e370952
      Doug Berger authored
      This commit enables driver support for ethtool commands of this form:
      ethtool -N|-U|--config-nfc|--config-ntuple devname
          flow-type ether|ip4
          [src xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]]
          [dst xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]] [proto N [m N]]
          [src-ip x.x.x.x [m x.x.x.x]] [dst-ip x.x.x.x [m x.x.x.x]] [tos N [m N]]
          [l4proto N [m N]] [src-port N [m N]] [dst-port N [m N]] [spi N [m N]]
          [l4data N [m N]] [vlan-etype N [m N]] [vlan N [m N]]
          [dst-mac xx:yy:zz:aa:bb:cc [m xx:yy:zz:aa:bb:cc]] [action 0] [loc N] |
          delete N
      
      Since there is only one Rx Ring in this implementation action 0 behaves no
      differently from not specifying a rule.
      
      The rules can be seen with ethtool commands of this form:
      ethtool -n|-u|--show-nfc|--show-ntuple devname [rule N]
      Signed-off-by: default avatarDoug Berger <opendmb@gmail.com>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      3e370952
    • Doug Berger's avatar
      net: bcmgenet: code movement · 854295d0
      Doug Berger authored
      The Hardware Filter Block code will be used by ethtool functions
      when defining flow types so this commit moves the functions in the
      file to prevent the need for prototype declarations.
      
      This is broken out to facilitate review.
      Signed-off-by: default avatarDoug Berger <opendmb@gmail.com>
      Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      854295d0