Commit Graph

237 Commits

Author SHA1 Message Date
Tushnim Bhattacharyya
b566893775 qcacmn: Add scan_ctrl_flags_ext to scan command
This change adds scan_ctrl_flags_ext to scan command
to support DBS Scan selection policy, adding policy
manager logic conditionally.

Change-Id: I424e107aac67fa5bac8ff72b023a5fe8c7e89bbc
CRs-Fixed: 2061031
2017-08-08 12:06:09 -07:00
Ganesh Kondabattini
db183ccb8c qcacmn: Add scan_ctrl_flags_ext to scan command
This change adds scan_ctrl_flags_ext to scan command
to support DBS Scan selection policy.

Change-Id: I71727259c0b5984cfc8fd6157ed0066d3cd9b193
CRs-Fixed: 2061031
2017-08-06 14:48:06 -07:00
Kapil Gupta
de02d4f62b qcacmn: FILS indication IE changes
Add changes to add FILS indication info element in scan result.

Change-Id: I341c30fe23ac8bfe518752d783d23094cbc2ac98
CRs-Fixed: 2068436
2017-07-18 23:35:06 -07:00
Vivek
b02a649f89 qcacmn: Remove vdev/peer locks for trivial APIs
Remove vdev/peer locks from trivial API's. This follows the changes from
which the lock requirement from few simple APIs are removed.

Change-Id: I9972d51dfd1a42bdedbfd0fd4e67af03d030a1f5
CRs-Fixed: 2060880
2017-06-26 23:32:22 -07:00
Vivek
5ec0bd3636 qcacmn: Remove psoc/pdev locks for trivial APIs
Remove psoc/pdev locks from trivial API's. This follows the changes from
which the lock requirement from few simple APIs are removed.

Change-Id: Ib5769c2234c8d57f485c0eef5a4e3c61fa170508
CRs-Fixed: 2060880
2017-06-26 23:32:19 -07:00
Nitesh Shah
b256bb0e81 qcacmn: Add support to send DBS Scan command to firmware
This change adds support to send the DBS Scan command to
the firmware.

Change-Id: I147855690f09af03a43f85f2e57626d7f73998de
CRs-Fixed: 2029402
2017-06-14 08:23:51 -07:00
Om Prakash Tripathi
62d0380257 qcacmn: Add flush callback for scan module
Components are required to provide flush callback to scheduler which
gets invoked for all pending commands in scheduler queue when scheduler
thread is going down.
Added flush callback for scan so that command cleanup can be done.

Change-Id: I990a5e14db1498e13a2eeeaa605b44593b8442f1
CRs-Fixed: 2056542
2017-06-10 23:00:27 -07:00
Dustin Brown
f3351d97d7 qcacmn: Expose scan_backoff_multiplier for NLO/PNO
For Network Listen Offload and Perfered Network Offload, the fast scan
period is multiplied by scan_backoff_multiplier after max cycles have
occurred. Expose scan_backoff_multiplier to consumers of the WMI API,
so this parameter can be configured.

Change-Id: I478fb61cd096d3496205f4ff556e180dabf99b77
CRs-Fixed: 2035201
2017-06-09 21:36:26 -07:00
Sandeep Puligilla
d9ac9a2abe qcacmn: Increase scan cancel sync time
Scan command timeout value is 30secs and scan
cancel sync waiting time is 5sec due to this
in failure scenario scan timeout callback is
getting triggered very late and causing crash
in HDD.

Increase scan cancel sync timeout value equal to
scan command timeout value.

Change-Id: I7b98d26ac5d97039714a431030e47c463d3a670e
CRs-Fixed: 2048167
2017-06-06 10:26:18 -07:00
Abhishek Singh
9f6058d24d qcacmn: Add support for PMO suspend and resume scan API
Register PMO suspend and resume scan API. In suspend API, abort
all pending scans.

Change-Id: Iec03383a958f1bf93d77a86c351532270c7fdcb8
CRs-Fixed: 2038163
2017-05-19 13:51:42 -07:00
Sandeep Puligilla
140c41ee36 qcacmn: Register scan rule callback with serialization
Register Scan rule callback API with the serialization module.

Change-Id: Ie578413a13bc7adcac0ed2a56d9574ad00b7e51c
CRs-Fixed: 2037248
2017-05-19 05:27:19 -07:00
Abhishek Singh
f95b9e4248 qcacmn: Add wait for cancel scan on pdev and vdev
Add cancel scan sync api which will wait for scan to be aborted on
pdev or vdev.

Change-Id: Ie02eb981154856cda38ef70f42fdfcf82bb88961
CRs-Fixed: 2038092
2017-05-11 02:13:25 -07:00
Bharat Bhushan Chakravarty
145d393444 qcacmn: SON convergence
1) Defined modularized public api for cdp module
to track inactivity and over load detection.
2) Initialization calls are added to attach and
detach SON specific api.
3) operating system specific calls are replaced with qdf calls.

Change-Id: I130d1e99208d6454f5d9888774534cc6d619ad83
2017-05-09 17:29:11 -07:00
Krunal Soni
5899b0a3da qcacmn: Init remaining scheduler_msg on stack before posting msg
Initialize scheduler_msg on stack before posting using scheduler API
such that un-used fields in message structure are initialized to 0.

Change-Id: Ic62e745667c487fd8ea923c89abd6e1a76908bdf
CRs-Fixed: 2034772
2017-05-03 03:06:32 -07:00
Krishna Kumaar Natarajan
7726378826 qcacmn: Update roaming candidate selection logic
Update roaming candidate selection logic to add weightage to 11ax
AP.

Change-Id: I7ae6702095d6da8e302e35577f5e4697b5e06d3a
CRs-Fixed: 2037840
2017-05-01 09:20:23 -07:00
Venkateswara Swamy Bandaru
851184b0e4 qcacmn: Add support to extract SRP IE in beacon
Added support to extract spatial reuse parameter IE in beacon receive.

Change-Id: Ia7ce2a58ae8b65cddd9b3f8d969bd95b459aab3e
CRs-Fixed: 2033106
2017-04-25 15:00:34 -07:00
Abhishek Singh
6e7489e3e8 qcacmn: Move user configured params from scan filter to scan params
Some user configured params are passed in filter during scan request.
Added them in scan defaults params and update them from user config.
Also use these params from scan def params instead of filters.

Change-Id: Ice2817c2f135289d7a3dbfa94c9c06263473ce2d
CRs-Fixed: 1095299
2017-04-25 13:02:22 -07:00
Om Prakash Tripathi
0078b78f06 qcacmn: add set/get APIs for max active scans
Add set/get API for max parallel active scans supported.
Max active scans allowed is set from ext service ready event
handler(8 as of now). Once FW announces this capability, FW
announce value must be used instead of hardcoded value 8.

Change-Id: I2af3a34c9f55f92c47aebbd12838a8d8fc6e3ba7
CRs-Fixed: 1095299
2017-04-25 13:02:21 -07:00
Om Prakash Tripathi
cdcbb39764 qcacmn: update average rssi in scan entry
If elapsed time since last rssi update for a particular
scan entry is smaller than a thresold, calculate a
running average of the RSSI values. Otherwise last RSSI
is more representive of the signal strength.

Change-Id: I4cbecc8b6bfbb73c272544114b063b25c26e14fe
CRs-Fixed: 1095299
2017-04-25 11:01:06 -07:00
Om Prakash Tripathi
f527f16e8e qcacmn: add refcnt and lock support for scan
1. Take reference count for vdev/pdev/psoc object before posting
   async message to scan component.
2. Take proper lock before invoking objmgr APIs which require locking.
3. Fixed few memory issues in failure cases.

Change-Id: I594b9ebf904c1c3b049a5d9d9e15679ac41599e7
CRs-Fixed: 1095299
2017-04-15 18:07:05 -07:00
Kapil Gupta
a6e44ca3bd qcacmn: Initialize scan_f_chan_stat_evnt from configuration
Currently driver is not initialize scan_f_chan_stat_evnt from
the configuration file which causes WMI_SCAN_CHAN_STAT_EVENT
to be always not included in the scan flag.

Add changes to initialize scan_f_chan_stat_evnt based on
ini configuration.

Change-Id: If6ea1d5c4efcc6d934daf00b537f25f0727ee55b
CRs-Fixed: 2031301
2017-04-11 11:46:29 -07:00
Abhishek Singh
8c6e82d763 qcacmn: Add PNO changes for converged scan
Adds PNO related changes for converged scan

Change-Id: Ia18e48645d511134698777b334348d68daf2dbee
CRs-Fixed: 1095299
2017-04-11 11:04:33 -07:00
Om Prakash Tripathi
d088a8a19e qcacmn: change scan API to pass pdev insted of vdev
Few components don't have vdev object but still they want to
receive scan envents on underlying pdev.
Change ucfg_scan_register_event_handler and
ucfg_scan_unregister_event_handler to accept pdev instead of vdev.

Change-Id: I5a7ea78b1470b89637d418de6b984e5d20007c9c
CRs-Fixed: 1095299
2017-04-11 11:04:18 -07:00
Om Prakash Tripathi
89db19b5b7 qcacmn: Enable converged scan component
Update WMI layer to adopt to converged scan module
and enable converged scan component init/deinit

Change-Id: I4f9da95f90f737ac8bdcaa54f9eb4e154f37d3de
CRs-Fixed: 1095299
2017-03-29 09:09:24 -07:00
Abhishek Singh
2f1324678d qcacmn: Add support to update user defined scan params
Add support to update the user defined scan params values.

Change-Id: I8a971b0fa0d119f58e3143ca6be9c5ea4ee47f52
CRs-Fixed: 1095299
2017-03-15 04:26:41 -07:00
Abhishek Singh
f9297e523b qcacmn: Add changes in scan req to support P2P search scan
Add changes to support P2P search using new scan module.
To support p2p search added vdev id and Broadcast mac address
in scan req also enable flags depending on scan req type.

Change-Id: I597f9f353da1b8b129f0ee16cd8eb7b7bbad2625
CRs-Fixed: 1095299
2017-03-10 04:27:24 -08:00
Abhishek Singh
f94beaad36 qcacmn: scan convergence - add target if changes
Add target if related changes for scan module.

Change-Id: Icaf6a30790106fec30ba9dccc9036be079a8bc0d
CRs-Fixed: 1095299
2017-03-08 14:27:26 -08:00
Abhishek Singh
e5f3f0f10e qcacmn: Add 11ax related elements to common scan code
Add 11ax related elements, HECAP and HEOPS IE to common scan code.

Change-Id: Ic4413430e8183a1e41b53999746609f047caa374
CRs-Fixed: 1095299
2017-03-08 14:27:25 -08:00
Sandeep Puligilla
d14a189194 qcacmn: Fix memory leaks in scan start and stop requests
-Fix memory leaks in scan start and stop request by freeing the
request if posting to scheduler fails.
-Populate scan event id based on target.

Change-Id: I169c4f3c141dc1af48954788dc74d235afd59c9e
CRs-Fixed: 1095299
2017-03-07 10:49:46 -08:00
Abhishek Singh
483d914ab7 qcacmn: Improve logging in scan done callback and BSS ageout
Improve logging in cfg80211 scan done callback, by decreasing the
log level to info from error and printing only the scan complete
events.
Also print a log when BSS is aged out.

Change-Id: If2734df1168bd354415305211b50f6c79bee2df0
CRs-Fixed: 1095299
2017-03-07 10:49:44 -08:00
Sandeep Puligilla
7acd31fa33 qcacmn: Add cfg80211 scan start and stop command
Add cfg80211 scan start and scan stop commands.

Change-Id: I20b6c7743496ae82cc3a93befb5b68812047ec1a
CRs-Fixed: 1095299
2017-03-02 16:11:46 +05:30
Abhishek Singh
37bf2e0dca qcacmn: Add changes to get/flush scan results
Add changes to get/flush scan results. Also add support to
filter results depending on the filter passed.

Change-Id: Iefb297ef19058299fa26b9bb61202e902e5fd465
CRs-Fixed: 1095299
2017-03-01 22:06:00 -08:00
Abhishek Singh
d4e600f7d6 qcacmn: Add changes to add scan entry in scan cache
Add changes to add scan entry in scan cache.
Also takes care of duplicate detection and update.

Change-Id: I6715e75bdfc7e703a644b165e699662fa05f4c62
CRs-Fixed: 1095299
2017-02-28 12:05:45 -08:00
Abhishek Singh
4caf1a9af4 qcacmn: Add scan database init and deinit changes
Add changes to initialize and de-initialize the scan database.
Also registers callback to TXRX module to handle
beacon and probe resp and convert it to scan entry.

Change-Id: Ic55e4fc6dc1b23bdf50165aea219e112dcad676d
CRs-Fixed: 1095299
2017-02-28 12:05:43 -08:00
Om Prakash Tripathi
22f95dcc59 qcacmn: scan convergence - interface definition
Add north interface, south interface and offload interface
API definitions

Change-Id: Iccae20d266e7248088241416730d9ea317c3f77b
CRs-Fixed: 1095299
2017-02-28 12:00:50 -08:00
Sandeep Puligilla
2e1088dd4b qcacmn: Scan module init and deinit
Scan module init and deinit

Change-Id: Id3f4b88796c1145f487c02785084320ee8b21037
CRs-Fixed: 2008137
2017-02-20 07:29:17 -08:00
Om Prakash Tripathi
7e3f45da3c qcacmn: scan convergence - initial set of files
Add initial set of scan files, structure definitions
and API proto type.

Change-Id: Ibfaef8bb09d51e12bde773fcea69e273eff3bb41
CRs-Fixed: 1095299
2017-02-20 01:03:21 -08:00