wlan:On HB failure disconnect from AP if beacon receive count is 0.

In case of HB failure from Firmware, Host sends a probe request
and wait for probe response and if probe response is received host
ignores the HB.

If for some reason firmware/host have not received a single beacon
after conection but is getting the probe response on receiving
HB failure, host ignores the HB failure. Also in this case host will
not allow to enter BMPS as it has not received any beacon to get the
TSF and thus draining the battery.

As part of fix to recover from this situation, if number of beacon
received in host is 0 and it receives a HB failure, disconnect from
the AP.

Change-Id: I39f3afd8d0e6e9ba9805ce6aebe47906f2ad3ac6
CRs-fixed: 766976
Wlan: In IBSS send ADDBA req soon as it transmit a frame for the TID

In IBSS if a joiner leave the group by stopping the IBSS network and
then again returns to the group,before the creator consider it inactive.
In this case the creator might be waiting for some x seq number from
the joiner for the old BA session created the last time they joined.
Now as joiner is restarted it will transmit from seq# 1, until seq# x
is reached the creator will not respond.

To avoid this the joiner needs to send the ADDBA req with the new seq
number.But if the trafic on joiner is less than WDA_BA_TX_FRM_THRESHOLD
the ADDBA req is not sent.

As a part of the fix, in case of IBSS, if DUT have sent a frame for the
TID, an ADDBA session will be initiated and WDA_BA_TX_FRM_THRESHOLD will
not be considered.

Change-Id: I59ead969e2a0e118424014a62717904092c010f5
CRs-Fixed: 766936
CCX: Avoid PMKID and send correct MIC for CCKM+RSN scenario

In the current design, PMKID is sent in RSN IE in reassoc req for
CCKM roaming.When AP receives CCKM IE and PMKID, it gets confused
and rejects the reassociation.So in case of CCKM+RSN, don't send
PMKID.
Also, in reassoc request, MIC was going 0 in CCKMIE.This MIC is
calculated by calling platform driver API.When this API returns
SUCCESS then result is copied in MIC buffer but if this API
returns EINPROGRESS/EBUSY, then driver wait for the event and once
the event is completed it does not copy the result in MIC buffer.
So changes are done to copy this result in MIC buffer in case of
BUSY/INPROGRESS status.

Change-Id: Id363374b76e6f18a9a14f22a592141e7228895e4
CRs-Fixed: 763969
Wlan: Release 3.2.3.468

Release 3.2.3.468

Change-Id: I8afe2787255bb928529045ab619e1420ac627b0d
CRs-Fixed: 688141