Revīziju grafs

11499 Revīzijas

Autors SHA1 Ziņojums Datums
Amar Singhal
6ee3f24bb7 qcacld-3.0: Reduce logging level while processing beacon
Channel bonding mode can be disabled when connection happens. So reduce the
log level and rate for this log.

CRs-Fixed: 2298986
Change-Id: I47ab8111613292781bddca435f9800544b1e6d58
2018-09-01 00:05:18 -07:00
nshrivas
8fdfdebd47 Release 5.2.0.94Q
Release 5.2.0.94Q

Change-Id: I83ec498fefeaac2261f571fd4f5901b276a684f3
CRs-Fixed: 774533
2018-08-31 14:49:19 -07:00
Pragaspathi Thilagaraj
96aff7736b qcacld-3.0: Fix possible OOB in wma_pdev_div_info_evt_handler
In the function wma_pdev_div_info_evt_handler, while handling
WMI_PDEV_DIV_RSSI_ANTID_EVENTID  event, the corresponding event
handler wma_pdev_div_info_evt_handler is invoked. In  the
function wma_pdev_div_info_evt_handler, event_buf argument comes
directly from firmware and event parameter is pulled from event
buf. The event->num_chains_valid is used as the maximum bound on
the array index of chain_rssi[] array which has a maximum limit
of CHAIN_MAX_NUM(8). When event->num_chains_valid has a value
greater than this maximum limit, OOB write could occur.

Add check to validate the event->num_chains_valid against
CHAIN_MAX_NUM(8) and return failure if it exceeds.

Change-Id: I40f1aa8a7b4bcffef3cab588c78c700e88e24673
CRs-Fixed: 2304662
2018-08-31 14:49:18 -07:00
Vignesh Viswanathan
7818250f0f qcacld-3.0: Fix camel case names in mlme_ht_capabilities_info structure
Rename camel case names of members of mlme_ht_capabilities_info
structure.

Change-Id: I576ad77c4744c240537d540f1efaab0e7d9cb109
CRs-Fixed: 2293859
2018-08-31 14:49:14 -07:00
nshrivas
eb28eced14 Release 5.2.0.94P
Release 5.2.0.94P

Change-Id: If0881f8ac8d976d9a9e24b445c9d5de5ab1e56c1
CRs-Fixed: 774533
2018-08-31 13:08:27 -07:00
Krunal Soni
b39a0289b1 qcacld-3.0: Read listen interval offload support bit with new method
Current driver reads WMI_SERVICE_LISTEN_INTERVAL_OFFLOAD_SUPPORT BIT
through WMI_SERVICE_EXT_IS_ENABLED macro which is deprecated.

Update it by reading wmi_service_listen_interval_offload_support through
wmi_service_enabled() API.

CRs-Fixed: 2305522
Change-Id: I1d6aedec31d035a3e9c2514ad6dc2b13b79dfff3
2018-08-31 13:08:27 -07:00
Dustin Brown
1faac91278 qcacld-3.0: Clear pending flag in hdd_destroy_acs_timer()
hdd_create_acs_timer() sets VENDOR_ACS_RESPONSE_PENDING, but
hdd_destroy_acs_timer() does not ensure this flag is cleared. This can
lead to a situation where the ACS timer is not initialized, but parts of
the code incorrectly assume that it is. Clear
VENDOR_ACS_RESPONSE_PENDING in hdd_destroy_acs_timer() to prevent
invalid access to the ACS timer.

Change-Id: I7c367b20e279fadc5ee329d94b7475711796b185
CRs-Fixed: 2305719
2018-08-31 13:08:24 -07:00
Alok Kumar
5a75b9d348 qcacld-3.0: Revert "Do not enable the pktlog when interface is up"
By default pktlog needs to be enabled during driver load.
To enable/disable pktlog use INI parameter.

This reverts Change-Id: Ie03a7e0a77bc5f525ad7ae74bb104a6d1bf21eb7

Change-Id: I8f74b4bcebfb8b4a35a29e321b2b6bd5e1920bf7
CRs-Fixed: 2296335
2018-08-31 13:08:20 -07:00
nshrivas
8987b4bbde Release 5.2.0.94O
Release 5.2.0.94O

Change-Id: I98ab19b399d79c1a8cecd2c08f39395747106d94
CRs-Fixed: 774533
2018-08-31 11:17:18 -07:00
Amar Singhal
0fcce7d7a3 qcacld-3.0: Add INI to enable 11d in world mode
In WORLD mode, there can be urgency to discover the current country
since WORLD mode restricts the channel and TX power availability.Add
INI enable_11d_in_world_mode to automatically enable 11d in WORLD
mode. This INI supersedes the setting in 11d INI variable
Is11dSupportEnabled.

CRs-Fixed: 2289349
Change-Id: I7b289cdb60be5e737f41f9de5a478f32a234e717
2018-08-31 11:17:18 -07:00
nshrivas
9b3701c8a3 Release 5.2.0.94N
Release 5.2.0.94N

Change-Id: I0e8b8900ee06faad0d913cd4693aa5ce5720b5d2
CRs-Fixed: 774533
2018-08-31 02:33:15 -07:00
Karthik Kantamneni
22dd0f69cb qcacld-3.0: Add MLME CFG items of rates [PART 1]
Add MLME CFG items of rates

Change-Id: I9f52f2ef0eef4698ddc13c55dd56d938a6e4c677
2018-08-31 02:33:14 -07:00
nshrivas
1db505d181 Release 5.2.0.94M
Release 5.2.0.94M

Change-Id: I014733cabbf5fbb8d3e4082e5b2f997fc8ad8640
CRs-Fixed: 774533
2018-08-30 23:21:51 -07:00
gaolez
4b62a9e6cf qcacld-3.0: Set protected bit for ECSA action frame
qcacld-2.0 to qcacld-3.0 propagation

If all the STA connected to AP support ecsa, wlan driver will call
lim_send_extended_chan_switch_action_frame to send action frame,
but this function missing limSetProtectedBit when 11w enable,
this violate spec, so generate a fix for this issue.

Change-Id: I80f111f21015c98ee0abdafe76ea42c3e79163ac
CRs-Fixed: 2275626
2018-08-30 23:21:50 -07:00
nshrivas
5fdf148350 Release 5.2.0.94L
Release 5.2.0.94L

Change-Id: I92e574857f00f8d4fe51850b114edeb05a25ddfa
CRs-Fixed: 774533
2018-08-30 17:48:44 -07:00
Arif Hussain
8d07434552 qcacld-3.0: Add WLAN_DFS_STATIC_MEM_ALLOC flag
Add WLAN_DFS_STATIC_MEM_ALLOC flag to use statically
allocated memory for dfs objects.

Change-Id: I73bfaead4da29a2e4a75cc667470f2255e453b12
CRs-Fixed: 2304928
2018-08-30 17:48:43 -07:00
nshrivas
4a80802a35 Release 5.2.0.94K
Release 5.2.0.94K

Change-Id: I5a124877d0fdcc1641efa2f23546b93d54e9e3ef
CRs-Fixed: 774533
2018-08-30 13:40:41 -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
Krunal Soni
9e54d98689 Revert "qcacld-3.0: Add support to set/get timestamp for management frames"
1) This reverts commit
   Iab0862eda2392bd516c8ba0b913441b8e0d4c493
2) Reverted changes have been taken care through
   Idd7617782e71ee187eef7fcb3523c05b49f82094

CRs-Fixed: 2300054
Change-Id: Icc47ded9a585e356b7eae1ad53ffea6668510308
2018-08-30 13:40:38 -07:00
nshrivas
1e5b818a97 Release 5.2.0.94J
Release 5.2.0.94J

Change-Id: I577f48f97cffe707cd3c7cc88f4ff06536e252d5
CRs-Fixed: 774533
2018-08-30 10:15:57 -07:00
Abhishek Singh
78f654bcc5 qcacld-3.0: Validate cbmode and bw provided by AP in HTinfo IE
Driver checks if 40 Mhz is supported for the channel but doesn't
validate if the cbmode provided by AP is valid.

Invalid cb mode provided by AP can lead to failure.

Add check to validate cbmode and bandwidth from AP in htinfo IE.

Change-Id: I3d2da7a8e3045594baf201732dd80a82bd88e16c
CRs-Fixed: 2303267
2018-08-30 10:15:57 -07:00
nshrivas
3771f0499b Release 5.2.0.94I
Release 5.2.0.94I

Change-Id: I8b9d7b804d29ab06aa993f34ec21732a1c246611
CRs-Fixed: 774533
2018-08-30 08:43:16 -07:00
Dustin Brown
5e56f90a68 qcacld-3.0: Free llstats buffer if get fails
__wlan_hdd_open_ll_stats_debugfs() fails to free the llstats buffer in
the event that wlan_hdd_ll_stats_get() fails. Add error handling for
this call which frees the newly allocated buffer.

Change-Id: Ic5cff77a758ff81da82dd1143d77da68d87b9291
CRs-Fixed: 2304715
2018-08-30 08:43:15 -07:00
nshrivas
3520bb2f28 Release 5.2.0.94H
Release 5.2.0.94H

Change-Id: I09590c8a8328fe127950347869db6aca563652ea
CRs-Fixed: 774533
2018-08-30 07:02:29 -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
nshrivas
6521466f63 Release 5.2.0.94G
Release 5.2.0.94G

Change-Id: I3482e2b22edf4f1755a0b8a75aeaca979b437482
CRs-Fixed: 774533
2018-08-30 05:14:09 -07:00
Vignesh Viswanathan
1e175800c7 qcacld-3.0: Cleanup Objmgr peer instead of CDP peer during SSR vdev_detach
When SSR is in progress, in vdev_detach, currently wma_force_vdev_cleanup
clears the peers from CDP vdev peer list. From the CDP, wma_remove_peer
is called via callback with the peer mac_addr. wma_remove_peer inturn
sends peer delete to FW, does a CDP peer delete and an ObjMgr peer delete.
But the peer delete to FW would not be sent as SSR is in progress and CDP
peer delete would not actually delete the peer from CDP as CDP will need
a peer unmap from the FW to actually delete the peer.

Proper implementation would be to delete the ObjMgr peers alone during SSR
in vdev_detach and let the cds_post_disable to take care of cleanup of
CDP Peers.

Change-Id: I6129b69eb26f3eaa68be40b62b822a4dfc6ff675
CRs-Fixed: 2302972
2018-08-30 05:14:09 -07:00
nshrivas
9d498d3e28 Release 5.2.0.94F
Release 5.2.0.94F

Change-Id: Ic546d841d4e71fd21ae3c6591ae2afea72dbce85
CRs-Fixed: 774533
2018-08-29 14:02:50 -07:00
Ryan Hsu
6e9db0b728 qcacld-3.0: add support to remove the ftm from configuration
Phase 1, after ftm componentization, we could now support to remove
the ftm related components when FTM is disable from the build
configuration.

Size changes: after removing the ftm related binaries, we could save
15KB from module size.

Change-Id: Ib363f1d6204b07947a46f32673c4f8ad6fb3dbd3
CRs-fixed: 2258441
2018-08-29 14:02:49 -07:00
nshrivas
edbe98af3c Release 5.2.0.94E
Release 5.2.0.94E

Change-Id: Ib03a34880e7cf4a29242f9949e83e17da25d1caa
CRs-Fixed: 774533
2018-08-29 12:30:21 -07:00
Sandeep Puligilla
1f1e400e99 qcacld-3.0: Change the log level in SME/PE/WMA
Change the info/err/warn log level to debug in
SME/PE/WMA layer.

Change-Id: Ica0a53d5d6e08b62bbc240ba763ccce59b26af0e
CRs-Fixed: 2299223
2018-08-29 12:30:20 -07:00
nshrivas
ef1187b8b8 Release 5.2.0.94D
Release 5.2.0.94D

Change-Id: I5bb2105b20bc61d024f45adb207b349ad96778a0
CRs-Fixed: 774533
2018-08-29 03:07:51 -07:00
bings
13f45e6690 qcacld-3.0: Always update mgmt encryption type when there is RSN IE
If mgmt encryption type is not updated, 11w feature will not be enabled
correctly for this association.

Mgmt encryption type is always updated through limJoinReqSerDes in the
cld2.0, which is removed in cld3.0. In cld3.0 if fast roaming is enabled,
mgmt encryption type will be updated through csr_construct_rsn_ie. If
fast roaming is not enabled, csr_construct_rsn_ie will not be called and
mgmt encryption type will not be updated.

Always called csr_construct_rsn_ie in csr_retrieve_rsn_ie to make sure
mgmt encryption type is updated.

Change-Id: I2d6541dd88a9d1770f4976b9caa32baa70a60ed3
CRs-Fixed: 2300847
2018-08-29 03:07:51 -07:00
nshrivas
d0a15fb745 Release 5.2.0.94C
Release 5.2.0.94C

Change-Id: I3dd4fac7d9c208992e279e7918f36a4a84f5b8d5
CRs-Fixed: 774533
2018-08-28 18:27:57 -07:00
Dustin Brown
5f8955a994 qcacld-3.0: Add dispatcher_psoc_open() error handling
The error handling in cds_open(), in the event that the call to
dispatcher_psoc_open() fails, is currently empty. Add appropriate error
handing for this case by referencing cds_open() and cds_close().

Change-Id: I2b0d328e365efd67099bb8e6b529720c7b1904c5
CRs-Fixed: 2303785
2018-08-28 18:27:56 -07:00
nshrivas
814eb54845 Release 5.2.0.94B
Release 5.2.0.94B

Change-Id: I4750f2989c2810e47137f4ced327cba63aa32e99
CRs-Fixed: 774533
2018-08-28 14:46:24 -07:00
Krunal Soni
6c3859f433 qcacld-3.0: Add iwpriv command to set and get BA aging timeout value
Add new iwpriv command to set BA aging timeout value to hardware.

e.g. "iwpriv wlan0 set_ba_timeout <ac> <duration>" which should set
given duration in msecs for given access class.

"iwpriv wlan0 get_ba_timeout" which should get duration
value for each access class and display.

CRs-Fixed: 2254891
Change-Id: I79f79191c47376e414dceeb73b736a0a9610e3ae
2018-08-28 14:46:24 -07:00
Dustin Brown
da0262a36f qcacld-3.0: Add mac_open() error handling
The error handling in cds_open(), in the event that the call to
mac_open() fails, is currently stubbed out. Add appropriate error
handling for this case by referencing cds_open() and cds_close().

Change-Id: I6103050d5f2323250c9254a5a3add01fd0d34de3
CRs-Fixed: 2302968
2018-08-28 14:46:21 -07:00
nshrivas
bfa79e902c Release 5.2.0.94A
Release 5.2.0.94A

Change-Id: I308645077d6567bf7e5000a7e7d5264b8e13a1f1
CRs-Fixed: 774533
2018-08-28 13:09:43 -07:00
Vignesh Viswanathan
6b89ab57b5 qcacld-3.0: Fix psoc ref and memory leaks in mac_open
psoc ref count and mac_context memory is leaked in failure cases
of mac_open API.

Fix the psoc ref count and memory leaks in failure cases.

Change-Id: I39eaa7bef5e5c50b9b1a8833bec5e6da8cdf0d72
CRs-Fixed: 2302187
2018-08-28 13:09:42 -07:00
nshrivas
9658cff303 Release 5.2.0.94
Release 5.2.0.94

Change-Id: If60f4468068c9f4290ec0a876c57051617972bb9
CRs-Fixed: 774533
2018-08-28 09:14:54 -07:00
Dundi Raviteja
ffa9bf4798 qcacld-3.0: NULL pointer dereference in assoc completion handler
BSS description is dereferencing in hdd_association_completion_handler
without checking for NULL, which may cause NULL pointer dereference.

To address this, add check for BSS description before dereferencing.

Change-Id: I24f728fb6d66b4c07dfe39f3ac426f3d2153b917
CRs-Fixed: 2299797
2018-08-28 09:14:53 -07:00
nshrivas
fcbfbbe408 Release 5.2.0.93Z
Release 5.2.0.93Z

Change-Id: I4a9a834cc16b4c37759045d62c194d7ac39edc43
CRs-Fixed: 774533
2018-08-27 23:51:34 -07:00
Jianmin Zhu
c39613c592 qcacld-3.0: Enhance SAP concurrency check to cover AP channel switch case
SAP(Go) concurrency check is mainly used for two purposes:

1) When new GO/SAP session is coming up and needs to check if
this session's channel can co-exist with existing GO/SAP
sessions. For example, in case of single radio platform, MCC for
SAP/GO+SAP/GO is not supported, in such case this API should
prevent bringing the second connection.

2)There is already existing SAP+GO combination but due to upper
layer notifying LTE-COEX event or sending command to move one of
the connections to different channel. In such cases before moving
existing connection to new channel, check if new channel can
co-exist with the other existing connection. For example, one
SAP1 is on channel-6 and second SAP2 is on channel-36 and lets
say they are doing DBS, and lets say upper layer sends LTE-COEX
to move SAP1 from channel-6 to channel-149. In this case, SAP1
and SAP2 will end up doing MCC which may not be desirable result.

Add vdev_id check while checking for 2nd case. If connection with
given vdev_id exist then it is confirmed that it's a case of
channel switch rather than a new connection case.

Change-Id: I2535b38af353be2abd9c2ff636c06f3c5869969d
CRs-Fixed: 2300451
2018-08-27 23:51:34 -07:00
Lin Bai
5dc8ddb6ab qcacld-3.0: Remove redundant MACRO for lim_set_protected_bit
There are two lim_set_protected_bit() implementation with/without
WLAN_FEATURE_11W defined.
So no need to wrap this function with macro WLAN_FEATURE_11W.

Change-Id: I719f623d17ed0db655d33bda04b51937f1c1c5f4
CRs-Fixed: 2298804
2018-08-27 23:51:30 -07:00
nshrivas
f2e4eac572 Release 5.2.0.93Y
Release 5.2.0.93Y

Change-Id: I4e08002ba3673959e3ee98e29c29909a72e9d9f6
CRs-Fixed: 774533
2018-08-27 16:43:11 -07:00
Dustin Brown
35008baacb qcacld-3.0: Stop bus bandwidth work with timer
The bus bandwidth compute timer is a periodic timer which computes bus
bandwidth usage of associated adapters over a period of time. When the
last adapter disassociates, this timer is stopped. However, the timer
starts a work that is not stopped or flushed at this time. When the
device is under load from external subsystems, this work can get pushed
out past what is safe. When the bus bandwidth timer is stopped, also
stop and flush the bus bandwidth work to ensure safe memory access.

Change-Id: I32c15b42c9756341d1ecf534c05f87738fd24edb
CRs-Fixed: 2300697
2018-08-27 16:43:10 -07:00
Sourav Mohapatra
a5c7a26207 qcacld-3.0: Set recovery_in_progress flag for all the fw down events
Presently, recovery inprogress flag is set only when PLD_RECOVERY
is received but in cases of rejuvenate only PLD_FW_DOWN is received.

Set for the recovery in progress for all the firmware down events
so the unneccessary bug_on's will be avoided.

Change-Id: I654e9e5b02925ac21857369f87af6ca40d8dc815
CRs-Fixed: 2285278
2018-08-27 16:43:06 -07:00
Abhinav Kumar
cc959f1b44 qcacld-3.0: Possible use of un-initialized var while changing interface
Currently, driver calls hdd_alloc_station_adapter to initialize the
completion variables for a particular adapter only if mode of interface
is STA or P2P. In case when driver changes its STA + SAP mode to
STA + STA mode by calling hdd_open_concurrent_interface, driver is not
able to initialize init_completion variable for new STA interface. So
while processing fw commands (for new STA interface) which uses
completion variables, driver leads to the use of uninitialized
variables issue.

Create new function cmn_init_completion to initialize completion
variables for all interfaces while opening the HDD adapter.

Change-Id: Iae8ec1a86dd4084c9f5b39ec0d90e16182212df9
CRs-Fixed: 2288919
2018-08-27 16:43:03 -07:00
nshrivas
f183a2e746 Release 5.2.0.93X
Release 5.2.0.93X

Change-Id: I4186f28a68a64f9659bbcff9e07ee9793201cf5f
CRs-Fixed: 774533
2018-08-27 08:53:23 -07:00