TargetSendSuspendComplete should take the HTCInitInfo
context as an argument. The wow_nack should be its
own argument.
Change-Id: Ib13385cf0a04730d066ffcd53c1f669c7a5ced60
CRs-Fixed: 1003793
Use QDF macro to check if we are in epping mode.
Remove bit masks of epping configuration.
Change-Id: I454ef259dfcc4b7c7860a5adfda605837f4a89cc
CRs-Fixed: 1003792
qcacld-2.0 to qcacld-3.0 propagation
Change to initiate BUG report in case of fatal event
Add INI support to Enable/Disable it.
The fatal event handled are as below:
- Roaming failed after successful preauth.
- SME command timeout.
- PE defer queue is full.
- CDS run out of message wrapper.
- HDD level wait for event timeout.
CRs-Fixed: 912560
Change-Id: I64dff8b7d0836340ce3bec5f5985d1919b600c23
qcacld-2.0 to qcacld-3.0 propagation
Add diag event for EVENT_WLAN_TDLS_TX_RX_MGMT. This event contains
TDLS action frame type, subtype and if its rx or tx.
Change-Id: I6ec744518b7a391e4511c503cb858d532ef11322
CRs-Fixed: 934447
qcacld-2.0 to qcacld-3.0 propagation
Add diag event for EVENT_TDLS_SCAN_BLOCK. This event indicates if
scan is blocked because of TDLS.
Change-Id: I00dd9d2a54cbe054b400b2d1cb74c0e14b9a13d7
CRs-Fixed: 934456
qcacld-2.0 to qcacld-3.0 propagation
Add diag event for EVENT_OFFLOAD_REQ. This events contains info
if host has enabled or disabled the offload.
Change-Id: I19fe216ac0900dedbcb7b247cf0d171979308dc5
CRs-Fixed: 934455
qcacld-2.0 to qcacld-3.0 propagation
Add diag event for EVENT_WLAN_SUSPEND_RESUME.
This contains info if driver has entered early suspend, suspend,
early resume or resume state.
Change-Id: Ic9bb815667ea9203d44a3c3cfcecbdbae573e717
CRs-Fixed: 934452
qcacld-2.0 to qcacld-3.0 propagation.
Add diag event for EVENT_WLAN_TDLS_ENABLE_LINK.
This event contains below info:
- peer mac address
- Does peer supports off channel
- Is off channel configured
- Is off channel established
Change-Id: Ib491d8ac1d8a7850a050bf14a60b6eb08ab94078
CRs-Fixed: 934449
qcacld-2.0 to qcacld-3.0 propagation
Add diag event for TDLS teardown. Event contains reason for
teardown and peer mac address.
Change-Id: Ib04deac6cf7d61fae1a7bb0d0fb8f4dc652b3217
CRs-Fixed: 934448
API is trying to access the wmi descriptor
even though it is failed to allocate.
- Add a NULL pointer verification check before
accessing the wmi descriptor.
- Return failure to UMAC if the wmi failed to
provide the wmi descriptor.
Change-Id: I1ca8670c43e795d874d4e57bca8577b5fb90468a
CRs-Fixed: 1009636
Scan results are not updated to NL when scan times out.
Intermediate SME scan cache entries are dropped at LIM in failure
scenario.
Save scan results in SME global cache before sending the abort
indication to upper layers in scan timeout scenario.
Change-Id: I0f42f4264bfe275b38027998b23a061b9cea135f
CRs-Fixed: 997587
Per regulatory data, the regdomain pair mapping for
CTRY_JAPAN14 is MKK5_MKKA2 and not MKK5_MKKA. Therefore
correct the same.
Change-Id: Ica36574c2111753e4e23e2cd30d438a4613eefd8
CRs-Fixed: 1000056
Modify the set hardware mode command sequence during channel switch
in the case of SAP/P2P-GO and STA/P2P-CLI as per the latest FW
requirements. This is primarily to accommodate the time take for
calibration during hardware mode change which could lead to
momentary data stalls.
The new sequence is as follows:
1. Send (E)CSA
2. Do vdev restart/vdev up
3. For DBS downgrade:
a. PM will initiate HW mode change to DBS right away
4. For single MAC upgrade:
a. Opportunistic timer is started, PM will check if MCC
upgrade can be done on timer expiry
The old sequence is as follows:
For MCC upgrade:
1. Send (E)CSA
2. Opportunistic timer is started
3. vdev restart is initiated on the new channel
4. PM will check if MCC upgrade can be done on timer expiry
For single mac upgrade:
1. Send (E)CSA
2. PM will initiate HW mode change to DBS right away
3. vdev restart is initiated on the new channel
Change-Id: I4bce2ee176cae43b6a46c47216ed7ab47a82a54c
CRs-Fixed: 1006992
Fix the channel number sent to fw in probe response during P2P scans.
Current channel number being sent to FW is 0. For the probe response
frame from Host, as there is no channel frequency added, it ends going
on default MAC 0. As in this configuration, FW will do DBS scan for
P2P find, 2G is mapped to MAC1. Hence P2P probe response ends up going
on wrong channel (STA’s 5G channel). Fix this by using the user space
supplied channel in probe response for non beaconing modes and by
using the corresponding session's frequency in probe response for the
beaconing modes.
Change-Id: I3928f8eb2c663b12e40239809e0728d07839317a
CRs-Fixed: 1009549
Add support to change the concurrency system preference at
run time. The concurrency system preferences of throughput,
latency and power can be changed at run time using the IOCTL
"setConcSysPref". The policy manager provides the preferred
channel list based on this preference value.
Usage:
iwpriv <interface> setConcSysPref <preference>
Preference - 0 for throughput, 1 for powersave, 2 for latency
e.g., iwpriv wlan0 setConcSysPref 1
Change-Id: Ib2b8653688400a0bbad9c9c1b1d630025ae4edcb
CRs-Fixed: 993122
Correct the Kconfig entry that is used for the MCC to SCC switch and LFR
subnet detection feature. The Kconfig, instead of having the config name
is having the feature name. i.e, instead of having the Kconfig entries
as MCC_TO_SCC_SWITCH and LFR_SUBNET_DETECTION, the current entries are
FEATURE_WLAN_MCC_TO_SCC_SWITCH and FEATURE_LFR_SUBNET_DETECTION. The
make config process will add the CONFIG_ prefix to these Kconfig
entries.
Change-Id: I57f025f14bed73afeb411ea130ca88b5a4155a60
CRs-Fixed: 1000552
Correct the p2p scan's active dwell time, passive dwell time and
burst duration when a SAP session is already active. Since the
max duration of CTS-to-self is 32ms, the dwell time for p2p scans
are calculated in such a way that it does not cross 32ms if SAP
is running. This is in line with the existing STA scan parameters
when SAP is active.
Change-Id: I8089e01025ba07cc18684c277c36bb1694264214
CRs-Fixed: 998555
Replace the obsolete WMI event WMI_SOC_HW_MODE_TRANSITION_EVENTID
with WMI_PDEV_HW_MODE_TRANSITION_EVENTID. The new event additionally
carries the pdev id.
Change-Id: Ic5d04ce63fbc582dbecb9052f490189c83094bb5
CRs-Fixed: 989502
Replace the WMI command WMI_SOC_SET_DUAL_MAC_CONFIG_CMDID
and event WMI_SOC_SET_DUAL_MAC_CONFIG_RESP_EVENTID with
WMI_PDEV_SET_MAC_CONFIG_CMDID and
WMI_PDEV_SET_MAC_CONFIG_RESP_EVENTID respectively since
the former are obsolete. The new WMI commands and events
additionally carry the pdev id.
Change-Id: I77eab3ead005bbb7f951ce7e077cd661813cb628
CRs-Fixed: 989502
Replace the obsolete WMI command WMI_SOC_SET_HW_MODE_CMDID with
WMI_PDEV_SET_HW_MODE_CMDID and event WMI_SOC_SET_HW_MODE_RESP_EVENTID
with WMI_PDEV_SET_HW_MODE_RESP_EVENTID respectively. These new WMI
commands and events additionally carry the pdev id and all mac id
references are replaced with pdev id.
Change-Id: If2a3f93dcd1947eedce8d4eac8ed936166f7e078
CRs-Fixed: 989502
Save the requested scan and fw mode config when these
new configs are sent to the firmware for update. This
saved parameter updates the current scan and fw mode
config respectively on getting the response from the
firmware. If this parameter is not saved and updated
in the current scan and fw mode configs, the next
attempt to fetch the current scan and fw mode config
provides the wrong config values.
Change-Id: Iae10d16b29038a8e321ef74ba591b032eedbe425
CRs-Fixed: 1007653
FL macro definition is used in converged layer, move
FL macro definition from umac layer to common qdf layer.
Change-Id: Id3c4383c385eb3d6391c4c066b0034fb2f053cdc
CRs-Fixed: 1008835
Replace mac_id with pdev_id for WMI pdev commands and
vdev start response handler to support multi-radio in
converged firmware. In order to maintain backward
compatibility with old fw, host needs to check
WMI_SERVICE_DEPRECATED_REPLACE service id in service
bitmap and needs to fill pdev id or mac id accordingly.
Change-Id: I7e6b40b4c0bd20e967dc0a383b480068e256486f
CRs-Fixed: 994415
qcacld-2.0 to qcacld-3.0 propagation
A customer observed the following error log:
wlan: [1662:E :HDD] hdd_wlan_startup: 12873: set tsf GPIO fail
The customer was concerned that the device was not working correctly.
The reality is that the TSF GPIO is only expected to be set on
specific hardware platforms, and the customer platform was not one of
those platforms.
Fix this issue by making sure that all of the TSF GPIO logic is
properly encapsulated within the WLAN_FEATURE_TSF feature flag.
Change-Id: I34eab623243d4674c5fc1d0c8139d80efe5786a7
CRs-Fixed: 962955
qcacld-2.0 to qcacld-3.0 propagation
Update qcacld to configure only valid GPIO setting if enabled in
INI file. Default TSF Gpio value is set as invalid, so it will not
be set in firmware during driver load.
Change-Id: I0414becbf83718155a9ca51d60f34d0e8ffcd4e3
CRs-fixed: 994569
qcacld-2.0 to qcacld-3.0 propagation
Add configuration of gpio pin used for TSF. FW shall toggle
this gpio when receive capture/get tsf cmd.
Change-Id: I442f2de3af4f3946a20bf3f4a9d8c9b285aa7a7c
CRs-Fixed: 817527
qcacld-2.0 to qcacld-3.0 propagation
Get tsf from fw. Provide ioctl interface cap_tsf/get_tsf.
Driver issue wmi cmd to fw to realize capture/get.
It can be used in station and softap mode. For sta, getting
tsf from connected ap. For softap, it will generate tsf by-
self
Change-Id: I00d30882bce2f49ee3de3fa189e094c04c0d9943
CRs-Fixed: 817527
PLD stands for platform driver. It is a interface between CLD and
CNSS/ICNSS. It hides the CNSS/ICNSS APIs from CLD and provides a set
of common APIs.
Other modules should include pld_common.h if they want to call PLD
APIs.
CRs-Fixed: 979275
Change-Id: I3571fc70f502dc367c65f13b412cd5d37ee41d3c
WMA bus resume returns un-initialized local variable as status
to hdd bus resume callback which does bug on if status is not 0.
Fix WMA bus resume routine to return proper qdf status
and conver it into linux status before returnign it to HDD.
Change-Id: I8f36c11552412b569ac33afa320fd39fa3fedc50
CRs-Fixed: 1008027
During IBSS session tear down, we are hitting a lockup. The issue is
seen as the pdev->peer_ref_mutex is being taken up twice in
ol_txrx_remove_peers_for_vdev and ol_txrx_peer_unref_delete. The later
function gets invoked by the former and hence we are stuck while trying
to acquire the spinlock, the second time.
Fix issue by releasing peer_ref_mutex lock before invoking
callback (wma_remove_peer) in ol_txrx_remove_peers_for_vdev function.
The dmesg signature of the lock-up is as follows
1100.230392: <2> [<ffffffc0002035a4>] el1_irq+0x64/0xd4
1100.235432: <2> [<ffffffbffc17e890>]
ol_txrx_peer_unref_delete+0xc4/0x33c [wlan]
1100.242461: <2> [<ffffffbffc17ecc8>] ol_txrx_peer_detach+0x1c0/0x1e0
[wlan]
1100.249020: <2> [<ffffffbffc160914>] wma_remove_peer+0x7c/0x18c
[wlan]
1100.255141: <2> [<ffffffbffc17dee4>]
ol_txrx_remove_peers_for_vdev+0x170/0x1b0 [wlan]
1100.262606: <2> [<ffffffbffc16311c>]
wma_vdev_stop_resp_handler+0x204/0x460 [wlan]
1100.269816: <2> [<ffffffbffc1886a8>] __wmi_control_rx+0x280/0x2c0
[wlan]
1100.276204: <2> [<ffffffbffc188a34>] wmi_process_fw_event+0x8/0x14
[wlan]
1100.282595: <2> [<ffffffbffc157054>] wma_mc_process_msg+0x80c/0x27fc
[wlan]
1100.289176: <2> [<ffffffbffc13f238>] $x+0x190/0x3f4 [wlan]
1100.294115: <2> [<ffffffc00023d7e8>] kthread+0xac/0xb8
CRs-Fixed: 1006847
Change-Id: Icedeb172bbd6736ab39343391ff0643ddd688444
There are few instance where accidently mac address size got set
to some incorrect value.
Supply correct mac address size macro to resolve the issue.
CRs-Fixed: 1007399
Change-Id: I0bdd7ac0c241d1e22b003576c370b0ce2333a0dd
Current driver try allocate memory when number of channel are passed
as zero which will cause memory allocation failure.
As part of the fix, when number of channels comes as zero then driver
shouldn't allocate memory and let the firmware take care of it.
CRs-Fixed: 1007196
Change-Id: I51d8a6decbe4c21265e88624e490446a48ea4857
qcacld-2.0 to qcacld-3.0 propagation
When creating the reassoc session, HT SMPS value should be copied from
existing session to the reassoc session but the session supported NSS should
be set to default value of true and not copied from exisiting session.
Session supported NSS should be the intersection of NSS supported by STA
and AP that STA will reassoc to.
CRs-Fixed: 991042
Change-Id: Ic1577882aaa9c1923ba1dac2126e0cf11e542e36
qcacld-2.0 to qcacld-3.0 propagation
Peer supported NSS should be updated based on the presence of HT
and VHT capabilities in the beacon/probe response IE from the AP.
Also, update session supported NSS during reassociation. Otherwise,
station will end up sending SMPS action frames to AP which only
supports 1x1 mode.
CRs-Fixed: 979545
Change-Id: Ie2dbfbb577f08c5090101e1330184e72a9f6cd46
qcacld-2.0 to qcacld-3.0 propagation
In platforms that supports LTE coex, When antenna mode is dynamically
switched from 2x2 to 1x1 before station association the SMPS mode is
not set to enabled, static in the HT caps of assoc req management frame.
Although the station will send SMPS action frames with the correct
SMPS mode after association, if the AP did not receive the management
frames then it will continue to transmit in 2x2 rates when station is
in 1x1 mode.
CRs-Fixed: 986388
Change-Id: Ide2eef354ca6a8aa83981a959b029216c2069943
Remove WLAN_FEATURE_NEIGHBOR_ROAMING which is not defined
in the build file.
Also fix the regression that has been introduced by the
change I857f9c16eb73a4b0f72e0a622be47ab756fb70f4.
CRs-Fixed: 1003135
Change-Id: I741fd3cf69a05c346e1bc11498f93e928e5c1244
Update htc_endpoint only for htt tx endpoint to avoid
double freeing of Tx Queue packets as it will be
freed in htt_htc_misc_pkt_pool_free.
Rename htc_endpoint to htc_htt_tx_endpoint to reflect
it's appropriate use.
Change-Id: I736ba08505acc829eb15be30538553dd945695f6
CRs-Fixed: 1006498
Enable "tx flow control v2" for SNOC.
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
Change-Id: Ifaca9c97d78e6b09876e3d0a7a9e85d763e67e09
CRs-Fixed: 999422
If NAPI does not find any instances to create, then it would
return a bitmap of 0. Make this a condition that is reportable
as a warning, but do not break initialization sequence with an
error.
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
Change-Id: I38a7a845c5b9ed3ab5ce691917e981ee2c8f7b1c
CRs-Fixed: 999422
When the feature is not defined, make sure that NAPI API calls
return success (0) so that the callers don't need to add any code
to check return values.
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
Change-Id: Ibfb8d407cb902ecc2b61dd971262904aa25aa9ba
CRs-Fixed: 999422
In msm-4.4 kernel, CONFIG_ARCH_MSM is replaced by CONFIG_ARCH_QCOM,
hence add it to the list so that MSM_PLATFORM can be correctly enabled
for the driver.
Also filter function works in a exclusive way that will causes problem
when several flags are defined at the same time. Fix it so that multiple
flags can be defined.
Change-Id: Ic5445951516c8d2cd79a71aefebd42b3f178c727
CRs-fixed: 1005069
Add the change to build and set WLAN driver as default for different
targets based on target specific flags WIFI_DRIVER_BUILT and
WIFI_DRIVER_DEFAULT.
KERNEL_TO_BUILD_ROOT_OFFSET needs to be set a default value if upper
level makefiles do not define it.
Change-Id: I4768b8c75a5d4042d01c3ddfb67b20c13e42463a
CRs-fixed: 1005069
Enable the packet tracker feature for non performance builds
by enabling the macro QCA_PKT_PROTO_TRACE and set the
default packet tracker log level to dump the DHCP, EAPOL
and management packet details. The necessary log level can
be modified using the ini 'gEnableDebugLog' entry either at
compile time or at run time using the IOCTL 'setDbgLvl'.
The logs are dumped using the same IOCTL 'setDbgLvl'.
e.g.,
To enable all the packet trace features
- iwpriv wlan0 setDbgLvl 0x0f
To dump the packet trace
- iwpriv wlan0 setDbgLvl 9999
Change-Id: I4fe82e0091517f0614baedf620976dd37b94a974
CRs-Fixed: 998642
Replace the obsolete WMI command WMI_SOC_SET_PCL_CMDID with
WMI_PDEV_SET_PCL_CMDID. WMI_PDEV_SET_PCL_CMDID carries the weightage
for all the channels (preferred and non-preferred) in the same order
and length as that of the command WMI_SCAN_CHAN_LIST_CMDID. This is
in contrast to the command WMI_SOC_SET_PCL_CMDID which carries only
the preferred channel list.
Change-Id: I040f4307491d3242d2e9409dbbe8005c4b307bf5
CRs-Fixed: 989502