1. 21 Jan, 2018 14 commits
    • Igor Russkikh's avatar
      net: aquantia: Introduce global AQC hardware reset sequence · c8c82eb3
      Igor Russkikh authored
      The detailed reset sequence ensures all HW components are in aligned
      state before NIC startup. It also supports cards with signed firmware (RBL)
      and checks if their FW is valid.
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c8c82eb3
    • Igor Russkikh's avatar
      net: aquantia: Introduce support for new firmware on AQC cards · a57d3929
      Igor Russkikh authored
      This defines fw2x operations table and corresponding methods.
      Some of the functions are being shared with 1.x firmware
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a57d3929
    • Igor Russkikh's avatar
      net: aquantia: Introduce firmware ops callbacks · 0c58c35f
      Igor Russkikh authored
      New AQC cards will have an updated firmware with new binary interface.
      This patch extracts firmware specific operations into a separate table
      and prepares for the introduction of new fw 2.x and 3.x
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      0c58c35f
    • Igor Russkikh's avatar
      net: aquantia: Change confusing no_ff_addr to more meaningful name · 76c19c6c
      Igor Russkikh authored
      The address to check if HW is not dead/hang could be stored in
      capabilities, since it is a constant. Change its name to better reflect
      the idea.
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      76c19c6c
    • Igor Russkikh's avatar
      net: aquantia: Remove create/destroy from hw ops · ef24175d
      Igor Russkikh authored
      These ops are not related to HW and are now implemented in pci module.
      Thus, remove these ops pointers and implementation.
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ef24175d
    • Igor Russkikh's avatar
      net: aquantia: Cleanup pci functions module · 23ee07ad
      Igor Russkikh authored
      Driver contained a dead code of maintaining multiple pci port instances.
      That will never be used since for each pci function a separate NIC
      instance is created.
      Simplify this, making pci module only responsible for pci resource
      management.
      NIC initialization is also simplified accordingly.
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      23ee07ad
    • Igor Russkikh's avatar
      net: aquantia: Convert hw and caps structures to const static pointers · 8fcb98f4
      Igor Russkikh authored
      This removes unnecessary structure copying, and prepares the driver for
      separate firmware ops table introduction.
      
      We also remove extra copy of capabilities structure (which is const actually)
      and also replace it with a const pointer in aq_nic_cfg.
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8fcb98f4
    • Igor Russkikh's avatar
      net: aquantia: Introduce new AQC devices and capabilities · 4948293f
      Igor Russkikh authored
      A number of new AQC devices is going to be released. To support more
      flexible capabilities management a number of static caps instances is now
      declared. Devices now are mainly differs by supported speeds, but in future
      more parameters will be customized. A set of AQC100 devices have
      fibre media, not twisted pair - this is also reflected in
      new capabilities definitions.
      
      HW level also now directly exports hw_ops for each of A0/B0 hardware.
      
      PCI configuration now uses a device configuration table where each
      device ID is explicitly mapped with hardware OPs and capabilities
      structures.
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4948293f
    • Igor Russkikh's avatar
      net: aquantia: Introduce new device ids and constants · efe779b7
      Igor Russkikh authored
      New set of aquantia devices has an upgraded hardware (B1).
      The hardware interface is identical to B0. The difference will
      be in firmware which is incompatible with old one.
      
      Reorganized and removed duplicate speed and devid definitions
      Introduced explicit flow control configuration defines
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      efe779b7
    • David S. Miller's avatar
      Merge tag 'mlx5-updates-2018-01-19' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux · f9b6ae29
      David S. Miller authored
      Saeed Mahameed says:
      
      ====================
      mlx5-updates-2018-01-19
      
      From: Or Gerlitz <ogerlitz@mellanox.com>
      =======
      First six patches of this series further enhances the mlx5 hairpin support.
      The first two patches deal with using different hairpin instances
      for flows whose packets have different priorities to align with the port
      TX QoS model. The next four patches allow us to do HW spreading
      of flows over a set of hairpin pairs using RSS. The last two patches
      change the driver to also set the size of the HW hairpin queues.
      ========
      
      Next four patches from Eran Ben Elisha <eranbe@mellanox.com>:
      Add more debug data for TX timeout handling, and further enhance and optimize
      TX timeout handling upon lost interrupts, which adds a mechanism for explicitly
      polling EQ in case of a TX timeout in order to recover from a lost interrupt.
      If this is not the case (no pending EQEs), perform a channels full recovery as
      usual.
      
      From Kamal Heib <kamalh@mellanox.com>, Two patches to extend the stats group API
      to have an update_stats() callback which will be used to fetch the hardware or
      software counters data, this will improve the current API and reduce code
      duplication.
      
      From Gal Pressman <galp@mellanox.com>, Last patch, Add likely to the common RX checksum
      flow.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f9b6ae29
    • Pieter Jansen van Vuuren's avatar
      nfp: flower: prioritize stats updates · 01c15e93
      Pieter Jansen van Vuuren authored
      Previously it was possible to interrupt processing stats updates because
      they were handled in a work queue. Interrupting the stats updates could
      lead to a situation where we backup the control message queue. This patch
      moves the stats update processing out of the work queue to be processed as
      soon as hardware sends a request.
      Reported-by: default avatarLouis Peens <louis.peens@netronome.com>
      Signed-off-by: default avatarPieter Jansen van Vuuren <pieter.jansenvanvuuren@netronome.com>
      Reviewed-by: default avatarDirk van der Merwe <dirk.vandermerwe@netronome.com>
      Reviewed-by: default avatarJakub Kicinski <jakub.kicinski@netronome.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      01c15e93
    • Linus Walleij's avatar
      net: gemini: Depend on HAS_IOMEM · d83bb0be
      Linus Walleij authored
      The zeroday builder notices that since Usermode Linux does not
      have IO memory, the build fails for them when selecting everything
      it can enable.
      
      As the driver is clearly using memory-mapped registers to access
      the network adapter, we add depends on HAS_IOMEM to solve this
      problem.
      Reported-by: default avatarkbuild test robot <fengguang.wu@intel.com>
      Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d83bb0be
    • David S. Miller's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next · cbcbeedb
      David S. Miller authored
      Pablo Neira Ayuso says:
      
      ====================
      Netfilter/IPVS updates for net-next
      
      The following patchset contains Netfilter/IPVS updates for your net-next
      tree. Basically, a new extension for ip6tables, simplification work of
      nf_tables that saves us 500 LoC, allow raw table registration before
      defragmentation, conversion of the SNMP helper to use the ASN.1 code
      generator, unique 64-bit handle for all nf_tables objects and fixes to
      address fallout from previous nf-next batch.  More specifically, they
      are:
      
      1) Seven patches to remove family abstraction layer (struct nft_af_info)
         in nf_tables, this simplifies our codebase and it saves us 64 bytes per
         net namespace.
      
      2) Add IPv6 segment routing header matching for ip6tables, from Ahmed
         Abdelsalam.
      
      3) Allow to register iptable_raw table before defragmentation, some
         people do not want to waste cycles on defragmenting traffic that is
         going to be dropped, hence add a new module parameter to enable this
         behaviour in iptables and ip6tables. From Subash Abhinov
         Kasiviswanathan. This patch needed a couple of follow up patches to
         get things tidy from Arnd Bergmann.
      
      4) SNMP helper uses the ASN.1 code generator, from Taehee Yoo. Several
         patches for this helper to prepare this change are also part of this
         patch series.
      
      5) Add 64-bit handles to uniquely objects in nf_tables, from Harsha
         Sharma.
      
      6) Remove log message that several netfilter subsystems print at
         boot/load time.
      
      7) Restore x_tables module autoloading, that got broken in a previous
         patch to allow singleton NAT hook callback registration per hook
         spot, from Florian Westphal. Moreover, return EBUSY to report that
         the singleton NAT hook slot is already in instead.
      
      8) Several fixes for the new nf_tables flowtable representation,
         including incorrect error check after nf_tables_flowtable_lookup(),
         missing Kconfig dependencies that lead to build breakage and missing
         initialization of priority and hooknum in flowtable object.
      
      9) Missing NETFILTER_FAMILY_ARP dependency in Kconfig for the clusterip
         target. This is due to recent updates in the core to shrink the hook
         array size and compile it out if no specific family is enabled via
         .config file. Patch from Florian Westphal.
      
      10) Remove duplicated include header files, from Wei Yongjun.
      
      11) Sparse warning fix for the NFPROTO_INET handling from the core
          due to missing static function definition, also from Wei Yongjun.
      
      12) Restore ICMPv6 Parameter Problem error reporting when
          defragmentation fails, from Subash Abhinov Kasiviswanathan.
      
      13) Remove obsolete owner field initialization from struct
          file_operations, patch from Alexey Dobriyan.
      
      14) Use boolean datatype where needed in the Netfilter codebase, from
          Gustavo A. R. Silva.
      
      15) Remove double semicolon in dynset nf_tables expression, from
          Luis de Bethencourt.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cbcbeedb
    • David S. Miller's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next · ea9722e2
      David S. Miller authored
      Alexei Starovoitov says:
      
      ====================
      pull-request: bpf-next 2018-01-19
      
      The following pull-request contains BPF updates for your *net-next* tree.
      
      The main changes are:
      
      1) bpf array map HW offload, from Jakub.
      
      2) support for bpf_get_next_key() for LPM map, from Yonghong.
      
      3) test_verifier now runs loaded programs, from Alexei.
      
      4) xdp cpumap monitoring, from Jesper.
      
      5) variety of tests, cleanups and small x64 JIT optimization, from Daniel.
      
      6) user space can now retrieve HW JITed program, from Jiong.
      
      Note there is a minor conflict between Russell's arm32 JIT fixes
      and removal of bpf_jit_enable variable by Daniel which should
      be resolved by keeping Russell's comment and removing that variable.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ea9722e2
  2. 20 Jan, 2018 12 commits
  3. 19 Jan, 2018 14 commits