1. 17 Feb, 2019 32 commits
  2. 16 Feb, 2019 8 commits
    • David S. Miller's avatar
      Merge tag 'mlx5-updates-2019-02-15' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux · f2281c24
      David S. Miller authored
      Saeed Mahameed says:
      
      ====================
      Support Mellanox BlueField SmartNIC (mlx5-updates-2019-02-15)
      
      Bodong Wang says,
      
      BlueField device is a multi-core ARM processor in a highly integrated
      system on chip coupled with the ConnectX interconnect controller.
      BlueField device can be presented in one out of two modes:
      
      - SEPARATED_HOST: ARM processors as a separated and orthogonal host
        like any other external host in the multi-host virtualization model.
      - EMBEDDED_CPU: ARM processors as Embedded CPU (EC) and part of the
        external hosts virtualization model.
      
      While existing driver already supports the device on separated_host
      mode, this patch series focus on the functionalities of embedded_cpu
      mode.
      
      On embedded_cpu mode, BlueField device exposes regular network
      controller PCI function in the BlueField host(e.g, x86). However, a
      separate PCI function called Embedded CPU Physical Function(ECPF) is
      also added to the ARM host side, where standard Linux distributions is
      able to run on the ARM cores. Depends on the NV configuration from
      firmware, ECPF can be the e-switch manager and firmware pages supplier.
      If ECPF is configured as e-switch manager and page supplier, it will
      take over the responsibilities from the PF on BlueField host includes:
      - Owns, controls and manages all e-switch parts, and takes e-switch
        traffic by default. It also should perform ENABLE_HCA for the host
        PF just like a PF does for its VFs.
      - Provides and manages the ICM host memory required for the HCA to
        store various contexts for itself, the PF and VFs belong the
        e-switch it manages.
      
      The PF on BlueField host side is still responsible for:
      - Control its own permanent MAC.
      - PCI and SRIOV configurations and perform ENABLE_HCA for its VFs.
      
      The ECPF can also retrieve information about the external host it
      controls, like host identifier, PCI BDF and number of virtual functions.
      As these parameters may be changed dynamically, an event will be triggered
      to the driver on ECPF side.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f2281c24
    • David S. Miller's avatar
      Merge branch 's390-next' · bb015f22
      David S. Miller authored
      Julian Wiedmann says:
      
      ====================
      s390/qeth: updates 2019-02-15
      
      please apply a few more qeth patches to net-next. Along with some smaller
      improvements, this revamps our code for the SW statistics that are exposed
      through ETHTOOL_GSTATS.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bb015f22
    • Julian Wiedmann's avatar
      s390/qeth: split out OSN netdev ops · 8024cc9e
      Julian Wiedmann authored
      Rather than special-casing OSN in a number of places, just give this
      device type its own netdev_ops structure.
      
      When setting up the OSN net_device, also skip the handling of the
      various HW offloads (eg TSO). The device shouldn't be advertising any of
      them, and the OSN code paths in qeth don't have support for them.
      In particular RX VLAN filtering is not supported, so don't hook up those
      callbacks in the netdev_ops.
      Signed-off-by: default avatarJulian Wiedmann <jwi@linux.ibm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8024cc9e
    • Julian Wiedmann's avatar
      s390/qeth: add support for ETHTOOL_GRINGPARAM · 1b4d5e1c
      Julian Wiedmann authored
      Implement a trivial callback that exposes the queue sizes.
      Signed-off-by: default avatarJulian Wiedmann <jwi@linux.ibm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1b4d5e1c
    • Julian Wiedmann's avatar
      s390/qeth: overhaul ethtool statistics · b0abc4f5
      Julian Wiedmann authored
      Accumulate per-TX queue statistics, and increase their size to 64 bit.
      Don't bother with enabling/disabling the statistics, the overhead is
      negligible.
      Signed-off-by: default avatarJulian Wiedmann <jwi@linux.ibm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      b0abc4f5
    • Julian Wiedmann's avatar
      s390/qeth: move ethtool code into its own file · d896ac62
      Julian Wiedmann authored
      Most of this is self-contained code.
      Signed-off-by: default avatarJulian Wiedmann <jwi@linux.ibm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d896ac62
    • Julian Wiedmann's avatar
      s390/qeth: reduce ethtool statistics · 4326b5b4
      Julian Wiedmann authored
      Counting the number of function calls and the time spent in functions
      is best left to proper tracing facilities.
      Signed-off-by: default avatarJulian Wiedmann <jwi@linux.ibm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4326b5b4
    • Julian Wiedmann's avatar
      s390/qeth: use a static Output Queue array · bb92d3f8
      Julian Wiedmann authored
      qeth dynamically allocates an array for storing pointers to its
      Output Queue structures. Switch this to a static array - we are
      currently limited to 4 Output Queues, so shrinking the qeth_qdio_info
      struct by just a few bytes doesn't justify the additional complexity.
      Signed-off-by: default avatarJulian Wiedmann <jwi@linux.ibm.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      bb92d3f8