qcacld-3.0: Enhance TDLS antenna switch operation

qcacld-2.0 to qcacld-3.0 propagation

Remove TDLS teardown wait event for antenna switch 1x1 -> 2x2 and
avoid band specific validation.

Change-Id: If29c102e59ba0f9df528e988e9d5e517a9849c55
CRs-Fixed: 961949
diff --git a/core/hdd/inc/wlan_hdd_tdls.h b/core/hdd/inc/wlan_hdd_tdls.h
index 4ad93bc..f17857d 100644
--- a/core/hdd/inc/wlan_hdd_tdls.h
+++ b/core/hdd/inc/wlan_hdd_tdls.h
@@ -135,6 +135,16 @@
 } eTDLSSupportMode;
 
 /**
+ * enum tdls_spatial_streams - TDLS spatial streams
+ * @TDLS_NSS_1x1_MODE: TDLS tx/rx spatial streams = 1
+ * @TDLS_NSS_2x2_MODE: TDLS tx/rx spatial streams = 2
+ */
+enum tdls_spatial_streams {
+	TDLS_NSS_1x1_MODE = 0,
+	TDLS_NSS_2x2_MODE = 0xff,
+};
+
+/**
  * enum tTDLSCapType - tdls capability type
  *
  * @eTDLS_CAP_NOT_SUPPORTED: tdls not supported
@@ -369,6 +379,7 @@
  * @op_class_for_pref_off_chan_is_set: op class for preferred off channel set
  * @peer_idle_timer: time to check idle traffic in tdls peers
  * @is_peer_idle_timer_initialised: Flag to check idle timer init
+ * @spatial_streams: Number of TX/RX spatial streams for TDLS
  * @reason: reason
  * @state_change_notification: state change notification
  */
@@ -400,6 +411,7 @@
 	uint8_t op_class_for_pref_off_chan_is_set;
 	qdf_mc_timer_t peer_idle_timer;
 	bool is_peer_idle_timer_initialised;
+	uint8_t spatial_streams;
 	tTDLSLinkReason reason;
 	cfg80211_exttdls_callback state_change_notification;
 } hddTdlsPeer_t;
@@ -670,7 +682,8 @@
 void hdd_tdls_context_init(hdd_context_t *hdd_ctx);
 void hdd_tdls_context_destroy(hdd_context_t *hdd_ctx);
 int wlan_hdd_tdls_antenna_switch(hdd_context_t *hdd_ctx,
-				 hdd_adapter_t *adapter);
+				 hdd_adapter_t *adapter,
+				 uint32_t mode);
 
 #else
 static inline void hdd_tdls_notify_mode_change(hdd_adapter_t *adapter,
@@ -696,7 +709,8 @@
 static inline void hdd_tdls_context_destroy(hdd_context_t *hdd_ctx) { }
 
 static inline int wlan_hdd_tdls_antenna_switch(hdd_context_t *hdd_ctx,
-					       hdd_adapter_t *adapter)
+					       hdd_adapter_t *adapter,
+					       uint32_t mode)
 {
 	return 0;
 }