Commit Graph

1110 Commits

Author SHA1 Message Date
Srinivas Girigowda
1e0456c9aa qcacld-3.0: Fix function types passed to qdf_trace_register
Fix function types passed to qdf_trace_register.

Change-Id: I6d22c05a866f78113c95bd21c83bb0a28a630385
CRs-Fixed: 2208843
2018-04-04 16:39:55 -07:00
Krunal Soni
5ee9ce4e2e qcacld-3.0: Remove dead code in protocol stack
Remove dead code in protocol stack.

Change-Id: I366705b8cf4cf13c030a6456c21dae94193d0d77
CRs-Fixed: 2216008
2018-03-30 17:00:09 -07:00
Tushnim Bhattacharyya
647f93e8ed qcacld-3.0: Call scheduler_post_msg directly instead of wma_post_ctrl_msg
Call scheduler_post_msg directly instead of wma_post_ctrl_msg.

Change-Id: I01dbe3623bfb9f83cbbf182b92cdb4f6fb98bb65
CRs-Fixed: 2213784
2018-03-30 13:30:38 -07:00
Jeff Johnson
682a7a5558 qcacld-3.0: Remove nBssLimit from struct csr_scanstruct
Remove unused field nBssLimit from struct csr_scanstruct.

Change-Id: I0f1f4b4608acd6332a9b3a2c48fc4bf430d187bd
CRs-Fixed: 2213060
2018-03-29 22:30:22 -07:00
Sandeep Puligilla
2fcc2548c6 qcacld-3.0: Convert eCsrPhyMode to enum wlan_phymode
Add api to convert enum eCsrPhyMode to enum wlan_phymode.

Change-Id: I94596d73940805ba7fbb07b2ea90a9e8dbbf7e03
CRs-Fixed: 2214021
2018-03-29 21:14:37 -07:00
Ashish Kumar Dhanotiya
d39c8b55db qcacld-3.0: Update correct reason code on receiving del sta
On receiving del station command, SAP is not updating the del
station reason code properly in station info.
Update the correct reason code in station info whenever a
del station or deauth station event comes.

Change-Id: I2004dc21f18682dbc7dee488e7b55bfccd0d242a
CRs-Fixed: 2178538
2018-03-29 17:32:02 -07:00
Sandeep Puligilla
f5ccbf66e6 qcacld-3.0: Deprecate enum wmi_dwelltime_adaptive_mode
Deprecate enum wmi_dwelltime_adaptive_mode and use enum
scan_dwelltime_adaptive_mode defined in scan component.

Change-Id: I9c33b852172d9208fb8440c6dc71a12aefd717da
CRs-Fixed: 2213150
2018-03-29 06:57:42 -07:00
Sandeep Puligilla
68908f2d02 qcacld-3.0: Never ageout connected AP scan entry
Connected AP scan entry is aged out if beacon
is not recieved within scan age out time.

Update mlme information of the connected AP/BSSID
scan entry so that scan age out hanlder will not
age it out even though the last beacon recieved
time is greater than the configured scan age out value.

Change-Id: I14c68c28459080623ca62c0bad9052e38d7fb348
CRs-Fixed: 2202010
2018-03-28 06:26:14 -07:00
Jeff Johnson
60b5fe20cc qcacld-3.0: Remove osScanChannelMask
Remove unused field osScanChannelMask in struct csr_scanstruct.

Change-Id: Id19ae20ec04284f51ebf96645257e70cdd104467
CRs-Fixed: 2213058
2018-03-27 23:38:32 -07:00
Jeff Johnson
5bb67b78e4 qcacld-3.0: Remove obsolete idle scan flags
Remove the following obsolete fields from struct csr_scanstruct:
- fCancelIdleScan
- fRestartIdleScan
- nIdleScanTimeGap

Change-Id: I50fd4d966586487111a55fc378a06783636a7df9
CRs-Fixed: 2212877
2018-03-27 13:52:53 -07:00
Jeff Johnson
4877d76793 qcacld-3.0: Remove current country BSSID & RSSI fields
struct csr_scanstruct contains fields currentCountryBssid and
currentCountryRSSI which are obsolete, so remove them.

Change-Id: I47f40cc687b0e905d3c2db4ad67fa32f70d5181e
CRs-Fixed: 2212972
2018-03-27 13:52:51 -07:00
Jeff Johnson
ab093c3422 qcacld-3.0: Remove Is11dSupportEnabledOriginal
The flag Is11dSupportEnabledOriginal is obsolete, so remove it.

Change-Id: I41626673ab2a9a53cd4607c2c3682530ed1c0051
CRs-Fixed: 2212925
2018-03-27 13:52:48 -07:00
Jeff Johnson
0b9639b4e7 qcacld-3.0: Remove obsolete csr_set_country_code()
Function csr_set_country_code() is obsolete, so remove it.

Change-Id: Ibccc6deaecb00862a2d9640de05106b81c658e69
CRs-Fixed: 2212924
2018-03-27 13:52:45 -07:00
Jeff Johnson
bc5aecd951 qcacld-3.0: Remove eWNI_SME_CHANGE_COUNTRY_CODE message handling
Message eWNI_SME_CHANGE_COUNTRY_CODE is no longer being sent, so
remove it along with the handler for it.

Change-Id: I8fe5e1e8c0c18ab51d496dddd9604c3a4cb2b236
CRs-Fixed: 2212920
2018-03-27 13:52:43 -07:00
Jeff Johnson
0820d32488 qcacld-3.0: Remove obsolete "country change" trace code
TRACE_CODE_SME_RX_HDD_CHANGE_CNTRYCODE is obsolete, so remove it.

Change-Id: I4f86162cd912f69c7b08e3384412eec96367dc40
CRs-Fixed: 2212909
2018-03-27 13:52:40 -07:00
Jeff Johnson
c3b15737e1 qcacld-3.0: Remove obsolete sme_change_country_code()
Function sme_change_country_code() is obsolete, so remove it.

Change-Id: I1d4ce3cb8931982415f5c457d01cd6046208db44
CRs-Fixed: 2212903
2018-03-27 13:52:38 -07:00
Tushnim Bhattacharyya
3b99f4b181 qcacld-3.0: Deprecate enum sir_conn_update_reason
Deprecate enum sir_conn_update_reason & use enum
policy_mgr_conn_update_reason from policy manager component.

Change-Id: Id592d5405235f29a962a2a7d8b679fa4363f556d
CRs-Fixed: 2213000
2018-03-27 07:29:09 -07:00
Vignesh Viswanathan
e25af7882c qcacld-3.0: Send 11k offload disable to FW during RSO Stop
Currently 11k offload command is sent to FW as part of RSO Start and
not explicit 11k offload disable command is sent to the FW. In case of
STA+STA concurrency cases, while 11k offload is enabled for the 2nd
STA after STA 1 is disconnected, the FW asserts because it has 11k
offload enabled for STA 1 and has not deconfigured it yet.

Send 11k offload disable command as part of RSO Stop during disconnect
to the FW so that it deconfigures 11k for the currently enabled STA
and re-configures for the second STA without assertion.

Change-Id: I8a1bcb8906c809f451f7ab3df3e4c671cef062fd
CRs-Fixed: 2208649
2018-03-27 07:29:06 -07:00
Sravan Kumar Kairam
a0600b8a87 qcacld-3.0: Modify IPA UC offload control cmd
IPA module has been moved to CLD component under the converged
driver model. Remove legacy WMA interface IPA command and use
the new defined API.

Change-Id: Icd9a207f43f8df4dc563d0078d402470683cfd7d
CRs-Fixed: 2177925
2018-03-21 18:57:06 -07:00
Krunal Soni
4b6c946459 qcacld-3.0: Add new diag event to capture connection stats
Add diag event and its structure to log various connection statistics
after the connection has been made.

Change-Id: I3572cd9230d89e2d4154fd43579c258a2e2bdb58
CRs-Fixed: 2208503
2018-03-20 22:35:07 -07:00
Dustin Brown
a2868623a0 qcacld-3.0: Use logging wrappers for HDD logs
Several logs are using QDF_TRACE with QDF_MODULE_ID_HDD directly.
Migrate these calls to the hdd_* logging wrappers instead.

Change-Id: I191014f0fd1ae55db71393655d96407ffa5953cb
CRs-Fixed: 2209514
2018-03-20 20:02:12 -07:00
Abhinav Kumar
49d08a742f qcacld-3.0: Move Channel convert and frame indication logic to lim_utils.c
Move Channel convert and frame indication logic from lim_p2p.c
to lim_utils.c and remove unused timer
pMac->lim.limTimers.gLimP2pSingleShotNoaInsertTimer.

Change-Id: I71de90d5fb88462e52148a434d43ea80c41cfe36
CRs-Fixed: 2191282
2018-03-20 07:38:17 -07:00
Jeff Johnson
66ee8a92fe qcacld-3.0: Replace typedef tCsrRoamProfile
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tCsrRoamProfile typedef does
not meet any of those criteria, so replace references to it with a
reference to the underlying struct.

Change-Id: Ie78bc34c5c39a56058d0daa0240047ec67392ab3
CRs-Fixed: 2207843
2018-03-19 19:57:58 -07:00
Min Liu
5eaf724da1 qcacld-3.0: Update scan list in FW when enable DFS scan
When enable DFS scan via wpa_cli, the related flag in mac context
also need to be updated so that DFS channels will be included in
configurations sent to FW accordingly when DFS scan is enabled.

Change-Id: I6033637364ddbc7e916627e5ab6a94aee825db98
CRs-Fixed: 2201307
2018-03-18 22:50:19 -07:00
Zhu Jianmin
3c83a848cb qcacld-3.0: Fix use after free in roaming disassoc rsp handler
During Rome LFR2 roaming, after pre-auth with new AP finished,
current AP is disassociated. In disassoc rsp handler:
csr_roam_roaming_state_disassoc_rsp_processor,
csr_roam_copy_profile is called after csr_dequeue_command.
In csr_dequeue_command, cmd from active list is removed, cmd from
pending cmd list is moved to active list and executed, if the cmd
is disassoc from wpa supplicant, pSession->pCurRoamProfile is
freed,  use after free happens in csr_roam_copy_profile

call stack when issue happens:

csr_roam_roaming_state_disassoc_rsp_processor
 ->csr_dequeue_command
    ->wlan_serialization_dequeue_cmd
       ->wlan_serialization_move_pending_to_active
          ->wlan_serialization_activate_cmd
             ->sme_ser_handle_active_cmd
                ->csr_roam_process_command
                   ->csr_roam_process_disassoc_deauth
                   -> csr_free_roam_profile
 ->csr_roam_copy_profile

Fixed by calling csr_dequeue_command after csr_roam_copy_profile

Change-Id: I903795e830c153b94a7dc0476a0e8ea5ecf6be2f
CRs-Fixed: 2205645
2018-03-16 05:26:20 -07:00
Jeff Johnson
5cc21cea5b qcacld-3.0: Remove DPU signatures from struct csr_roam_info
In a prior version of the driver DPU signatures were used to
synchronize the Data Plane with the Control Plane. The DPU signatures
were provided to HDD by SME via fields in struct csr_roam_info, and
then HDD provided the fields to the Data Plane. But that mechanism is
no longer used and HDD does not read these fields so remove them along
with the logic that is currently used to fill them.

Change-Id: Ib056c20683e6b4f0d969fcff227476d53e040cc0
CRs-Fixed: 2200995
2018-03-13 07:34:56 -07:00
Naveen Rawat
72475db24a qcacld-3.0: Check for return codes of dot11f_unpack functions
Add checks for return codes of dot11f_unpack functions.

Change-Id: I56149a2a767a9f13009710750a0588c0d658eb56
CRs-Fixed: 2175592
2018-03-12 15:57:33 -07:00
Rachit Kankane
0247191755 qcacld-3.0: Align structure to reduce Data Segment
Aligning structure variables properly can reduce memory requirement
of data segment. Thereby reduces over all memory requirement.

Change-Id: I8b1a704cb6ed852d23111b6ee9d14c883b889a78
CRs-Fixed: 2203674
2018-03-12 03:20:55 -07:00
Arif Hussain
eb8ba363b1 qcacld-3.0: Send edca params to firmware
Send all user requests to update edca parms to firmware.

Change-Id: I2b7e884d004c94f71bb5c29583b188ce3681ab0b
CRs-Fixed: 2202046
2018-03-11 01:25:56 -08:00
Krunal Soni
01507bd566 qcacld-3.0: (PART-3) Remove obsoleted enums in SME module
Remove some of the obsoleted enums and structure's members
in SME module

Change-Id: Ia453fcd2ba41a939964b6e481195c6bc64de6ab6
CRs-Fixed: 2201799
2018-03-09 17:30:23 -08:00
Krunal Soni
e608a27cb8 qcacld-3.0: Remove obsoleted INI called gFixedRate
Latest driver is not using "gFixedRate" INI anymore and this INI
is not doing any meaningful work, so remove it.

Change-Id: Icf7ef052a722f25c4338dd8086b14ce01c6176d8
CRs-Fixed: 2201799
2018-03-09 17:30:20 -08:00
Krunal Soni
cbfdb12cfa qcacld-3.0: (PART-2) Remove obsoleted APIs in SME module
Remove some of the obsoleted APIs in SME module

Change-Id: Ia4f890706769e5ace1dcff2d57fb33f6e67e1297
CRs-Fixed: 2201799
2018-03-09 17:30:18 -08:00
Krunal Soni
795f9c2733 qcacld-3.0: (PART-1) Remove obsoleted APIs in SME module
Remove some of the obsoleted APIs in SME module

Change-Id: If865445d564a89bde133ca32272fff9594ce44fd
CRs-Fixed: 2201799
2018-03-09 17:30:15 -08:00
Kiran Kumar Lokere
3324f63c57 qcacld-3.0: Add support to set no ack policy for ac
Add support to configure no ack policy for WMM access category.

Change-Id: Idf87507b78cdaf0ac8fdfc975e4fcbe0957423fa
CRs-Fixed: 2198241
2018-03-09 00:10:33 -08:00
Kiran Kumar Lokere
bc87bec984 qcacld-3.0: Add support to send ADDBA with user config
Add support to send ADDBA request with user configured buffer
size and tid and ADDBA response with user configured buffer
size.

Change-Id: I2a1dfedadeb68a1cfca9a6eba8e7775d0bb51d1a
CRs-Fixed: 2193872
2018-03-08 22:06:01 -08:00
Padma, Santhosh Kumar
7eecb5afbb qcacld-3.0: Consider SSID from supplicant
There is a chance that SSID may be NULL in IE's received by driver
and driver publishes the same in association request which is not
expected. Always consider SSID from supplicant which is valid in
all scenarios to fix this.

Specific scenario:
OWE SSID is hidden in OWE transition mode. When supplicant detects
connection to OWE transition mode, it issues connect with required
SSID to driver. But that ssid does not present in driver scan cache
as it is hidden. Instead of this ssid, driver scan cache has NULL
entry. Driver uses this NULL entry in association request which is
not expected.

Change-Id: I7ceb712db87d6c7f73c7483f74d402b1ab3e30db
CRs-Fixed: 2197532
2018-03-07 01:37:33 -08:00
Kiran Kumar Lokere
722dccd92a qcacld-3.0: Add support to allow WEP/TKIP in HE for test
Add support for test configuration to allow WEP/TKIP in HE mode

Change-Id: I19b0620bc3b8e1f7319af5e762e565fcaba11b79
CRs-fixed: 2194497
2018-03-06 23:44:58 -08:00
Abhishek Singh
821f09c3fc qcacld-3.0: Add logic to negotiate the auth and enc type depending on AP
In testbed sta mode the RSNE enc type and auth type may not match the
AP's enc type and auth type and thus the scan filter is unable to match
and find the AP.

Introduce auth and enc type as "ANY" in scan filter. With the auth
and enc type set as ANY, all the AP's matching the BSSID and SSID
will be filtered and the negotiated auth and enc type will be
dependent on AP's auth and enc type.

Change-Id: Ia7d573b393f7883f4c92188133734795be1781aa
CRs-Fixed: 2197223
2018-03-06 01:51:20 -08:00
Abhishek Singh
f05b0cb604 qcacld-3.0: Add logic to use common API to inform beacon
Duplicate API's are present in HDD and common code to inform the
beacon to kernel. This change removes the duplicate API from HDD
and use common API to inform beacon.

Change-Id: I1916ebd6d3c153f47533cde6a1e2e78ebaae55dc
CRs-Fixed: 2199760
2018-03-06 01:51:15 -08:00
Mukul Sharma
ecf8e09fd5 qcacld-3.0: Disable indoor channel on sap start
There are scenario where indoor channel operations
(like  active / passive scan/connect/roam etc)
are not desired / permitted specially in sap case.
Hence add support of disabling indoor channel
on sap start and revert it on sap stop.

Change-Id: Id6e01534532e3076a3e662e6a4f71e8be924165a
CRs-fixed: 2121103
2018-03-05 22:33:43 -08:00
Arif Hussain
80a328aeaa qcacld-3.0: Fix possible buffer overflow in csr_update_fils_params_rso
Fix possible buffer overflow in csr_update_fils_params_rso function.

Change-Id: Icc6e31c094611a74624eed7a4e98ffaf7128f464
CRs-Fixed: 2196080
2018-03-05 20:48:48 -08:00
Arif Hussain
d15902ccd5 qcacld-3.0: Fix possible null pointer de-references in SME and WMA
Add null check to avoid null pointer de-references.

Change-Id: I8a93f269467bbb0dec5610ae158c4f5dc9658a12
CRs-Fixed: 2196080
2018-03-05 20:48:45 -08:00
Min Liu
22202b703a qcacld-3.0: Peer is not deleted when delete VDEV
Failure can be observed when waiting for peer deletion
before sending WMI command. Peer deletion in VDEV stop
timeout handler also need to be handled in the scheduler
queues.

Change the logic to wait for peer delete completion
before sending message to scheduler queue to delete VDEV.

Change-Id: I78d3070a73c85d212bc33c346b3e60edf3c016f8
CRs-Fixed: 2187430
2018-03-05 07:16:41 -08:00
Rajeev Kumar
d056536a27 qcacld-3.0: Nuke HDD and SME obsolete wow enter and exit APIs
WoW is always enabled on ROME and ADRASTEA platforms and wow
wake up pattern configuration is dynamic based on vdev type.
All wow wake up patterns are configured at the time of vdev
creation. HDD and SME has obsolete wow enter and exit logic
and hence nuke it.

Change-Id: I228ff5b77a7f9dac579448ada4ebee591d5a0c38
CRs-Fixed: 2198644
2018-03-02 18:28:26 -08:00
Nirav Shah
eb017befbd qcacld-3.0: Add support for QCA9379 on x86 platform
Add support for QCA9379 chip on x86 platform for
USB and SDIO attach.

Change-Id: I2de81794cd16521097ffa6956a18b4b0fe981d36
CRs-Fixed: 2196757
2018-02-28 05:29:39 -08:00
Varun Reddy Yeturu
bc1bea0956 qcacld-3.0: Send ROAM_STOP if roam synch failed
Send a ROAM_STOP command to firmware with an explicit
reason code for the failure so that it is not blocked
in WMA before sending it to firmware.

Change-Id: I4d7e2e525c145ca0e990dcef85948285e2186c63
CRs-Fixed: 2182671
2018-02-27 22:17:04 -08:00
Abhishek Singh
3f13a81758 qcacld-3.0: Security enhancement fixes for RSNE frame parser
Adds logic in frame parser to use default RSN IE fields if optional
fields are not present in IE. So if RSN IE doesn't contain AKM,
group and unicast cipher use the default AKM(AKM_IEEE8021X) and
cipher (CCMP). Also adds sanity checks for RSNE in the frame parser.

Change-Id: I120a29c21407f82aab2c6fcdcaf1095518cb71b5
CRs-Fixed: 2195951
2018-02-27 21:17:02 -08:00
Vignesh Viswanathan
200f5c19b0 qcacld-3.0: Skip starting SAP after channel change if stop BSS in progress
When stop_bss from HDD is received when a SAP channel change request
is currently in progress and channel change response is not yet
received from the FW, the stop_bss would clear the SAP session and
when channel change response is received, we try to start BSS again.
The CSR roam state is also set to JOINING in this case.

As part of start BSS, we queue set key command to SME active command
list. Since the session has been cleared, eWNI_SME_SETCONTEXT_RSP
sent to lim would not be processed in CSR state JOINING leading to set
key command stuck in the active command list.

Do not restart BSS after channel change response if stop BSS is in
progress. Also handle eWNI_SME_SETCONTEXT_RSP and clear the command
queue in CSR Joining state.

Change-Id: I8dbab054746d26cc92fc2274d35ce76a694035fe
CRs-Fixed: 2193505
2018-02-27 14:07:02 -08:00
Abhishek Singh
6378103e12 qcacld-3.0: Add logic to ignore PMF check for STA test mode
In testbed STA mode the RSNE may not match with APUT and thus
driver fails to filter AP from scan cache as PMF capability
mismatch.

With this change driver will ignore PMF capability check and
proceed with connection to send auth and assoc to APUT.

Change-Id: I1bf5947fb08574941eaf1845ec1e36ee9b030dd0
CRs-Fixed: 2195354
2018-02-26 21:44:43 -08:00
Kiran Kumar Lokere
5cc2f0da1f qcacld-3.0: Add support to configure HE fragmentaion
Add support to configure HE fragmentation support using NL
command.

Change-Id: I49b81df96a9c8199a1cc5994762aeba0ed9676b0
CRs-Fixed: 2166782
2018-02-24 04:11:17 -08:00