All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@suse.de>
To: Manish Rangankar <manish.rangankar@cavium.com>,
	martin.petersen@oracle.com, lduncan@suse.com, cleech@redhat.com
Cc: linux-scsi@vger.kernel.org, netdev@vger.kernel.org,
	QLogic-Storage-Upstream@cavium.com, Yuval.Mintz@cavium.com
Subject: Re: [PATCH v2 1/6] qed: Add support for hardware offloaded iSCSI.
Date: Fri, 11 Nov 2016 16:57:57 +0100	[thread overview]
Message-ID: <1c5639c1-4160-72fe-ecc7-ca6257ec333f@suse.de> (raw)
In-Reply-To: <1478588223-16183-2-git-send-email-manish.rangankar@cavium.com>

On 11/08/2016 07:56 AM, Manish Rangankar wrote:
> From: Yuval Mintz <Yuval.Mintz@cavium.com>
>
> This adds the backbone required for the various HW initalizations
> which are necessary for the iSCSI driver (qedi) for QLogic FastLinQ
> 4xxxx line of adapters - FW notification, resource initializations, etc.
>
> Signed-off-by: Arun Easi <arun.easi@cavium.com>
> Signed-off-by: Yuval Mintz <yuval.mintz@cavium.com>
> ---
>  drivers/net/ethernet/qlogic/Kconfig            |   15 +
>  drivers/net/ethernet/qlogic/qed/Makefile       |    1 +
>  drivers/net/ethernet/qlogic/qed/qed.h          |    7 +-
>  drivers/net/ethernet/qlogic/qed/qed_dev.c      |   12 +
>  drivers/net/ethernet/qlogic/qed/qed_int.h      |    1 -
>  drivers/net/ethernet/qlogic/qed/qed_iscsi.c    | 1276 ++++++++++++++++++++++++
>  drivers/net/ethernet/qlogic/qed/qed_iscsi.h    |   52 +
>  drivers/net/ethernet/qlogic/qed/qed_l2.c       |    1 -
>  drivers/net/ethernet/qlogic/qed/qed_ll2.c      |    4 +-
>  drivers/net/ethernet/qlogic/qed/qed_reg_addr.h |    2 +
>  drivers/net/ethernet/qlogic/qed/qed_spq.c      |   15 +
>  include/linux/qed/qed_if.h                     |    2 +
>  include/linux/qed/qed_iscsi_if.h               |  229 +++++
>  13 files changed, 1613 insertions(+), 4 deletions(-)
>  create mode 100644 drivers/net/ethernet/qlogic/qed/qed_iscsi.c
>  create mode 100644 drivers/net/ethernet/qlogic/qed/qed_iscsi.h
>  create mode 100644 include/linux/qed/qed_iscsi_if.h
>
> diff --git a/drivers/net/ethernet/qlogic/Kconfig b/drivers/net/ethernet/qlogic/Kconfig
> index 32f2a45..2832570 100644
> --- a/drivers/net/ethernet/qlogic/Kconfig
> +++ b/drivers/net/ethernet/qlogic/Kconfig
> @@ -110,4 +110,19 @@ config QEDE
>  config QED_RDMA
>  	bool
>
> +config QED_ISCSI
> +	bool
> +
> +config QEDI
> +	tristate "QLogic QED 25/40/100Gb iSCSI driver"
> +	depends on QED
> +	select QED_LL2
> +	select QED_ISCSI
> +	default n
> +	---help---
> +	  This provides a temporary node that allows the compilation
> +	  and logical testing of the hardware offload iSCSI support
> +	  for QLogic QED. This would be replaced by the 'real' option
> +	  once the QEDI driver is added [+relocated].
> +
>  endif # NET_VENDOR_QLOGIC
> diff --git a/drivers/net/ethernet/qlogic/qed/Makefile b/drivers/net/ethernet/qlogic/qed/Makefile
> index 967acf3..597e15c 100644
> --- a/drivers/net/ethernet/qlogic/qed/Makefile
> +++ b/drivers/net/ethernet/qlogic/qed/Makefile
> @@ -6,3 +6,4 @@ qed-y := qed_cxt.o qed_dev.o qed_hw.o qed_init_fw_funcs.o qed_init_ops.o \
>  qed-$(CONFIG_QED_SRIOV) += qed_sriov.o qed_vf.o
>  qed-$(CONFIG_QED_LL2) += qed_ll2.o
>  qed-$(CONFIG_QED_RDMA) += qed_roce.o
> +qed-$(CONFIG_QED_ISCSI) += qed_iscsi.o
> diff --git a/drivers/net/ethernet/qlogic/qed/qed.h b/drivers/net/ethernet/qlogic/qed/qed.h
> index 50b8a01..15286c1 100644
> --- a/drivers/net/ethernet/qlogic/qed/qed.h
> +++ b/drivers/net/ethernet/qlogic/qed/qed.h
> @@ -35,6 +35,7 @@
>
>  #define QED_WFQ_UNIT	100
>
> +#define ISCSI_BDQ_ID(_port_id) (_port_id)
>  #define QED_WID_SIZE            (1024)
>  #define QED_PF_DEMS_SIZE        (4)
>
> @@ -392,6 +393,7 @@ struct qed_hwfn {
>  	bool				using_ll2;
>  	struct qed_ll2_info		*p_ll2_info;
>  	struct qed_rdma_info		*p_rdma_info;
> +	struct qed_iscsi_info		*p_iscsi_info;
>  	struct qed_pf_params		pf_params;
>
>  	bool b_rdma_enabled_in_prs;
> @@ -593,6 +595,8 @@ struct qed_dev {
>  	/* Linux specific here */
>  	struct  qede_dev		*edev;
>  	struct  pci_dev			*pdev;
> +	u32 flags;
> +#define QED_FLAG_STORAGE_STARTED	(BIT(0))
>  	int				msg_enable;
>
>  	struct pci_params		pci_params;
> @@ -606,6 +610,7 @@ struct qed_dev {
>  	union {
>  		struct qed_common_cb_ops	*common;
>  		struct qed_eth_cb_ops		*eth;
> +		struct qed_iscsi_cb_ops		*iscsi;
>  	} protocol_ops;
>  	void				*ops_cookie;
>
> @@ -615,7 +620,7 @@ struct qed_dev {
>  	struct qed_cb_ll2_info		*ll2;
>  	u8				ll2_mac_address[ETH_ALEN];
>  #endif
> -
> +	DECLARE_HASHTABLE(connections, 10);
>  	const struct firmware		*firmware;
>
>  	u32 rdma_max_sge;
10 connections? Only?
Hmm.

Other than that:

Reviewed-by: Hannes Reinecke <hare@suse.com>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare@suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

  reply	other threads:[~2016-11-11 15:58 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-08  6:56 [PATCH v2 0/6] Add QLogic FastLinQ iSCSI (qedi) driver Manish Rangankar
2016-11-08  6:56 ` Manish Rangankar
2016-11-08  6:56 ` [PATCH v2 1/6] qed: Add support for hardware offloaded iSCSI Manish Rangankar
2016-11-08  6:56   ` Manish Rangankar
2016-11-11 15:57   ` Hannes Reinecke [this message]
2016-11-11 18:12     ` Arun Easi
2016-11-11 18:12       ` Arun Easi
2016-11-08  6:56 ` [PATCH v2 2/6] qed: Add iSCSI out of order packet handling Manish Rangankar
2016-11-08  6:56   ` Manish Rangankar
2016-11-11 15:59   ` Hannes Reinecke
2016-11-08  6:57 ` [PATCH v2 3/6] qedi: Add QLogic FastLinQ offload iSCSI driver framework Manish Rangankar
2016-11-08  6:57   ` Manish Rangankar
2016-11-08 10:52   ` kbuild test robot
2016-11-08 20:04     ` Arun Easi
2016-11-08 20:04       ` Arun Easi
2016-11-08 23:49       ` Martin K. Petersen
2016-11-08 23:49         ` Martin K. Petersen
2016-11-09  0:00         ` Arun Easi
2016-11-09  0:00           ` Arun Easi
2016-11-09  0:07           ` Martin K. Petersen
2016-11-09  0:07             ` Martin K. Petersen
2016-11-08 11:13   ` kbuild test robot
2016-11-11 16:43   ` Hannes Reinecke
2016-11-15  6:14     ` Rangankar, Manish
2016-11-15  7:21       ` Hannes Reinecke
2017-01-01 12:28   ` Or Gerlitz
2016-11-08  6:57 ` [PATCH v2 4/6] qedi: Add LL2 iSCSI interface for offload iSCSI Manish Rangankar
2016-11-08  6:57   ` Manish Rangankar
2016-11-11 16:44   ` Hannes Reinecke
2016-11-08  6:57 ` [PATCH v2 5/6] qedi: Add support for iSCSI session management Manish Rangankar
2016-11-08  6:57   ` Manish Rangankar
2016-11-11 16:47   ` Hannes Reinecke
2016-11-08  6:57 ` [PATCH v2 6/6] qedi: Add support for data path Manish Rangankar
2016-11-08  6:57   ` Manish Rangankar
2016-11-08 11:09   ` kbuild test robot
2016-11-11 16:49   ` Hannes Reinecke
2016-11-29 17:21 ` [PATCH v2 0/6] Add QLogic FastLinQ iSCSI (qedi) driver Martin K. Petersen
2016-11-29 17:21   ` Martin K. Petersen

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=1c5639c1-4160-72fe-ecc7-ca6257ec333f@suse.de \
    --to=hare@suse.de \
    --cc=QLogic-Storage-Upstream@cavium.com \
    --cc=Yuval.Mintz@cavium.com \
    --cc=cleech@redhat.com \
    --cc=lduncan@suse.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=manish.rangankar@cavium.com \
    --cc=martin.petersen@oracle.com \
    --cc=netdev@vger.kernel.org \
    /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 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.