Commit Graph

178 Commits

Author SHA1 Message Date
Varun Reddy Yeturu
d5939f8b45 qcacld-3.0: Optimize LFR3 roam synch propagation
The current roam sync propagation for LFR3.0 in the host driver is
based on queuing and message processing mechanism. This can lead
to many unknown sequence of operations as there might be other
messages sitting in the queue which may interrupt with this
operation. Hence, it would be good to introduce a callback mechanism
which take care of running the code to execution completely in case
of roam synch propagation.
It also improves to reduce the roam delay by 50 percent as compared
to the existing mechanism.

CRs-Fixed: 962290
Change-Id: I4af569b1e3020a64beb606e8bbffd7613775138f
2016-02-08 15:50:40 -08:00
Govind Singh
24db1ed70b qcacld-3.0: Fix build failure in cds module
pRoamInfo is not initialized in cds_force_sap_on_scc function.
This is resulting in build failure when FEATURE_WLAN_FORCE_SAP_SCC
flag is enabled. Modify cds_force_sap_on_scc function to fix the same.

CRs-Fixed: 953618
Change-Id: I136d33f108dab19c236c7bf1aadf7608c0673baf
2016-02-08 15:50:40 -08:00
Prashanth Bhatta
915b9d342f qcacld-3.0: Use CDF APIs for spin lock
sched_scan_lock and connection_status_lock's are using spin lock
APIs directly from kernel. Change to use CDF APIs for spin lock.

Change-Id: I0f56624df34682150b402fc36b9dfdba36a598f3
CRs-fixed: 959287
2016-02-08 15:50:39 -08:00
Tushnim Bhattacharyya
24e12a6966 qcacld-3.0: Add config for the MCC restriction on Adrastea emulation
On M2M emulation platform we have a fixed mapping between macs, hence
vdev transition & MCC support is not possible on this platform. But MPR
platform doesn't have these limitations. This config allows at runtime
enable/disable vdev transition & MCC support depending on the platform
it is running on.

Change-Id: I17a92dce695ee30f7994f040d4bc612a38680f3e
CRs-fixed: 922181
2016-02-08 15:50:39 -08:00
Tushnim Bhattacharyya
4adb368b6a qcacld-3.0: cleanup cds_concurrency files
Code cleanup & update of correct copyright information.

Change-Id: Icee77761cf00cee3b633bd260d5af38286a4f22c
CRs-fixed: 956394
2016-02-08 15:50:39 -08:00
Ryan Hsu
e839f8f3fb qcacld-3.0: clean up hddLog API in wlan_hdd_green_ap.c
Clean up wlan_hdd_green_ap.c to use the unified hdd logging APIs.

Change-Id: If444137793895dea9b0e0ed894f238ac00363f2d
CRs-fixed: 959696
2016-02-08 15:50:39 -08:00
Srinivas Girigowda
110d620564 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirNsOffloadReq
Replace tSirMacAddr with cdf_mac_addr in tSirNsOffloadReq.

Change-Id: Ic53f963b3df46d67bf5f202ac6aaf7c49ab858a9
CRs-Fixed: 898864
2016-02-08 15:50:39 -08:00
Rajeev Kumar
217f217599 qcacld-3.0: Fix compilation issues on MSM8998 RUMI platform
Fix compilation issues on MSM8998 RUMI platform caused by
CONFIG_CNSS not being defined and un-initialized local variable usage.

Change-Id: Iaf8bec493a42ec9fd09e1b2b6aa085be8de4bc8a
CRs-Fixed: 959249
2016-02-08 15:50:39 -08:00
Abhishek Singh
acfdc92a12 qcacld-3.0: Remove roam cmd from sme active list in case of failure
qcacld-2.0 to qcacld-3.0 propagation

-In case CSR is already connected and it receives connect with the
 same profile, csr will silently return and try to send the connect
 success to HDD. But if roamInfo staId is 0 this roam command is not
 removed from sme active list and leads to active list timeout.
 This back to back connect to CSR can happen if HDD and CSR go out
 of sync and is taken care already.

-Also if disconnect is received in case scan for ssid is in progress
 it will be dropped and roam session state is set to disconnecting.
 But this roam session state is not reset for the fresh connection
 and thus if next connect also issue scan for ssid the connect
 command will be dropped assuming disconnect is in progress.

This change removes roam cmd from sme active list in case of
above failure and resets roam session state for fresh connections.
Also does some cleanup in HDD disconnect command.

Change-Id: I222626f1da6bdad83a5264668dde9aafd3dda149
CRs-Fixed: 953196
2016-02-08 15:50:39 -08:00
Abhishek Singh
03f992e41d qcacld-3.0: Abort previous connect if fresh connect is received
qcacld-2.0 to qcacld-3.0 propagation

If connect is received with previous connect in progress, driver
doesn't abort the previous connect and process the new connect.
In csr if new connect is for same profile, sme directly indicate
connection success to hdd and thus hdd increment the active
session count twice for both connect.

Now if one more connect is received it will try to disconnect the
previous connection and decrements the active session count.
So the count is 1 though no session is active.

Eventually if same scenario happens again the active session
count will become 2 with no active session. As max active session
limit is 2, no more connect is accepted.

To avoid this, if fresh connect is received and previous connect is
in progress abort the previous connect.

CRs-Fixed: 958963
Change-Id: I1544bc6e7894ffeda1956a19a553b6fe4e35f988
2016-02-08 15:50:39 -08:00
Abhishek Singh
7996eb7a8e qcacld-3.0: Send management frame indication directly to HDD from PE
qcacld-2.0 to qcacld-3.0 propagation.

If MC thread stall while waiting on any event, In case of WPS,
probe requests may get accumulated in PE message queue.

Now every time MC thread process a probe request,
eWNI_SME_MGMT_FRM_IND msg is posted in SME message queue. But
unless PE queue is fully processed SME queue won't be processed.
This will gradually use all vos message wrapper.

To avoid this register a callback to send management frame
indication directly to HDD from PE which avoids posting message to
SME queue.

Change-Id: Ib83700825112cc52dade594909bfa8993909ac29
CRs-Fixed: 944961
2016-02-08 15:50:39 -08:00
Jeff Johnson
bd561a9d95 qcacld-3.0: Convert wlan_hdd_driver_ops.c to unified logging
Currently the HDD code uses a variety of logging APIs.  In qcacld-3.0
HDD should converge on a unified set of logging APIs.  Update
wlan_hdd_driver_ops.c to use the unified set of APIs.

Change-Id: I5620e91797412c0dbf32c1071b3eefd54f54aca7
CRs-Fixed: 937590
2016-02-08 15:50:38 -08:00
Jeff Johnson
103cc5b594 qcacld-3.0: Convert wlan_hdd_lro.c to unified logging
Currently the HDD code uses a variety of logging APIs.  In qcacld-3.0
HDD should converge on a unified set of logging APIs.  Update
wlan_hdd_lro.c to use the unified set of APIs.

Change-Id: I72bf2b55390e1c72706077d22f61e59d17d14f13
CRs-Fixed: 937662
2016-02-08 15:50:38 -08:00
Jeff Johnson
9991f47eb5 qcacld-3.0: Fix incorrect logging in hdd_send_re_assoc_event()
Change "qcacld-3.0: Roaming enhancement to allow multiple ssid"
(Change-Id If4953e64f9e0485edec85167a7bc1dd6ca7c2047) added some
incorrect logging to function hdd_send_re_assoc_event().  The intent
was to perform a hex dump of the buf_ssid_ie and final_req_ie buffers,
but in reality the code actually uses these buffers as logging format
strings.  Fix this by invoking the correct API to perform a hex dump.

Change-Id: Id861ececd119ea7247ce24c7c8ea9173f13703d3
CRs-Fixed: 958752
2016-02-08 15:50:38 -08:00
Jeff Johnson
1aa2909060 qcacld-3.0: Convert wlan_hdd_nan.c to unified logging
Currently the HDD code uses a variety of logging APIs.  In qcacld-3.0
HDD should converge on a unified set of logging APIs.  Update
wlan_hdd_nan.c to use the unified set of APIs.

Change-Id: I4dcc61656f1cd45d3a2c9d63441c27a733385328
CRs-Fixed: 937673
2016-02-08 15:50:38 -08:00
Rajeev Kumar
d71df8271f qcacld-3.0: Configure FW WMI logging for adrastea and rome
In adrastea multithreaded firmware WMI logging infrastructure
is not yet ready. Disable WMI FW logging for adrastea and enable
it for ROME based targets.

Change-Id: I64c858681f57a2a013fd23bcd9204f59ff638102
CRs-Fixed: 959416
2016-02-08 15:50:38 -08:00
Yun Park
ab828073af qcacld-3.0: Remove code to clean pending_cons_req from WLAN_CLIENT_CONNECT
qcacld-2.0 to qcacld-3.0 propagation

There is a race condition between TX_RESUME opcode, where checks
pending_cons_req before sending WLAN_CONS grant notification to IPA,
and WLAN_CLIENT_CONNECT event where clearing the pending_cons_req.
We don't need to clear pending_cons_req from WLAN_CLIENT_CONNECT
event, which is actually cleared by TX_RESUME opcode.

Change-Id: Icc5d05bc77800251b031efd0c07b0feaa2ae921d
CRs-Fixed: 952171
2016-02-08 15:50:38 -08:00
Yun Park
6a46ad80ee qcacld-3.0: call IPA cleanup when cds_enable failed
qcacld-2.0 to qcacld-3.0 propagation

When CDS enable fails after IPA init, IPA cleanup is missed.
This will cause a system crash later as IPA resource is not properly
teared down.

Change-Id: I563e92e4ed5319b6489dcc8cffb6a802d54e8549
CRs-fixed: 949015
2016-02-08 15:50:38 -08:00
Prashanth Bhatta
9e14305000 qcacld-3.0: Maintain driver state in CDS
Driver state of loading, unloading, logp are maintained in
multiple modules like HDD, CDS. Change to maintain the driver
state in CDS and provide CDS APIs to find out the state of the
driver so that any of the module can query it.
Also rename the logp to recovery in progress for clarity purpose.

Change-Id: I8e1864e1bc7f3b1dd6f4eb804ce2578c6695967d
CRs-fixed: 958659
2016-02-08 15:50:38 -08:00
Prashanth Bhatta
d1d446914b qcacld-3.0: hdd: Clean-up FTM initialization
FTM initialization has conditional compilation within the
function. Clean-up and create separate functions to initialize
and remove FTM during driver probe and remove.

Change-Id: I04890f49447c22b6d7dd93baf0a266ea9f5a4ca7
CRs-fixed: 957630
2016-02-08 15:50:38 -08:00
Krishna Kumaar Natarajan
9ac8efd704 qcacld-3.0: Add data length in oem data request msg
Add data length information in oem data request
messages.

Change-Id: Ibc132d31dd4345c4168dad23b4acf699f2a8c8e6
CRs-Fixed: 942260
2016-02-08 15:50:38 -08:00
Deepak Dhamdhere
68929ec509 qcacld-3.0: Optionally report raw rssi value to supplicant
qcacld-2.0 to qcacld-3.0 propagation

Add raw rssi in the beacon header from WMI to beacon descriptor.
Pass it up to SME and report it to supplicant through a call to
wlan_hdd_cfg80211_inform_bss_frame().
It can be enabled as a .ini configuration parameter "gInformBssRssiRaw".
Default is 1, it will report raw rssi by default.
Roaming decisions are based on rssi field of beacon descriptor,
its interpretation and usage are unchanged.

CRs-Fixed: 815344
Change-Id: I6dacdc0b333c093d16a74f8cf36471dfc183ce56
2016-02-08 15:50:37 -08:00
Tushnim Bhattacharyya
ca50b3204f qcacld-3.0: cleanup cds_concurrency files
Remove hdd context from argument list of all the cds concurrency
APIs.

Change-Id: Ic9f94ab2e0f975a745776675c254ecbd5ba6b203
CRs-fixed: 956394
2016-02-08 15:50:37 -08:00
Orhan K AKYILDIZ
4f20db56bc qcacld-3.0: fix softlock-up caused by co-existence of NAPI and rx-thread.
If rxthread is on, NAPI will call the kernel-thread context API (instead
of softirq context) API to transfer the packet to the stack.

Eventually, this part will be re-considered when multi-queue NAPI gets
in, which will eliminate the rx-thread.

Change-Id: Ib3d4d1450fb36f5c1e710802ceaab5d015e20c7d
CRs-Fixed: 957299
2016-02-08 15:50:37 -08:00
Peng Xu
4d67c8fbb9 qcacld-3.0: Vendor command to scale TX power
This is for FR23278: Runtime configuration of softAP Tx power.
The value that send by the vendor command will set the power levels
as below:
	0 --- no scaling, 100%
	1 --- 50% of max power
	2 --- 25% of max power
	3 --- 12% of max power
	4 --- minimum power
Another vendor command is to decrease the power by actual db value.

CRs-fixed: 941772
Change-Id: I61d48299b4af361c214e2ab8bb1fa848161431de
2016-02-08 15:50:37 -08:00
Peng Xu
f5d60c8524 qcacld-3.0: Clean up usage of con_mode
Separate con_mode from adapter mode definition and clean up usage of
con_mode.

CRs-fixed: 917959
Change-Id: Ia058826cdb873558ab8703fcd4f80d37d3f782df
2016-02-08 15:50:37 -08:00
Srinivas Girigowda
ca40f98808 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in WowlEnterParams
Replace tSirMacAddr with cdf_mac_addr in WowlEnterParams.

Change-Id: Ifc2edce83693fb01ef4ea642727902d493347225
CRs-Fixed: 898864
2016-02-08 15:50:36 -08:00
Yuanyuan Liu
edcbc30ce9 qcacld-3.0: Add support of setting FW debug mode
FW needs the debug mode from WLAN INI file. After parsing INI file,
WLAN driver passes the mode value to platform driver, which uses
QMI message to exchange information with FW.

Change-Id: Ifd01b18bcfafad2344196d80ab17c605cca35972
CRs-Fixed: 942237
2016-02-08 15:50:36 -08:00
Naveen Rawat
14298b94a9 qcacld-3.0: For LFR 3, save reassoc frame sent OTA by firmware
In LFR3 reassoc frame is sent by firmware and host or supplicant is not aware
of its content. Because of this supplicant does not have complete information
to perform EAP exchange with authenticator if fresh EAP exchange is requested.
To fix this:
1) Take the reassoc req frame passed by firmware and save that to pe session
   This frame will then be passed to supplicant through usual path.
2) In case of FT connection, do not pass key replay counter attribute to
   supplicant.

Change-Id: I51dd8004c910b45c7f25e9cd140448e592b096b3
CRs-Fixed: 943711
2016-02-08 15:50:36 -08:00
Ryan Hsu
cb118cf9df qcacld-3.0: hdd: Add EGAP interface and ini configuration
qcacld-2.0 to qcacld-3.0 propagation

This change introduces 4 ini parameters to configure to firmware
    - gEenableEGAP:   forcely overwrite firmware feature capb
    - gEGAPInactTime: inactivity timeout value
    - gEGAPWaitTime:  wait timeout value before enter EGAP mode
    - gEGAPFeatures:  the feature flag firmware would support
        WMI_AP_PS_EGAP_F_ENABLE_PHYERR_DETECTION       0x1
        WMI_AP_PS_EGAP_F_ENABLE_PWRSAVE_BY_PS_STATE    0x2
        WMI_AP_PS_EGAP_F_ENABLE_PWRSAVE_BY_INACTIVITY  0x4

Integrate the hdd_wlan_kick_green_ap to execute the Green AP
and EGAP features, depending on the ini and also the tgt_cfg
capability flag,

Change-Id: Ic5db3990aa0a028ed700f6e2f60a11e75c0f1ed1
CRs-fixed: 929063
2016-02-08 15:50:35 -08:00
Ryan Hsu
3c8f79f22c qcacld-3.0: Add Enhanced Green AP interfaces and event handler
qcacld-2.0 to qcacld-3.0 propagation

The firmware reports the Enhanced Green AP (EGAP) service
(EGAP_SERVICE) feature flag to indicate the support of EGAP
feature.

The EGAP is to offload the legacy Green AP feature to firmware
in order to aggressively enable the Green AP other than wait
for host control latency.

Add the knob to hold the EGAP infomation when firmware support
it, also populate the information up to hdd target config.

And then add a SME interface to allow hdd layer to configure
the EGAP configuration.

Change-Id: I9be927369e7cf07731f8e9ba49d65224e05c340b
CRs-fixed: 929063
2016-02-08 15:50:35 -08:00
Deepak Dhamdhere
9d1615c29b qcacld-3.0: Remove #ifdef WLAN_FEATURE_NEIGHBOR_ROAMING from HDD
The condition #ifdef WLAN_FEATURE_NEIGHBOR_ROAMING is used to include
some of the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.

Remove #ifdef WLAN_FEATURE_NEIGHBOR_ROAMING compiler flag from HDD so
that the code will always be compiled in.

CRs-Fixed: 936683
Change-Id: I777d48f26aea36383747281bd4fef2eadc7beefb
2016-02-08 15:50:35 -08:00
Ganesh Kondabattini
d6641d8473 qcacld-3.0: Transmit tdls mgmt frames only for STA in authenticated state
qcacld-2.0 to qcacld-3.0 propagation

Before transmitting the tdls mgmt frames the STA should be
connected to AP and it should be in authenticated state.

Change-Id: Id79d4e6ad55a6b80e2fac2369f48bedf6551bcd6
CRs-Fixed: 893784
2016-02-08 15:50:34 -08:00
Sreelakshmi Konamki
c88f537ccb qcacld-3.0: Add missing MTRACE log in HDD
qcacld-2.0 to qcacld-3.0 propagation

Currently, MTRACE logs are not captured for the events posted
from SME to HDD. So, add missing MTRACE log in hdd_smeRoamCallback()
and also add missing eRoamCmdStatus enums in get_eRoamCmdStatus_str().

Change-Id: I26ef8c651b7b873939341b643056ff977a40ea19
CRs-Fixed: 855875
2016-02-08 15:50:34 -08:00
Kiran Kumar Lokere
37d3aa2c93 qcacld-3.0: Log the rssi info from FW in sta kick out event
qcacld-2.0 to qcacld-3.0 propagation.

Log the RSSI info of the disconnect if the STA disconnection is
due to STA kick out event from FW.

Change-Id: I0fad3f8d0e7990f4211b7840bed7605a4b97f3cb
CRs-Fixed: 874197
2016-02-08 15:50:34 -08:00
Krishna Kumaar Natarajan
4d090352a5 qcacld-3.0: Check tdls off-channel passed is not a DFS channel
qcacld-2.0 to qcacld-3.0 propagation

Add check to validate if non-DFS channel is passed as
TDLS off channel via driver command and INI config.

Change-Id: I6696c47d438bdcc1b8733241e60ca5c52fb1022f
CRs-Fixed: 915972
2016-02-08 15:50:34 -08:00
Jeff Johnson
d399e90f96 qcacld-3.0: Relocate key adapter fields
This is a qcacld-2.0 to qcacld-3.0 propagation.

A crash was observed internally where wlan_hdd_ipv6_changed() was
accessing unmapped memory.  This function has logic which looks at key
fields in the netdev's private data area to make sure the netdev
belongs to this driver before it further utilizes the netdev.  The
problem with this logic is when it is invoked with non-wlan netdevs,
if those netdevs were created with small private data areas, then the
offsets at which the key fields would exist in the wlan netdev may
fall outside the memory mapped for those other netdevs.  In order to
avoid accessing unmapped memory in those cases, relocate the key wlan
netdev fields to the beginning of the wlan adapter structure.

Change-Id: Idb830fd18e5724a684505c9d110f6f1de5622eac
CRs-Fixed: 946373
2016-02-08 15:50:34 -08:00
Jeff Johnson
19caeb103e qcacld-3.0: Relocate init of tx_action_cnf_event
HDD has a completion variable which is used to synchronize the sending
of an action frame with the send confirmation.  Proper use of a
completion variable requires a specific sequence of steps:
- Initialize the completion variable
- Perform the activity that has asynchronous processing
- Wait on the completion variable

Currently HDD does not correctly follow this model for sending action
frames; it incorrectly initializes the completion variable after it
has invoked the UMAC function which sends the frame.  This creates a
race condition whereby the TX could complete and set the completion
variable before the completion variable is initialized, and then when
the completion variable is initialized the fact that the activity has
already completed will be lost.

In order to prevent this race condition and conform to the sequence of
steps required for proper completion variable usage, relocate the
initialization of tx_action_cnf_event.

Change-Id: Ibc54b8dd62c3a828d1a43922d89e7970af325f6e
CRs-Fixed: 950132
2016-02-08 15:50:34 -08:00
Jeff Johnson
f6358f1060 qcacld-3.0: Remove OEM DATA request callback support
qcacld-2.0 to qcacld-3.0 propagation.

The SME OEM DATA request API supports a callback function pointer,
however this callback functionality is obsolete.  Therefore remove
this functionality.

Change-Id: Id06910841ad625412ba1f3222407e471f4d7edd7
CRs-Fixed: 911404
2016-02-08 15:50:34 -08:00
Chandrasekaran, Manishekar
34e325a210 qcacld-3.0: Remove usage of fixed broadcast sta id for IBSS
Remove the usage of fixed broadcast sta id of 1 for IBSS.
Fixed broadcast std id of 1 was getting used for IBSS since
no concurrency was supported for IBSS earlier and sta id 1
was always used as broadcast sta id. Now with concurrency
being allowed with IBSS, this fixed broadcast sta id cannot
be used. Make the broadcast sta id dynamic.

Change-Id: I79222e276fbdd41a8938a3a26e58af9335f17ade
CRs-Fixed: 953523
2016-02-08 15:50:34 -08:00
Chandrasekaran, Manishekar
12a818a9a6 qcacld-3.0: Wait for MC thread clean-up during IBSS leave
Ensure that wait for MC thread clean-up happens as part
of IBSS leave so that by the time upper stack calls the
change interface, we are all set to proceed further.

CRs-Fixed: 949956
Change-Id: Ib0ee79fe38cbf3c462bd8157c4e014c086f5c29f
2016-02-08 15:50:34 -08:00
Krunal Soni
95a6dbc2a7 qcacld-3.0: Don't remove p2p device adapter when SAP comes up
With current code, as soon as change interface command comes to
convert interface type to AP, it removes p2p device adapter which
is not required. In new platform, various concurrencies are supported
which includes SAP+GO, SAP+STA+GO, and so on. To make these
concurrencies work properly, no longer remove the p2p device adapter
when SAP comes up.

Change-Id: Icb1729f25e0604e0c342a136d9b4cf332e50d7c8
CRs-Fixed: 953788
2016-02-08 15:50:34 -08:00
Krunal Soni
7bc4f912e9 qcacld-3.0: Add support for IBSS+SAP
Provide necessary code changes to support IBSS+SAP concurrency for
emulation platform only.

Change-Id: I76dc023bd48ee79ba706f5a7009b1d8462c6b712
CRs-Fixed: 953796
2016-02-08 15:50:33 -08:00
Krunal Soni
2c68f23ccc qcacld-3.0: add support for IBSS+STA concurrency
Make necessary changes to support IBSS+STA concurrency for SCC and
2G+5G MCC. Don't support intraband MCC due to known limitation
for this specific concurrency.

Change-Id: I325b5f51abeee3da0a75f90723c8b882f71dbef2
CRs-Fixed: 953788
2016-02-08 15:50:33 -08:00
Kiran Kumar Lokere
5aeae9a956 qcacld-3.0: Fix the crash in wlan re-initialization
Perform cfg download before the SME config update since the
SME config update operation accesses the cfg database.

Change-Id: Ic2d5b6d192ed164b20011b3eeaea6126951b87e8
CRs-Fixed: 948896
2016-02-08 15:29:35 -08:00
Manikandan Mohan
22b8372341 qcacld-3.0: Fix MDM compilation errors
Fix compilation errors in MDM features and when compiled against
MDM kernel

Change-Id: Iee8fb5f88bfff22117e087f8879d4caf50a945c1
CRs-fixed: 952116
2016-02-08 15:29:28 -08:00
Jeff Johnson
32ad1749ce qcacld-3.0: Prepare HDD for unified logging
Currently the HDD code uses a variety of logging APIs. In qcacld-3.0
HDD should converge on a unified set of logging APIs. Due to the large
number of changes required, this will have to be done in a phased
approach, with conversions occurring one source file at a time.

One potential problem that could occur, in the absence of any
protection, is that once a particular source file has been converted
to the unified set of logging APIs, someone could introduce new code,
either as a new feature or as a change propagation from qcacld-2.0,
which re-introduces invocations of legacy logging APIs.  In order to
help prevent this, add conditional compilation to the hddLog() API so
that it will not be available to source files which have been
converted to the unified set of logging APIs.  This will cause a
compilation error if hddLog() is called from source files which have
been converted.

Once all of the source files have been converted, the hddLog() macro
itself can be removed from the source code.

Change-Id: I5debb0eb9cd89c08fdfcc4fc117776160ed34501
CRs-Fixed: 949529
2016-02-08 15:29:22 -08:00
Samuel Ahn
563506ac0f qcacld-3.0: Fix transmitting in OCB mode
qcacld-2.0 to qcacld-3.0 propagation

When transmitting a packet in OCB mode, the station does not need to
be associated to an access point.

CRs-Fixed: 863620
Change-Id: I71b7ad6afa10321a7c7cde597a727bed7454f644
2016-02-08 15:28:11 -08:00
Hanumantha Reddy Pothula
4532302d70 qcacld-3.0: Don't process TX frame in unauthenticated state
qcacld-2.0 to qcacld-3.0 propagation

Process TX frame only when STA state is in Connected state
otherwise drop the frame.

Change-Id: Id384bb4a11bc2783b8017a8b4fac67ba4f708cb5
CRs-Fixed: 778274
2015-12-28 22:35:56 -08:00
Ryan Hsu
6139d2de9d qcacld-3.0: Fix the incorrect mcs rate index conversion
qcacld-2.0 to qcacld-3.0 propagation

Driver would get the tx rate info from firmware and converts it
to mcs index or legacy rate for userspace.

The problem here is when firmware creates a valid ratesets,
it includes all the subset of lower grade rates.
e.g

 - VHT80 would include VHT80/VHT40/VHT20, VHT40 include VHT40/HT20
 - HT40 would include HT40/HT20
 - NSS2 would include NSS2 and NSS1

So that firmware would not only use one rateset, but would use all
other valid rates, the fix is to go through all other possibilities
to make sure the rate look up can find the correct mcs index.

Change-Id: I5df9059b73954951c4adec56002a3eba80915752
CRs-fixed: 936078
2015-12-28 22:35:56 -08:00