aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/ibm/ibmvnic.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/ethernet/ibm/ibmvnic.h')
-rw-r--r--drivers/net/ethernet/ibm/ibmvnic.h31
1 files changed, 25 insertions, 6 deletions
diff --git a/drivers/net/ethernet/ibm/ibmvnic.h b/drivers/net/ethernet/ibm/ibmvnic.h
index a69979f6f19d..4702b48cfa44 100644
--- a/drivers/net/ethernet/ibm/ibmvnic.h
+++ b/drivers/net/ethernet/ibm/ibmvnic.h
@@ -913,6 +913,25 @@ struct ibmvnic_error_buff {
913 __be32 error_id; 913 __be32 error_id;
914}; 914};
915 915
916enum vnic_state {VNIC_PROBING = 1,
917 VNIC_PROBED,
918 VNIC_OPENING,
919 VNIC_OPEN,
920 VNIC_CLOSING,
921 VNIC_CLOSED,
922 VNIC_REMOVING,
923 VNIC_REMOVED};
924
925enum ibmvnic_reset_reason {VNIC_RESET_FAILOVER = 1,
926 VNIC_RESET_MOBILITY,
927 VNIC_RESET_FATAL,
928 VNIC_RESET_TIMEOUT};
929
930struct ibmvnic_rwi {
931 enum ibmvnic_reset_reason reset_reason;
932 struct list_head list;
933};
934
916struct ibmvnic_adapter { 935struct ibmvnic_adapter {
917 struct vio_dev *vdev; 936 struct vio_dev *vdev;
918 struct net_device *netdev; 937 struct net_device *netdev;
@@ -922,7 +941,6 @@ struct ibmvnic_adapter {
922 dma_addr_t ip_offload_tok; 941 dma_addr_t ip_offload_tok;
923 struct ibmvnic_control_ip_offload_buffer ip_offload_ctrl; 942 struct ibmvnic_control_ip_offload_buffer ip_offload_ctrl;
924 dma_addr_t ip_offload_ctrl_tok; 943 dma_addr_t ip_offload_ctrl_tok;
925 bool migrated;
926 u32 msg_enable; 944 u32 msg_enable;
927 945
928 /* Statistics */ 946 /* Statistics */
@@ -962,7 +980,6 @@ struct ibmvnic_adapter {
962 u64 promisc; 980 u64 promisc;
963 981
964 struct ibmvnic_tx_pool *tx_pool; 982 struct ibmvnic_tx_pool *tx_pool;
965 bool closing;
966 struct completion init_done; 983 struct completion init_done;
967 int init_done_rc; 984 int init_done_rc;
968 985
@@ -1007,9 +1024,11 @@ struct ibmvnic_adapter {
1007 __be64 tx_rx_desc_req; 1024 __be64 tx_rx_desc_req;
1008 u8 map_id; 1025 u8 map_id;
1009 1026
1010 struct work_struct vnic_crq_init;
1011 struct work_struct ibmvnic_xport;
1012 struct tasklet_struct tasklet; 1027 struct tasklet_struct tasklet;
1013 bool failover; 1028 enum vnic_state state;
1014 bool is_closed; 1029 enum ibmvnic_reset_reason reset_reason;
1030 struct mutex reset_lock, rwi_lock;
1031 struct list_head rwi_list;
1032 struct work_struct ibmvnic_reset;
1033 bool resetting;
1015}; 1034};