Commit Graph

7118 Commits

Author SHA1 Message Date
Jeff Johnson
7274ccc757 qcacld-3.0: Replace typedef tCfgIniEntry
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tCfgIniEntry typedef does not
meet any of those criteria, so replace references to it with a
reference to an appropriately named struct.

Change-Id: I246d68e79fc40629d0d4217682d18c063cf27d17
CRs-Fixed: 2119531
2017-10-05 05:37:15 -07:00
Jeff Johnson
d005cb33ea qcacld-3.0: Remove legacy avoid freq list structures
The avoid freq list definitions were recently redefined in the
qca-wifi-host-cmn project. Since the legacy definitions are no longer
used, remove them.

Change-Id: I2faa1ad42a6ad5c397ef25576d1cffbdbd54e28a
CRs-Fixed: 2119530
2017-10-05 05:37:07 -07:00
Jeff Johnson
31304ccc03 qcacld-3.0: Use correct macro for "avoid freq list" limit
The "avoid freq list" definitions are now defined in the
qca-wifi-host-cmn project, but in one place a reference to a legacy
macro is being used for a range check. Replace the usage of
HDD_MAX_AVOID_FREQ_RANGES with the converged macro CH_AVOID_MAX_RANGE;

Change-Id: Ib750cc6d8458966cb05249785a57fb62b81ac408
CRs-Fixed: 2119529
2017-10-05 05:36:59 -07:00
Jeff Johnson
ca2530cd52 qcacld-3.0: Replace typedef hdd_hostapd_state_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_hostapd_state_t typedef
does not meet any of those criteria, so replace references to it with
a reference to the underlying struct.

Change-Id: Ifba43e6a79aced01a73d345d2adcf8302698d9ee
CRs-Fixed: 2119528
2017-10-05 05:36:51 -07:00
Jeff Johnson
5e4b93c82c qcacld-3.0: Replace typedef hdd_cfg80211_state_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_cfg80211_state_t typedef
does not meet any of those criteria, so replace references to it with
a reference to the underlying struct.

Change-Id: Ica1783f34fb6fb3fe6a90ec9e165cea2a3b08c64
CRs-Fixed: 2119527
2017-10-05 05:36:43 -07:00
Jeff Johnson
52b5060b90 qcacld-3.0: Replace typedef hdd_roc_req_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_roc_req_t typedef does not
meet any of those criteria, so replace references to it with a
reference to the underlying struct.

Change-Id: I0d59d9f18248c94b2a27f3de4bd5dd4c0c7c840b
CRs-Fixed: 2119534
2017-10-05 05:36:34 -07:00
Jeff Johnson
88c2e8a67c qcacld-3.0: Replace typedef hdd_remain_on_chan_ctx_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_remain_on_chan_ctx_t
typedef does not meet any of those criteria, so replace references to
it with a reference to the underlying struct.

Change-Id: I7bd20097cac20c7dbe9e3debb828638a3ad6bd8b
CRs-Fixed: 2119526
2017-10-05 05:36:26 -07:00
Jeff Johnson
c945f5660a qcacld-3.0: Replace typedef action_pkt_buffer_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The action_pkt_buffer_t typedef
does not meet any of those criteria, so replace references to it with
a reference to the underlying struct.

Change-Id: Icdcc07459223aa1b9c91601aa25ac9c314608da8
CRs-Fixed: 2119303
2017-10-05 05:36:18 -07:00
snandini
b1629ee112 Release 5.2.0.47C
Release 5.2.0.47C

Change-Id: I495cb0d1f8b8fcd5b52ac3ad528f1c2b8032b6a0
CRs-Fixed: 774533
2017-10-04 22:48:36 -07:00
Rajeev Kumar
66b5726b66 qcacld-3.0: Fix excessive logging from wlan_pmo_suspend_resume.c
Info level logs are logged on console, hence change PMO
logs in wlan_pmo_suspend_resume.c to debug log level to avoid
excessive console logging.

Change-Id: Ie9852ef5ea8fefaa33a82f0b287224271ada003b
CRs-Fixed: 2121361
2017-10-04 22:48:31 -07:00
Ravi Joshi
e55f42cfe7 qcacld-3.0: Enable support for multiple NAN peers per NDI
Enable support for multiple NAN data path peers from host.
FW already supports multiple NAN peers.

CRs-Fixed: 2121121
Change-Id: I23307c5f56114084a93b3afae0e23a07251c5013
2017-10-04 22:48:22 -07:00
snandini
e626ea5aff Release 5.2.0.47B
Release 5.2.0.47B

Change-Id: I5f077a7aabab270ea6464cebc3fced1e703d5a07
CRs-Fixed: 774533
2017-10-04 21:52:29 -07:00
Naveen Rawat
60f39da929 qcacld-3.0: Check vdev_id against wma->max_bssid
Check vdev_id against wma->max_bssid in wma_mcc_vdev_tx_pause_evt_handler to
avoid bufer overflow.

Change-Id: Ie47a0ed2f7f27f13a01e1b2cb365fae66b41b1df
CRs-Fixed: 2120677
2017-10-04 21:52:29 -07:00
snandini
05512b452b Release 5.2.0.47A
Release 5.2.0.47A

Change-Id: Ide7b368167f12a361bed8aa24cc68f6462c268bd
CRs-Fixed: 774533
2017-10-04 19:26:15 -07:00
Dustin Brown
8719476c67 qcacld-3.0: Print value of gPreventLinkDown
Print the configured value of gPreventLinkDown in hdd_cfg_print()
for debugging purposes.

Change-Id: I765ca66ffaa6bdd958fb779189253f50ae5cf352
CRs-Fixed: 2115299
2017-10-04 19:26:12 -07:00
snandini
fed77d1ef3 Release 5.2.0.47
Release 5.2.0.47

Change-Id: I28886bea9fa4b9f509a8dff6e6ed61cd812d3864
CRs-Fixed: 774533
2017-10-04 18:29:45 -07:00
Venkata Sharath Chandra Manchala
9abac31eba Revert "qcacld-3.0: Propagate config parameters to datapath"
This reverts Change I852b14cb04b1c2c01a697434bc5fe8b29dbfe9ea.

Change-Id: Ia433fdcb58feea27c5897975002bb347d6b96bb4
CRs-Fixed: 2097229
2017-10-04 18:29:40 -07:00
snandini
89ad2ce0da Release 5.2.0.46Z
Release 5.2.0.46Z

Change-Id: Ib1c3427b985fda027d9045dd3bfbf5366cb408cf
CRs-Fixed: 774533
2017-10-04 14:09:02 -07:00
Jeff Johnson
cc98797190 qcacld-3.0: Remove obsolete HDD WAPI definitions
Many of the HDD WAPI definitions are obsolete, so remove the ones that
are no longer being used.

Change-Id: I342a8f590c835ddec03b2a20d16ad8f0014ca6af
CRs-Fixed: 2119533
2017-10-04 13:04:45 -07:00
Jeff Johnson
8215592437 qcacld-3.0: Replace typedef hdd_station_info_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_station_info_t typedef does
not meet any of those criteria, so replace references to it with a
reference to the underlying struct.

Change-Id: I2ad73b4ac543b56d0883e20c0d20d4ddd473c35a
CRs-Fixed: 2119525
2017-10-04 13:04:45 -07:00
Jeff Johnson
673fd5b80a qcacld-3.0: Replace typedef t_multicast_add_list
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The t_multicast_add_list typedef
does not meet any of those criteria, so replace references to it with
a reference to the underlying struct.

Change-Id: Ic70b2e2c716963b0f267bae86961cbf973246b24
CRs-Fixed: 2119523
2017-10-04 13:04:45 -07:00
Jeff Johnson
44e5217218 qcacld-3.0: Replace typedef beacon_data_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The beacon_data_t typedef does not
meet any of those criteria, so replace references to it with a
reference to the underlying struct.

Change-Id: I2202f452549da705a315e89993f100617eb7e0e1
CRs-Fixed: 2119522
2017-10-04 13:04:45 -07:00
snandini
dd71ba999f Release 5.2.0.46Y
Release 5.2.0.46Y

Change-Id: Iee59aafcf2918c47843b293edfd92788e4e77528
CRs-Fixed: 774533
2017-10-04 08:41:29 -07:00
Poddar, Siddarth
aee8ff668f qcacld-3.0: Cleanup of hdd_wlan_startup
Cleanup the hdd_wlan_startup, presently lot of configuration
is written to firmware from the startup function which is not
correct with different driver models supported. Move the feature
initialization to hdd_features_init. Also in the probe failure
error path netdev notifier is not getting unregistered.
Leaving stale pointer with the kernel which can lead to a crash.

Unregister the netdevice during the probe failure and cleanup features.

Change-Id: If7fe7c4c0f97e4b4829551840643c4e525696c76
CRs-Fixed: 2090570
2017-10-04 08:41:29 -07:00
Arunk Khandavalli
932a9e161a qcacld-3.0: synchronize interface change timer with driver shutdown
As part of the last interface down, driver starts the interface
change timer to close the modules of 15seconds, if there is no
request to use the interfaces from upper layer during this time
the timer expiers and closes modules. There can be SSR/PDR triggered in the
different context which during shutdown tries to call the
respective module notifiers which can be purged/freed
in the timer context.

Synchronize the interface change timer callback with the shutdown
using the interface change timer lock. Following steps are taken
to make sure one thread is completed before other thread starts
execution:
	* Set the respective flag of recovery inprogress or fw_down
          so that access to firmware is blocked.
	* Take the interface change lock, so if the timer callback
	  is running it will complete the closing the modulkes,
	  or if the uevent gets the lock it completes the calling
	  notifiers and purges the same.
	* Release the interface change lock.

Change-Id: I1d7f62cd0ce7268cc9a5bda2a72dae384b70a6e2
CRs-Fixed: 2100846
2017-10-04 08:41: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
Arunk Khandavalli
062fb036ec qcacld-3.0: Add SSR support for monitor mode
Presently SSR is not supported in the monitor mode, in the debug
builds the device enters bad state when the SSR is triggered
in the monitor mode.

Make changes to support SSR in monitor mode.

Change-Id: Iee88a0c1aca1b093607cea20ee1957be55a33598
CRs-Fixed: 2034240
2017-10-04 12:18:15 +05:30
snandini
141f12cb55 Release 5.2.0.46X
Release 5.2.0.46X

Change-Id: I8e11706dab5fc798fb4f3cd6a373fb2321d3d42a
CRs-Fixed: 774533
2017-10-03 22:00:50 -07:00
Jeff Johnson
ba1d0cad25 qcacld-3.0: Replace typedef hdd_tx_rx_stats_t
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_tx_rx_stats_t typedef does
not meet any of those criteria, so replace references to it with a
reference to the underlying struct.

Change-Id: Ic3ff995d10e65f949ee069b134d9826583461b1e
CRs-Fixed: 2119524
2017-10-03 16:35:33 -07:00
snandini
ca1341f9e2 Release 5.2.0.46W
Release 5.2.0.46W

Change-Id: Id8cab7b8a9bfeaf6801031206a458b859cf8dac9
CRs-Fixed: 774533
2017-10-03 16:02:57 -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
Poddar, Siddarth
44aa5aa772 qcacld-3.0: Add support to log ICMPv6 packets in DP Trace
Add support to log ICMPv6 packets such as NS/NA, RS/RA and
ICMPv6 Req/Res in dp trace.

Change-Id: I20ba677db59044569516348cd11427fb820175a8
CRs-Fixed: 2075962
2017-10-03 16:02:53 -07:00
snandini
79225a6e90 Release 5.2.0.46V
Release 5.2.0.46V

Change-Id: I7cbc6262e013cec2084745d92ccd550ecfeb2fa9
CRs-Fixed: 774533
2017-10-03 11:46:05 -07:00
Arunk Khandavalli
847969de19 qcacld-3.0: Dont disable the ps conf to firmware
Presently, host driver is sending the exit power save
configuration request to firmware when an interface up comes
before iface_change_timer which is not required because firmware
is the master and decides to enter/exit imps.
To mitigate the issue, don't send the exit IMPS request to firmware
before interface change timer expires and re-configure the same
incase of loadonce-unload never in case of firmware is de-initialzied.

Change-Id: Ia47687cdcfc5a5fb7be1a8066e163c3248305bba
CRs-Fixed: 2002110
2017-10-03 11:46:04 -07:00
snandini
cbeaea46cc Release 5.2.0.46U
Release 5.2.0.46U

Change-Id: Id6c45713e0207db438919da2b56de83eb9b50bac
CRs-Fixed: 774533
2017-10-03 10:14:14 -07:00
Vignesh Viswanathan
eaa6889efa qcacld-3.0: Send DPP Public Action frames to userspace
Allow DPP public action frames to be sent to user space.

Change-Id: I50790772cd7c1b51ae2242fb096345047c08460c
CRs-Fixed: 2106568
2017-10-03 10:14:14 -07:00
snandini
19450db6d7 Release 5.2.0.46T
Release 5.2.0.46T

Change-Id: I2df11cb8809a13289ee5ee66493cf97523006e54
CRs-Fixed: 774533
2017-10-03 08:24:16 -07:00
Sravan Kumar Kairam
d80c7669d0 qcacld-3.0: Shutdown IPA WDI pipes on PDR event
Shutdown the IPA WDI pipes on PDR event from ICNSS driver to
prevent the possibility of IPA diver invalid access of CE ring
registers.

Change-Id: I19da0c015ba229512f71d7016236b106d9d8ee43
CRs-Fixed: 2072920
2017-10-03 08:24:15 -07:00
snandini
31322d25cf Release 5.2.0.46S
Release 5.2.0.46S

Change-Id: If38b321c5b5d7e6c863c196cec5c4fa3ed7e486e
CRs-Fixed: 774533
2017-10-03 07:46:19 -07:00
Sravan Kumar Kairam
8ea5ee2120 qcacld-3.0: Add net buff pop fail counter
Add net buff pop fail counter which helps to debug issues
related to scenario when RX ring fill count exceeds the fill
level.

Change-Id: I00f4a4e245e0732ef04518e4c1db95999edc6687
CRs-Fixed: 2106523
2017-10-03 07:46:18 -07:00
snandini
9e2d24aec9 Release 5.2.0.46R
Release 5.2.0.46R

Change-Id: I67f4e6b9a663d72d7dd760443421f52be8d07c4c
CRs-Fixed: 774533
2017-10-03 05:36:18 -07:00
Abhishek Singh
b58164af41 qcacld-3.0: Choose best candidate at first connection
Best candidate at first connection is a mechanism
to select best possible candidate for making Wi-Fi
connection based on the scan results provided.
Driver use Scan results to calculate score for each
BSS and select the best candidate to connect.
This enhances the user experience by connection
to better AP, based on certain parameters.

Change-Id: I3f88fa8c67f4cf830f05faf2c1d3f3491eee9a72
CRs-Fixed: 2018585
2017-10-03 05:36:18 -07:00
snandini
ae74b08460 Release 5.2.0.46Q
Release 5.2.0.46Q

Change-Id: I84fbdfc7c593e5d828085d887069edaac77f268c
CRs-Fixed: 774533
2017-10-03 04:14:20 -07:00
Sourav Mohapatra
3a13bf5f9f qcacld-3.0: Modify max for gEnableRTSProfiles item to accommodate more profiles
Change the max value of gEnableRTSProfiles from 34 to 66 as firmware has
support for 66. Update the template describing the different values that
can be used for the profile.

Change-Id: I5a6a398c74804022075a06ca0e17858335064c5b
CRs-Fixed: 2116704
2017-10-03 04:14:19 -07:00
snandini
4c04a8695b Release 5.2.0.46P
Release 5.2.0.46P

Change-Id: I4e652ea4efbf617757fc860beaa0de385ccfcc0e
CRs-Fixed: 774533
2017-10-03 03:30:45 -07:00
Krunal Soni
e6a1cda95e qcacld-3.0: Bring back changes of Antenna sharing for STA
Change-id Iafd5666179d079c7bcc950277092cef3046356bf was added to remove
antenna sharing support from SAP and STA case but customer needs those
changes for SAP case only.
So bringing back changes for STA case.

CRs-Fixed: 2117829
Change-Id: I79f7c5ae1fd642f0b26170f066a5409638cdd873
2017-10-03 03:30:44 -07:00
Vignesh Viswanathan
f8800692cd qcacld-3.0: Fix potential buffer overwrite in wma_roam_synch_event_handler
In the function wma_roam_synch_event_handler, vdev_id is received from
the fw and is used to access member of the array wma->interfaces without
validating the max of the vdev_id received from the fw

Add check to make sure vdev_id is less than max_bssid before using it

Change-Id: I3b940e183ab66680891cb7351af4537b50afce1d
CRs-Fixed: 2114187
2017-10-03 03:30:42 -07:00
Vignesh Viswanathan
677e3ec4b7 qcacld-3.0: Avoid integer overflow in wma_rx_aggr_failure_event_handler
Add sanity check to ensure num_failure_info from FW does not cause
integer overflow while calculating alloc_len, as alloc_len is in
turn used to malloc which can lead to less than required memory
allocated in case of integer overflow of alloc_len

Change-Id: Iea93e879196e9cd43856a7dcc9204d2304f76c78
CRs-Fixed: 2114789
2017-10-03 03:30:41 -07:00
Jeff Johnson
dadef1a675 qcacld-3.0: Replace typedef fw_log_info
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The fw_log_info typedef does not
meet any of those criteria, so replace it with a struct.

Change-Id: I4ec73e046f2439c094cb6d05a99d883241c7fe20
CRs-Fixed: 2119521
2017-10-03 03:30:39 -07:00
Jeff Johnson
d5ba8a632e qcacld-3.0: Fix semantic issues with IPA counting macros
Checkpatch identified multiple issues with the macros:
HDD_IPA_INCREASE_INTERNAL_DROP_COUNT
HDD_IPA_INCREASE_NET_SEND_COUNT

Fix those issues.

Change-Id: If947d09ec2a13ab599f7a08e572ed2c9cc87c8e8
CRs-Fixed: 2119501
2017-10-03 03:30:37 -07:00