netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alexander Loktionov <Alexander.Loktionov@aquantia.com>
To: netdev@vger.kernel.org, David VomLehn <vomlehn@texas.net>
Cc: "David S . Miller" <davem@davemloft.net>,
	Simon Edelhaus <Simon.Edelhaus@aquantia.com>,
	Alexander Loktionov <Alexander.Loktionov@aquantia.com>,
	Dmitrii Tarakanov <Dmitrii.Tarakanov@aquantia.com>,
	Pavel Belous <Pavel.Belous@aquantia.com>
Subject: [PATCH v6 00/13] net: ethernet: aquantia: Add AQtion 2.5/5 GB NIC driver
Date: Wed, 18 Jan 2017 17:07:51 -0800	[thread overview]
Message-ID: <cover.1484788010.git.vomlehn@texas.net> (raw)

From: David VomLehn <vomlehn@texas.net>

This series introduces the AQtion NIC driver for the aQuantia
AQC107/AQC108 network devices.

This series introduces the AQtion NIC driver for the aQuantia
AQC107/AQC108 network devices.

v1: Initial version
v2: o Make necessary drivers/net/ethernet changes to integrate software
    o Drop intermediate atlantic directory
    o Remove Makefile things only appropriate to out of tree module
      building
v3: o Move changes to drivers/net/ethernet/{Kconfig,Makefile} to the last
      patch to ensure clean bisection.
    o Removed inline attribute aq_hw_write_req() as it was defined in
      only one .c file.
    o #included pci.h in aq_common.h to get struct pci definition.
    o Modified code to unlock based execution flow rather than using a
      flag.
    o Made a number of functions that were only used in a single file
      static.
    o Cleaned up error and return code handling in various places.
    o Remove AQ_CFG_IP_ALIGN definition.
    o Other minor code clean up.
v4: o Using do_div for 64 bit division.
    o Modified NIC statistics code.
    o Using build_skb instead netdev_alloc_skb for single fragment packets.
    o Removed extra aq_nic.o from Makefile
v5: o Removed extra newline at the end of the files.
v6: o Removed unnecessary cast from void*.
    o Reworked strings array for ethtool statistics.
    o Added stringset == ETH_SS_STATS checking.
    o AQ_OBJ_HEADER replaced to aq_obj_header_s struct.
    o AQ_OBJ_SET/TST/CLR macroses replaced to inline functions.
    o Driver sources placed in to atlantic directory.
    o Fixed compilation warnings (Make W=1)
    o Added firmware version checking.
    o Code cleaning.

Signed-off-by: Alexander Loktionov <Alexander.Loktionov@aquantia.com>
Signed-off-by: Dmitrii Tarakanov <Dmitrii.Tarakanov@aquantia.com>
Signed-off-by: Pavel Belous <Pavel.Belous@aquantia.com>
Signed-off-by: David M. VomLehn <vomlehn@texas.net>
---

David VomLehn (13):
  net: ethernet: aquantia: Make and configuration files.
  net: ethernet: aquantia: Common functions and definitions
  net: ethernet: aquantia: Add ring support code
  net: ethernet: aquantia: Low-level hardware interfaces
  net: ethernet: aquantia: Support for NIC-specific code
  net: ethernet: aquantia: Atlantic A0 and B0 specific functions.
  net: ethernet: aquantia: Vector operations
  net: ethernet: aquantia: PCI operations
  net: ethernet: aquantia: Atlantic hardware abstraction layer
  net: ethernet: aquantia: Hardware interface and utility functions
  net: ethernet: aquantia: Ethtool support
  net: ethernet: aquantia: Receive side scaling
  net: ethernet: aquantia: Integrate AQtion 2.5/5 GB NIC driver

 drivers/net/ethernet/Kconfig                       |    1 +
 drivers/net/ethernet/Makefile                      |    1 +
 drivers/net/ethernet/aquantia/Kconfig              |   20 +
 drivers/net/ethernet/aquantia/Makefile             |    5 +
 drivers/net/ethernet/aquantia/atlantic/Kconfig     |    9 +
 drivers/net/ethernet/aquantia/atlantic/Makefile    |   42 +
 drivers/net/ethernet/aquantia/atlantic/aq_cfg.h    |   77 +
 drivers/net/ethernet/aquantia/atlantic/aq_common.h |   23 +
 .../net/ethernet/aquantia/atlantic/aq_ethtool.c    |  258 +++
 .../net/ethernet/aquantia/atlantic/aq_ethtool.h    |   19 +
 drivers/net/ethernet/aquantia/atlantic/aq_hw.h     |  172 ++
 .../net/ethernet/aquantia/atlantic/aq_hw_utils.c   |   68 +
 .../net/ethernet/aquantia/atlantic/aq_hw_utils.h   |   47 +
 drivers/net/ethernet/aquantia/atlantic/aq_main.c   |  273 +++
 drivers/net/ethernet/aquantia/atlantic/aq_main.h   |   17 +
 drivers/net/ethernet/aquantia/atlantic/aq_nic.c    |  935 ++++++++
 drivers/net/ethernet/aquantia/atlantic/aq_nic.h    |  108 +
 .../ethernet/aquantia/atlantic/aq_nic_internal.h   |   46 +
 .../net/ethernet/aquantia/atlantic/aq_pci_func.c   |  345 +++
 .../net/ethernet/aquantia/atlantic/aq_pci_func.h   |   34 +
 drivers/net/ethernet/aquantia/atlantic/aq_ring.c   |  376 ++++
 drivers/net/ethernet/aquantia/atlantic/aq_ring.h   |  157 ++
 drivers/net/ethernet/aquantia/atlantic/aq_rss.h    |   26 +
 drivers/net/ethernet/aquantia/atlantic/aq_utils.h  |   55 +
 drivers/net/ethernet/aquantia/atlantic/aq_vec.c    |  393 ++++
 drivers/net/ethernet/aquantia/atlantic/aq_vec.h    |   42 +
 .../ethernet/aquantia/atlantic/hw_atl/hw_atl_a0.c  |  905 ++++++++
 .../ethernet/aquantia/atlantic/hw_atl/hw_atl_a0.h  |   34 +
 .../aquantia/atlantic/hw_atl/hw_atl_a0_internal.h  |  155 ++
 .../ethernet/aquantia/atlantic/hw_atl/hw_atl_b0.c  |  958 ++++++++
 .../ethernet/aquantia/atlantic/hw_atl/hw_atl_b0.h  |   34 +
 .../aquantia/atlantic/hw_atl/hw_atl_b0_internal.h  |  207 ++
 .../ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.c | 1394 ++++++++++++
 .../ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.h |  677 ++++++
 .../aquantia/atlantic/hw_atl/hw_atl_llh_internal.h | 2375 ++++++++++++++++++++
 .../aquantia/atlantic/hw_atl/hw_atl_utils.c        |  569 +++++
 .../aquantia/atlantic/hw_atl/hw_atl_utils.h        |  210 ++
 drivers/net/ethernet/aquantia/atlantic/ver.h       |   18 +
 38 files changed, 11085 insertions(+)
 create mode 100644 drivers/net/ethernet/aquantia/Kconfig
 create mode 100644 drivers/net/ethernet/aquantia/Makefile
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/Kconfig
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/Makefile
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_cfg.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_common.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_ethtool.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_hw.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_hw_utils.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_hw_utils.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_main.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_main.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_nic.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_nic.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_nic_internal.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_pci_func.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_ring.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_ring.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_rss.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_utils.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_vec.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/aq_vec.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_a0.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_a0.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_a0_internal.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_b0.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_b0.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_b0_internal.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_llh_internal.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils.c
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_utils.h
 create mode 100644 drivers/net/ethernet/aquantia/atlantic/ver.h

-- 
2.9.3

             reply	other threads:[~2017-01-19  2:00 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-19  1:07 Alexander Loktionov [this message]
2017-01-19  1:07 ` [PATCH v6 01/13] net: ethernet: aquantia: Make and configuration files Alexander Loktionov
2017-01-19  1:07 ` [PATCH v6 02/13] net: ethernet: aquantia: Common functions and definitions Alexander Loktionov
2017-01-19  1:07 ` [PATCH v6 03/13] net: ethernet: aquantia: Add ring support code Alexander Loktionov
2017-01-19  1:07 ` [PATCH v6 04/13] net: ethernet: aquantia: Low-level hardware interfaces Alexander Loktionov
2017-01-19  1:07 ` [PATCH v6 05/13] net: ethernet: aquantia: Support for NIC-specific code Alexander Loktionov
2017-01-19  1:07 ` [PATCH v6 06/13] net: ethernet: aquantia: Atlantic A0 and B0 specific functions Alexander Loktionov
2017-01-19  1:07 ` [PATCH v6 07/13] net: ethernet: aquantia: Vector operations Alexander Loktionov
2017-01-19  1:07 ` [PATCH v6 08/13] net: ethernet: aquantia: PCI operations Alexander Loktionov
2017-01-19  1:08 ` [PATCH v6 09/13] net: ethernet: aquantia: Atlantic hardware abstraction layer Alexander Loktionov
2017-01-19  1:08 ` [PATCH v6 10/13] net: ethernet: aquantia: Hardware interface and utility functions Alexander Loktionov
2017-01-19  1:08 ` [PATCH v6 11/13] net: ethernet: aquantia: Ethtool support Alexander Loktionov
2017-01-19  1:08 ` [PATCH v6 12/13] net: ethernet: aquantia: Receive side scaling Alexander Loktionov
2017-01-19  1:08 ` [PATCH v6 13/13] net: ethernet: aquantia: Integrate AQtion 2.5/5 GB NIC driver Alexander Loktionov
2017-01-19  9:09   ` kbuild test robot
2017-01-19  9:09   ` [PATCH] net: ethernet: aquantia: fix alloc_cast.cocci warnings kbuild test robot
2017-01-20  8:19     ` Joe Perches
2017-01-20 13:49   ` [PATCH v6 13/13] net: ethernet: aquantia: Integrate AQtion 2.5/5 GB NIC driver kbuild test robot
2017-01-19 16:55 ` [PATCH v6 00/13] net: ethernet: aquantia: Add " David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1484788010.git.vomlehn@texas.net \
    --to=alexander.loktionov@aquantia.com \
    --cc=Dmitrii.Tarakanov@aquantia.com \
    --cc=Pavel.Belous@aquantia.com \
    --cc=Simon.Edelhaus@aquantia.com \
    --cc=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    --cc=vomlehn@texas.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).