diff options
author | Roopa Prabhu <roprabhu@cisco.com> | 2011-09-22 03:44:33 (GMT) |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-09-27 05:10:23 (GMT) |
commit | 8749b427f213e14303dfef4c1b9770f05f67916d (patch) | |
tree | dceb58406cf84eb9c5b8f9cc82e261b60997985f /drivers/net/ethernet/cisco/enic/enic.h | |
parent | 7a269ffad72f3604b8982fa09c387670e0d2ee14 (diff) | |
download | linux-fsl-qoriq-8749b427f213e14303dfef4c1b9770f05f67916d.tar.xz |
enic: Add SRIOV support
This patch adds support to enable SRIOV on enic devices. Enic SRIOV VF's are dynamic vnics and will use the same driver code as dynamic vnics.
Signed-off-by: Roopa Prabhu <roprabhu@cisco.com>
Signed-off-by: Sujith Sankar <ssujith@cisco.com>
Signed-off-by: Christian Benvenuti <benve@cisco.com>
Signed-off-by: David Wang <dwang2@cisco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/cisco/enic/enic.h')
-rw-r--r-- | drivers/net/ethernet/cisco/enic/enic.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/net/ethernet/cisco/enic/enic.h b/drivers/net/ethernet/cisco/enic/enic.h index ce76d9a..13ff78e 100644 --- a/drivers/net/ethernet/cisco/enic/enic.h +++ b/drivers/net/ethernet/cisco/enic/enic.h @@ -32,7 +32,7 @@ #define DRV_NAME "enic" #define DRV_DESCRIPTION "Cisco VIC Ethernet NIC Driver" -#define DRV_VERSION "2.1.1.24" +#define DRV_VERSION "2.1.1.28" #define DRV_COPYRIGHT "Copyright 2008-2011 Cisco Systems, Inc" #define ENIC_BARS_MAX 6 @@ -49,6 +49,10 @@ struct enic_msix_entry { void *devid; }; +/* priv_flags */ +#define ENIC_SRIOV_ENABLED (1 << 0) + +/* enic port profile set flags */ #define ENIC_PORT_REQUEST_APPLIED (1 << 0) #define ENIC_SET_REQUEST (1 << 1) #define ENIC_SET_NAME (1 << 2) @@ -83,11 +87,15 @@ struct enic { u8 mc_addr[ENIC_MULTICAST_PERFECT_FILTERS][ETH_ALEN]; u8 uc_addr[ENIC_UNICAST_PERFECT_FILTERS][ETH_ALEN]; unsigned int flags; + unsigned int priv_flags; unsigned int mc_count; unsigned int uc_count; u32 port_mtu; u32 rx_coalesce_usecs; u32 tx_coalesce_usecs; +#ifdef CONFIG_PCI_IOV + u32 num_vfs; +#endif struct enic_port_profile pp; /* work queue cache line section */ @@ -120,5 +128,6 @@ static inline struct device *enic_get_dev(struct enic *enic) } void enic_reset_addr_lists(struct enic *enic); +int enic_sriov_enabled(struct enic *enic); #endif /* _ENIC_H_ */ |