Wykres commitów

7172 Commity

Autor SHA1 Wiadomość Data
Himanshu Batra
cefe93ef3b qcacmn: Replace void * wmi_hdl with abstract type (7/10)
Replace void * wmi handle with abstract type handles
provided by wmi component.

Change-Id: I53d14cc548e0d9aae4de7db4dcf6f63ed2a74fe5
CRs-Fixed: 2482590
2019-07-19 11:26:03 -07:00
Yeshwanth Sriram Guntuka
4644ff4331 qcacmn: Use appropriate config to include wmi_unified file
Use CONFIG_WMI_BCN_OFFLOAD instead of CONFIG_MCL to
include wmi_unified header file.

Change-Id: I0cc7a4958700c82c7d3e55c965ccac2451b64fd3
CRs-Fixed: 2490681
2019-07-19 10:13:29 -07:00
Chaithanya Garrepalli
b8db1bd02b qcacmn: populate actual framelength for MGMTCTRL TLV
for HTT_PPDU_STATS_TX_MGMTCTRL_PAYLOAD_TLV get the length
from TLV data

Change-Id: I84526a36ebac5a267530d697a4fe51646d0c9cbd
2019-07-19 04:04:20 -07:00
Ankit Kumar
b5549d6468 qcacmn: Placed note section in commit desc
Remove note section from code comment and placed
in commit description for better readability.
Macro for sending data packets Changed from macro function
to static inline function due to error reported by
checkpatch for multiple use of same variable.

Change-Id: I0752cfff7502fabe0c2351a21a94cfac4625278f
CRs-Fixed: 2490594
2019-07-19 02:48:30 -07:00
gaurank kathpalia
18495feac0 qcacmn: Use proper macro instead of config_mcl
Use proper macro instead of config_mcl to compile
the API target_process_bang_radar_cmd.

Change-Id: I3a2fca998d69f2a29243b9ecd2a290af9602d6c2
CRs-Fixed: 2490649
2019-07-19 02:48:26 -07:00
Jinwei Chen
9d3f985a8d qcacmn: deliver RX data to stack evev if no peer found
Deliver RX data to stack even if no peer found, this is
needed for LFR roaming case like eapol data.

Change-Id: Ic81f29993fb4542847bd076042a13de6e9f18173
CRs-Fixed: 2468082
2019-07-19 02:48:23 -07:00
Himanshu Batra
556930bba9 qcacmn: Replace void * tgt_if_handle with abstract type
Replace void * tgt_if_handle of objmgr psoc/pdev with
abstract type handles provided by target interface

Change-Id: I9e0ae991776daa0c25c4ad7b4e4dc022441318a3
CRs-Fixed: 2482708
2019-07-19 02:48:20 -07:00
Ashish Kumar Dhanotiya
3863721077 qcacmn: Unlink hidden bss entry from kernel
Kernel maintains a list of bss and it adds/updates the bss
entries whenever driver informs it. When driver receives
beacon or probe response from any ap it informs kernel to
update the bss list and whenever it disconnects with the
AP driver unlink the bss in the kernel.

If the AP is hidden, when driver gets beacon from this
hidden AP it informs the kernel to update the bss list.
kernel add this entry to it's bss list with NULL SSID.
Now when driver receives probe response from this hidden
AP it again informs the kernel to update the bss list,
as this is probe response and ssid is not hidden,
kernel treats this entry as new entry and adds it to
its bss list and links this entry to the older hidden
AP entry (But still these are two entries for hidden AP).

When driver gets disconnect from the AP it unlink the
bss entry corresponding to this AP from kernel's bss
list, but since there are two entries for the same AP
as the AP is a hidden AP, driver should clear hidden AP
entry (Which was added as part of beacon) which is
not happening currently.
Now when AP moves from hidden to broadcasting SSID
in it's beacon, kernel drops this beacon entry as its
confusing because there is already a beacon entry with
hidden bss for this AP. During connection driver tries
to update the entry in the kernel and it fails as kernel
drops the beacon resulting into the connection failure.

To resolve this issue, whenever driver unlink the bss
entries from the kernel bss list unlink the hidden bss
entries also from the kernel's bss list.

Change-Id: I629475db8e8f10a6bc403314a984939e38d0a4da
CRs-Fixed: 2488955
2019-07-19 00:54:27 -07:00
Vignesh U
f00622162c qcacmn: MKK17 should include channel 144
As a part of regulatory update #29,MKK17 should support channels
until 5730MHz(including channel 144). But, it was missed in
regulatory update #29 and MKK17 supports channels only until
5710MHz(until channel 140).

Add channel 144 to MKK17.

Change-Id: Ic4b4c162f03a033b697764d65f4733b49e00c9c8
CRs-Fixed: 2489544
2019-07-19 00:54:23 -07:00
Alok Kumar
3558ddfc61 qcacmn: Remove the CONFIG_MCL for rx_reorder_queue_remove_cmd
On MCL side, crash_on_send_peer_rx_reorder_queue_remove_cmd
causes a crash if command is sent by host. Currently no one
is using this API from MCL side and for non MCL this is No-OP.

Removing this API and CONFIG_MCL as from MCL side no one is
calling this.

Change-Id: I5393074913ccd6b39ca2e31e081783c4b614bd43
CRs-Fixed: 2490819
2019-07-18 16:45:40 -07:00
Mahesh Kumar Kalikot Veetil
bde1772622 qcacmn: Enable ASPM for FTM mode
Modify hif_pci_enable_power_management() API to enable pci ASPM for
FTM mode.

CRs-Fixed: 2491213
Change-Id: Ia421ee2af9ae270f5138ac5b8ff52680fbfe9679
2019-07-18 14:23:13 -07:00
Himanshu Batra
39d27ed230 qcacmn: Replace void * wmi_hdl with abstract type (10/10)
Replace void * wmi handle with abstract type handles
provided by wmi component

Change-Id: Iaf3de67d4933998ac4540ac280d716d534777e7f
CRs-Fixed: 2482647
2019-07-18 14:23:10 -07:00
Himanshu Batra
213192233b qcacmn: Replace void * wmi_hdl with abstract type (8/10)
Replace void * wmi handle with abstract type handles
provided by wmi component

Change-Id: I96309658dd12964c74062418a2b32deb1e915c10
CRs-Fixed: 2482632
2019-07-18 14:23:07 -07:00
Himanshu Batra
0a35a6afb8 qcacmn: Replace void * wmi_hdl with abstract type (6/10)
Replace void * wmi handle with abstract type handles
provided by wmi component

Change-Id: I503438fbaf3bc2d475798bc908a70902d11881af
CRs-Fixed: 2482568
2019-07-18 14:23:04 -07:00
Bala Venkatesh
63b4f6a57e qcacmn: Remove MCL_CONFIG flag
In file wmi_unified.c use appropriate config
flags instead of MCL_CONFIG flag.

Change-Id: I9e43f8853ddd93221679cefa50b4f7b239d2abdb
CRs-Fixed: 2491383
2019-07-18 07:17:29 -07:00
Himanshu Batra
e6eeca68f3 qcacmn: Replace void * wmi_hdl with abstract type (5/10)
Replace void * wmi handle with abstract type handles
provided by wmi component.

Change-Id: Ic8d4ddc90c8e49a9629553debf6c09c7565fcd80
CRs-Fixed: 2475462
2019-07-18 03:46:01 -07:00
Himanshu Batra
453eea49a9 qcacmn: Replace void * wmi_hdl with abstract type (4/10)
Replace void * wmi handle with abstract type handles
provided by wmi component.

Change-Id: I4bb0f9fd921bf53d38dfb257818fee48c4516cd8
CRs-Fixed: 2475457
2019-07-18 03:45:58 -07:00
Himanshu Batra
6abe4bebd6 qcacmn: Replace void * wmi_hdl with abstract type (3/10)
Replace void * wmi handle with abstract type handles
provided by wmi component.

Change-Id: I04cd3ce5b4f36f7073d4644e2fd0d52da41e1af3
CRs-Fixed: 2475447
2019-07-18 01:07:26 -07:00
Himanshu Batra
29bc991911 qcacmn: Replace void * wmi_hdl with abstract type (2/10)
Replace void * wmi handle with abstract type handles
provided by wmi component.

Change-Id: Id12d6446aed8fd389b8677f08765bb31cabf2fb0
CRs-Fixed: 2475444
2019-07-18 01:07:23 -07:00
Himanshu Batra
9173c9192d qcacmn: Replace void * wmi_hdl with abstract type (1/10)
Replace void * wmi handle with abstract type handles
provided by wmi component

Change-Id: Idd1fddffd9e254f367e9ad608729668249bbe758
CRs-Fixed: 2475372
2019-07-18 01:07:20 -07:00
Alan Chen
166fc8d73d qcacmn: Add new reason code for idles restart wakelock
Idle restart needs to prevent system suspend and hence, add new
reason code for idle restart.

Change-Id: I15f7be551f00bd910a61080c087a8f85dd2fe7da
CRs-Fixed: 2490992
2019-07-17 21:27:28 -07:00
Pragaspathi Thilagaraj
bdcce7fcb1 qcacmn: Change the maximum serialization pending commands
The host driver serialization module currently supports upto 4
commands in non scan pending queue. This is calculated at the
wlan_serialization_vdev_create_handler() as:
    max_pending_cmds = (WLAN_SER_MAX_PENDING_CMDS /
                        WLAN_SER_MAX_VDEVS)

But in SAP case, if multiple STA sends deauth at the same time,
4 pending commands in non scan pending queue is not sufficient
and will result in only disassoc from the first 4 STA getting
honored.

The current host wlan driver supports 3 SAP mode and
2 STA vdevs amounting to a total of 5 vdevs supported.
So calculate the total non scan pending commands for
serialization based on the total peers supported for each
mode to fix this issue.

In SAP case, maximum 32 peer are supported and for STA case,
maximum 4 pending commands for serialization. So change the
max pending commands calculation as:
 max_pending_cmds = (No. of sap modes supported * 32) +
                    (No .of STA modes supported *4 )

For MCL case the definition of WLAN_SER_MAX_PENDING_CMDS
will be moved to Kbuild.
For WIN case, the existing maximum count will be retained.

Change-Id: Iff1d9430b45e26812b600560b08e85e6040eafef
CRs-Fixed: 2483520
2019-07-17 17:42:33 -07:00
Ashish Kumar Dhanotiya
002aa7014b qcacmn: Add unit test for uint16 array parsing
Change Idbde9d70c64bc131813f5789c0453c9b3736228b has added
a logic to parse a string to uint16 array, there is no test
case written for this in unit test case infrastructure.

Add a unit test case to verify the logic written with the change
Idbde9d70c64bc131813f5789c0453c9b3736228b.

Change-Id: I38d6a0d6003807de7f5ec654926bd75da8b0996c
CRs-fixed: 2478274
2019-07-17 16:28:37 -07:00
Venkata Sharath Chandra Manchala
a28e0144fe qcacmn: Initialize variable before use in process_tx_info
Initialize type specific data in process_tx_info
while processing full tx pktlog messages.

Change-Id: Icbdd20e7e4604f117912e5a4402f7aa5048e671e
CRs-Fixed: 2468471
2019-07-17 16:28:33 -07:00
Rajeev Kumar Sirasanagandla
d36ba2d9cf qcacmn: Fix possible overread in wifi_pos_parse_req
In wifi_pos_parse_req(), payload sections of nl attributes ATTR_DATA and
ATTR_META_DATA are type casted to driver internal structures tAniMsgHdr
and wifi_pos_field_info respectively without validating payload lengths
which can lead to buffer overread if the payload lengths are less than
size of internal structures.

To fix this, avoid type-cast and return error if payload lengths of nl
attributes ATTR_DATA and ATTR_META_DATA are less than size of tAniMsgHdr
and wifi_pos_field_info respectively.

Change-Id: Ie9e3197f2cd3852b394e834991aa8d3a5b530d85
CRs-Fixed: 2471275
2019-07-17 08:31:58 -07:00
Himanshu Batra
a61bf79b15 qcacmn: Replace void * wmi_hdl with abstract type (9/10)
Replace void * wmi handle with abstract type handles
rovided by wmi component

Change-Id: I5c9dde2546a763b9f9b87f328e67b6189f031f1e
CRs-Fixed: 2482645
2019-07-17 07:13:52 -07:00
Akshay Kosigi
aefbe07345 qcacmn: Add change to remove void usage
Add code to remove void pointer usage for
API dp_peer_unref_delete

Change-Id: If346ea8c174c1fbf705aa52598e703424be943a2
CRs-Fixed: 2480828
2019-07-17 04:49:54 -07:00
Viyom Mittal
2d24c56394 qcacmn: Fix incorrect Rx Rate info
Fix incorrect Rx Rate info by anding the value with 7.

Change-Id: Ie6c6b768e90b51bd9bce46b5437af1e03f043570
CRs-Fixed: 2460190
2019-07-17 03:29:05 -07:00
Himanshu Batra
bcb10e6676 qcacmn: Add ascii dump support to qdf hex dump API
The existing hex dump API dumps hex data only.
Add API so that the ascii data can also be
dumped along with hex dump

Change-Id: Icbe74b26f47601a249e3d7ac701f2a19d70fb83b
CRs-Fixed: 2464738
2019-07-17 02:15:41 -07:00
Saket Jha
16d8432a3d qcacmn: Reduce log level to avoid console logging
Reducing the log level of debug log to avoid console logging
and instead get it on the cnss diag log.

Change-Id: Ie5a1eb6f45ffa97790d91528a173b16319ec760b
CRs-Fixed: 2486057
2019-07-16 18:40:26 -07:00
Saket Jha
7f89014195 qcacmn: Add WAR to ignore duplicate RX desc
Check if host is reaping a descriptor which is
already reaped then drop RX desc processing instead of asserting.
Macro DUP_RX_DESC_WAR added before dp_rx_dump_info_and_assert function
which does not assert for the case WAR is enabled.

Change-Id: I4f3c1cc16de79f2483cd415582970e093e81d465
CRs-Fixed: 2486057
2019-07-16 18:40:23 -07:00
Abhiram Jogadenu
1c2b583ee2 qcacmn: Componentize and enable conv WIFI POS
Componentize and enable converged WIFI POS

Change-Id: I8e3f745dbb087818c9d411c7a00e1cdb2907d4d3
2019-07-16 17:15:24 -07:00
Saket Jha
316c0fdb45 qcacmn: Define QDF API for cpumask abstraction
Defines QDF APIs for abstraction of cpumask_clear, cpumask_set_cpu,
and cpumask_setall.

Change-Id: I1678c600c7043b1d4a19e0479ceab9af0ce83d01
CRs-Fixed: 2478893
2019-07-16 17:15:19 -07:00
Liangwei Dong
0b37b4ca1d qcacmn: Change beacon tx WMI API under feature flag
Remove CONFIG_MCL for Beacon buf send WMI command APIs.
And move them under WLAN_WMI_BCN.

Change-Id: Ie5053334bd7498cb9dd84dbc515ffd3414a4ad32
CRs-Fixed: 2483567
2019-07-16 17:15:14 -07:00
Uraj Sasan
37b2c4d198 qcacmn: Support live dump feature
Target firmware Assert are at times related to Host Driver
interaction with the firmware. To debug these issues, host
driver dump is mandatory. The feature provides memory dump
of data structures registed with this framework. The dumps
are saved which can later be loaded using gdb and analysed.

Add apis support for the feature.

Change-Id: I41c5126a49a698969f24b17187f78f4b4db7a51e
CRs-Fixed: 2478139
2019-07-16 15:54:03 -07:00
Naga
a4f7040b4c qcacmn: Enable TLV support for vdev delete all support
Enable TLV support for vdev delete all
peer request which will replace individual peer
delete of peers under a vdev during vdev down.

Change-Id: I777bd3dfb4ed8d8493456d3a0fbc90edd8fc75a2
CRs-Fixed: 2477601
2019-07-16 15:54:00 -07:00
Santosh Anbu
0616b55fed qcacmn: API to support serialization of restart cmds
Add APIs to support serialization of pdev restart and vdev
restart commands.

Change-Id: I367a8f369692e660c37278f7494db7aa0aeb7cd6
CRs-Fixed: 2480314
2019-07-16 15:53:56 -07:00
Santosh Anbu
f8ed4b9824 qcacmn: Add API for cancellation of non-blocking cmd
Add API to support cancellation of a non-scan command to match with the
vdev and is a non-blocking serialization command.

Change-Id: I31556ea8f35b9caf314f10eba0f0f655e3fce806
CRs-Fixed: 2481935
2019-07-16 15:53:52 -07:00
Vignesh U
93360d2f1a qcacmn: Update regdb with regulatory database version 29
Update regdb with QCA regulatory database version 29 with following
changes:

1) Create new full RD Def: APL9_MKKC and change Korea Country mapping to
APL9_MKKC.
2) Change APL9 to CTL Region MKK.
3) Change APL9 power to 23 for all 5GHz subbands.
4) Create new 2GHz RD Def: KRRA and Full RD Def: APL9_KRRA.
5) Create new MKK17_MKKC for Japan: Same as MKK5 but with added
channel 144 (Japan country code remains mapped to MKK5_MKKC for now).
6) Change Japan MKK5 lower bands to "indoor".
7) Change Canada in LA country table to FCC6_FCCA.
8) Change Georgia to ETSI1_World.
9) Change Dominican Republic to FCC3_FCCA.
10) Change Kenya to ETSI13_WORLD.
11) Change Kazakhstan to MKK5_MKKC.
12) New Countries added Aland Islands, Andorra, Antigua and Barbuda,
    Cameroon, Cook Islands, Falkland Islands, Faroe Islands, French
    Southern Territories, Georgia, Guernsey, Heard Island, Holy See, Isle
    of Man, Jersey, Montserrat, New Caledonia, Niue, Norfolk Island, Saint
    Helena, San Marino, Sao Tome, Sint Maarten, Svalbard, United States
    Minor Outlying Islands and Virgin Islands (British).

Change-Id: Ic64ac96fa3e0828f628fecced66297ce176b3d3a
CRs-Fixed: 2475613 2454185
2019-07-16 15:53:49 -07:00
Abhinav Kumar
8b51c23a16 qcacmn: Handle use-after-free scenario while stopping soft AP
Currently, driver sets BSS peer and self peer to NULL
only in case of PEER AP/GO. It nither set BSS peer nor self peer
to NULL for GO/AP while de-attaching peers. This results in bss peer
use after free issue while stopping soft AP.

In order to fix this issue, the driver should set bss peer and self
peer to NULL for GO/AP as well.

Fix is to set bss peer and self peer to NULL for both PEER and AP
cases.

Change-Id: I055573c062c5a4e71fef2a699131e10fb6d97d71
CRs-Fixed: 2488371
2019-07-16 15:53:45 -07:00
Gerrit - the friendly Code Review server
db49e9de26 Merge changes into wlan-cmn.driver.lnx.2.0 2019-07-15 17:24:43 -07:00
Linux Build Service Account
05627eee58 Merge "qcacmn: Add host support for multicast RC stale period selection" 2019-07-15 14:53:08 -07:00
Aditya Sathish
dab965d68a qcacmn: Add host support for multicast RC stale period selection
Add support for multicast RC stale period selection.

Change-Id: I6a3d1d8e8f2fe32d662de64cfdf9619bc205689a
CRs-Fixed: 2482733
2019-07-15 10:36:57 -07:00
Vignesh Mohan
6cd3c0f9f9 qcacmn: Find EN302_502 applicable domains from regulatory
The EN302_502 radar pattern is applicable in a predefined list of
regulatory domains (defined in DFS component). During radar table attach,
the current regulatory domain is checked if it is one of the
applicable regulatory domains.
The predefined EN302_502 applicable domains are:
ETSI11_WORLD
ETSI12_WORLD
ETSI13_WORLD
ETSI14_WORLD

Predefining these regulatory domain pair values in DFS component will
affect future regulatory updates that modify/add regulatory domains
to this list. Also, as per regulatory update #27, ETSI13_WORLD is not
EN302_502 applicable and ETSI15_WORLD is EN302_502 applicable.

Introduce a regulatory API(is_regdmn_en302502_applicable()) that finds if
the current regulatory domain pair is one of the EN302_502
applicable domains.
Modify the EN302_502 applicable regulatory domains as follows:
ETSI11_WORLD
ETSI12_WORLD
ETSI14_WORLD
ETSI15_WORLD

CRs-Fixed: 2390875
Change-Id: I78839a796eeb53a6b06b9fe66e8cae58de8838fa
2019-07-15 08:51:19 -07:00
Akshay Kosigi
283e2358f4 qcacmn: CONFIG_WIN Macros to be moved out of DP/HAL
Remove CONFIG_WIN usage from Lithium DP and HAL module.

Change-Id: If388e45cb3e7e31493edd422a2f4c40f0dd4a799
CRs-Fixed: 2474613
2019-07-15 06:39:40 -07:00
phadiman
f09509b3f4 qcacmn: Populate mpdu_failed stats
Calculate mpdu_failed by subtracting
mpdu_tried with mpdu_success

Change-Id: Ic8a757729f3b352578d33c35d73158cffa64b78d
2019-07-12 08:29:37 -07:00
Sravan Kumar Kairam
830542f0d1 qcacmn: Fix wrong register window access
In register select window if the register offset falls
in the last stored register window in driver, register
window remap is not done. There is a case if platform
driver accesses the hardware registers and remaps the
register window, then driver wont be aware of this and
have the wrong cached register window. So when driver
tries to write or read it selects the wrong register
window and accesses wrong register address. So fix this
by always doing the register window remap.

Change-Id: Ic38cc8cc3d9d82a3534f5ea356027db324c9fe13
CRs-Fixed: 2477771
2019-07-12 02:05:35 -07:00
phadiman
4dc5e1f636 qcacmn: Remove unused field - is_bss
Remove unused field is_bss from AST
stats which is not serving any purpose

Change-Id: I5f63d9a027b5390802fab13ceab9d7d219a81e5a
2019-07-12 02:05:32 -07:00
Surabhi Vishnoi
b30b9176a2 qcacmn: Add target ce configs based on pktlog feature for Adrastea
When pktlog feature is disabled then the target CE11 attributes
should be set to CE_ATTR_DISABLE_INTR. Currently, the target ce configs
are attached unconditionally. This leads to incorrect attribute set for
CE11 in case when pktlog feature is disabled and thereby abortion of
HWDTIM in target as target checks host_ie for CE11. Currently host_ie
is not set for CE11, this results in aborting of suspend mode as
target assumes that host is using CE11.

To mitigate this issue, attach the target ce configs based on pktlog
feature. When pktlog feature is disabled then set the host_ie for
CE11 which will indicate to target that host is not using CE11 and
target will not abort HWDTIM mode.

Change-Id: I331d3bd8eda0c2aba9d86fb7601ac2b74c9e2c31
CRs-Fixed: 2459887
2019-07-12 02:05:28 -07:00
Vignesh Mohan
56a6f31213 qcacmn: Enable radar detection and subchannel marking in Agile DFS
When radar is found on Agile detector, the channels are not added to
NOL list and are only added to preCAC NOL list.

Add the radar affected channels, in Agile detector, to NOL list and to
preCAC NOL list based on the detector ID of the radar event received.

For subchannel marking, use agile channel instead of current operating
channel to the NOL when radar is found on agile detector.

Change-Id: Ifa61feeddbaaa81fe405972aa5826994a1383c00
CRs-Fixed: 2464929
2019-07-12 00:53:37 -07:00