These are pci specific power management features. These should
be consolidated instead of littering bus agnostic code.
Change-Id: I366f1d14ab04368d77a144bebaeb038c1469abed
CRs-Fixed: 986480
Need to support SNOC and PCI dynamically.
Core BSP code is responsible for SNOC firmware
loading and crash dumps.
Change-Id: Ia16076809f2b74be6f32ad5015b79b1fe2c13ca3
CRs-Fixed: 986480
hif_device_id type is a opaque pointer that abstracts out
some of the pci data structures.
Change-Id: Ib472490b9de26cae291f86fd0e3c05af40e6951e
CRs-Fixed: 986480
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>
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
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
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
Targetdef is needed during BMI phase of PLL switching.
Move this member to ol_context.
Change-Id: Ibd7d9a916d9e61c1f7c13d4e18d018add94a6fa3
CRs-Fixed: 967765
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
Remove ol_softc as argument in BMI API's and pass ol_context
as the default argument.
Change-Id: I66b5daed047c7efe9a01cac30d2d0e7427aab2cd
CRs-Fixed: 967765
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
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
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
Carve out hif_softc for internal hif usage.
ol_softc acts a opaque handle to other modules.
Change-Id: I2f29aea93b0a64169a3e095e1d5bddca15aadbd7
CRs-Fixed: 967765
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
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
Group BMI members and access bmi info from hif instead of
dereferencing hif context.
Change-Id: I9108ec1b719ec3e62dd19cc3341cbc1c868bf5de
CRs-Fixed: 967765
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
Clean up driver modules to query hif for the handle, instead
of accessing hif context in other modules.
Change-Id: If179255b355916794c9097cf8ff1cbc64ba5df84
CRs-Fixed: 967765
Suspend type should be CDF_SYSTEM_SUSPEND. Host gets
stuck while trying to post runtime suspend messages.
Change-Id: I5deeba401b7bda2a057802389d620149a92fcfbc
CRs-Fixed: 970656
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
- 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
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
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
qcacld-2.0 to qcacld-3.0 propagation
If a connect is received with previous connect already in progress,
sta connect state is moved from connecting to disconnecting and
disconnect is initiated to stop the previous connect.
If previous is present in sme/roam pending queue the disconnect
will abort the previous connect by removing the cmd from pending
queue. In this case the connect state is not moved back to
not connected from disconecting.
Thus the current connect command fails and all new connect command
will fail as the connect state will always be in disconnecting state.
To avoid this, move the connect state to not connected, once try
disconnect is issued internally.
Change-Id: Ia563f85df84cb9dbb3d3a82bc97127d39e7b1421
CRs-Fixed: 961559
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 HDD so that the code
will always be compiled in.
CRs-Fixed: 936683
Change-Id: If5010bc1470a35b2f1516a5c5d10461352fd87fc
RRM ie should not be present in association req if AP doesn't
support 11k. As a part of fix add the check to append RMM ie only
if AP support 11k.
Change-Id: I4e521dbdbdd5b083360405f26913278788c86555
CRs-Fixed: 961737
IPA callbacks need to be processed in tasklet
context in NON-SMP configuration as rx thread
is not used in NON-SMP context.
Hence Process IPA uc response in tasklet context
for NON-SMP configuration.
CRs-Fixed: 960302
Change-Id: I98d69dbdc1083f43035fe264bbee668e5efd5eee
Introduce DFS-3 support changes in DFS layer.
Add support for per segment based queuing, processing
and pattern matching of the radar events in 80+80 channel
width mode, when both segments are dfs.
Also, add support for parsing the new DFS-3 radar summary
report and extract the segment ID on which a phyerror is
seen. Report the segment ID on which the radar has been
detected to the WMA layer to add only radar detected 80MHz
segment channels to be added to NOL in 80+80 MHz channel
width mode.
Change-Id: Ib9ed2122844cef5fde2b632accc8c798e86bf7a3
CRs-Fixed: 964262
Adding support for parsing the WMI_PHYERR_EVENTID
for DFS-3 in WMA event handler. Configure the hw
board id to DFS module fetched from the wmi service
ready event.
Change-Id: I003fab790c7f46b54e5d41bcf1bbfa16f0cdc722
CRs-Fixed: 964262
qcacld-2.0 to qcacld-3.0 propagation
The sap Context related phyMode should be used
instead of the phyMode in hal. Otherwise, the incorrect
channel width will be reported to supplicant.
Change-Id: Ic0ce7861a786de5aef8b43c6aa0fde9f600b08b2
CRs-Fixed: 909668
hif_claim_device does not serve a purpose in copy engine.
The usage and implementation of hif_claim_device need to be
reexamined for sdio and usb. It should not store the device
in a ce specific data structure.
Change-Id: I0847e152ae3a1ca57d5c6937d6929918063cc362
CRs-Fixed: 967244
cds_get_context was not supporting epping. Allow epping to manage its
own global context since it is a top level module.
Change-Id: Ic5faf885c83109162be141788a5f8871a4e35cef
CRs-Fixed: 967244
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
Fix memory leak in case of txrx_fw_st_rst command where
we are not expecting any response from firmware.
CRs-Fixed: 964465
Change-Id: Iad91cb5557ef167d126ef68e07f02445ad7a0b97
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
Add new argument for mac_ctx in definition of tx_timer_create macro
so that its caller can use any local variable name for mac context.
Currently pMac is hardcoded as first param in definition of the macro
which prohibits caller of that function from using any other name.
Change-Id: Id901424ba16846eab62c00a80d48a5c85c73bea6
CRs-Fixed: 824222
In case kmalloc fail goto end of function and properly free
other possible allocated memory buffers.
Change-Id: I41d7577471b475b0a2a0daa83c6ffc845314ceb4
CRs-Fixed: 958755
Rename API cds_is_load_unload_in_progress() to
cds_is_load_or_unload_in_progress() for clarity purpose.
Change-Id: I209c661ccee760f822d5df53577d822f3c741b37
CRs-Fixed: 964217
cds_is_load_unload_in_progress is checking for both driver
load AND unload states. This is leading to all external threads
still enter in driver when driver has already started unload
clean up process. Fix this API to check either load OR unload
in progress driver states.
Change-Id: I4cd446393346bc5c085bc9a92ee68f46f1ec5097
CRs-Fixed: 964211
Driver unload is not waiting for external threads to exit
before starting clean up process. Add CDS SSR ready check
for driver unload such that driver unload waits for all
external threads to exit before cleaning up driver data
structures.
Change-Id: Ic5ac1b770dea8e470ed8dcce50a4f66451f918f1
CRs-Fixed: 964151
scan complete callback function is not
freeing scan request memory after scan completion.
Free the scan request memory after scan completion.
Change-Id: I2636e3b4576d2c86d88dc3e7684a196ed1838297
CRs-Fixed: 964244
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
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.
Create separate functions to update country code from module
parameter and initialize thermal mitigations settings in SME.
Change-Id: I84cf611347a5abadc16eeb46fed90934913e09ed
CRs-fixed: 959287
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.
Make separate function to open the interfaces at probe time.
Change-Id: Ia0044f5b0d0f009950d62556e09928ac578a1d4b
CRs-fixed: 959287