netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next V1 00/11] net/mlx5: ConnectX-4 100G Ethernet driver
@ 2015-04-13 11:44 Amir Vadai
  2015-04-13 11:44 ` [PATCH net-next V1 01/11] net/mlx5_core: Set irq affinity hints Amir Vadai
                   ` (11 more replies)
  0 siblings, 12 replies; 14+ messages in thread
From: Amir Vadai @ 2015-04-13 11:44 UTC (permalink / raw)
  To: David S. Miller
  Cc: netdev, Yevgeny Petrilin, Saeed Mahameed, Or Gerlitz,
	Achiad Shochat, Ido Shamay, Tal Alon, Amir Vadai

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

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2015-04-14  7:06 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-04-13 11:44 [PATCH net-next V1 00/11] net/mlx5: ConnectX-4 100G Ethernet driver Amir Vadai
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

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).