summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/qlogic/qed/qed_l2.h
diff options
context:
space:
mode:
authorMintz, Yuval <Yuval.Mintz@cavium.com>2017-06-04 13:31:04 +0300
committerDavid S. Miller <davem@davemloft.net>2017-06-04 23:08:31 -0400
commit3b19f47820756f9905e7ef184747fbb3c8ed062f (patch)
tree8a5d91ac4e788a3b6627a0d9b3d248daf0d6a228 /drivers/net/ethernet/qlogic/qed/qed_l2.h
parentbbe3f233ec5ea99049f33471c0c0d0d2a78e2116 (diff)
qed: Make VF legacy a bitfield
Until now we used to have a single VF legacy compatibility mode, one that affected the place of the Rx producers of those VFs [mostly]. As PF would soon support allocating CIDs for VFs instead of having a static CID<->queue configuration for them, we'll need to have an additional legacy mode since existing VFs would need to continue on using the older mode of operation. Change the infrastrucutre so that the legacy would be able to indicate which of the legacy behaviors is needed for a given VF. Signed-off-by: Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qlogic/qed/qed_l2.h')
-rw-r--r--drivers/net/ethernet/qlogic/qed/qed_l2.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/net/ethernet/qlogic/qed/qed_l2.h b/drivers/net/ethernet/qlogic/qed/qed_l2.h
index 59c2ba3eb6c1..3f94c2207dff 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_l2.h
+++ b/drivers/net/ethernet/qlogic/qed/qed_l2.h
@@ -301,10 +301,11 @@ struct qed_queue_cid_vf_params {
*/
u8 vf_qid;
- /* Indicates a VF is legacy, making it differ in:
+ /* Indicates a VF is legacy, making it differ in several things:
* - Producers would be placed in a different place.
+ * - Makes assumptions regarding the CIDs.
*/
- bool vf_legacy;
+ u8 vf_legacy;
u8 qid_usage_idx;
};
@@ -335,8 +336,9 @@ struct qed_queue_cid {
*/
u8 qid_usage_idx;
- /* Legacy VFs might have Rx producer located elsewhere */
- bool b_legacy_vf;
+ u8 vf_legacy;
+#define QED_QCID_LEGACY_VF_RX_PROD (BIT(0))
+#define QED_QCID_LEGACY_VF_CID (BIT(1))
struct qed_hwfn *p_owner;
};