All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 00/19] qed*: Add iWARP support for QL4xxxx
@ 2017-06-26 18:06 ` Michal Kalderon
  0 siblings, 0 replies; 46+ messages in thread
From: Michal Kalderon @ 2017-06-26 18:06 UTC (permalink / raw)
  To: michal.kalderon-YGCgFSpz5w/QT0dZR+AlfA,
	ram.amrani-YGCgFSpz5w/QT0dZR+AlfA,
	yuval.mintz-YGCgFSpz5w/QT0dZR+AlfA,
	ariel.elior-YGCgFSpz5w/QT0dZR+AlfA, davem-fT/PcQaiUtIeIZ0/mPfg9Q,
	netdev-u79uwXL29TY76Z2rM5mHXA, linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	dledford-H+wXaHxf7aLQT0dZR+AlfA
  Cc: Michal Kalderon

This RFC adds iWARP support to our QL4xxxx networking adapters.
The code changes span across qed and qedr drivers.

It is submitted as a single (long) RFC for purpose of reviewing,
but will eventually be split into two separate patch series,
one targeted for qed (net-next) and containing minimal qedr changes
and the other for qedr (rdma-next).

This series was tested and built against net-next.

qedr is used for both RoCE and iWARP. The distinction is made (for now)
at the pci function level. Code prefixed with rdma is shared, roce/iwarp
is specific.

The following was tested for iWARP under OFED: iser, nvmf, NFSoRDMA,
concurrent support of roce and iwarp on different pci functions.

MAINTAINERS file is not updated in this RFC as there is a pending patch
for qedr driver update https://patchwork.kernel.org/patch/9752761.

Your review and comments are highly appreciated.

Michal Kalderon (19):
  qed: Introduce iWARP personality
  qed: Implement iWARP initialization, teardown and qp operations
  qed: Rename some ll2 related defines
  qed: Add iWARP support in ll2 connections
  qed: iWARP CM - setup a ll2 connection for handling SYN packets
  qed: iWARP CM add listener functions and initial SYN processing
  qed: iWARP CM add passive side connect
  qed: iWARP CM add active side connect
  qed: iWARP implement disconnect flows
  qed: iWARP CM add error handling
  qed: Add iWARP protocol support in context allocation
  qed: Add iWARP support for physical queue allocation
  RDMA/qedr: Rename the qedr_cm file as a preparation for iWARP support
  RDMA/qedr: Add support for registering an iWARP device
  RDMA/qedr: Add iWARP support in existing verbs.
  RDMA/qedr: Add support for read with invalidate, supported in iWARP
  RDMA/qedr: Add iWARP connection management qp related callbacks
  RDMA/qedr: Add iWARP connection management functions
  qed*: Add iWARP enablement support

 drivers/infiniband/hw/qedr/Makefile                |    2 +-
 drivers/infiniband/hw/qedr/main.c                  |  107 +-
 drivers/infiniband/hw/qedr/qedr.h                  |   32 +-
 drivers/infiniband/hw/qedr/qedr_hsi_rdma.h         |    6 +-
 drivers/infiniband/hw/qedr/qedr_iw_cm.c            |  746 ++++++
 drivers/infiniband/hw/qedr/qedr_iw_cm.h            |   49 +
 .../hw/qedr/{qedr_cm.c => qedr_roce_cm.c}          |    2 +-
 .../hw/qedr/{qedr_cm.h => qedr_roce_cm.h}          |    0
 drivers/infiniband/hw/qedr/verbs.c                 |  270 ++-
 drivers/infiniband/hw/qedr/verbs.h                 |    2 +
 drivers/net/ethernet/qlogic/qed/Makefile           |    2 +-
 drivers/net/ethernet/qlogic/qed/qed.h              |   30 +-
 drivers/net/ethernet/qlogic/qed/qed_cxt.c          |   27 +-
 drivers/net/ethernet/qlogic/qed/qed_dev.c          |   36 +-
 drivers/net/ethernet/qlogic/qed/qed_hsi.h          |    1 +
 drivers/net/ethernet/qlogic/qed/qed_iwarp.c        | 2409 ++++++++++++++++++++
 drivers/net/ethernet/qlogic/qed/qed_iwarp.h        |  189 ++
 drivers/net/ethernet/qlogic/qed/qed_l2.c           |   16 +-
 drivers/net/ethernet/qlogic/qed/qed_ll2.c          |   42 +-
 drivers/net/ethernet/qlogic/qed/qed_main.c         |   17 +-
 drivers/net/ethernet/qlogic/qed/qed_mcp.c          |   10 +-
 drivers/net/ethernet/qlogic/qed/qed_rdma.c         |  144 +-
 drivers/net/ethernet/qlogic/qed/qed_rdma.h         |    5 +
 drivers/net/ethernet/qlogic/qed/qed_roce.c         |   20 +
 drivers/net/ethernet/qlogic/qed/qed_sp.h           |    7 +-
 drivers/net/ethernet/qlogic/qed/qed_sp_commands.c  |    2 +
 include/linux/qed/common_hsi.h                     |    4 +-
 include/linux/qed/iwarp_common.h                   |   53 +
 include/linux/qed/qed_ll2_if.h                     |    3 +-
 include/linux/qed/qed_rdma_if.h                    |  114 +
 30 files changed, 4166 insertions(+), 181 deletions(-)
 create mode 100644 drivers/infiniband/hw/qedr/qedr_iw_cm.c
 create mode 100644 drivers/infiniband/hw/qedr/qedr_iw_cm.h
 rename drivers/infiniband/hw/qedr/{qedr_cm.c => qedr_roce_cm.c} (99%)
 rename drivers/infiniband/hw/qedr/{qedr_cm.h => qedr_roce_cm.h} (100%)
 create mode 100644 drivers/net/ethernet/qlogic/qed/qed_iwarp.c
 create mode 100644 drivers/net/ethernet/qlogic/qed/qed_iwarp.h
 create mode 100644 include/linux/qed/iwarp_common.h

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2017-06-27  8:33 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-06-26 18:06 [RFC 00/19] qed*: Add iWARP support for QL4xxxx Michal Kalderon
2017-06-26 18:06 ` Michal Kalderon
2017-06-26 18:06 ` [RFC 02/19] qed: Implement iWARP initialization, teardown and qp operations Michal Kalderon
2017-06-26 18:06   ` Michal Kalderon
2017-06-27  5:45   ` Leon Romanovsky
2017-06-27  8:33     ` Kalderon, Michal
2017-06-26 18:06 ` [RFC 03/19] qed: Rename some ll2 related defines Michal Kalderon
2017-06-26 18:06   ` Michal Kalderon
     [not found] ` <1498500429-22557-1-git-send-email-Michal.Kalderon-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
2017-06-26 18:06   ` [RFC 01/19] qed: Introduce iWARP personality Michal Kalderon
2017-06-26 18:06     ` Michal Kalderon
     [not found]     ` <1498500429-22557-2-git-send-email-Michal.Kalderon-YGCgFSpz5w/QT0dZR+AlfA@public.gmane.org>
2017-06-27  5:36       ` Leon Romanovsky
2017-06-27  8:17         ` Kalderon, Michal
2017-06-26 18:06   ` [RFC 04/19] qed: Add iWARP support in ll2 connections Michal Kalderon
2017-06-26 18:06     ` Michal Kalderon
2017-06-26 18:06   ` [RFC 05/19] qed: iWARP CM - setup a ll2 connection for handling SYN packets Michal Kalderon
2017-06-26 18:06     ` Michal Kalderon
2017-06-26 18:06   ` [RFC 06/19] qed: iWARP CM add listener functions and initial SYN processing Michal Kalderon
2017-06-26 18:06     ` Michal Kalderon
2017-06-26 18:06   ` [RFC 07/19] qed: iWARP CM add passive side connect Michal Kalderon
2017-06-26 18:06     ` Michal Kalderon
2017-06-26 18:07   ` [RFC 12/19] qed: Add iWARP support for physical queue allocation Michal Kalderon
2017-06-26 18:07     ` Michal Kalderon
2017-06-26 18:07   ` [RFC 16/19] RDMA/qedr: Add support for read with invalidate, supported in iWARP Michal Kalderon
2017-06-26 18:07     ` Michal Kalderon
2017-06-26 18:07   ` [RFC 17/19] RDMA/qedr: Add iWARP connection management qp related callbacks Michal Kalderon
2017-06-26 18:07     ` Michal Kalderon
2017-06-26 18:07   ` [RFC 18/19] RDMA/qedr: Add iWARP connection management functions Michal Kalderon
2017-06-26 18:07     ` Michal Kalderon
2017-06-26 18:07   ` [RFC 19/19] qed*: Add iWARP enablement support Michal Kalderon
2017-06-26 18:07     ` Michal Kalderon
2017-06-26 18:06 ` [RFC 08/19] qed: iWARP CM add active side connect Michal Kalderon
2017-06-26 18:06   ` Michal Kalderon
2017-06-26 18:06 ` [RFC 09/19] qed: iWARP implement disconnect flows Michal Kalderon
2017-06-26 18:06   ` Michal Kalderon
2017-06-26 18:07 ` [RFC 10/19] qed: iWARP CM add error handling Michal Kalderon
2017-06-26 18:07   ` Michal Kalderon
2017-06-26 18:07 ` [RFC 11/19] qed: Add iWARP protocol support in context allocation Michal Kalderon
2017-06-26 18:07   ` Michal Kalderon
2017-06-26 18:07 ` [RFC 13/19] RDMA/qedr: Rename the qedr_cm file as a preparation for iWARP support Michal Kalderon
2017-06-26 18:07   ` Michal Kalderon
2017-06-26 18:07 ` [RFC 14/19] RDMA/qedr: Add support for registering an iWARP device Michal Kalderon
2017-06-26 18:07   ` Michal Kalderon
2017-06-26 18:07 ` [RFC 15/19] RDMA/qedr: Add iWARP support in existing verbs Michal Kalderon
2017-06-26 18:07   ` Michal Kalderon
2017-06-27  5:27   ` Leon Romanovsky
2017-06-27  8:18     ` Kalderon, Michal

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.