linux-rdma.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Shiraz Saleem <shiraz.saleem@intel.com>
To: dledford@redhat.com, jgg@nvidia.com, kuba@kernel.org,
	davem@davemloft.net
Cc: linux-rdma@vger.kernel.org, netdev@vger.kernel.org,
	david.m.ertman@intel.com, anthony.l.nguyen@intel.com,
	Shiraz Saleem <shiraz.saleem@intel.com>
Subject: [PATCH v6 05/22] i40e: Prep i40e header for aux bus conversion
Date: Thu, 20 May 2021 09:37:52 -0500	[thread overview]
Message-ID: <20210520143809.819-6-shiraz.saleem@intel.com> (raw)
In-Reply-To: <20210520143809.819-1-shiraz.saleem@intel.com>

Add the definitions to the i40e client header file in
preparation to convert i40e to use the new auxiliary bus
infrastructure. This header is shared between the 'i40e'
Intel networking driver providing RDMA support and the
'irdma' driver.

Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
---
 include/linux/net/intel/i40e_client.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/include/linux/net/intel/i40e_client.h b/include/linux/net/intel/i40e_client.h
index f41387a..c1c15ab6a 100644
--- a/include/linux/net/intel/i40e_client.h
+++ b/include/linux/net/intel/i40e_client.h
@@ -4,6 +4,8 @@
 #ifndef _I40E_CLIENT_H_
 #define _I40E_CLIENT_H_
 
+#include <linux/auxiliary_bus.h>
+
 #define I40E_CLIENT_STR_LENGTH 10
 
 /* Client interface version should be updated anytime there is a change in the
@@ -78,6 +80,7 @@ struct i40e_info {
 	u8 lanmac[6];
 	struct net_device *netdev;
 	struct pci_dev *pcidev;
+	struct auxiliary_device *aux_dev;
 	u8 __iomem *hw_addr;
 	u8 fid;	/* function id, PF id or VF id */
 #define I40E_CLIENT_FTYPE_PF 0
@@ -90,6 +93,7 @@ struct i40e_info {
 	struct i40e_qvlist_info *qvlist_info;
 	struct i40e_params params;
 	struct i40e_ops *ops;
+	struct i40e_client *client;
 
 	u16 msix_count;	 /* number of msix vectors*/
 	/* Array down below will be dynamically allocated based on msix_count */
@@ -100,6 +104,11 @@ struct i40e_info {
 	u32 fw_build;                   /* firmware build number */
 };
 
+struct i40e_auxiliary_device {
+	struct auxiliary_device aux_dev;
+	struct i40e_info *ldev;
+};
+
 #define I40E_CLIENT_RESET_LEVEL_PF   1
 #define I40E_CLIENT_RESET_LEVEL_CORE 2
 #define I40E_CLIENT_VSI_FLAG_TCP_ENABLE  BIT(1)
@@ -187,6 +196,8 @@ static inline bool i40e_client_is_registered(struct i40e_client *client)
 	return test_bit(__I40E_CLIENT_REGISTERED, &client->state);
 }
 
+int i40e_client_device_register(struct i40e_info *ldev);
+void i40e_client_device_unregister(struct i40e_info *ldev);
 /* used by clients */
 int i40e_register_client(struct i40e_client *client);
 int i40e_unregister_client(struct i40e_client *client);
-- 
1.8.3.1


  parent reply	other threads:[~2021-05-20 14:39 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-20 14:37 [PATCH v6 00/22] Add Intel Ethernet Protocol Driver for RDMA (irdma) Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 01/22] iidc: Introduce iidc.h Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 02/22] ice: Initialize RDMA support Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 03/22] ice: Implement iidc operations Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 04/22] ice: Register auxiliary device to provide RDMA Shiraz Saleem
2021-05-20 14:37 ` Shiraz Saleem [this message]
2021-05-20 14:37 ` [PATCH v6 06/22] i40e: Register auxiliary devices " Shiraz Saleem
2021-05-20 19:49   ` Jason Gunthorpe
2021-05-20 14:37 ` [PATCH v6 07/22] RDMA/irdma: Register auxiliary driver and implement private channel OPs Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 08/22] RDMA/irdma: Implement device initialization definitions Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 09/22] RDMA/irdma: Implement HW Admin Queue OPs Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 10/22] RDMA/irdma: Add HMC backing store setup functions Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 11/22] RDMA/irdma: Add privileged UDA queue implementation Shiraz Saleem
2021-05-20 14:37 ` [PATCH v6 12/22] RDMA/irdma: Add QoS definitions Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 13/22] RDMA/irdma: Add connection manager Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 14/22] RDMA/irdma: Add PBLE resource manager Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 15/22] RDMA/irdma: Implement device supported verb APIs Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 16/22] RDMA/irdma: Add RoCEv2 UD OP support Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 17/22] RDMA/irdma: Add user/kernel shared libraries Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 18/22] RDMA/irdma: Add miscellaneous utility definitions Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 19/22] RDMA/irdma: Add dynamic tracing for CM Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 20/22] RDMA/irdma: Add ABI definitions Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 21/22] RDMA/irdma: Add irdma Kconfig/Makefile and remove i40iw Shiraz Saleem
2021-05-20 14:38 ` [PATCH v6 22/22] RDMA/irdma: Update MAINTAINERS file Shiraz Saleem
2021-05-20 20:03 ` [PATCH v6 00/22] Add Intel Ethernet Protocol Driver for RDMA (irdma) Jason Gunthorpe
2021-05-20 21:17   ` Saleem, Shiraz

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=20210520143809.819-6-shiraz.saleem@intel.com \
    --to=shiraz.saleem@intel.com \
    --cc=anthony.l.nguyen@intel.com \
    --cc=davem@davemloft.net \
    --cc=david.m.ertman@intel.com \
    --cc=dledford@redhat.com \
    --cc=jgg@nvidia.com \
    --cc=kuba@kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --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 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).