Commit Graph

5498 Commits

Author SHA1 Message Date
Yuanyuan Liu
3d62f6a8a7 qcacld-3.0: Re-phrase debug message for wlan mac
Re-phrase debug message of wlan mac to avoid confusion.

CRs-Fixed: 2058511
Change-Id: Iae85ad8ea195e16d137ac4ced3c8127803bac35a
2017-06-12 20:52:54 -07:00
Dustin Brown
8f3b0561bd qcacld-3.0: Specify policy for txpower_scale
__wlan_hdd_cfg80211_txpower_scale() calls nla_parse without specifying
a policy. Specify an nla policy with the expected attribute information
when calling nla_parse in __wlan_hdd_cfg80211_txpower_scale().

Change-Id: I6ff8a986d5d3a7137351cf66e19ca1a952b9f5f1
CRs-Fixed: 2054748
2017-06-12 20:52:38 -07:00
Jeff Johnson
e5f33ba148 qcacld-3.0: Avoid buffer overread when setting probable channel
Currently in __wlan_hdd_cfg80211_set_probable_oper_channel,
nla_parse() is called to parse the command attributes without
specifying a policy. This prevents nla_parse() from doing basic
validation of the attributes, and in some circumstances could result
in a buffer overread. In addition, the tb array is not sized
correctly. To avoid these issues properly size the tb array, and
define an appropriate policy and use it in the invocation of
nla_parse().

Change-Id: I1d4bc3d1f09f0767a3cbd5ed84dc214f167c3c4d
CRs-Fixed: 2054744
2017-06-12 20:52:22 -07:00
snandini
fa45f77ddc Release 5.2.0.29H
Release 5.2.0.29H

Change-Id: I111c66a3233b7f523e8dfc4958b98ae6a56b21d9
CRs-Fixed: 774533
2017-06-12 17:19:29 -07:00
Nachiket Kukade
8003d257b9 qcacld-3.0: Add and use API to check FW Down indication bit during probe
When commands to Firmware fail during probe due to Firmware being down, in
most cases QDF_BUGs are hit, not allowing re-probing to take place. A new
API is defined to check if the failure is due to Firmware being down or not.
If so, return error gracefully allowing re-probing to take place

Change-Id: Ib2f21a6f1ced1c16e9d2bdbda810b160ff63e2c6
CRs-fixed: 2027444
2017-06-12 17:19:28 -07:00
snandini
caf8c34bff Release 5.2.0.29G
Release 5.2.0.29G

Change-Id: I5372aaaa3c14ca40c5dd7d423fcd1406c125b99d
CRs-Fixed: 774533
2017-06-12 15:24:23 -07:00
Sandeep Puligilla
b0e017c581 qcacld-3.0: Free the csr profile after connection
Free the CSR profile after successful connection.

Change-Id: I710ce0fae904db9d597590ce9860ca38fc5f7a34
CRs-Fixed: 2059336
2017-06-12 15:24:22 -07:00
snandini
dbf9aa5587 Release 5.2.0.29F
Release 5.2.0.29F

Change-Id: I7c39425f5a083379b92d3acba452bf889cf3a160
CRs-Fixed: 774533
2017-06-12 14:32:47 -07:00
Naveen Rawat
c4a0e6643e qcacld-3.0: Set SMPS intolrent vdev param
Set WMI_VDEV_PARAM_SMPS_INTOLERANT when a VDEV cannot be allowed to
send SMPS frame. This is needed as certain AP wont properly handle
SMPS frames.

Change-Id: I1dd30bcb4fcaf312fa376cbfe3c1fb9c0d37750a
CRs-Fixed: 2049789
2017-06-12 14:32:46 -07:00
snandini
266df6e318 Release 5.2.0.29E
Release 5.2.0.29E

Change-Id: I7e912afe86d3e6a93efa8574303871bdd95333ba
CRs-Fixed: 774533
2017-06-12 13:26:07 -07:00
Kiran Kumar Lokere
3beeb95c60 qcacld-3.0: Use regulatory component api to check 11d support
Replace the legacy csr api with regulatory component public api
to check if the 11d support is enabled by host.

Change-Id: I53c2378cf010693d4efa7ff8ff611e6062569adb
CRs-Fixed: 2048784
2017-06-12 13:26:06 -07:00
snandini
7f667c6bb7 Release 5.2.0.29D
Release 5.2.0.29D

Change-Id: I68e31677664e50c7ec28e2a009c4e8e6d7d181e9
CRs-Fixed: 774533
2017-06-11 18:10:39 -07:00
Himanshu Agarwal
5f5e16692d qcacld-3.0: Fix buf replenish logic and handle error pkts
Fix replenishing logic by taking care of fragments as well
in monitor mode. Also drop the packets with mpdu_length_err
bit set in rx attention desc and don't send those packets to
upper layers.

Change-Id: Iaeeb0e40e4988ca5a2d4c5e7c98ed3f82dfca533
CRs-Fixed: 2037633
2017-06-10 23:30:56 -07:00
snandini
2a09ca3383 Release 5.2.0.29C
Release 5.2.0.29C

Change-Id: Ie4fc4c183990fa1210913b34cbc66d0976c8cf90
CRs-Fixed: 774533
2017-06-09 21:36:31 -07:00
Dustin Brown
20b6fcfc17 qcacld-3.0: Add gScanBackoffMultiplier ini item
For Network Listen Offload and Preferred Network Offload, the fast scan
period is multiplied by scan_backoff_multiplier after max cycles have
occurred. Add a new configuration item, gScanBackoffMultiplier, to
configure scan_backoff_multiplier.

Change-Id: I832d3e058d1c6c0b441090039204d68502e2b96d
CRs-Fixed: 2035197
2017-06-09 21:36:30 -07:00
snandini
a3b1966d90 Release 5.2.0.29B
Release 5.2.0.29B

Change-Id: I3fa41cfbcd612351768277089c2b2f7c76675484
CRs-Fixed: 774533
2017-06-09 15:36:38 -07:00
Yu Wang
c407bf733a qcacld-3.0: enable FW dump for SDIO
When FW assert happen, it won't do FW dump
if the bus type is SDIO.

Enable FW dump for SDIO target

Change-Id: I24655ca74003c915d9eda1106aad7cf87856947e
CRs-Fixed: 2010613
2017-06-09 15:36:37 -07:00
snandini
6631d35308 Release 5.2.0.29A
Release 5.2.0.29A

Change-Id: I5742c88efd8ed53e1ee702577a15389ff0edf9cc
CRs-Fixed: 774533
2017-06-09 12:12:18 -07:00
Jeff Johnson
b17a93c068 qcacld-3.0: Specify a policy when parsing SAR limits
In __wlan_hdd_set_sar_power_limits() there are two places where
nla_parse() is called to parse a sequence of attributes.  Currently in
both places a policy is not specified. This prevents nla_parse() from
doing basic validation of the attributes, and in some circumstances
could result in a buffer overread. To avoid this issue define an
appropriate policy and use it in both invocations of nla_parse().

Change-Id: Ie74907f65d788f9ecd7302e37440121e36ad0ec3
CRs-Fixed: 2054757
2017-06-09 12:12:17 -07:00
Jeff Johnson
1818a65523 qcacld-3.0: Avoid OEM message overread
Currently in oem_cmd_handler() the CLD80211_ATTR_DATA is processed as
an OEM message without first verifying that the payload has a
sufficient length. This can lead to overreading the buffer. Add length
checks to make sure the payload is large enough to hold the message it
is supposed to encapsulate.

Change-Id: Ifaa7d1cce5bd427bfeca14cab5a44c4cb72ce59f
CRs-Fixed: 2054772
2017-06-09 12:12:15 -07:00
Selvaraj, Sridhar
5056650c2e qcacld-3.0: Re-enable fw LFR3 engine after roam sync complete
Currently, host driver sequence of events is as below
- roam sync indication from fw
- invoke csr_roam_synch_callback with SIR_ROAM_SYNCH_PROPAGATION,
  which sets roam_synch_in_progress in csr session
- disable LFR3 roam in fw(send RSO stop)
- Assoc completion, Set key
- In csr_neighbor_roam_info_ctx_init, RSO start attempt fails
  due to roam_synch_in_progress set
- invoke csr_roam_synch_callback with SIR_ROAM_SYNCH_COMPLETE,
  which resets roam_synch_in_progress
Because of this, LFR3 is not re enabled(RSO Start is not sent)
after roam synch indication.

Re-enable fw LFR3 engine(Send RSO Start) after roam sync complete.

Change-Id: I231b6f7427cd938d9801af20dd4719482cfa7584
CRs-Fixed: 2047267
2017-06-09 12:12:13 -07:00
Sreelakshmi Konamki
2b1cd5275e qcacld-3.0: Update public action frames to supplicant
qcacld-2.0 to qcacld-3.0 propagation

Currently broadcast action frames are dropped in
__hdd_indicate_mgmt_frame(), host tries to get pAdapter using
destination mac address and returns from function as pAdpater is NULL.

Add changes to use existing pAdapter when destination address
of received packet is broadcast.

Change-Id: I9a149116b9a3ec9b4abef4808849876069f2e13c
CRs-Fixed: 2045740
2017-06-09 12:12:11 -07:00
snandini
e1bcb52b09 Release 5.2.0.29
Release 5.2.0.29

Change-Id: Ia168237e636957303bb76c6cacbe21ce49084efc
CRs-Fixed: 774533
2017-06-09 11:28:16 -07:00
Sreelakshmi Konamki
0d17c6a381 qcacld-3.0: Fix comparision of unsigned values against 0
Add changes to remove comparision of unsigned values against 0

Change-Id: I36b35f0c3cee22a636af1202a3ec1003e0a425c4
CRs-Fixed: 2049500
2017-06-09 11:28:16 -07:00
snandini
08397e911a Release 5.2.0.28Z
Release 5.2.0.28Z

Change-Id: I5d0c29fbdb4f3d22ad9e5a23391d092113d2f3e6
CRs-Fixed: 774533
2017-06-08 19:24:50 -07:00
Frank Liu
00d73fecad qcacld-3.0: Add target information details to target if layer
Add a new target_psoc_info structure in the target if layer with the
following members

wmi_handle
target_type
target_version
target_revision

Also update the psoc data member tgt_if_handle to point to target_psoc_info
instead of pointing to WMI handle directly.

Change-Id: Iaa54b3106788f77a3b3453170735a3635cb76e70
CRs-Fixed: 2048277
2017-06-08 19:24:49 -07:00
snandini
3fdcf4f0e4 Release 5.2.0.28Y
Release 5.2.0.28Y

Change-Id: Iaaba8280113e8297580162e193206d7bd4b735df
CRs-Fixed: 774533
2017-06-08 15:23:28 -07:00
Houston Hoffman
b38c10255a qcacld-3.0: Allocate hif_napi_info structures dynamically
The hif_napi_info structure has a dummy netdev included.
The dummy netdev is large.  Avoiding unneeded allocation
save 30kb of memory.  Dynamically allocating the
hif_napi_info structures also reduces the size of
the contiguous memory needed for the parent structure.

Change-Id: Ib2d0772cf793e25a10329169ddd8ef1dc1022e82
CRs-Fixed: 2020752
2017-06-08 15:23:27 -07:00
snandini
1b417fd8c3 Release 5.2.0.28X
Release 5.2.0.28X

Change-Id: I9fa21b4e700e961c532a489aa47ca611f1db641d
CRs-Fixed: 774533
2017-06-08 13:47:02 -07:00
Dustin Brown
7ff24dd43c qcacld-3.0: Use modified datapath bus suspend callbacks
A recent datapath bus suspend/resume change modified the API for the
corresponding callbacks. Update callsites to use the new APIs.

Change-Id: I8efc62ecab311e5ded3a393c11a436ce9204e72d
CRs-Fixed: 2047509
2017-06-08 13:47:01 -07:00
snandini
9930d6966f Release 5.2.0.28W
Release 5.2.0.28W

Change-Id: Ia0275fda5c25b372b25db817fd182dc36e369c39
CRs-Fixed: 774533
2017-06-08 09:40:47 -07:00
Arun Khandavalli
ca892f672d qcacld-3.0: Check Driver module status for sysfs read/write requests
When there is no interface is being used by the upper layer,interface
change timer kicks-in and closes all the modules. When there is a
sysfs read write request when the module is closed it tries to
access the contents of closed modules resulting in assert's or
crash.

To mitigate the issue validate the driver module status.

CRs-Fixed: 2052903
Change-Id: I2eec712ff823c7c2dc49f7d9d3c55d9166e3b0d9
2017-06-08 09:40:47 -07:00
snandini
3fba66b000 Release 5.2.0.28V
Release 5.2.0.28V

Change-Id: I2823bc133535493583328c5d76cbb2e76c083250
CRs-Fixed: 774533
2017-06-08 07:00:25 -07:00
Abhishek Singh
d1d10b4031 qcacld-3.0: Fix ACS failure if no AP is found during scan
If no AP is found in scan req for ACS, the get scan results return
error E_EMPTY. But th ACS need error E_NULL_VALUE to find a valid
channel if scan results are empty.

To fix this Return E_NULL_VALUE instead of E_EMPTY, if scan results
are empty.

Change-Id: Id50eb66e89881d4a763084037bd5576eb500bb68
CRs-Fixed: 2057618
2017-06-08 07:00:25 -07:00
snandini
75cfc19167 Release 5.2.0.28U
Release 5.2.0.28U

Change-Id: I5077bf5dded3b2921b6343cfa79850b11615b87e
CRs-Fixed: 774533
2017-06-07 18:30:51 -07:00
Manikandan Mohan
b4bb248e51 qcacld-3.0: Fix init failure due to HE_OBSSPD cfg invalid
Update WNI static data for HE_OBSSPD param addition to avoid
WNI config init failure which results in insmod failure.

Change-Id: I8e00ad262db02ecc757f83a9d0cbe190fb44ef76
CRs-fixed: 2057882
2017-06-07 14:29:20 -07:00
snandini
58ecbaad99 Release 5.2.0.28T
Release 5.2.0.28T

Change-Id: Icac22b1f2895783fa6536154b77cccad9a2bbe88
CRs-Fixed: 774533
2017-06-07 12:14:46 -07:00
Venkata Sharath Chandra Manchala
1676defe7e qcacld-3.0: Enable TSO
Add FEATURE_TSO flag in Kbuild to enable the
TSO feature for Lithium based chipsets

Change-Id: Ie26b2b9a191828b3ce833000a7abbb09dd492713
CRs-Fixed: 2042950
2017-06-07 12:14:46 -07:00
snandini
905e33947d Release 5.2.0.28S
Release 5.2.0.28S

Change-Id: I1e5b22a7d4de2a17d92333bd9e9ecf4c407f5b45
CRs-Fixed: 774533
2017-06-07 04:11:08 -07:00
Ajit Pal Singh
747b6807c1 qcacld-3.0: Handle wifi config attribute RESTRICT_CHANNEL
Handle WIFI configuration vendor attribute
QCA_WLAN_VENDOR_ATTR_CONFIG_RESTRICT_OFFCHANNEL.
This attribute is set by applications to restrict operations which
cause the AP/GO to go offchannel.

A counter is also added to hdd_adapter to track the number of times
this attribute is set by different applications.
This counter will be reset in the driver when the AP/GO interface is
brought down.
It is the responsibility of the application to remember(through
persistent storage) that it has applied the setting and in case the
application is killed it should be able to recall that it has made the
setting when it is re-started next time.

Change-Id: I45106c8515756d1a007514f1b3e9744bd6ce4834
CRs-Fixed: 2050999
2017-06-07 04:11:07 -07:00
snandini
c6552b9cb9 Release 5.2.0.28R
Release 5.2.0.28R

Change-Id: I71eac69d1126d83ccd52c3ef7db57cc6a3d59236
CRs-Fixed: 774533
2017-06-07 02:45:09 -07:00
hqu
eaa33eee78 qcacld-3.0: Flush scan_block_work when receive NETDEV_GOING_DOWN notifier
qcacld-2.0 to qcacld-3.0 propagation

In some case, scan_block_work will be scheduled, but NETDEV_DOWN will
come before scan_block_work executed, it will lead to crash. Because
in this case it will call ___cfg80211_scan_done to free scan request in
cfg80211_netdev_notifier_call firstly, but it will access scan request
in wlan_hdd_cfg80211_scan_block_cb afterwards, so it will crash.
Add flush scan_block_work process when receive NETDEV_GOING_DOWN notifier.

Change-Id: Iada4b907f5fb03871406904340e21b6cdf89306f
CRs-Fixed: 2034794
2017-06-07 02:45:09 -07:00
Dustin Brown
4ea846d166 qcacld-3.0: Clarify WOW wakeup print messages
The WOW wakeup print messages are causing some confusion. Explicitly
log that UNSPECIFIED wakeups are not caused by WLAN to help.

Change-Id: Ia4d009a702d4a488414a65dd189ed129bde92067
CRs-Fixed: 2053267
2017-06-07 02:45:08 -07:00
snandini
6a810474cb Release 5.2.0.28Q
Release 5.2.0.28Q

Change-Id: I7fa0f941430f1ab6bd8fdf499c5128c2e093310f
CRs-Fixed: 774533
2017-06-06 23:48:33 -07:00
hqu
e52fdd610d qcacld-3.0: Fix wrong function call to get hdd_ctx
It should use function call cds_get_context(QDF_MODULE_ID_HDD) to
get hdd_ctx.

Change-Id: Iba53421d99cff8b78480246d2b18e108eb004f92
CRs-Fixed: 2055622
2017-06-06 23:48:33 -07:00
Padma, Santhosh Kumar
881046193e qcacld-3.0: Remove peer if add bss fails
Currently peer is not removed if add bss fails. This can cause
assert in firmware as driver sends VDEV DELETE without peer delete.

Add changes to remove peer if add bss fails.

Change-Id: I7591af55f24919af9cf2d1f288a5bd9ff706adda
CRs-Fixed: 2029804
2017-06-06 23:48:31 -07:00
wadesong
ba6373eb7d qcacld-3.0: Fix an improper trial spin lock acquiring
Return value of __netif_tx_trylock should be checked immediately
after being invoked, any subsequenct actions designated to the
atomic context should be abandoned if trial acquiring of the
spin lock fails

Change-Id: I95504eed14c3e30d014aa1ccc23356a7df02fb00
CRs-Fixed: 2047246
2017-06-06 23:48:30 -07:00
snandini
6c5d3df31c Release 5.2.0.28P
Release 5.2.0.28P

Change-Id: Id01ddb371741b15265faac18b3d34e4d827633e8
CRs-Fixed: 774533
2017-06-06 10:26:25 -07:00
lifeng
13a89d7d81 qcacld-3.0: Add ini to configure SAP 11n max mcs
qcacld-2.0 to qcacld-3.0 propagation

Add support for configure host init SAP HT rate
upper bound.

Change-Id: If749f8a036d98d9070cb05170fa1e612fcb30e8a
CRs-Fixed: 1091897
2017-06-06 10:26:24 -07:00
lifeng
959a04cedc qcacld-3.0: Support for configure wlan rts sifs,ampdu count
qcacld-2.0 to qcacld-3.0 propagation

Add support for host enable/disable rts sifs bursting, and set
default tx mpdu aggregation count.

CRs-Fixed: 1089478
Change-Id: Ieb63621f217ccd1a50b925ea4dda05fecad01387
2017-06-06 10:26:23 -07:00