Commit Graph

242 Commits

Author SHA1 Message Date
Dundi Raviteja
3aa01be35a qcacld-3.0: Remove ini and iwpriv support for changing SIFS burst mode
Remove support for enabling/disabling SIFS burst mode,
SAP DFS channel SIFS burst and SIFS burst duration through
ini parameter as well as through IOCTL

Change-Id: I3d43afa3c0c85eef470a29b9e7ad812079666278
CRs-Fixed: 2238175
2018-05-22 00:45:28 -07:00
Jeff Johnson
c97816c244 qcacld-3.0: wma: Fix misspellings
Address the following issues in the core/wma folder:
CHECK: 'accomodate' may be misspelled - perhaps 'accommodate'?
CHECK: 'acess' may be misspelled - perhaps 'access'?
CHECK: 'catagory' may be misspelled - perhaps 'category'?
CHECK: 'chnage' may be misspelled - perhaps 'change'?
CHECK: 'defintions' may be misspelled - perhaps 'definitions'?
CHECK: 'Intialize' may be misspelled - perhaps 'Initialize'?
CHECK: 'Intial' may be misspelled - perhaps 'Initial'?
CHECK: 'proces' may be misspelled - perhaps 'process'?
CHECK: 'progess' may be misspelled - perhaps 'progress'?
CHECK: 'refrence' may be misspelled - perhaps 'reference'?
CHECK: 'Relevent' may be misspelled - perhaps 'Relevant'?
CHECK: 'reponse' may be misspelled - perhaps 'response'?

Change-Id: Idc314b5a3a6945211581e2135cfaf9d0d5f69457
CRs-Fixed: 2241946
2018-05-18 02:17:05 -07:00
Vignesh Viswanathan
f0ef774994 qcacld-3.0: Remove unused scan_info struct in wma_txrx_node
Remove the unused member scan_info in wma_txrx_node structure.

Change-Id: Ice2c3209620ac7fd9874680b2d976ca363d22695
CRs-Fixed: 2239807
2018-05-16 02:07:38 -07:00
Srinivas Girigowda
eb6ecf3f96 qcacld-3.0: Consistently use policy_mgr_dual_mac_config
Remove duplicate structs wmi_dual_mac_config and sir_dual_mac_config
and use policy_mgr_dual_mac_config.

Change-Id: I6da6539f519ec46ee274ba3f3ae042e5fd9c25d2
CRs-Fixed: 2190993
2018-05-12 04:31:13 -07:00
Tushnim Bhattacharyya
89710e3e80 qcacld-3.0: Use WMI_HOST_WLAN_PHY_MODE instead of WLAN_PHY_MODE
Use the enumaration defined in common instead of the legacy one in
cld.

Change-Id: I0ad7659b8d03ae5a14b15ca464395ea3e2571286
CRs-Fixed: 2216803
2018-05-04 21:46:42 -07:00
Naveen Rawat
f8792bd18a qcacld-3.0: Move chanmode_to_chanwidth API to qcacmn
Move chanmode_to_chanwidth API to qcacmn since it will be used by ndp
schedule update event.

Change-Id: I13d00c0b818eb0da434c8a5372b2ab7b6693f22a
CRs-Fixed: 2216803
2018-05-02 18:46:06 -07:00
Himanshu Agarwal
fc5d66088a qcacld-3.0: Send frames with GCMP MIC LEN if encryption is GCMP
CCMP and GCMP both have different lengths of their MIC part. MIC
length for CCMP is 8 bytes whereas it is 16 bytes for GCMP. When
encryption type is GCMP/GCMP-256, sending packets with CCMP MIC
length causes fw to drop the GCMP encrypted management packets
leading to connection issues.

Send GCMP encrypted frames with GCMP MIC length.

Change-Id: Ia83fa6ffde880fe69e5e4c3e3c3ce9c62ad8fa3c
CRs-Fixed: 2203224
2018-04-26 21:38:55 -07:00
Jeff Johnson
f6977c5182 qcacld-3.0: wma: Remove legacy markings
Per current guidance remove legacy markings.

Change-Id: I2eae6b3681fe3c454d3680ac915a983af87ee329
CRs-Fixed: 2229655
2018-04-24 14:48:27 -07:00
Naveen Rawat
3ff5cff23e qcacld-3.0: Add implementation of get_wake_lock stats
Add changes to support get wake lock stats from within cp_stats
component.

Change-Id: I93855e4a1635afa97b4d5235ddb9cd92654f943d
CRs-Fixed: 2210330
2018-04-23 22:18:48 -07:00
Jeff Johnson
3d46351ccd qcacld-3.0: Remove obsolete SoftAP VSTA feature code
The SoftAP VSTA feature was introduced to overcome a limitation in a
prior version of WLAN hardware. Since the WLAN hardware supported by
this driver does not have this limitation, remove the feature code.

Change-Id: I1f2fe31b294fb7b2da1fa8619b3380412c5d872e
CRs-Fixed: 2224817
2018-04-18 18:38:24 -07:00
Yeshwanth Sriram Guntuka
a3f8d57005 qcacld-3.0: Update tx params if 2.4G APs min supported rate is 6Mbps
In STA mode, tx params for auth and assoc req frame
are not updated if minrate is 1 or 6Mbps as these
are the default rates for 2.4G and 5G respectively.
If 2.4G APs min supported rate is 6Mbps, the tx params
are not updated which results in auth and assoc req
frame transmitted at 1Mbps.

Fix is to update tx params if minrate is 6Mbps and
AP is operating in 2.4G.

Change-Id: Ia12c7b13cfb93e2d3b5a4ae124003248fa109e3f
CRs-Fixed: 2205282
2018-03-15 09:32:41 -07:00
Arif Hussain
d54b62c7ca qcacld-3.0: Add dfs phyerr processing
Add dfs phy error processing code.

Change-Id: I756df1052bc563d312112a7c2250f2b34224eae9
CRs-Fixed: 2203434
2018-03-13 21:01:08 -07:00
Rachit Kankane
b103562c27 qcacld-3.0: Add HTC Credit History Feature flag
Add compilation flag to compile out HTC credit History
feature cleanly from the cld-3.2 driver binary.

Change-Id: I5f5e73e430d282c99d3077fb82ed1cb8eb79715a
CRs-Fixed: 2190545
2018-03-08 18:46:38 -08:00
Dustin Brown
0b703ef927 qcacld-3.0: Remove maxWoWFilters and related
Recent changes in Power Management and Offload (PMO) have removed the
need for a configurable maximum number of WoW filters. Remove the
following relevant fields:

 * maxWoWFilters
 * CFG_MAX_WOW_FILTERS_MAX
 * WMA_STA_WOW_DEFAULT_PTRN_MAX
 * max_wow_filters
 * ol_ini_info

Change-Id: I99cc74731d6373258dc65473a8342bda0ab2786b
CRs-Fixed: 2199452
2018-03-05 23:33:27 -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
gaurank kathpalia
85f8a61cf9 qcacld-3.0: Periodically update host time stamp to firmware for sync
qcacld-2.0 to qcacld-3.0 propagation

Send host timestamp to firmware, so that firmware can print the
logs timestamp in sync with host.

Change-Id: I1d4d223aa1c8e207941ab659f69b72a855e3a604
CRs-Fixed: 2193976
2018-02-28 23:35:44 -08:00
Abhinav Kumar
f9989586a6 qcacld-3.0: Scan cleanup in lim and csr
Cleanup the unused scan legacy code in lim and csr

Change-Id: Ibea328196a9453ebaae887aa4068e78c47296762
CRs-Fixed: 2184924
2018-02-14 04:02:17 -08:00
Kiran Kumar Lokere
f7662e5fed qcacld-3.0: Validate opmode update req before sending to FW
Check the current vdev supported bandwidth values agianst peer
opemode update value and if the peer opmode value is greater than
current supported value then do not send the opmode update request
to FW.

Change-Id: I8f360d769b5aafb90061a6a9d18f1f8062e3534e
CRs-Fixed: 2174050
2018-02-13 18:28:42 -08:00
Min Liu
a9df1ff921 qcacld-3.0: Fix FW assert when delete VDEV
FW assert is observed when deleting VDEV due to there are peers
not deleted.

Add check for peer number in FW before sending delete VDEV
command to avoid such issue.

Change-Id: I4cc5d4c63faf3dc8f7b9d0702f92b54b298802cb
CRs-Fixed: 2163770
2018-02-09 01:51:13 -08:00
Arunk Khandavalli
10af728966 qcacld-3.0: use common specific mode caps
As part of convergence the mode capabilities
are extracted and saved in the target info structure.
Update the hardware mode list and pcl from the converged
structures.

CRs-Fixed: 2179003
Change-Id: I3cfc28533448c312913db3bead5d5322386f3f74
2018-02-08 07:55:38 -08:00
Arunk Khandavalli
2462f461ab qcacld-3.0: Remove redundant wma_handle values
update the max frag entry,ht,vht, rf chains from from the converged
target psoc capabilities information and remove redundant wma_handle.

CRs-Fixed: 2178922
Change-Id: I6bfe734bac85905b0d6837bffb37d286cff2a4ff
2018-02-07 03:07:37 -08:00
Arunk Khandavalli
80a61351fb qcacld-3.0: Extract phy_capability from target psoc
As part of converged init deinit architecuture, all the target
capabilities are saved as part of target_psoc_info, use the same
to update.

CRs-Fixed: 2178726
Change-Id: Iad1d0224e0fdfe1140d1600e17f3e585142eaf63
2018-02-07 02:15:12 -08:00
Himanshu Agarwal
ceb9faa305 qcacld-3.0: Remove dependency on WMA layer for green AP component
Remove dependency on WMA layer for green AP component by registering
green AP events through target_if layer.

Change-Id: Ic4ea8df1928db632b8e31f0a873b74c6aff4505d
CRs-Fixed: 2167028
2018-02-06 17:32:55 -08:00
Arunk Khandavalli
cfde2719f5 qcacld-3.0: use converged target resource config
As part of converged architecture use the converged
target resource configuration.

CRs-Fixed: 2178610
Change-Id: Ic0e3cbddea3c216688eb16c4e9a8045c7a0a1e9e
2018-02-03 15:10:42 -08:00
Arunk Khandavalli
a6305a33b6 qcacld-3.0: Converge on Initial Host-FW handshake
Initial changes for the init deinit convergence wherein
service ready, extended service ready and init cmd are
converged.

Change-Id: I1c1fd50f51362f4f09561c259961e6761429fcd0
CRs-Fixed: 2178590
2018-02-03 15:10:39 -08:00
Varun Reddy Yeturu
b5d858ec80 qcacld-3.0: Handle disassoc and deauth during LFR3 roaming
Ignore the disassociation and deauthentication requests from
the old AP once roaming is in progress. Memorize the
received disassoc/deauth. If the roaming is not successful
and current AP's connection is retained, then the earlier
received disassoc/deauth can be honored and disconnect can
be triggered internally.

Change-Id: I5fa4d154c17e08904d839b8a889020680d662021
CRs-Fixed: 2160681
2018-02-01 21:30:30 -08:00
Ryan Hsu
6fdc60fcae qcacld-3.0: clean up the FTM legacy code
clean up the ftm legacy code

Change-Id: If56f46386108b04f8c1ec73804976c61019a6ffe
CRs-fixed: 2169366
2018-01-22 11:20:52 -08:00
Padma, Santhosh Kumar
0ab7817dc3 qcacld-3.0: Add support for GMAC MIC validation
Add changes to validate MIC for the received protected
MC/BC frames with GMAC group management cipher suite.

Change-Id: Ie5f60674a452d2d930acc9ff9eb55de37645097a
CRs-Fixed: 2164828
2018-01-16 11:29:05 -08:00
Himanshu Agarwal
b229a14b67 qcacld-3.0: Add support for Green AP UMAC componentization
Add support for Green AP UMAC componentization.

Change-Id: I4e41ee6c5dfd055c273096c56de4fa253727b429
CRs-Fixed: 2166756
2018-01-12 12:20:09 -08:00
Amar Singhal
ef59eee054 qcacld-3.0: Remove un-necessary checks on iface ptr value
In many cases, iface ptr value cannot be NULL. Remove the
un-necessary check iface ptr value.

Change-Id: Ic7430dd2a5e660daf08b007cbc9f0fcedad7ef01
CRS-Fixed: 2162236
2018-01-08 00:32:05 -08:00
Hanumanth Reddy Pothula
07e5f99716 qcacld-3.0: Remove FW memory dump feature
qcacld-2.0 to qcacld-3.0 propagation

FW memory dump feature is no longer used. Hence remove FW memory
dump feature code changes.

Change-Id: Ida655f83630c369df746e7c0c9d61a8fee2932a2
CRs-Fixed: 2140261
2017-12-28 11:54:10 +05:30
Naveen Rawat
b0c5b6b6a0 qcacld-3.0: Statically allocate DPH hash table
DPH hash table is allocated for each session of depth equal to
max possible peers. This memory chunk goes upto 33KB in size and
may fail. Instead allocate the memory from BSS segment so that
run-time allocation is not needed.

Change-Id: I56d6adb7934faef1940ab8515fed30646f536ab2
CRs-fixed: 2149563
2017-12-07 19:26:50 -08:00
jiad
cd49ec74b5 qcacld-3.0: indicate tkip mic error to protocol layer
Currently tkip mic countermeasure is not supported for Napier. Fix is to
indicate tkip mic error indication to protocol layer so that errors can
be propogated to supplicant.

Change-Id: I8ee94343e76040e360f0887a826c07f98545f71f
CRs-Fixed: 2151984
2017-12-06 06:56:47 -08:00
Naveen Rawat
d773414489 qcacld-3.0: Send WOW timer pattern to firmware
Send WOW timer pattern to firmware when suspend is requested and
INSTALL_KEY is not sent to firmware yet. This will allow firmware
to wake host in case Eapol frames are not received and do a graceful
disconnect.

Change-Id: Ibbcc0af85ee9ddcd7f6559c83c67274508193004
CRs-Fixed: 2127634
2017-12-02 01:40:45 -08:00
Padma, Santhosh Kumar
aa2433ee51 qcacld-3.0: Add changes to handle WMI_ROAM_SYNCH_FRAME_EVENTID
Firmware sends beacon/probe response, reassoc request and
reassoc response using new event WMI_ROAM_SYNCH_FRAME_EVENTID
when the data that it wants to send via WMI_ROAM_SYNCH_EVENTID
exceeds max length 2k in firmware. Add changes to handle
WMI_ROAM_SYNCH_FRAME_EVENTID in such a scenario.

Change-Id: I2c0821f3547b4ee86cd6860a150a5a7991947abb
CRs-Fixed: 2122429
2017-11-15 02:29:47 -08:00
Mukul Sharma
b10c8c7370 qcacld-3.0: Move to target_resource_config from wmi_resource_config
Currently, host is using the wmi_resource_config instead
target_resource_config. There are two INIT command
method is exposed by WMI, hence to converge on one
use target_resource_config and perform cleanup
for other.

Change-Id: Ic50b1c644ce1e61568c2079627727cad766e02c8
CRs-Fixed: 2138506
2017-11-08 19:42:25 -08:00
Krunal Soni
8afae9b62d qcacld-3.0: Fix to propagate key-receiver-sequence-counter to WMA
SME module propagates KeyRSC to MAC/PE module but MAC/PE doesn't
pass this counter to WMA and due to which WMA is not able pass to
next module.

Add a fix to propagate KeyRSC field from MAC to WMA module and further
down in stack.

CRs-Fixed: 2130761
Change-Id: I157a44610e184b5e10d838fbc5d6b810e3efd6db
2017-11-07 22:56:29 -08:00
Tushnim Bhattacharyya
8629489f02 qcacld-3.0: Stop the opportunistic timer when hdd stop happens
Stop the opportunistic timer & take action if needed when hdd stop
happens. Also, take action when set_hw_mode request to FW times out.

Change-Id: I32f1e38e93a5805e0d85b800cc4e070cd6f79669
CRs-Fixed: 2133388
2017-11-04 06:59:44 -07:00
Rajeev Kumar Sirasanagandla
996e529f9d qcacld-3.0: Add support to query RCPI info
RCPI is measure of received RF power in the selected channel for a
received frame and is measured at the antenna connector and shall be
measured over an entire frame. It is a monotonically increasing,
logarithmic function of received power level.

Wlan firmware computes RCPI.

Add host support to query firmware for RCPI information of peer
mac address in sta, p2p client, softap and p2p go modes.

Change-Id: I43a061ad4ed0fceb66dbd82b1c35b7678ee2259c
CRs-Fixed: 1092612
2017-11-01 13:56:47 -07:00
Dustin Brown
05557181ba qcacld-3.0: Abort suspend if critical events are in flight
There are some events from firmware that the driver would prefer to
process immediately. In some cases, these events can race with the
suspend process such that the event is not processed until the device
resumes. Keep a counter of so called "critical events" so the suspend
process can be aborted in the event of the aforementioned race
condition.

Change-Id: Ic8a557368d6cb62bed9fba424c851b48b16bc574
CRs-Fixed: 2125904
2017-10-25 13:41:18 -07:00
Dustin Brown
d0a7656c2b qcacld-3.0: Converge on recommended wake lock duration
Over time, many arbitrary wake lock durations were chosen with very
little observational evidence to support them. Converge on a standard
recommended wake lock duration, which can serve as a starting point for
finding an appropriate wake lock duration.

Change-Id: Ie54c415870c96117d72ead4d677c4bfb2aad3ae4
CRs-Fixed: 2126685
2017-10-23 20:23:56 -07:00
Vignesh Viswanathan
731186f0ff qcacld-3.0: Add service_available_event handler for FILS roam capability
Currently, wmi_service_bitmap field in WMI_SERVICE_READY_EVENT is
exhausted. WMI_SERVICE_AVAILABLE_EVENT is available for upcoming
capability intimations.

Add service_available_event handler in host driver to extract
FILS roaming capability of fw. Based on this capability only,
send RSO, update connect params, HLP IE commands, GTK offload
are sent to fw.

Change-Id: I320ba86d29109d8cba23830ef9cb5e159792f19a
CRs-Fixed: 2094229
2017-10-19 13:52:33 -07:00
Sandeep Puligilla
819d94f731 qcacld-3.0: Don't roam to 2G AP when 5G only configured
STA is roaming to 2G AP even though 5G
only is configured through ini.
Set weightage of the 2G social channels
to zero so that firmware will not roam
to 2G channels.

Change-Id: I7dea8413618265e0f1fe353da4b858583c1921af
CRs-Fixed: 2117614
2017-10-12 13:59:27 -07:00
Rajeev Kumar
155a3e4a88 qcacld-3.0: Add 1 second timed wake lock for 4 way handshake
Add 1 second wake lock for 4 way handshake to avoid APPS
power collapse in middle of eapol exchange which can delay
the association process.

Change-Id: Ife73dc00aa05b5a80d0a90afd18468bd033ebdd9
CRs-Fixed: 2118533
2017-10-12 13:58:53 -07:00
Krunal Soni
aadaa27fbd qcacld-3.0: Provide SME API to send unit test command to FW
Current driver forming a unit test command within HDD layer and uses
message passing method to deliver it to WMA layer which
requires HDD layer to have a knowledge of how to form a unit test command.

User SME API to send params to WMA layer and let WMA form a unit test
command and send it directly to FW through WMI layer instead of HDD
forming and passing it down.

CRs-Fixed: 2118725
Change-Id: Id1838939813e6cd2d52cee8720a1f4e0ca34329b
2017-10-06 19:30:50 -07:00
Krunal Soni
a5ccb8007f qcacld-3.0: Keep wake lock while mac config is getting changed
Host should keep the wake lock from the time it sends
WMI_PDEV_SET_MAC_CONFIG_CMDID to FW till it receives the
WMI_PDEV_SET_MAC_CONFIG_RESP_EVENTID. This will avoid any fatal
crash condition.

Change-Id: Id16a1957b38acee6cf45c123ea9dbab25aae9b39
CRs-Fixed: 2070779
2017-10-06 12:27:26 -07:00
Nachiket Kukade
aaf8a71ef5 qcacld-3.0: Implementation to change BmissFinalBcnt dynamically
Implementation to change BmissFinalBcnt dynamically.
User can set totalBcnt using the new command
QCA_WLAN_VENDOR_ATTR_CONFIG_TOTAL_BMISS_CNT.
BmissFirstBcnt will retain its default value or from ini.
BmissFinalBcnt will be configured as (totalBcnt - BmissFirstBcnt).

Change-Id: Ie3c3895d48248d349400e755f07edc807e335b44
CRs-Fixed: 2081906
2017-10-04 08:41:24 -07:00
Krunal Soni
332f4afc05 qcacld-3.0: For host-invoked roaming to same AP, don't to send null frm
During host invoked roaming, set WMI_ROAM_INVOKE_FLAG_NO_NULL_FRAME_TO_AP
flag so that FW will not send NULL data frame while doing transition to
same bssid.

CRs-Fixed: 2046964
Change-Id: I043c3d2431e4da5af36fb710bd36a520550abbd3
2017-10-03 16:02:56 -07:00
Manjeet Singh
70d3d931d9 qcacld-3.0: Check FW support for FW mem dump
Currently HDD sends a FW memory dump request to firmware without
checking support for this feature. This can lead to a crash as firmware
doesn't send the command response if feature is not supported.
Add a check in HDD so that the request is only sent when FW memory dump
capability is advertised by the firmware.

Change-Id: I73b980f50910e13aa5f2d2434f07b6f985dd5010
CRs-fixed: 1090806
2017-09-28 05:39:58 -07:00
Mukul Sharma
6398b253fb qcacld-3.0: Add support for changing LISTEN interval dynamically
Current method for calculating LISTEN INTERVAL are static
configuration a.ka. ini based. Now OEM / USER want to take
control of setting LISTEN INTERVAL as per their applications
need. Once if USER configure the LISTEN INTERVAL value using
vendor command then host should avoid changing the LI value
during each suspend/resume. User LI value will be override
configuration. Once USER will Disable the LI using vendor
command then host can fallback to current default method.

Change-Id: Ia9b412b073c059df0cdff7bcda8198f7581e796d
CRs-Fixed: 2040298
2017-09-27 20:57:54 -07:00