Commit Graph

177 Commits

Author SHA1 Message Date
Sandeep Puligilla
e087566368 qcacld-3.0: UMAC: Add support for 2.4Ghz HT40 STA
- Add support for 2.4Ghz HT40 STA.
- Add HT40 OBSS scan start and stop operation.
- Add support for extraction of OBSS scan paramters from beacon
  and probe response.

Change-Id: I58e8d72b8ee922f710af0474ed3efd0438fff3a7
CRs-Fixed: 947086
2016-04-13 21:51:26 -07:00
Kiran Kumar Lokere
9a733a7fcc qcacld-3.0: Remove WLAN_FEATURE_11AC feature flag
Remove WLAN_FEATURE_11AC feature flag

Change-Id: I8c521502a44f2e8a0647843cd7a972497e900c17
CRs-Fixed: 980682
2016-04-13 21:51:25 -07:00
Amar Singhal
b8d4f1575c qcacld-3.0: Change channel nomenclature
Change channel nomenclature to more appropriate names.

Change-Id: If7fcd832a35563896534bab425ca05b528e1de93
CRs-Fixed: 856727
2016-04-13 21:51:25 -07:00
Amar Singhal
7ccdc4ff47 qcacld-3.0: Remove 40mhz bonded channel from driver
40 mhz channel array is redundant and does not give the
correct channel bonding information. Therefore remove
these channels, bonding array, and its associated usage.

Change-Id: I913fb97cdc913b1a027d21b0df526dfd5cd5902f
CRs-Fixed: 856727
2016-04-13 21:51:25 -07:00
Amar Singhal
e4f28eedfd qcacld-3.0: Re-arrange regulatory code.
Re-arrange core regulatory code between HDD and CDS
layers. Move the OS dependent code to HDD.

Change-Id: I8ac26a48d0e8d613b2f6c23fd764e5cf94365c39
CRs-Fixed: 856727
2016-04-13 21:51:25 -07:00
Gupta, Kapil
c68ad460fc qcacld-3.0: Add support for dense roam params
qcacld-2.0 to qcacld-3.0 propagation

In High dense environment roaming should be triggered early
at dense RSSI threshold which provide better throughput result.
Add support for dense roaming parameters to read from ini file
and send to FW with other roaming parameters

CRs-Fixed: 953579
Change-Id: Ia63bfdd1248b4507d988b019f07164a7c75566af
2016-04-13 21:51:24 -07:00
Krunal Soni
e353194792 qcacld-3.0: Add support for changing FTM capability during runtime
Add VENDOR subcmd to support changing of Fine Time Measurement
capability
dynamically. This command can be used by user space application to
change
FTM capability. FTM capability set by user space is intersected with
capability set by firmware to compute new capability value.

Change-Id: I5f3a57e66f2c6a9f3fa8acc7e9da8cb23cb766e3
CRs-Fixed: 968594
2016-04-13 21:51:24 -07:00
Chandrasekaran, Manishekar
ce2172e9ed qcacld-3.0: Fix reason code used during Nss update request
Fix the reason code used during Nss update request. If
there is MCC upgrade or DBS downgrade, the hw mode change
request internally send the Nss update request. But, the
current implementation uses the same fixed reason code
during Nss update request and due to this on receiving the
hw mode change response, the expected callback function is
not getting invoked. Fix this by passing the right reason
code during Nss update request.

CRs-Fixed: 978663
Change-Id: I706cb9a86d66d8601ec87f560459604e562f6037
2016-04-13 21:51:23 -07:00
Chandrasekaran, Manishekar
2859de43af qcacld-3.0: Sanitize the session id before issuing scan
Ensure that the session id is sanitized before issuing
the scan request. During the transient stages of a new
interface when no session exists for that interface and
if a scan is received for that particular interface, it
would result in scan with invalid vdev id. Validate the
session id to avoid the same.

Change-Id: Ib22262493a141491d1d86ae682b14113d303685d
CRs-Fixed: 973773
2016-04-13 21:51:23 -07:00
Chandrasekaran, Manishekar
5c19dc5f8e qcacld-3.0: Set hw mode during channel switch in STA/P2P-CLI case
Set the hw mode, if needed, during channel switch in STA and
P2P-CLI scenario. The STA/P2P-CLI on receiving the channel change
event may need to do a hw mode change to get the best out of the
hw capabilities.

e.g.1, In a STA+SAP concurrency, the STA and SAP are doing SCC on
channel 6. When the STA interface receives a channel event for
channel 36, it is better the driver moves to a DBS scenario.

e.g.2, In a STA+SAP concurrency, the STA is on channel 6 and the
SAP is on channel 36. When the STA interface receives a channel
event for channel 36, it is better the driver moves from a DBS
scenario to a SCC scenario.

For MCC upgrade, the following steps are taken
1. Opportunistic timer is started
2. vdev restart is initiated on the new channel
3. PM will check if MCC upgrade can be done on timer expiry

For DBS downgrade, the following steps are taken
1. PM will initiate HW mode change to DBS right away
2. vdev restart is initiated on the new channel

Change-Id: I202842bf28c3117e8cc91954cdfd3b39a0062f4e
CRs-Fixed: 972184
2016-04-13 21:51:23 -07:00
Krishna Kumaar Natarajan
608291e13b qcacld-3.0: Pass correct data length in oem data response msg
Add data length information in oem data response messages. Currently
maximum response size is passed to upper layers.

Change-Id: Id74d44e03755af9a5402e5409ee5f6b5e7abbb7c
CRs-Fixed: 942260
2016-04-13 21:51:23 -07:00
Varun Reddy Yeturu
9044489d18 qcacld-3.0: Improve default logging for LFR3
Log the improtant messages with respect to roam synch propagation
by default so that they appear in the kernel logs and give an
hint of roaming. Also ensure not to log too much.

CRs-Fixed: 972498
Change-Id: Ia0bd7c9960a29275f872a9ec18173b8c5a08539a
2016-04-13 21:51:22 -07:00
Varun Reddy Yeturu
d521600a10 qcacld-3.0: Change channel bonding mode after roaming
The CB mode could get changed after roaming since the non-AP STA
can roam to an AP which has a different channel bonding mode.
So, derive the CB mode from the IE's and accordingly set in the
connected profile.

CRs-Fixed: 972479
Change-Id: I01daa88d69397fb0e88615656903c43ed623ed38
2016-04-13 21:51:22 -07:00
Krunal Soni
f988222e04 qcacld-3.0: Fix memory leak while cleaning up scan filter
Memory leak observed while cleaning up scan filter in SME module.

Change-Id: Ic4bbf622f1950d1ed6323a45504e4ad57fbf3b09
CRs-Fixed: 973626
2016-04-13 21:51:22 -07:00
Deepak Dhamdhere
641bf32b43 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI conditional compilation
Remove #ifdef WLAN_FEATURE_VOWIFI from host driver source code.
It has alwasys been defined in Kbuild and underlying features
will be permanent in cld3.0. Those features are 11r radio
resource measurement, beacon report, link report, neighbor
report and power constraint.

Please note that WLAN_FEATURE_VOWIFI_11R is used for different
purpose and it is not removed in this change.

CRs-Fixed: 958729
Change-Id: Icd80e9cce08c4662e86ccda94491c1fc22c5756d
2016-04-13 21:51:22 -07:00
Chandrasekaran, Manishekar
e716c40025 qcacld-3.0: Set hw mode during channel switch in SAP/P2P-GO case
Set the hw mode, if needed, during channel switch in SAP and
P2P-GO scenario.

Change-Id: Icef31277465b3a298695ccefb856d9cad8a16108
CRs-Fixed: 969307
2016-04-13 17:58:16 -07:00
Anurag Chouhan
f04e84f24a qcacld-3.0: Add qdf references in place of cdf
Replace CDF references with QDF references.

Change-Id: Ifb4571174719b5fce61dd305545d05628265f317
CRs-Fixed: 981188
2016-03-24 11:58:26 -07:00
Anurag Chouhan
600c3a00be qcacld-3.0: Add QDF mem API's
Replace CDF mem API's with QDF mem API's

Change-Id: Icf247b4dc5b26f4b960dcb98e323b096c1d6076c
CRs-Fixed: 981188
2016-03-24 11:58:16 -07:00
Anurag Chouhan
b2dc16fefe qcacld-3.0: Add QDF trace API's
Replace CDF trace API's with QDF trace API's.

Change-Id: I5b99dce73297f7de8f0755fa0b47dc3f84c78747
CRs-Fixed: 981188
2016-03-24 11:58:11 -07:00
Anurag Chouhan
210db07644 qcacld-3.0: Add QDF MC timer API's
Replace CDF MC timer API's with QDF MC timer API's

Change-Id: If18069e9cb8dbd24c5cdc8bd8def6932f55c0168
CRs-Fixed: 981188
2016-03-24 11:58:08 -07:00
Anurag Chouhan
c554842327 qcacld-3.0: Add QDF utils
Replace CDF utils with QDF utils.

Change-Id: Ib6b3ad56b3268b1be438f3204f91d995f8bb3900
CRs-Fixed: 981188
2016-03-24 11:58:03 -07:00
Anurag Chouhan
a37b5b783a qcacld-3.0: Add QDF lock API's
Replace CDF lock API's with QDF lock API's.

Change-Id: I7c4a59920e17915f077c87457c513e763738c062
CRs-Fixed: 981188
2016-03-24 11:57:57 -07:00
Anurag Chouhan
6d760664ee qcacld-3.0: Add QDF types
Replace CDF types with QDF types

Change-Id: Idd6e65b148efb54f22d6951572957f1c6166465b
CRs-Fixed: 981188
2016-03-24 11:57:54 -07:00
Anurag Chouhan
50220ce67c qcacld-3.0: Add qdf time API's
Replace CDF time API's with QDF time API's.

Change-Id: I3418f5603e5a05219a8470de3a9197928a3a8f13
CRs-Fixed: 981188
2016-03-24 11:57:42 -07:00
Anurag Chouhan
fb54ab0eac qcacld-3.0: Add QDF status
Replace CDF status with QDF status

Change-Id: I7170c8ae4c5bd97a8f0f383af637bb2ec312f082
CRs-Fixed: 981188
2016-03-24 11:57:39 -07:00
Anurag Chouhan
ce0dc99ca8 qcacld-3.0: Add qdf event API's
Replace CDF event API's with QDF event API's

Change-Id: I1d75c9ca01cc6bd7cac42f1ae4c1dd78f37b3d26
CRs-Fixed: 981188
2016-03-24 11:57:34 -07:00
Deepak Dhamdhere
add334b14f qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R option from SME
Conditional compilation option WLAN_FEATURE_VOWIFI_11R is always
defined in cld3.0 and underlying code is permanent in the driver.
Hence, remove #ifdef WLAN_FEATURE_VOWIFI_11R check from SME source
code.

CRs-Fixed: 960105
Change-Id: Ib42c92aaca69c04b98dd42b7aab2a552c88af24e
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
26bda45b30 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R_DEBUG option
Conditional compilation option of #ifdef WLAN_FEATURE_VOWIFI_11R_DEBUG
is used to enable certain roaming logs. It has always been defined,
thus these logs are enabled by default.
Remove it from all the code to always enable those logs.

CRs-Fixed: 936683
Change-Id: I23bba225ce69311d416e6d847c398840919c43aa
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
f9714216c5 qcacld-3.0: Remove some LFR compilation flags from Kbuild
The condition #ifdef WLAN_FEATURE_LFR 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.
Similarly code under WLAN_FEATURE_NEIGHBOR_ROAMING is permanent
part of the driver.
Remove FEATURE_WLAN_LFR and WLAN_FEATURE_NEIGHBOR_ROAMING compiler
flags from Kbuild script.
All the instances of above flags are presumed to be removed
from the driver source code prior to this change.
Remove WLAN_FEATURE_NEIGHBOR_ROAMING_DEBUG compiler flag from
Kbuild and csr_neighbor_roam.c and permanently enable roaming
debug logs.

CRs-Fixed: 936683
Change-Id: Iec251c2a4439ab3d492d9700d242aad401a0dbe0
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
4bd0d82d93 qcacld-3.0: Remove #ifdef FEATURE_WLAN_LFR from SME
The condition #ifdef FEATURE_WLAN_LFR 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.

Removed 2 instances of FEATURE_WLAN_LFR that were not removed
in the previous change.

CRs-Fixed: 936683
Change-Id: Ic1550cc4f15ebd835f24a1cadb7d6bd5ed45edab
2016-02-08 15:50:45 -08:00
Deepak Dhamdhere
d97bfb3a53 qcacld-3.0: Use scan for preauth from LIM in roaming
Use single channel scan request for preauth operation, similar to
remain-on-channel. Remove all roaming preauth logic from WMA.

Change-Id: Ie3783306e0ff5b8a5bbcb6437e982590b03fe040
CRs-Fixed: 957094
2016-02-08 15:50:45 -08:00
Varun Reddy Yeturu
d8455813df qcacld-3.0: Allow Roaming Abort command to firmware
qcacld-2.0 to qcacld-3.0 propagation

Add the roaming abort command to the allowed commands
list and pass on the request to the firmware

CRs-Fixed: 943717
Change-Id: I711d3bd8629813af71e4db8659a1915ccfeaaa72
2016-02-08 15:50:45 -08:00
Edhar, Mahesh Kumar
eb31abd2bf qcacld-3.0: Change to retrieve valid non 11P channels
11P channels are wrongly retrieved along with other valid channels
while using csr_get_cfg_valid_channels function call.
AS per the current implementation the above function call is used
to get the valid channel used for scan and roaming scenarios. Since
11P channels are not valid in scan and roaming scenarios
csr_get_cfg_valid_channels function is updated to retrieve non 11P
valid channels.

Change-Id: I25567b2791ac776480534534e10d900c2f9a6184
CRs-Fixed: 965218
2016-02-08 15:50:45 -08:00
Naveen Rawat
504adcee54 qcacld-3.0: Fix memory leak in OEM data request
Fix memory leak in OEM data request, by freeing data buffer as message
passed down the layers is consumed in lower layers.

Change-Id: I8e8dc0c96de3055fada2c19139bc9e0c03b9e73e
CRs-Fixed: 964290
2016-02-08 15:50:45 -08:00
Krishna Kumaar Natarajan
53ca2905f8 qcacld-3.0: Add support for get and set OEM capability
Add support for get and set OEM capability over private netlink
socket.

Change-Id: I8c4a8c19633845750ec9d2492632471c68ba410d
CRs-Fixed: 949469
2016-02-08 15:50:45 -08:00
Kiran Kumar Lokere
5302ab6468 qcacld-3.0: Enable Tx beamformee in SAP mode
Currently Tx beamformee feature is enabled only in STA mode.
Add knob to enable or disable the Tx beamformee feature in SAP
mode

Change-Id: I6ea218b3bff6c973688aad716a3f1a3c8acc469b
CRs-Fixed: 963034
2016-02-08 15:50:44 -08:00
Naveen Rawat
df0a7e7a92 qcacld-3.0: Remove unnecessary lock from sme_roam_free_connect_profile
Remove unnecessary acquiring of SME lock in sme_roam_free_connect_profile
since this function does not access any SME structures.

Change-Id: I0ddafc4276ef5028b48fda0ae3ea4e6a0c23245e
CRs-Fixed: 958839
2016-02-08 15:50:44 -08:00
Sandeep Puligilla
c8f0c797a4 qcacld-3.0: Fix memory leak in scan
Free the scan request parameters after scan
request is posted to scan queue.

Change-Id: I370249f9ef6b4180a106acb5e6929351ad4a0467
CRs-Fixed: 964341
2016-02-08 15:50:43 -08:00
Krunal Soni
03a882bead qcacld-3.0: Fix all comments given as part of IBSS+STA code changes
Fix all the comments given during code review of IBSS+STA changes.

Change-Id: If675f55b612f9412c803fc3587a352c9967d1fbe
CRs-Fixed: 963738
2016-02-08 15:50:43 -08:00
Prashanth Bhatta
75fa9a1d99 qcacld-3.0: hdd: Refactor wlan_startup (phase 4)
In HDD, hdd_wlan_startup which is called by probe is beast of a
function to maintain. Over time it has grown to such an extent
that it is almost 800 lines of code with in a single function.
Divide the beast into logical smaller functions.

Fix style issues like conditional compilation with in the
function and other minor ones.

Change-Id: Iec2dc3aac934bbb90b87d4e8581e877e5b0a561c
CRs-fixed: 959287
2016-02-08 15:50:43 -08:00
Amar Singhal
a297bfa739 qcacld-3.0: More regulatory cleanups
Remove typedef tPowerdBm. Rename and use linux style for channel
enum, channel state, channel power and country source data
structures.

Change-Id: Iebc59e6f001ccdb403c7445f4cea02c6a8141366
CRs-Fixed: 856727
2016-02-08 15:50:43 -08:00
Amar Singhal
7a1726aefe qcacld-3.0: Change regulatory data structures style
Change regulatory data structures and APIs to linux style.
Change the references to the data structures accordingly.
Leave data structures that would be deleted in subsequent
iterations as is.

Change-Id: I68dcd3485d3fb3d98f648b5844508356c3f3c29d
CRs-Fixed: 856727
2016-02-08 15:50:42 -08:00
Amar Singhal
7f1f3ecd53 qcacld-3.0 : Remove the local regdomain mapping
Remove the local country to regdomain mapping in the driver.
Return a fixed regdomain index 0 to the caller. Also update
copyright for cds_regdomain.h for 2015.

Change-Id: I33e0a861b0a3bd95b20becb2d765b8300688ec4c
CRs-Fixed: 856727
2016-02-08 15:50:42 -08:00
Srinivas Girigowda
fb796d1985 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirSmeAssocCnf
Replace tSirMacAddr with cdf_mac_addr in tSirSmeAssocCnf.

Change-Id: I0b267ad09aac1f44079477cfde8d13265c1f2264
CRs-Fixed: 898864
2016-02-08 15:50:42 -08:00
Srinivas Girigowda
1a245364d6 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirSmeDisassocReq
Replace tSirMacAddr with cdf_mac_addr in tSirSmeDisassocReq.

Change-Id: I9d0b77e0ce624c48ca0fea2774c0f63285793cee
CRs-Fixed: 898864
2016-02-08 15:50:42 -08:00
Srinivas Girigowda
dd3c513e76 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirSmeDisassocRsp
Replace tSirMacAddr with cdf_mac_addr in tSirSmeDisassocRsp.

Change-Id: Ia196615e99506b4fa80a7d611cdefd2e7d2150fa
CRs-Fixed: 898864
2016-02-08 15:50:42 -08:00
Srinivas Girigowda
e13cc34fa3 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirSmeDisassocInd
Replace tSirMacAddr with cdf_mac_addr in tSirSmeDisassocInd.

Change-Id: Icdf3420c24762f919df73d57dffdf1b51151a0e8
CRs-Fixed: 898864
2016-02-08 15:50:42 -08:00
Srinivas Girigowda
5f3c81a672 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirSmeDeauthCnf
Replace tSirMacAddr with cdf_mac_addr in tSirSmeDeauthCnf.

Change-Id: I16b399bcb76a6dd3fcc35c52e5822e988d4e5001
CRs-Fixed: 898864
2016-02-08 15:50:42 -08:00
Srinivas Girigowda
9efa10edc0 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirSmeDeauthRsp
Replace tSirMacAddr with cdf_mac_addr in tSirSmeDeauthRsp.

Change-Id: I7036160f39ff69be5f937a71769e057d8906f2d3
CRs-Fixed: 898864
2016-02-08 15:50:42 -08:00
Srinivas Girigowda
9cf95c5d6f qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirSmeDeauthRsp
Replace tSirMacAddr with cdf_mac_addr in tSirSmeDeauthRsp.

Change-Id: I383f867f8847f66bc6f6e99ee2a56b4bc89ebe5b
CRs-Fixed: 898864
2016-02-08 15:50:42 -08:00