Commit Graph

4995 Commits

Author SHA1 Message Date
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
snandini
54ed2aa925 Release 5.2.0.28O
Release 5.2.0.28O

Change-Id: Id5fd87278f440ac35094a688056c5fb76179e8a8
CRs-Fixed: 774533
2017-06-06 08:30:58 -07:00
Selvaraj, Sridhar
532ea981c3 qcacld-3.0: Send RSO Start followed by RSO Stop for supplicant disabled roam
Currently, if supplicant disabled roaming, driver doesnot send RSO
cmd to fw. This causes roam invoke to fail in FW since RSO start
never happened at least once to configure roaming engine in FW.

After connection, Send RSO start followed by RSO Stop if supplicant
disabled roaming to make sure roaming engine in FW is configured
properly with required parameters at least once.

Change-Id: I72b73554b03ea3f0fa04d0da2a2db96c0ed8b1c8
CRs-Fixed: 2042629
2017-06-06 08:30:57 -07:00
Selvaraj, Sridhar
05ea0791e3 qcacld-3.0: Restrict FILS caps in ext cap to STA mode only
Currently, host driver sets FILS capability enable if broadcast
probe response support is enabled(i.e. g_enable_bcast_probe_rsp).
since this support adds FILS request params IE(which has the max
channel time STA would wait for AP to respond with broadcast probe
response) in probe request, FILS capability is set in ext cap.
However, it is also set in SAP role which leads to scan issues with
some client stations.

Restrict FILS caps in ext cap to STA role only if
g_enable_bcast_probe_rsp INI is set.

Change-Id: Ia5fc0cbf36a4a6df3eb21015ef0508f6daa7b21d
CRs-Fixed: 2048318
2017-06-06 08:30:56 -07:00
snandini
be5fbc74ca Release 5.2.0.28N
Release 5.2.0.28N

Change-Id: I60e09192ff7fc3a835426fe4db0cc085cbf3fdae
CRs-Fixed: 774533
2017-06-06 07:21:29 -07:00
Ajit Pal Singh
2c7aecd2ed qcacld-3.0: Combine LTE Coex & DNBS avoid freqs
Avoid frequency list can be generated due to LTE Coex and
Do_Not_Break_Stream.
Combine LTE Coex & DNBS avoid frequencies before sending the list to
application.

Change-Id: Ibafac2fcc160d029fc5643847a5647edf10db29d
CRs-Fixed: 2045120
2017-06-06 07:21:28 -07:00
Ajit Pal Singh
5edd698a74 qcacld-3.0: Adds API to send avoid_freq list for DNBS
Adds API to send "list of frequencies to be avoided"
to the application, when Do_Not_Break_Stream is active.
When DNBS is active, all frequencies other than the
AP/P2P-GO operating frequency, in the current band are to be avoided.

Change-Id: Ia27b5911715a216f0ab49aa0d984243e9ea49b64
CRs-Fixed: 2045120
2017-06-06 07:21:26 -07:00
snandini
0b7df64c45 Release 5.2.0.28M
Release 5.2.0.28M

Change-Id: I30bb6308ce76a98b0fc7732906e659d5df44bdcf
CRs-Fixed: 774533
2017-06-06 06:20:36 -07:00
Hanumanth Reddy Pothula
42e714a329 qcacld-3.0: Decrease default timer waiting value for interface up
presently timer value is 250sec for wlan interface up from the upper layer,
which is too high.hence moving to 5sec.

Change-Id: Ia955bd12ab37f33c312c728d55c0019317a20acc
CRs-Fixed: 1104031
2017-06-06 06:20:35 -07:00
snandini
5b3ecf64b1 Release 5.2.0.28L
Release 5.2.0.28L

Change-Id: If9c01943b8c6aaeed576d59f52a2832245625bd9
CRs-Fixed: 774533
2017-06-06 03:22:55 -07:00
Nachiket Kukade
8b4bfd8c75 qcacld-3.0: Advertise CSN of BF Antenna as 7 in VHT Caps if fw supports
If firmware supports CSN[Compressed Steering Number of Beamformer Antennas
] 8x8 and if the concerned INI(i.e. gTxBFCsnValue) is set above 3 which is
default fw support currently, send Probe/Assoc Request with CSN in VHT caps
as set in INI. Else set CSN to 3.

CSN of Beamformer Antenna in VHT caps is one less than the max number of
space time streams that the STA can receive in VHT NDP(i.e. CSN in VHT caps
= max space time streams STA can receive - 1)

Change-Id: I6c77f7513ee090beba8849b27c90ac0346e1ac58
CRs-Fixed: 2052348
2017-06-06 03:22:55 -07:00
snandini
31dee37e98 Release 5.2.0.28K
Release 5.2.0.28K

Change-Id: I4139ab5e42d543f5dc3555a1847db103e2b3d5bb
CRs-Fixed: 774533
2017-06-06 01:26:07 -07:00
Naveen Rawat
4efe41b40a qcacld-3.0: Initialize WIFI_POS DMA rings
Parse Service Ready Extension event to get requested DMA ring capability
and initialize DMA rings.

Change-Id: I491e61a2ebbab549c31635ea74dcb89e20be3f97
CRs-Fixed: 2055839
2017-06-06 01:26:06 -07:00