wlan: sme changes to parse reason-code in del_sta

del_station callback function in cfg80211 is enhanced to also include
the Deauthentication or Disassociation reason code which shall be
passed by the supplicant. To ensure the host driver interops with the
both versions of del_station implementation, a flag CFG80211_DEL_STA_V2
is defined in the kernel. Enhance the driver to rely on this flag and
thus use the respective del_station callback functionality.
If CFG80211_DEL_STA_V2 flag is defined, pass the reason-code received
from nl-layer to SME layer.

Change-Id: I13ba738f67a60da0f616c310250ff4545a861271
CRs-Fixed: 746133
diff --git a/CORE/SME/src/sme_common/sme_Api.c b/CORE/SME/src/sme_common/sme_Api.c
index 128f2c8..ca03f57 100644
--- a/CORE/SME/src/sme_common/sme_Api.c
+++ b/CORE/SME/src/sme_common/sme_Api.c
@@ -3250,11 +3250,11 @@
     \brief To disassociate a station. This is an asynchronous API.
     \param hHal - Global structure
     \param sessionId - sessionId of SoftAP
-    \param pPeerMacAddr - Caller allocated memory filled with peer MAC address (6 bytes)
+    \param pDelStaParams -Pointer to parameters of the station to deauthenticate
     \return eHalStatus  SUCCESS  Roam callback will be called to indicate actual results
   -------------------------------------------------------------------------------*/
 eHalStatus sme_RoamDeauthSta(tHalHandle hHal, tANI_U8 sessionId,
-                                tANI_U8 *pPeerMacAddr)
+                             struct tagCsrDelStaParams *pDelStaParams)
 {
    eHalStatus status = eHAL_STATUS_FAILURE;
    tpAniSirGlobal pMac = PMAC_STRUCT( hHal );
@@ -3270,8 +3270,7 @@
    {
       if( CSR_IS_SESSION_VALID( pMac, sessionId ) )
       {
-         status = csrRoamIssueDeauthStaCmd( pMac, sessionId, pPeerMacAddr,
-                     eSIR_MAC_DEAUTH_LEAVING_BSS_REASON);
+         status = csrRoamIssueDeauthStaCmd( pMac, sessionId, pDelStaParams);
       }
       else
       {