Since the logic requires device knowledge and could become more
complicated, provice a hif api tho check.
Change-Id: I6fbb8234a6c0a639afdd9a9a409688889e492bd7
CRs-Fixed: 986480
If different busses cannot agree upon a common hif_device_id type,
we need to make it an opaque type in the general case and only
cast it in the bus specific code.
Change-Id: I769d65f10421caf07c8f5cc35ccfe11302485576
CRs-Fixed: 986480
hif_save_htc_htt_config_endpoint saves an endpoint id in the
hif layer. hif uses this id to avoid double frees. There
is no reason this should be PCI specific.
Change-Id: I487634e67fddc9d821db9c48a01b28979d988111
CRs-Fixed: 986480
Use new HIF_SNOC instead of assuming snoc when pci is not defined.
Exposes duplicate function defs with HIF_SNOC and HIF_PCI both defined.
Remove some trivial HIF_PCI conditional compilation.
Change-Id: I958740f49b3298c165e662b89b586bda2b3d2ee8
CRs-Fixed: 986480
hif_set_hia isn't applicable to non pci targets.
Avoid needing a dummy hif_wake_target_cpu for
snoc.
Change-Id: I1ebdac2f1ea1c87466ba144986ff151f074476ba
CRs-Fixed: 986480
Move pcie specific code for keeping the target awake
durring driver load. This code should be in a pci
specific file to avoid the ifdef HIF_PCI.
Change-Id: I117c43d95196a1f2f79b1124d290acf8542ebf10
CRs-Fixed: 986480
Function pointers are needed to dynamically route
function calls to bus specific implementations
when supporting simultaneous multibus.
Change-Id: I81a181824e8c679ff0bdf906563de95b3291ba4a
CRs-Fixed: 986480
Converge ADF and CDF API's and move them to
QDF folder. MCL/WIN driver use this QDF converged
module for OS abstraction.
Change-Id: I1d0cdfd8730a5c021aaa50b7dc8549d491d760b3
CRs-Fixed: 981187
Prapogation 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
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: Iceebf32271b8d53beb634031f7dbc005f5fe5ed0
CRs-Fixed: 967765
Make hif_opaque_softc as global HIF Context and cleanup
ol_softc structure to bmi structure. No one else is using ol_softc
numbers.
Change-Id: Ib6447d2b67d41a30ec22903720900d7e4d55c7a9
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. Remove the structure from HIF and move to BMI.
Change-Id: I37a43cca0bdef66f6b0201d27e9dcbecffeef5dd
CRs-Fixed: 967765
Targetdef is needed during BMI phase of PLL switching.
Move this member to ol_bmi_context
Change-Id: Idf5bbe610a926506b87e8458fa460fd583263a03
CRs-Fixed: 967765
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
NIC_DEV is not needed in hif. Remove it from HIF.
Initialize cdf_device global structure in HDD.
Change-Id: Iff3e88c269ed0324d18289e23a0369fa6c2b14b0
CRs-Fixed: 967765
Carve out hif_softc for internal hif usage.
ol_softc acts a opaque handle to other modules.
Change-Id: I7633e70ed82fe2ee88a21e2502177d6a7388ff56
CRs-Fixed: 967765
Remove unwanted pointers to various HIF data structures.
Use single HIF Context and dynamically typecast to required
HIF data structures.
Change-Id: I1e2f39455a23826d1eaa9785aa9f1bc3854a9cb2
CRs-Fixed: 967765
Have the hif context componentized but make it one contiguous pointer.
This simplifies the design as all apis can use the same default pointer
and all members will be one load away with a precomputed offset.
Change-Id: I181c9f011a7bac02944af53188b549efeea68470
CRs-Fixed: 967765
Data Path bypasses transport layer for better throughput's.
Instead of dereferencing HIF structures, query HIF for fastpath
mode support
Change-Id: Icba897c9405084f1c14c7db4059527a96d841736
CRs-Fixed: 967765
Refactor Transport Layer from cds_get_context and pass the hif context
to all the API's to operate.
Change-Id: I1dedda76357f844e08fd422bf9eb15af70587eae
CRs-Fixed: 967765
Group BMI members and access bmi info from hif instead of
dereferencing hif context.
Change-Id: I082f648490be0078df7d90cc8ebbf745b64fd97a
CRs-Fixed: 967765
Ramdump collection can be supported by buses other than PCIe, and
it's done in offload layer when recovery is required. Hence allocate
memory dynamically and free it once ramdump collection is complete.
PKTLOG is a DataPath Feature, HIF doesn't need to have any info
of it. Move pktlog implementation to HTT folder.
Change-Id: Ib8c2526ba8900843db2dae8388fe46c9d9e05f22
CRs-Fixed: 967765
Few members are relevant only for PCIe based solutions, hence
move those to hif_pci_softc structure.
Change-Id: I1f38da4cfc9f69c05a9c80e67abc70fd97e22af9
CRs-Fixed: 967765
Clean up driver modules to query hif for the target info and
ini handle, instead of accessing hif context in other modules.
Change-Id: Ibd4762a20f788190f242b4f24b914fa4b99d5a5b
CRs-Fixed: 967765
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.
Change-Id: I8b6f325f12aaa99e4f7461f9da26b7f60259c8f8
CRs-Fixed: 964031
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
Initial host-common file folder cleanup and moves
on top of baseline reference of MCL WLAN driver
SU#5.0.0.160.
Move dp, ht comm, hif, wmi and qdf folders one level up
Change-Id: I2120898024b1eafd5d651c48768dbf48bf05995d
Sync up wlan-cmn.driver.lnx.1.0-dev to CAF 5.0.0.160
from 5.0.0.149 release as baseline for subsequent win
and mcl convergence refactoring.
* commit '0219ae6': (554 commits)
Release 5.0.0.160
qcacld-3.0: Add wma handler for vdev delete and peer delete responses
Release 5.0.0.159
qcacld-3.0: Fix Compilation error on WLAN_FEATURE_11W disabled
qcacld-3.0: Update channel width and center freq
qcacld-3.0: Move sta state to not connected after try disconnect
qcacld-3.0: Remove #ifdef FEATURE_WLAN_LFR from HDD
qcacld-3.0: Remove RRM ie in Assoc Req based on AP capability
qcacld-3.0: Fix fw statistics parsing on the host
qcacld-3.0: Fix IPA-uc callback in NON-SMP system
qcacld-3.0: SAP DFS-3 Feature support in DFS layer
qcacld-3.0: SAP DFS-3 Feature support in WMA
qcacld-3.0: correct phy_mode in hdd_chan_change_notify
qcacld-3.0: move hif_bus_open to hif_open
qcacld-3.0: Remove hif_claim_device
qcacld-3.0: Remove epping context from cds
qcacld-3.0: Enable Tx beamformee in SAP mode
qcacld-3.0: Set the IMPS enable/disable based on INI
qcacld-3.0: Fix memory leak in case of fw reset stats command
qcacld-3.0: Use appropriate API to get total free descriptors
...
qcacld-3.0: Enable athdiag debug support for SNOC devices
qcacld-3.0: Remove support of power gating parameters
qcacld-3.0: Add log in vos_mem_alloc if kzalloc takes more than 3 seconds
Change-Id: I903d2b6edfb715570daffbcfcdb46866f04737dc
CRs-Fixed: 688141
Sync-up wlan-cmn.driver.lnx.1.0-dev branch to caf master version
of host-common driver that is exactly same as qcacld-3.0 driver
version 5.0.0.149
* origin/caf/caf-wlan/master: (294 commits)
qcacld-3.0: Lower the log level for unhandled Action frame logs
qcacld-3.0: Add disconnect to the head of sme pending command list
Release 5.0.0.149 QCACLD3 WLAN Driver
qcacld-3.0: Enable emergency reaping for wmi pipe.
qcacld-3.0: add retry logic if htc_issue_packets fails
qcacld-3.0: Ignore HTT_T2H_MSG_TYPE_MGMT_TX_COMPL_IND from FW
qcacld-3.0: Do not reserve mgmt descriptors
qcacld-3.0: Use appropriate list API
qcacld-3.0: Remove per vdev tx descriptor pool
qcacld-3.0: Enable enahnced flow control
qcacld-3.0: Add support for telescopic PNO
...
Release 5.0.0.140
...
Initial readme for WLAN Host Driver for iHelium
Change-Id: I36e7222946f442159390bd78a65ee5dc6876b582
CRs-Fixed: 688141
- 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
For iHelium, the flag AR900B is defined in the firmware however
it is not defined on the host. This is causing a mismatch in the
statistics structure between the host and the firmware.
Temporarily enable this flag on the host. Eventually, this flag will
be replaced by a iHelium specific flag on both the host and the firmware
CRs-Fixed: 964909
Change-Id: I1a13db22448a099ea51602108eb5626e878e2c2e
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