summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/sfc/nic.h
diff options
context:
space:
mode:
authorDaniel Pieczko <dpieczko@solarflare.com>2015-05-06 02:57:14 +0300
committerDavid S. Miller <davem@davemloft.net>2015-05-09 23:16:47 +0300
commit45b2449e3f7d870bdd06c6a8557e8d95d59f8737 (patch)
treebb07cb86bc1a11b1cf3987ff48be648ba400c287 /drivers/net/ethernet/sfc/nic.h
parent8d9f9dd4487e4792601759b4376441bcc9e54f95 (diff)
downloadlinux-45b2449e3f7d870bdd06c6a8557e8d95d59f8737.tar.xz
sfc: record the PF's vport ID in nic_data
The default port ID of EVB_PORT_ID_ASSIGNED is a "magic" number for the MCFW to select the physical port of the PF. If other vswitches and vports are created on top of the default firmware configuration, the ID of the newly created vport is then required when passed to MCDI commands. Currently, this doesn't happen so the vport_id is never changed, but a subsequent patch will change this behaviour so that other vswitches and vports are created. The vport_id recorded in nic_data is only relevant for PFs. VFs will have their vports created by their parent PF, and in that case the parent PF will record the vport ID of each VF. For a VF, nic_data->vport_id is expected to remain at the default value. Signed-off-by: Shradha Shah <sshah@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/sfc/nic.h')
-rw-r--r--drivers/net/ethernet/sfc/nic.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/sfc/nic.h b/drivers/net/ethernet/sfc/nic.h
index 17ee3ae9eb73..f29e4ecad2ed 100644
--- a/drivers/net/ethernet/sfc/nic.h
+++ b/drivers/net/ethernet/sfc/nic.h
@@ -493,6 +493,7 @@ enum {
* %MC_CMD_GET_CAPABILITIES response)
* @rx_dpcpu_fw_id: Firmware ID of the RxDPCPU
* @tx_dpcpu_fw_id: Firmware ID of the TxDPCPU
+ * @vport_id: The function's vport ID, only relevant for PFs
*/
struct efx_ef10_nic_data {
struct efx_buffer mcdi_buf;
@@ -513,6 +514,7 @@ struct efx_ef10_nic_data {
u32 datapath_caps;
unsigned int rx_dpcpu_fw_id;
unsigned int tx_dpcpu_fw_id;
+ unsigned int vport_id;
};
int efx_init_sriov(void);