qed: Add CONFIG_QED_SRIOV
Add support for a new Kconfig option for qed* driver which would allow [eventually] the support in VFs. This patch adds the necessary logic in the PF to learn about the possible VFs it will have to support [Based on PCI configuration space and HW], and prepare a database with an entry per-VF as infrastructure for future interaction with said VFs. Signed-off-by: Yuval Mintz <Yuval.Mintz@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
631ad4a3e7
commit
32a47e72c9
@@ -152,6 +152,7 @@ enum QED_RESOURCES {
|
||||
|
||||
enum QED_FEATURE {
|
||||
QED_PF_L2_QUE,
|
||||
QED_VF,
|
||||
QED_MAX_FEATURES,
|
||||
};
|
||||
|
||||
@@ -360,6 +361,7 @@ struct qed_hwfn {
|
||||
/* True if the driver requests for the link */
|
||||
bool b_drv_link_init;
|
||||
|
||||
struct qed_pf_iov *pf_iov_info;
|
||||
struct qed_mcp_info *mcp_info;
|
||||
|
||||
struct qed_hw_cid_data *p_tx_cids;
|
||||
@@ -484,6 +486,10 @@ struct qed_dev {
|
||||
u8 num_hwfns;
|
||||
struct qed_hwfn hwfns[MAX_HWFNS_PER_DEVICE];
|
||||
|
||||
/* SRIOV */
|
||||
struct qed_hw_sriov_info *p_iov_info;
|
||||
#define IS_QED_SRIOV(cdev) (!!(cdev)->p_iov_info)
|
||||
|
||||
unsigned long tunn_mode;
|
||||
u32 drv_type;
|
||||
|
||||
@@ -514,6 +520,7 @@ struct qed_dev {
|
||||
const struct firmware *firmware;
|
||||
};
|
||||
|
||||
#define NUM_OF_VFS(dev) MAX_NUM_VFS_BB
|
||||
#define NUM_OF_SBS(dev) MAX_SB_PER_PATH_BB
|
||||
#define NUM_OF_ENG_PFS(dev) MAX_NUM_PFS_BB
|
||||
|
||||
|
Reference in New Issue
Block a user