summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/qlogic/qed/qed.h
diff options
context:
space:
mode:
authorYuval Mintz <Yuval.Mintz@qlogic.com>2015-10-26 11:02:26 +0200
committerDavid S. Miller <davem@davemloft.net>2015-10-27 19:34:43 -0700
commit25c089d78f3833edf614fc377e75e9cf848562f5 (patch)
treeed73f3a4673381189931261c9aec24e8c3d0cf76 /drivers/net/ethernet/qlogic/qed/qed.h
parentfe56b9e6a8d957d6a20729d626027f800c17a2da (diff)
qed: Add basic L2 interface
This patch adds a public API for a network driver to work on top of QED. The interface itself is very minimal - it's mostly infrastructure, as the only content it has after this patch is a query for HW-based information required for the creation of a network interface [I.e., no actual protocol-specific configurations are supported]. Signed-off-by: Manish Chopra <Manish.Chopra@qlogic.com> Signed-off-by: Yuval Mintz <Yuval.Mintz@qlogic.com> Signed-off-by: Ariel Elior <Ariel.Elior@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qlogic/qed/qed.h')
-rw-r--r--drivers/net/ethernet/qlogic/qed/qed.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/net/ethernet/qlogic/qed/qed.h b/drivers/net/ethernet/qlogic/qed/qed.h
index a63ef3120d78..e03371d3e622 100644
--- a/drivers/net/ethernet/qlogic/qed/qed.h
+++ b/drivers/net/ethernet/qlogic/qed/qed.h
@@ -25,6 +25,7 @@
#include <linux/qed/qed_if.h>
#include "qed_hsi.h"
+extern const struct qed_common_ops qed_common_ops_pass;
#define DRV_MODULE_VERSION "8.4.0.0"
#define MAX_HWFNS_PER_DEVICE (4)
@@ -91,13 +92,22 @@ struct qed_qm_iids {
enum QED_RESOURCES {
QED_SB,
+ QED_L2_QUEUE,
QED_VPORT,
+ QED_RSS_ENG,
QED_PQ,
QED_RL,
+ QED_MAC,
+ QED_VLAN,
QED_ILT,
QED_MAX_RESC,
};
+enum QED_FEATURE {
+ QED_PF_L2_QUE,
+ QED_MAX_FEATURES,
+};
+
struct qed_hw_info {
/* PCI personality */
enum qed_pci_personality personality;
@@ -105,6 +115,7 @@ struct qed_hw_info {
/* Resource Allocation scheme results */
u32 resc_start[QED_MAX_RESC];
u32 resc_num[QED_MAX_RESC];
+ u32 feat_num[QED_MAX_FEATURES];
#define RESC_START(_p_hwfn, resc) ((_p_hwfn)->hw_info.resc_start[resc])
#define RESC_NUM(_p_hwfn, resc) ((_p_hwfn)->hw_info.resc_num[resc])
@@ -266,6 +277,9 @@ struct qed_hwfn {
struct qed_mcp_info *mcp_info;
+ struct qed_hw_cid_data *p_tx_cids;
+ struct qed_hw_cid_data *p_rx_cids;
+
struct qed_dmae_info dmae_info;
/* QM init */