netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Amir Vadai <amirv@mellanox.com>
To: "David S. Miller" <davem@davemloft.net>
Cc: netdev@vger.kernel.org, Yevgeny Petrilin <yevgenyp@mellanox.com>,
	Saeed Mahameed <saeedm@mellanox.com>,
	Or Gerlitz <ogerlitz@mellanox.com>,
	Achiad Shochat <achiad@mellanox.com>,
	Ido Shamay <idos@mellanox.com>, Tal Alon <talal@mellanox.com>,
	Amir Vadai <amirv@mellanox.com>
Subject: [PATCH net-next V1 00/11] net/mlx5: ConnectX-4 100G Ethernet driver
Date: Mon, 13 Apr 2015 14:44:50 +0300	[thread overview]
Message-ID: <1428925501-2373-1-git-send-email-amirv@mellanox.com> (raw)

Hi Dave,

Changes from V0:
- Removed V0 Patch 1/11 ("net/mlx5_core: Virtually extend work/completion queue
  buffers by one page") due to misuse of DMA API. Thanks Dave.
- Patch 1/11 ("net/mlx5_core: Set irq affinity hints"):
  - Use kcalloc instead of kzalloc
  - Fix build error when CONFIG_CPUMASK_OFFSTACK=n. Driver loading will fail
    now if cpumask allocation is failing.
  - Using dev_to_node helper. Thanks, Ido.  
- Patch 3/11 ("net/mlx5_core: HW data structs/types definitions preparation for
  mlx5 ehternet driver")
  - Removed Mellanox internal comment at the head of the file. Thanks Joe
- Patch 6/11 ("net/mlx5_core: Implement get/set port status")
  - Use direct return of function's result. Thanks Sergei.
- Added Patch 8/11 ("net/mlx5_core: Set/Query port MTU commands")
- Patch 9/11 ("net/mlx5: Ethernet Datapath files") 
  - Use rq->wqe_sz instead of skb_end_offset. Thanks Ido.
  - Use dma_wmb() when possible instead of wmb(). Thanks Alex.
  - Fix checkpatch issues
- Patch 10/11 ("net/mlx5: ethernet resources handling")
  - checkpatch issues
  - Added missing include
- Patch 11/11 ("net/mlx5: Ethernet driver") 
  - checkpatch issues
  - fixed typo
  - Modified use of affinity hint
  - Using dev_to_node helper. Thanks, Ido.  
  - Use new hardware commands from Patch 8/11 ("net/mlx5_core: Set/Query port
    MTU commands") to get/set port MTU in hardware.
  - Removed NETIF_F_SG since hardware ring wraparound is not supported
  - Use dma_wmb() when possible instead of wmb(). Thanks Alex.

This patchset introduces support in Mellanox ConnectX-4 100G Ethernet NIC.
Unlike the ConnectX-3 driver, this driver is built of a single module (there is
no mlx5_en). It is the Ethernet driver and also the low level driver for the
infiniband driver - mlx5_ib.

Many features are still missing from the driver, but all the basic
functionalities are there already.

Notes:
-  Patch 3/11 ("net/mlx5_core: HW data structs/types definitions preparation
   for mlx5 ehternet driver") is too big for the mail server. It is hard to split
   it, since it is a generated code. I'm sending it as is, so you get it
   as part of the patches.  I also place it on a public git [1], to enable
   reviewing it from the mailing list.

Patchset was applied on top of e60a9de ("Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue")

[1] - http://git.openfabrics.org/?p=~amirv/linux.git;a=shortlog;h=refs/heads/mlx5e_v1  

Thanks to Achiad, Saeed, Yevheny, Or and the whole team for making this happen,
Amir

Amir Vadai (3):
  net/mlx5: Ethernet Datapath files
  net/mlx5: ethernet resources handling
  net/mlx5: Ethernet driver

Rana Shahout (2):
  net/mlx5_core: Implement get/set port status
  net/mlx5_core: Modify CQ moderation parameters

Saeed Mahameed (6):
  net/mlx5_core: Set irq affinity hints
  net/mlx5_core: Add EQ renaming mechanism
  net/mlx5_core: HW data structs/types definitions preparation for mlx5
    ehternet driver
  net/mlx5_core/ib: New device capabilities handling.
  net/mlx5_core: Implement get and set functions of ptys register fields
  net/mlx5_core: Set/Query port MTU commands

 drivers/infiniband/hw/mlx5/cq.c                    |    8 +-
 drivers/infiniband/hw/mlx5/mad.c                   |    2 +-
 drivers/infiniband/hw/mlx5/main.c                  |  113 +-
 drivers/infiniband/hw/mlx5/mlx5_ib.h               |    6 +-
 drivers/infiniband/hw/mlx5/mr.c                    |    3 +-
 drivers/infiniband/hw/mlx5/odp.c                   |   47 +-
 drivers/infiniband/hw/mlx5/qp.c                    |   84 +-
 drivers/infiniband/hw/mlx5/srq.c                   |    7 +-
 drivers/net/ethernet/mellanox/mlx5/core/Makefile   |    3 +-
 drivers/net/ethernet/mellanox/mlx5/core/cmd.c      |   17 +-
 drivers/net/ethernet/mellanox/mlx5/core/cq.c       |   18 +
 drivers/net/ethernet/mellanox/mlx5/core/en.h       |  520 ++
 .../net/ethernet/mellanox/mlx5/core/en_ethtool.c   |  679 ++
 .../ethernet/mellanox/mlx5/core/en_flow_table.c    |  858 +++
 drivers/net/ethernet/mellanox/mlx5/core/en_main.c  | 1920 ++++++
 drivers/net/ethernet/mellanox/mlx5/core/en_rx.c    |  249 +
 drivers/net/ethernet/mellanox/mlx5/core/en_tx.c    |  344 +
 drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c  |  107 +
 drivers/net/ethernet/mellanox/mlx5/core/eq.c       |   20 +-
 .../net/ethernet/mellanox/mlx5/core/flow_table.c   |  422 ++
 drivers/net/ethernet/mellanox/mlx5/core/fw.c       |   90 +-
 drivers/net/ethernet/mellanox/mlx5/core/main.c     |  294 +-
 drivers/net/ethernet/mellanox/mlx5/core/mcg.c      |    2 +-
 .../net/ethernet/mellanox/mlx5/core/mlx5_core.h    |   20 +-
 drivers/net/ethernet/mellanox/mlx5/core/port.c     |  165 +
 drivers/net/ethernet/mellanox/mlx5/core/transobj.c |  169 +
 drivers/net/ethernet/mellanox/mlx5/core/transobj.h |   47 +
 drivers/net/ethernet/mellanox/mlx5/core/uar.c      |   44 +-
 drivers/net/ethernet/mellanox/mlx5/core/vport.c    |  111 +
 drivers/net/ethernet/mellanox/mlx5/core/vport.h    |   41 +
 drivers/net/ethernet/mellanox/mlx5/core/wq.c       |  189 +
 drivers/net/ethernet/mellanox/mlx5/core/wq.h       |  171 +
 include/linux/mlx5/cq.h                            |    3 +
 include/linux/mlx5/device.h                        |  179 +-
 include/linux/mlx5/driver.h                        |   99 +-
 include/linux/mlx5/flow_table.h                    |   54 +
 include/linux/mlx5/mlx5_ifc.h                      | 6623 +++++++++++++++++++-
 include/linux/mlx5/qp.h                            |   25 +
 38 files changed, 13275 insertions(+), 478 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en.h
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_ethtool.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_flow_table.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_main.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_tx.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en_txrx.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/flow_table.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/transobj.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/transobj.h
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/vport.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/vport.h
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/wq.c
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/wq.h
 create mode 100644 include/linux/mlx5/flow_table.h

-- 
1.9.3

             reply	other threads:[~2015-04-13 11:45 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-13 11:44 Amir Vadai [this message]
2015-04-13 11:44 ` [PATCH net-next V1 01/11] net/mlx5_core: Set irq affinity hints Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 02/11] net/mlx5_core: Add EQ renaming mechanism Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 03/11] net/mlx5_core: HW data structs/types definitions preparation for mlx5 ehternet driver Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 04/11] net/mlx5_core/ib: New device capabilities handling Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 05/11] net/mlx5_core: Implement get and set functions of ptys register fields Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 06/11] net/mlx5_core: Implement get/set port status Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 07/11] net/mlx5_core: Modify CQ moderation parameters Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 08/11] net/mlx5_core: Set/Query port MTU commands Amir Vadai
2015-04-13 11:44 ` [PATCH net-next V1 09/11] net/mlx5: Ethernet Datapath files Amir Vadai
2015-04-13 11:45 ` [PATCH net-next V1 10/11] net/mlx5: Ethernet resources handling Amir Vadai
2015-04-13 11:45 ` [PATCH net-next V1 11/11] net/mlx5: Ethernet driver Amir Vadai
2015-04-14  2:15 ` [PATCH net-next V1 00/11] net/mlx5: ConnectX-4 100G " David Miller
2015-04-14  7:05   ` Amir Vadai

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=1428925501-2373-1-git-send-email-amirv@mellanox.com \
    --to=amirv@mellanox.com \
    --cc=achiad@mellanox.com \
    --cc=davem@davemloft.net \
    --cc=idos@mellanox.com \
    --cc=netdev@vger.kernel.org \
    --cc=ogerlitz@mellanox.com \
    --cc=saeedm@mellanox.com \
    --cc=talal@mellanox.com \
    --cc=yevgenyp@mellanox.com \
    /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).