Driver caches last disconnected reason code in adapter. Convert it
to enum qca_disconnect_reason_codes and send it in STA_INFO to
userspace.
Change-Id: Ifd8566f4fb7d412d9a6ded0ae06f51b0c1dd6d2b
CRs-Fixed: 2624792
The notifier for pm qos is added when the runtime pm dynamic
is defined, when removing the notifier, we should also check
if the runtime pm dynamic is defined or not. We should not
remove this notifier if it is not defined.
Change-Id: Ic628c6fc38da00b2491355786ff40020d0249bb2
CRs-Fixed: 2622946
Issue happens as below scenaio:
1 suspend happens, but dp_rx_thread didn't finish in time,
so timeout happens for suspend_event, here suspend will
return success to kernel.
2 resume happens before dp_rx_thread to reset resume_event,
and resume finished.
3 if dp_rx_thread finished and blocking with resume_event,
and in following test, suspend didn't come(longer then
hang detect time).
4 hang detect will alarm.
Fix is to return failure if dp_rx_thread can't be suspend
in time. Suspend can triger again later.
Change-Id: Ifbfdef5bb1c8d6e00b8fa5cc5e6dc74d3495c9ea
CRs-Fixed: 2626468
Introduce a compile time flag SAE_SINGLE_PMK and new INI
"sae_same_pmk_feature_enabled" to enable/disable SAE
Roaming with same PMK/PMKID feature.
Change-Id: Ifca8ec8bcf6e9a2f1d8409b35390bfee0033bd30
CRs-Fixed: 2616025
The host driver updates the group management cipher suite to the
firmware as part of RSO commands over the WMI_AP_PROFILE
command.
Update the group management cipher suite from the crypto
component to the roam_request and copy it to the WMI_AP_PROFILE
command params in wma
Change-Id: I78d9cfbddfb74b16639ff03005935c4112a7e5af
CRs-Fixed: 2622864
PM QoS notifier is not getting deregistered during module stop and is
racing with module start as a result. Move hdd_register_notifiers()
and hdd_unregister_notifiers() calls to hdd_wlan_start_module() and
hdd_wlan_stop_module() to do proper registration and de-registration.
Change-Id: I4d47393d600c2c162b54e16ecdf06b286f1b93bc
CRs-Fixed: 2626126
FTM time sync feature is triggered when connection takes place
in case of STA and bss starts in case of SAP. The feature is
stopped when STA disconnects and bss stops.
Change-Id: I963b0134b7432c9827c2fb3d9dce7c81a8666d4d
CRs-Fixed: 2621144
Currently, Linux Kernel 4.9 doesn't support WDI3/WDI2 over GSI,
so it missed the definition of is_txr_rn_db_pcie_addr &
is_evt_rn_db_pcie_addr, and we should not call the relevant API
for Linux Kernel 4.9 + ROME target. So refine the function
ol_txrx_ipa_wdi_tx_smmu_params to fix compile issue.
Change-Id: I050d7f8613f9a5ae05d6a269dece53db624d18e2
Because FW don't support idle pdev suspend, and when all interface down
host will not send wow enable command because wakeup is not expected.
So the idle shutdown precedure is already there to prevent system go to
idle pdev suspend state, but it only exist for station mode now, apply
it to hostapd mode as well.
Change-Id: I1b11b5bd038ea9ad23835f142e443ea11e90f55b
CRs-Fixed: 2624453
Firmware advertises WMI_SERVICE_ROAM_SCAN_CHANNEL_LIST_TO_HOST_SUPPORT
at the time of initialization. When user requests for roam scan channels
to driver using GETROAMSCANCHANNELS command, driver queries firmware for
roam scan channel list by sending wmi command with command id
WMI_ROAM_GET_SCAN_CHANNEL_LIST_CMDID and vdev id.
Firmware response to WMI_ROAM_GET_SCAN_CHANNEL_LIST_CMDID commmad is
WMI_ROAM_SCAN_CHANNEL_LIST_EVENTID. This event has roam scan channel
list, vdev id, connected BSSID, command_response.
Firmware issues WMI_ROAM_SCAN_CHANNEL_LIST_EVENTID event for two reasons,
one for GETROAMSCANCHANNELS command where firmware sets command_response=1
in wmi event and asynchronous event upon disconnection where firmware sets
command_response=0 in wmi event.
Change-Id: I690aca6c3f1e3aa7ae1fe54aadc839ea19446079
CRs-Fixed: 2621535
QCN7605 has 2 set of shadow registers, WCSS block and PCIe block.
As PCIe shadow register are at power domain boundary, enabling
PCIe shadow register for QCN7605.
Also PCIe shadow register falls below 512KB, no need to use register
windowing which is required to get it access from IPA FW.
Change-Id: Ic0bbc2de4c3e32c4fb6453d273f0f29d19f3537c
CRs-Fixed: 2623851
Add ini config required for FTM time sync feature.
"enable_time_sync_ftm"- ini to enable/disable the feature.
"time_sync_ftm_mode" - ini to configure the burst/aggregated mode.
In burst mode the offset derived for each RTT frame is sent by
firmware, in aggregated mode only one offset is sent by firmware.
"time_sync_ftm_role" - ini to configure slave(STA)/master(SAP) role.
Change-Id: I6a06d6fdc4c7556c32ab2d28f1cbaa936b98a85b
CRs-Fixed: 2618654
The ch_params of sap_ctx->csr_roamProfile is not populated
correctly during SAP channel switching.
Fix it and send channel change event to supplicant with
correct seg0/seg1 value.
Change-Id: I7ef82c6e79b970edfee58d9960e8c6b42fa91ef8
CRs-Fixed: 2594973
Function wireless_send_event() is only present in the kernel when
wireless extensions are enabled. In order to allow the driver to build
when wireless extensions are disabled, put a wrapper around that
function.
Note that this is only a partial solution to the problem since this
means that when wireless extensions are disabled that the event will
not be sent to userspace. A subsequent effort will need to evaluate
each event to see if a cfg80211-based notification mechanism is
already in place, and if not, if one needs to be added in order to
maintain the underlying functionality.
Change-Id: Icbdddf6735bdc5ffd1ee189b5fabfa67fcce59ea
CRs-Fixed: 2621699
Currently there is logic to set the net device wireless_handlers
pointer to NULL in both hdd_deinit_station_mode() and
hdd_deinit_ap_mode(). This is unnecessary duplication of code, and
worse, this is WEXT-specific logic that exists outside the
WEXT-specific source files. In order to address these issues refactor
the logic into a new function that is exposed by wlan_hdd_wext.h.
Change-Id: I0fab5a7f35941f282ddf2e286fb12bfb8c4c7c50
CRs-Fixed: 2620818
Add proper NULL check for ht_info before accessing the structure. This
field is sent as a part of the event from FW and could be NULL.
Change-Id: I55dd7dcbe4ecdafe6a97ebcf2c7d9f08af30d8a2
CRs-Fixed: 2615175
Register tx and rx ops to send packet capture mode command and
to receive mgmt offload handler for packet capture component.
Change-Id: I70da00feff29399b98c5916eec17e26b62285db3
CRs-Fixed: 2619321
The host driver start scan request on channels in the operating
class requested in the beacon report request. Starting from first
channel all channels are scanned one after another. The scan
request is sent in correct order of the channels in operating
class, but when filtering the scan results from the scan db, the
channel freqency is not indexed properly so first channel is sent
to the filter always. Due to this, always beacon report response
has only entries from first channel from the OP class.
Populate the correct channel frequency to filter the rrm scan
result.
Change-Id: I75461a4da99be9ef215f8c16258e0e21877fe362
CRs-Fixed: 2619363
If resume and fw wakeup happens at the same time.
psoc_ctx->lock maybe doing bottom half operation for resume,
then wakeup interrupt comes on same cpu, the interrupt
handler will also acquire psoc_ctx->lock in
pmo_core_update_wow_initial_wake_up, which cause dead lock.
Using atomic for wow_initial_wake_up, so the interrupt handler
can avoid using spin_lock.
Change-Id: Id0e963a0924415e9660c57a1c1b776d3e609213d
CRs-Fixed: 2624899
Add support for the following NAN messages in kmsg:-
1. NAN enable status
2. NAN, NDP match events
3. NDP channel info.
etc.
Change-Id: Icbf8f4ed05a7bd181a076d526dd2e01d70be6b05
CRs-Fixed: 2618835
In 6ghz, while sending broadcast/unicast probe req and assoc req
host should set correct values for PPE Thresholds in HE Cap IE
Change-Id: I1ec2d628dcc221a3c222882fd11419a656448dd0
CRs-Fixed: 2619289
Enable SMMU_S1 and METERING Features in IPA for all the
Helium based Adrastea targets, by default.
Change-Id: I2cefe6f137415f22f2005a1c6f2d29d23fe08fea
CRs-Fixed: 2624096
5G 160M related HE Phy Caps comes from 5G MAC's HE Caps.
Change csr_revise_req_he_cap_per_band API to override the caps
with 5G MAC Caps if STA or SAP starts on non-2G channel.
Change-Id: I250385a64fdb4e043d150ed4e29cd07d10d00880
CRs-Fixed: 2620815