qcacld-3.0: Do not send WMI commands in ROAM_HO_FAIL handling

When firmware sends WMI_ROAM_REASON_HO_FAILED event to host,
it has already deleted the peer. Host should not send peer
and vdev cleanup commands to firmware.

Add disassoc_reason field to roamCmd to indicate that CSR wants to
disconnect because of ROAM_HO_FAIL. Copy that information to PE
session, send it to WMA using WMA_DELETE_BSS_HO_FAIL_REQ.
Add wma_delete_bss_ho_fail() to take care of driver state cleanup
without sending commands to firmware.

CRs-Fixed: 1083649
Change-Id: Icdd7571214ea5510c0cdbc44c69d6b5060f5892c
diff --git a/core/mac/src/include/sir_params.h b/core/mac/src/include/sir_params.h
index 738fbd9..b050354 100644
--- a/core/mac/src/include/sir_params.h
+++ b/core/mac/src/include/sir_params.h
@@ -253,9 +253,11 @@
 #define SIR_HAL_TIMER_ADJUST_ADAPTIVE_THRESHOLD_IND \
 					   (SIR_HAL_ITC_MSG_TYPES_BEGIN + 44)
 #define SIR_HAL_SET_LINK_STATE             (SIR_HAL_ITC_MSG_TYPES_BEGIN + 45)
+#define SIR_HAL_DELETE_BSS_HO_FAIL_REQ     (SIR_HAL_ITC_MSG_TYPES_BEGIN + 46)
+#define SIR_HAL_DELETE_BSS_HO_FAIL_RSP     (SIR_HAL_ITC_MSG_TYPES_BEGIN + 47)
 
 /*
- * (SIR_HAL_ITC_MSG_TYPES_BEGIN + 46) to
+ * (SIR_HAL_ITC_MSG_TYPES_BEGIN + 48) to
  * (SIR_HAL_ITC_MSG_TYPES_BEGIN + 57) are unused
  */