提交图

520 次代码提交

作者 SHA1 备注 提交日期
Abhishek Singh
5ad797d0b3 qcacld-3.0: Remove legacy APIs to modify vdev state machine
This change Removes legacy APIs to modify vdev state machine and
add use new API to get vdev state.

Change-Id: I48aa3744dafc6d13a43a14e48de821c7dadf3a37
CRs-Fixed: 2314730
2018-09-17 06:09:35 -07:00
Rajeev Kumar
9f2dd4729c qcacld-3.0: Increase FW response timeout values in debug build
In slub debug enabled build processing is slowed down and hence
increase the FW response timeout values by factor of 2 times.

Change-Id: I979269a9b4f6bc03f97452b3d7f7416fd418f336
CRs-Fixed: 2315934
2018-09-15 03:35:05 -07:00
Rajeev Kumar Sirasanagandla
17fa308715 qcacld-3.0: Add support to store vdev object in WMA interface
Add support to store vdev object in WMA interface (wma_txrx_node)
and acquire and release its reference count during wma_vdev_attach()
and wma_vdev_detach() respectively.

Change-Id: I5449d4051b08dc328a5d97446a4de3d7b51155eb
CRs-Fixed: 2310990
2018-09-12 13:35:44 -07:00
Sravan Kumar Kairam
0fbaefea1b qcacld-3.0: Unmap nbuf of pending mgmt frames
As part of wlan_mgmt_txrx_pdev_close only nbuf is freed
in case of cleanup path due to SSR or drive unload and
dma unmap is not done. In this change register a callback
to mgmt_txrx component tx ops which does dma unmap of nbuf
as part of pdev close.

Change-Id: Ia0fa6684f66a3b732e5c599f2df4ea7f33ebc4f8
CRs-Fixed: 2308372
2018-09-12 08:50:05 -07:00
Kiran Kumar Lokere
1f96b4af34 qcacld-3.0: Add support for 11ax draft3.0 spec
Add support for 11ax draft3.0 spec.

Change-Id: I272d9f4ec6b3a2a23ad708265dd0afaf289c1b95
CRs-Fixed: 2294255
2018-09-11 16:41:57 -07:00
Abhishek Singh
2904a6ac79 qcacld-3.0: Refactor mlme code to integrate SAP stop vdev SM
Divide and refactor mlme functions to integrate vdev state
machine for SAP stop.

Change-Id: Id9841b1a87f2f3c1c2816dae8b2a183ac04791a9
CRs-Fixed: 2309264
2018-09-10 20:41:22 -07:00
Abhishek Singh
dfa69c397a qcacld-3.0: Refactor mlme code to integrate SAP start vdev SM
Divide and refactor mlme functions to integrate vdev state
machine for SAP start.

Change-Id: Id4419261cb1ba88754eded9fd780cca60f1f5db7
CRs-Fixed: 2309240
2018-09-10 20:41:19 -07:00
Pragaspathi Thilagaraj
f81a8f0ad4 qcacld-3.0: Remove is_vdev_valid flag from the vdev structure wma_txrx_node
The flag is_vdev_valid and vdev_active serve the same purpose,
they are used to prevent the race condition where wmi vdev level
command gets posted to FW after vdev is deleted. Both the flags
are set to true in wma_vdev_attach when the vdev is created and
set to false in wma_vdev_detach where the vdev delete command is
sent to fw.

So remove is_vdev_valid flag and replace it with the existing
vdev_active flag.

Change-Id: I5199bc7d473470fd9f16320d323f86257a24ae19
CRs Fixed: 2312321
2018-09-10 11:54:11 -07:00
Rajeev Kumar Sirasanagandla
4f20b67e7a qcacld-3.0: Add debugfs support for roam scan stats
Add debugfs entry to get last five roam scan stats info which includes
old bssid, new bssid, roaming candidates etc., for STA interface.

Change-Id: Ied66beb270d97b6e17a6116c1be0e82783094519
CRs-Fixed: 2203885
2018-09-07 04:43:53 -07:00
Jeff Johnson
0c8dbc37c4 qcacld-3.0: Refine the extscan reset significant change logic
Make the following updates to the extscan reset significant change
logic:
1) Exclusively use the Unified WMI data structures.
2) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.

Change-Id: I9b63924f4219f6d3567e3ee2b1a31e1a9ce3bc29
CRs-Fixed: 2309570
2018-09-06 20:34:23 -07:00
Rachit Kankane
026e77a99d qcacld-3.0: Featurize P2P Listen Offload
P2P Listen offload is not a requirement for Genoa, hence featurize
P2P listen offload code to save memory foot-print for Genoa.

Change-Id: If50c784bb4cd6daac513a0654364e78cd636c9d3
CRs-Fixed: 2304554
2018-09-06 01:41:49 -07:00
Jeff Johnson
b43ed03298 qcacld-3.0: Refine the extscan set significant change logic
Make the following updates to the extscan set significant change
logic:
1) Exclusively use the Unified WMI data structures.
2) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.

Change-Id: I916f387cee254c2d8ba57a9182bd927a91eadf0c
CRs-Fixed: 2307374
2018-09-05 06:46:59 -07:00
Rachit Kankane
ee1735c905 qcacld-3.0: Featurize RMC
Featurize RMC and disable for Genoa

Change-Id: I66b17622c89dd5736f152c4cd9506ce2706b4604
CRs-Fixed: 2304269
2018-09-05 00:17:52 -07:00
Rachit Kankane
f6834c4b4c qcacld-3.0: Featurize Dynamic Voltage Config
Host provides INI way to control voltage configs, featurizing the
same for Genoa.

Change-Id: Ia58d84eb2e2a67ead189a51d2a0b98230513f8f9
CRs-Fixed: 2304125
2018-09-05 00:17:45 -07:00
Krunal Soni
eb692e3557 qcacld-3.0: Remove and Replace WMA_BCN_BUF_MAX_SIZE with LIM macro
Max beacon size in WMA layer is pointed by "WMA_BCN_BUF_MAX_SIZE"
which is currently set to 2500 bytes and Max beacon size in
PE layer is pointed by "SIR_MAX_BEACON_SIZE" which is currently
set to 512 bytes.

when wma_store_bcn_tmpl() gets called, this API tries to copy
beacon template from LIM to WMA which can't exceed 512 bytes.

To fix the issue, use SIR_MAX_BEACON_SIZE instead of
WMA_BCN_BUF_MAX_SIZE

CRs-Fixed: 2299791
Change-Id: I97b4c19611ec74c0702901c380bd32e866d26c8b
2018-08-30 13:40:41 -07:00
Jinwei Chen
1850d9ca80 qcacld-3.0: send deauth if recevie data from non-assoc STA
If SAP receive unicast data from a non-assoc STA, SAP should send
deauth mgmt frame to this STA, add this part logic to serve data path.

Change-Id: I47346e751b89eda77f6d6450218e2b70fe6b4953
CRs-Fixed: 2298550
2018-08-30 07:02:28 -07:00
Jeff Johnson
9743eb7f49 qcacld-3.0: Refine the extscan stop BSSID hotlist logic
Make the following updates to the extscan stop BSSID hotlist logic:
1) Exclusively use the Unified WMI data structures.
2) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.

Change-Id: I01e29a96fded829c734532b021aeea1960bba641
CRs-Fixed: 2294273
2018-08-20 22:32:28 -07:00
Jeff Johnson
0c7b09020b qcacld-3.0: Clean up the WMA Context
Clean up the WMA context structure which currently has the following
issues:
1) Fields are defined that are unused
2) Fields are defined that are missing documentation
3) Fields are defined with documentation inline rather than in the
   documentation block
4) Documentation exists for fields that are no longer present

Change-Id: Ia9fb52c3967818c0a12ade7a15f0c353494f56de
CRs-Fixed: 2296105
2018-08-14 13:22:17 -07:00
Rajasekaran Kalidoss
ef058525b9 qcacld-3.0: Add vdevId in tAggrAddTsParams
pe session_id should not be used as vdev_id.
Add a vdevId field to tAggrAddTsParams struct
and fill smeSessionId as vdevId and pass this
down.

Change-Id: Id021dda35a32f7870277d405c85a0878d7baa3f3
CRs-fixed: 2272126
2018-08-14 02:15:43 -07:00
Qiwei Cai
e689a26cd8 qcacld-3.0: Featurize some vendor commands
Featurize some vendor commands to compile out when not needed.

Change-Id: I6757b5764930efbd9cd1c7ab74e5990e96267421
CRs-Fixed: 2270461
2018-08-13 23:15:17 -07:00
Jeff Johnson
89cd1ff6aa qcacld-3.0: Remove scan_id_counter from WMA context
The scan_id_counter in the WMA context is initialized but never
incremented or read. Since it is not actually used, remove it.

Change-Id: Id159ba6ff36ae2a3977978f8799cf16aeee5300d
CRs-Fixed: 2294150
2018-08-13 12:57:46 -07:00
Jeff Johnson
b1a6806814 qcacld-3.0: Remove driver_type from WMA context
The driver_type field in the WMA context is written but never
read. Since it is not actually used, remove it.

Change-Id: I646fea6fc5f08bf090980de755055b58f6fec0cd
CRs-Fixed: 2294149
2018-08-13 12:57:42 -07:00
Jeff Johnson
0cbd0a7fd8 qcacld-3.0: Remove struct hw_mode_idx_to_mac_cap_idx
Change "qcacmn: Remove struct extended_caps" (Change-Id
I96fd072b7d6b58a9c237165fcba7ed8c8da0eae3) in the
qca-wifi-host-cmn project removed the only reference to
struct hw_mode_idx_to_mac_cap_idx. Since this struct is
now obsolete, remove it.

Change-Id: I1b57c09d18ec52574e34487122fe526b10b9f51f
CRs-Fixed: 2294148
2018-08-13 12:57:38 -07:00
Jeff Johnson
1148cb0bb2 qcacld-3.0: Refine the extscan start BSSID hotlist logic
Make the following updates to the extscan start BSSID hotlist logic:
1) Exclusively use the Unified WMI data structures.
2) Use the new wmi_unified_extscan_start_hotlist_monitor_cmd() API.
3) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.

Change-Id: I4d9f982177bc61a751ba0e7437fe55482dfd2723
CRs-Fixed: 2291946
2018-08-09 04:24:06 -07:00
Jeff Johnson
a1c6055996 qcacld-3.0: Remove obsolete data structures from wma.h
wma.h contains a large number of obsolete macros and data structures
which are unused, so remove them.

Change-Id: Ideb5e64b5486c3ea652777b27cbb5d1960b154d5
CRs-Fixed: 2292529
2018-08-08 21:00:41 -07:00
Jeff Johnson
0918f242d1 qcacld-3.0: Add SAR version to struct wma_tgt_cfg
HDD needs to know the SAR version running in firmware so add that
information to struct wma_tgt_cfg.

Change-Id: Idcb79921cb417a923ced8b6cfed2672bee03eaf1
CRs-Fixed: 2282071
2018-07-31 12:58:39 -07:00
Pragaspathi Thilagaraj
7dba4a7af8 qcacld-3.0: Remove csr_release_command_roam call in csr_roam_issue_connect
In the function csr_queue_sme_command, we memset the memory for
the roam command to 0 in case of failure and release the memory
to the global command pool. But in csr_roam_issue_connect,
csr_release_command_roam is called again in case of failure,
and this can lead to memset of memory to 0 that is released to
global command pool.

Remove the redundant csr_release_command_roam in the function
csr_roam_issue_connect and the call to csr_reinit_preauth_cmd in
csr_roam_enqueue_preauth.

Change-Id: Ifab3551dd3b2dbb2d135b5488f7b09f422648abb
CRs-Fixed: 2280904
2018-07-30 18:26:24 -07:00
Nirav Shah
790d943594 qcacld-3.0: Add per module logging macros without function/line info
Add per module logging macros without function/line info
to avoid adding function/line info where it is not required.

Change-Id: Id808fef623b82cec38fc31071ef384f3ff0c92da
CRs-Fixed: 2278874
2018-07-27 09:09:42 -07:00
Pragaspathi Thilagaraj
b37dad385f qcacld-3.0: Serialize the command eSmeCommandDelStaSession
The command eSmeCommandDelStaSession issues vdev delete to
firmware. As this command eSmeCommandDelStaSession is not
serialized, this may issue delete vdev before the peers for the
vdev are deleted, resulting in fw assert. Serialization should
be brought in for this command, so that first eSmeCommandRoam
command will do vdev_stop-->remove_peer-->vdev_down and then
eSmeCommandDelStaSession will be processed which will send vdev
delete.

Post the command eSmeCommandDelStaSession to the serialization
module and WMA_DEL_STA_SELF_REQ will be posted from the sme
eSmeCommandDelStaSession handler.

Change-Id: I60fcbf622b961162c647db3638b5e019c5231971
CRs-Fixed: 2270982
2018-07-26 15:36:53 -07:00
Jeff Johnson
62cd6803a7 qcacld-3.0: Remove tHalStopType
There are multiple places where a tHalStopType parameter is passed but
unused. This is a historical artifact, so remove all instances of it.

Change-Id: Iebcbbac580495a376b7456b3a2901f33c2474f83
CRs-Fixed: 2283460
2018-07-24 15:10:49 -07:00
Jeff Johnson
696317bd53 qcacld-3.0: Remove wma_get_buf_extscan_change_monitor_cmd()
The task formerly done by wma_get_buf_extscan_change_monitor_cmd() is
now done in the common WMI project and this function is no longer
used, so remove it.

Change-Id: I4a42bda3c3b790bcd0c21abcda94a4f4aa49d8ff
CRs-Fixed: 2281906
2018-07-20 12:06:23 -07:00
Jeff Johnson
dc32f37143 qcacld-3.0: Remove wma_get_buf_extscan_start_cmd()
The task formerly done by wma_get_buf_extscan_start_cmd() is now done
in the common WMI project and this function is no longer used, so
remove it.

Change-Id: I840c6a5f83c6cdc479e6746f36a29c2a7970c964
CRs-Fixed: 2281900
2018-07-20 12:06:20 -07:00
Abhinav Kumar
68834229f5 qcacld-3.0: fix the beacon corruption in WMA beacon update msg
When beacon is updated the host pass the gSchBeaconFrameBegin
param to WMA to copy the beacon to WMI and pass the value to
firmware. gSchBeaconFrameBegin is global so if we receive new
beacon update in LIM before the WMA process the old beacon
update the values in the global gSchBeaconFrameBegin are
updated as per new beacon. So if there is change in beacon
length the first WMA msg copy the wrong beacon data and send
this corrupt date to firmware.

To fix this instead of passing the global gSchBeaconFrameBegin
fill the beacon date in the beacon update req itself.

Change-Id: I6d196784470d9a2aeeaba76e12577f9f65012bac
CRs-Fixed: 2272448
2018-07-20 09:31:02 -07:00
Sourav Mohapatra
5daec820b0 qcacld-3.0: Remove wma_is_service_enable API
The API wma_is_service_enable is a wrapper on the converged
wmi_service_enabled API for services and extended services. The checks
used in the API are not updated for the converged service enum.

Replace wma_is_service_enable with wmi_service_enabled as there is no
need to have a wrapper

Change-Id: I4fe3601f7e1a031290e139f9ef55f845965b7b2e
CRs-Fixed: 2276471
2018-07-20 00:48:04 -07:00
Kabilan Kannan
ebe01e7a16 qcacld-3.0: Validate SAR2 response event handle
Validate SAR2 response event handle and pass the valid
pointer for result extraction

Change-Id: I91982c411c77494662f6d00de6078622a3d548ae
CRs-Fixed: 2259373
2018-07-13 12:12:42 -07:00
Sravan Kumar Kairam
b8bdf522fc qcacld-3.0: Register target if ops for DP control ops
As part of DP-CP interaction convergence register common
converged target if ops for DP control ops.

Change-Id: Ifbe5d20e32262782016c3b0c20a7d2e149a071c3
CRs-fixed: 2273037
2018-07-12 18:02:02 -07:00
Liangwei Dong
0da1426e7b qcacld-3.0: Enable Host STA OBSS Scan
Enable supplicant STA OBSS Scan
and disable OBSS SCAN WMI command sending
if Firmware doesn't support OBSS scan offload.

Change-Id: Id8fde7301d307c355b9f6cf82b85854a6d84ca79
CRs-Fixed: 2275065
2018-07-11 23:36:18 -07:00
Dustin Brown
ef8448da63 qcacld-3.0: Add modern WMA logging macros
In order to help facilitate the move to per-level logging, add new
logging macros to WMA.

Change-Id: Ie5fa0074f6ace527a84dcc82b332607473615d7c
CRs-Fixed: 2275464
2018-07-11 18:45:30 -07:00
jsreekum
ac44b92ac6 qcacld-3.0: Add default target configs for Genoa
Add Genoa specific default target configurations for
offload configs, max tx pattern config and max sta
vdev config

Change-Id: Id682b1103d87021e207de335721805515db6a932
CRs-Fixed: 2258999
2018-07-09 08:31:10 -07:00
Kiran Kumar Lokere
1a43bcf236 qcacld-3.0: Add support for SRD channels in ETSI domain
Add support for SRD channels in ETSI regulatory domain

1) Add SRD channels only if DSRC feature is disabled.
2) Add user configuration to enable/disable these channels
in master mode PCL/ACS. Default is disabled.
3) Allow these channels in ACS/PCL only if the INI is set.

Change-Id: Ibd79dc95e9911ce3a0fd101f4716d9bbb8b75466
CRs-Fixed: 2264786
2018-07-05 20:49:25 -07:00
Jeff Johnson
75873e9608 qcacld-3.0: Replace wmi_unified_nat_keepalive_enable()
There are multiple issues with wmi_unified_nat_keepalive_enable():
1) WMA global functions should have a wma_ prefix.
2) The function prototype indicates it should return int status, and
   the one caller, wma_add_sta_req_sta_mode(), is expecting that, but
   it actually returns QDF_STATUS.
3) The function is a very thin wrapper that calls the unified WMI API
   wmi_unified_nat_keepalive_en_cmd() and hence adds no real value.

Rather than address these issues, just remove the function and update
wma_add_sta_req_sta_mode() to directly call the unified WMI API
wmi_unified_nat_keepalive_en_cmd().

Change-Id: I13a4140ba6343240bde51704af2921c001f66a21
CRs-Fixed: 2271552
2018-07-05 10:00:59 -07:00
psimha
8696f772fe qcacld-3.0: Add CDP API to set key in data path
Add CDP API to set RX MIC key in datapath.
Required to perform RX demic of fragmented packets.

Change-Id: I3c05da62ff20f8551cdc5780ce2f7b8d23c73a37
CRs-Fixed: 2217884
2018-07-02 16:08:48 -07:00
Kabilan Kannan
caa8550b4c qcacld-3.0: Add SAR V2 support
Add changes to support SAR V2 power limits.

Change-Id: I35f8a194ac9c53c8fd564bd301398b78fa995bed
CRs-Fixed: 2217067
2018-06-29 13:31:37 -07:00
Hanumanth Reddy Pothula
834f943961 qcacld-3.0: Report valid MCS index to upper layer
While processing get_station cfg operation, HDD is using Nss
value, which gets updated during association, to calculate data
rate. So, there is a possibility of driver to report invalid
MCS index to upper layer if association happens with Nss 2 and
when data transmission is happening at Nss 1 rate.

On receiving GET STATS response, calculate Nss value based upon
the current data rate received from firmware, and pass it to HDD,
so that HDD can use the same Nss value to report valid MCS index
to the upper layer.

Change-Id: I62f029d53149a4747f619027ce69ce65fb280b8d
CRs-Fixed: 2250993
2018-06-22 21:07:13 -07:00
Varun Reddy Yeturu
4f849e5032 qcacld-3.0: Send Peer TWT caps in PEER ASSOC
Parse the association response frame to read the
peer TWT extended capabilities and fill them in
the WMI PEER ASSOC command and send it to the
firmware.

Change-Id: I07f21010abbdaa20e212abae127009dd11e6ab7d
CRs-Fixed: 2264690
2018-06-21 19:57:54 -07:00
Nachiket Kukade
01becb9bf0 qcacld-3.0: Cleanup dtim configuration during suspend and resume
Currently while going to suspend, dtim parameters are not
correctly getting configured. Some other parameters to config
like the inactivity timeout are completely skipped as well.

Cleanly port the setting of dtim and other parameters during
suspend and resume.

Change-Id: Ic41a8ace3f5650e53f2dcaa416bfe241b87aa88d
CRs-Fixed: 2248160
2018-06-21 12:35:44 -07:00
Nachiket Kukade
4b7c8e03c7 qcacld-3.0: Port modulated dtim and override listen interval
Port modulated dtim and override listen interval to PMO from
WMA.

Change-Id: Id965dd8ee0fbddfa563335fd2fe225dcd20cd162
CRs-Fixed: 2252788
2018-06-21 12:35:40 -07:00
Jinwei Chen
998a1a0e95 qcacld-3.0: separate HE caps per band
currently some HE capability is shared same value from
MIN value of 2G and 5G capability, separate them per band.

Change-Id: I37831b4044d4ca2deaf5015fb44227c824996136
CRs-Fixed: 2239070
2018-06-21 01:58:50 -07:00
Qiwei Cai
3719efe9e3 qcacld-3.0: Featurize WLAN_FEATURE_LINK_LAYER_STATS
Featurize WLAN_FEATURE_LINK_LAYER_STATS to compile out
in mission mode.

Change-Id: If0f27efa3661f4b3083180690160109084c5da67
CRs-Fixed: 2255035
2018-06-21 00:24:23 -07:00
Nachiket Kukade
177b5b06c4 qcacld-3.0: Add support for Android Packet Filter v3
Android Packet Filter 3.0 requires the framework to be able
to read and write into the APF work memory in the Firmware.
It also requires to be able to enable or disable the
interpreter.

Add support for the new read/write/enable/disable operations.

Change-Id: Ic72243b918f4a8385a92b803a1ca3c5305423b52
CRs-Fixed: 2184969
2018-06-20 11:32:39 -07:00