Commit Graph

599 Commits

Author SHA1 Message Date
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
Houston Hoffman
43d47fa659 qcacld-3.0: change skb->cb to support 64 bit paddrs(1/2)
Praprogation from qcacld-3.0 to qcacld-3.1.

Change skb->sb such that it is overlayed between tx
and rx and each one of then still fits 48 bytes.
Note that this will break IPA and it will be fixed
subsequently by another change.

Change-Id: I96168aee99dbdbecbdbd4259597e179b02d29f5d
CRs-Fixed: 881090
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
2016-03-24 11:56:31 -07:00
Dhanashri Atre
83d373d681 qcacld-3.0: TSO (TCP Segmentation Offload) Clean-up
propagation from qcacld-3.0 to qcacld-3.1

Changes for TSO clean-up to address:
- conditional compile within function bodies
- change function return value
- convert macro to static inline function, etc
- Enable TSO for SAP mode

Change-Id: I29e764f64f7866d4c016ac31cd701c54526cc75d
CRs-Fixed: 881090
2016-03-23 13:45:10 -07:00
Komal Seelam
ad5a90d420 qcacld-3.0: Remove CDS instances in HIF
Remove CDS instances in HIF for WIN/MCL convergence.
a. Update con_mode param in HIF
b. Have callbacks to CDS from HIF to update CDS global context

Change-Id: Ie9a65b5684f38bb2bf4feac615b97415e2bc7ed9
CRs-Fixed: 967765
2016-03-23 13:45:10 -07:00
Komal Seelam
3d20286183 qcacld-3.0: Make hif_opaque_softc as global HIF Context
Rename ol_softc to hif_opaque_softc.

Change-Id: I48f6e4b6eb04ccfa2050cca052e1ad67a66e3479
CRs-Fixed: 967765
2016-03-23 13:45:10 -07:00
Komal Seelam
ec702b0afb qcacld-3.0: Create ini config structures for each modules
Update ini configuration parameters for each modules in the driver

Change-Id: I00b1f2a9690060a15854ad84d819e9b883e95c41
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
9ef9458c04 qcacld-3.0: Create BMI info structures for BMI Phase
BMI info is needed during BMI Phase. The structure holds
the physical address and virtual address of Command and response
of BMI buffer.

Change-Id: I97e8dad2ccba1352677cdf37e2f62204128d4b06
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
42c16a1606 qcacld-3.0: Move Targetdef from ol_softc to ol_context
Targetdef is needed during BMI phase of PLL switching.
Move this member to ol_context.

Change-Id: Ibd7d9a916d9e61c1f7c13d4e18d018add94a6fa3
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
0863349dd3 qcacld-3.0: Make Ramdump Work as member of ol_context
Initialize Ramdump Work as member of ol_context instead of
global work. Pass ol_context as private data to host to target
module.

Change-Id: I97712f40c4bfcd7d854e2a89727d73fd7178598c
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
5a6e508834 qcacld-3.0: Pass ol_context to all BMI API's
Remove ol_softc as argument in BMI API's and pass ol_context
as the default argument.

Change-Id: I66b5daed047c7efe9a01cac30d2d0e7427aab2cd
CRs-Fixed: 967765
2016-03-23 13:45:08 -07:00
Komal Seelam
d910649caa qcacld-3.0: Create OL BMI Context in global CDS Context.
Create bmi context in global cds context for BMI operations.

Modify HIF BMI API to pass dma command and response
Pass BMI DMA Command and Response address to HIF BMI API as
arguments instead of using bmi context in HIF.

Change-Id: Ifdb51581a33665b1857c63e33b1c26bbd99575eb
CRs-Fixed: 967765
2016-03-23 13:45:08 -07:00
Komal Seelam
02d0934a4a qcacld-3.0: update WMA with ini config for max_peers
Max_peers configuration is needed only by WMA. Remove dependency of
ol layer for max_peers and move it WMA.

Change-Id: I336b02ae84c72c70ca459425b38b197e5fe551a0
CRs-Fixed: 967765
2016-03-23 13:45:07 -07:00
Komal Seelam
48152e1a16 qcacld-3.0: Make cdf_device_t as global device structure
aps_osdev/NIC_DEV is not needed in cld driver. Remove it's
reference in BMI and pktlog code. Use global cdf_device context for
memory allocations in BMI and pktlog files.

Initialize cdf_device global structure in HDD.

Change-Id: Idf257e196f86b8f0aae669ce05950a1212e5fd99
CRs-Fixed: 967765
2016-03-23 13:45:07 -07:00
Komal Seelam
04d3d6a364 qcacld-3.0: Carve Out hif_softc out of ol_softc
Carve out hif_softc for internal hif usage.
ol_softc acts a opaque handle to other modules.

Change-Id: I2f29aea93b0a64169a3e095e1d5bddca15aadbd7
CRs-Fixed: 967765
2016-03-23 13:45:07 -07:00
Komal Seelam
7fde14caba qcacld-3.0: Query HIF for FastPath support
Data Path bypasses HTC layer for better throughput's.
Instead of dereferencing HIF structures, query HIF for fastpath
mode support

Change-Id: Iad2ae907e2d5345a71f5b64bd29f81dde4358460
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
c12e675c50 qcacld-3.0: Remove cds_get_context in HIF
Refactor Transport Layer from cds_get_context and pass the hif context
to all the API's to operate.

Change-Id: I2fb376fda12951a77007f46ceb351bb2e7740ace
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
588ad2bc46 qcacld-3.0: Refactor BMI members from ol_softc
Group BMI members and access bmi info from hif instead of
dereferencing hif context.

Change-Id: I9108ec1b719ec3e62dd19cc3341cbc1c868bf5de
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
c4b2863aa8 qcacld-3.0: Refactor Ramdump API and PKTLOG API
Ramdump collection can be supported by buses other than PCIe, hence
move it to main files so other buses can also access those API's.

PKTLOG is a DataPath Feature, HIF doesn't need to have any info
of it. Move pktlog implementation to HTT folder.

Change-Id: I113ef9bb44438cd7a1ba70799ce7e72f2eaa7121
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
c11bb2226c qcacld-3.0: Refactor ol_sc for target_info and ini params
Clean up driver modules to query hif for the handle, instead
of accessing hif context in other modules.

Change-Id: If179255b355916794c9097cf8ff1cbc64ba5df84
CRs-Fixed: 967765
2016-03-23 13:45:05 -07:00
Komal Seelam
7922cf8a6f qcacld-4.0: Removing HIF/HTC from driver project
Remove HIF/HTC from driver project.
This is moved to host common project

Change-Id: I7dd6d4117a197a474304aa4a28edacbca924b795
2016-03-23 13:45:05 -07:00
Satish Singh
9673f3a977 Release 5.0.0.161
Release 5.0.0.161

Change-Id: I09d45bfb7110880e7f2a38261c397ce346628b99
CRs-Fixed: 688141
2016-02-08 15:50:46 -08:00
Houston Hoffman
b58d8be3c4 qcacld-3.0: Reduce wma timeout values
Linux kernel would crash before the timeout values were reached.

Change-Id: I958ea6b1023c6e847b578ed3d709dbf67a9d59e9
CRs-Fixed: 970658
2016-02-08 15:50:46 -08:00
Houston Hoffman
103f39b70f qcacld-3.0: Fix wma_bus_suspend suspend type
Suspend type should be CDF_SYSTEM_SUSPEND.  Host gets
stuck while trying to post runtime suspend messages.

Change-Id: I5deeba401b7bda2a057802389d620149a92fcfbc
CRs-Fixed: 970656
2016-02-08 15:50:46 -08: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
9f09e75f87 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R option from HDD
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 HDD source
code.

CRs-Fixed: 960105
Change-Id: Ifdad17f5b85148dfa4bb459939168beec4b5b1cf
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
9a7110c40f qcacld-3.0: Remove #ifdef FEATURE_WLAN_LFR from MAC
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.
Remove #ifdef FEATURE_WLAN_LFR compiler flag from MAC so that the code
will always be compiled in.

CRs-Fixed: 936683
Change-Id: I6e5afb8eeb5f4f3a0bb7f7b007ffb07cbeff1adf
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
Ryan Hsu
535d16a34f qcacld-3.0: Update bss_type and privacy params for cfg80211_get_bss
Commmit: 6eb1813 ("cfg80211: add bss_type and privacy arguments in
cfg80211_get_bss()")

This commit update the new bss_type and privacy argument and is
merged in Kernel 4.1, so adding the Kernel version check accordingly.

Change-Id: I2bda71fc3cb2e126a1059a963f72f7a194bf9580
CRs-fixed: 963677
2016-02-08 15:50:45 -08:00
Ryan Hsu
ceb390ceb4 qcacld-3.0: Fix compilation if MSM_PLATFORM is not enabled
This CDF_TRACE macro is declared in i_cdf_trace.h and is used
when MSM_PLATFORM is not enabled.
But the inclusion is not in the cdf_nbuf.h, so that it causes
the compilation issue, while CDF_TRACE is not found.

Since this function is used on the data path, so that the warning
is not necessary for non MSM platform.

And also refactor it to avoid compile flag inside the function.

Change-Id: I061eb35f5eee21c76fd486d378e53b35c02b5636
CRs-fixed: 966754
2016-02-08 15:50:45 -08:00
Ryan Hsu
5713c48cc4 qcacld-3.0: Remove usage of f_dentry for Kernel upgrade
Commit: 78d28e6 ("kill f_dentry macro")

Above commit is to remove the marco of f_dentry since Kernel 3.19.
Avoid to use the Kernel version check by using the field directly.

Change-Id: I7a4b45c62afed402d49d709bb1cb870db352b70e
CRs-fixed: 966066
2016-02-08 15:50:45 -08:00
Ryan Hsu
e0e49278a8 qcacld-3.0: Fix hif_bus_prevent_linkdown compilation
hif_bus_prevent_linkdown() calls to cnss_wlan_pm_control(), which
is only defined when CONFIG_PCI_MSM is enabled, fix the conditional
compilation.

Also fix a typo of RUNTIME_PM to FEATURE_RUNTIME_PM.

Change-Id: I9d4cd65ee0020ca1b41d026c3124317ce854ea92
CRs-fixed: 966771
2016-02-08 15:50:45 -08:00
Tushnim Bhattacharyya
e67bfc7385 qcacld-3.0: Configure maximum active session count to 3
Set the maximum active session count to 3. All the sessions may or
may not be in connected state.

Change-Id: I3f348228fbdf787da0e4c954cb243b2252af9524
CRs-Fixed: 967911
2016-02-08 15:50:45 -08:00
Dhanashri Atre
1f0cbe43e3 qcacld-3.0: Handle MIC Error in Chatter Mode
qcacld-2.0 to qcacld-3.0 propagation

Add support to handle an error indicated by the fw in offload mode.
In this case - MIC error type.

Change-Id: I53363bdbaafad7fab0a6e067a43892a3066abbb6
CRs-Fixed: 791274
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
Govind Singh
0a60e55f46 qcacld-3.0: Abstract bus debug dump in hif layer
Remove direct call to CE debug routine from ol_fw
and hif main layer. Abstract the bus debug dump
register routines to respective hif-bus layer.

CRs-Fixed: 964031
Change-Id: I8b6f325f12aaa99e4f7461f9da26b7f60259c8f8
2016-02-08 15:50:45 -08:00
Edhar, Mahesh Kumar
abfad4f201 qcacld-3.0: Dump TX/RX count on get_station cfg80211 function call
qcacld-2.0 to qcacld-3.0 propagation

print TX/RX packet count values during get_station
function call to help in debugging data path issues.

Change-Id: I0798123f96111bbadc4014f5f04193d88977a38b
CRs-Fixed: 956473
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
Krishna Kumaar Natarajan
1ae4911ae5 qcacld-3.0: Add fine timing measurement capabilities from FW
Add support to use fine timing measurement capabilities coming
from the Firmware.

Currently INI config is being used for setting initiator
and responder roles. With this change, intersection of INI
config and FW indicated capability will be used.

Change-Id: If20bc8de2b6ec12bc638b75806e2a870a5ebc189
CRs-Fixed: 942290
2016-02-08 15:50:45 -08:00
Krunal Soni
7ff8603751 qcacld-3.0: Fix follow-up comments given during auth frame processing
Fix all the comments given while reindenting lim_process_auth_frame
API.

Change-Id: Ic9a53ebb8f61909e73783a142b50222c2a82ae49
CRs-Fixed: 824222
2016-02-08 15:50:45 -08:00
Krunal Soni
a8f946d75b qcacld-3.0: Reindent lim_process_auth_frame
This patch is to reindent lim_process_auth_frame

Change-Id: I7bd67b31574ba8da3c51b0948ef9f6f8d680c3ce
CRs-Fixed: 824222
2016-02-08 15:50:45 -08:00
Satish Singh
20e079ffa4 Release 5.0.0.160
Release 5.0.0.160

Change-Id: Ie65b9fdb1412a6d205e4b96d9c60d7847b7a2485
CRs-Fixed: 688141
2016-02-08 15:50:45 -08:00
Sandeep Puligilla
19ddda272c qcacld-3.0: Add wma handler for vdev delete and peer delete responses
- Add handler for the vdev delete and peer delete response at WMA.
- As part of timeout handler, assert if the response is not
  received in 3 seconds.

Change-Id: I7b20254013266414174f686e1f3918822adc65d8
CRs-fixed: 960173
2016-02-08 15:50:45 -08:00
Satish Singh
dd96ba9864 Release 5.0.0.159
Release 5.0.0.159

Change-Id: I3f104ce7093b6ba6d9a9bb166c519de998a8ac43
CRs-Fixed: 688141
2016-02-08 15:50:45 -08:00
Komal Seelam
98760bacd4 qcacld-3.0: Fix Compilation error on WLAN_FEATURE_11W disabled
eCSR_AUTH_TYPE_RSN_8021X_SHA256 is defined only when 11W feature
is enabled. The code is using the identifier
eCSR_AUTH_TYPE_RSN_8021X_SHA256 without conditional compilation.

Access eCSR_AUTH_TYPE_RSN_8021X_SHA256 under 11W feature flag.

Change-Id: I5e1e513c12cf526045991749a487ac89d1773659
CRs-Fixed: 947938
2016-02-08 15:50:45 -08:00
Wu Gao
2c3a80018b qcacld-3.0: Update channel width and center freq
qcacld-2.0 to qcacld-3.0 propagation
"cfg80211_chandef_create" doesn't support channel width "HT80". If
create chandef by it, channel width set to HT40 when working on
SAP VHT80 mode. Which cause a mismatch between supplicant and host
driver. Update channel width and center freq for VHT80 mode

Change-Id: I9c5734fca4bcc02436aea8684ca9d0b968eb1dee
CRs-Fixed: 944618
2016-02-08 15:50:44 -08:00