diff options
Diffstat (limited to 'drivers/net/ethernet/ibm/ibmvnic.h')
-rw-r--r-- | drivers/net/ethernet/ibm/ibmvnic.h | 31 |
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 | ||
916 | enum 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 | |||
925 | enum ibmvnic_reset_reason {VNIC_RESET_FAILOVER = 1, | ||
926 | VNIC_RESET_MOBILITY, | ||
927 | VNIC_RESET_FATAL, | ||
928 | VNIC_RESET_TIMEOUT}; | ||
929 | |||
930 | struct ibmvnic_rwi { | ||
931 | enum ibmvnic_reset_reason reset_reason; | ||
932 | struct list_head list; | ||
933 | }; | ||
934 | |||
916 | struct ibmvnic_adapter { | 935 | struct 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 | }; |