For MDM platform, user space don't call ll_stats_get every 3
seconds for station mode, and txpower value will not update.
If we use iw dev to get max tx power value, the value is 0,
and sync with firmware logic, host driver need set valid value
in cmd WMI_VDEV_START_REQUEST_CMDID.
Change-Id: I4a200b3dc517cfc73e90850becd223f7b4a940fb
CRs-Fixed: 3497587
Currently for QCA_NL80211_VENDOR_SUBCMD_USABLE_CHANNELS vendor
command STA interface should be UP and running. During STA/SAP
concurrency when STA is disabled SAP cannot get the usable channels
from driver since STA iface is brought down by Wifi HAL.
These changes remove interface running dependency for get usable
channels vendor command.
Change-Id: I3760adda2ce258f428f2b803112ab25503e97b60
CRs-Fixed: 3517894
Current mechanism of maintaining nbuf user count to handle
TSO segments during transmission is not proper and causing
double free in corner cases.
Fix this logic by incrementing users count before HW send
and revert the users count if H.W send fails.
Change-Id: I47bd5d3b214705dc7ba12f5e482ee80447831bfe
CRs-Fixed: 3516215
Kbuild changes to enable datapath support for multipass
feature on QCA6490 and kiwi targets.
Change-Id: Ia4d33557fec6dd1b5681e20d19590604cc2affe1
CRs-Fixed: 3513719
Currently connectivity logging is done for all opmode
but logging should be done only for STA mode.
So to fix the issue add check for opmode and skip
connectivity logging if opmode is not STA
Change-Id: Iae225faa0fb7f141a46979c90ac4c2374f8a8832
CRs-Fixed: 3515363
In api wlan_hdd_set_vlan_config(), compilation issue is observed.
Modify api wlan_hdd_set_vlan_config() to resolve
compilation issue
Change-Id: Id7f28fcf86bfdd4cac2ae0cf95f606707fd18f89
CRs-Fixed: 3517964
Set MAX supported BW for STA so that the device can connect
to APs which are advertizing 20 MHz in beacons but increases
in association response and next beacon.
Change-Id: I8ed418382f696c7461235996c4e90201cafafcb3
CRs-Fixed: 3415718
Change log level to info for hdd_driver_load, which
like hdd_driver_unload did. And it is information
output not crital error logging.
Change-Id: I1f86c9f050a7ca604a67e44985393e336595c32b
CRs-Fixed: 3517594
In p2p mode, the connectivity logs were logged.
Modify diag connectivity logging in order to not log in
p2p mode
Change-Id: I540b29cb117e77aea4283e4fec51517827b15378
CRs-Fixed: 3515702
The policy manager API to fetch hardware mode capabilities
from hardware mode index is not using the get EMLSR mode API
and thus throws an error message whenever the device is in
EMLSR mode. This is resulting in excessive logging. Thus,
add the get EMLSR hardware mode check to avoid the flooding
of logs.
Change-Id: I1a84b5038eafde5aa08d2c19c923c61ee6558b45
CRs-Fixed: 3498843
While enqueuing the WMA_UPDATE_OP_MODE, session ID is filled with
the index where the BSSID entry matched in PE session. And after
dequeuing it this session ID is used as vdev ID and sent to FW in
WMI_PEER_SET_PARAM_CMDID, which results in sending an update for
an invalid vdev ID.
Hence use the smeSessionId value from PE session.
Change-Id: I1b550be2c98c3eb0f3716a953408ee2c217e8d9b
CRs-Fixed: 3510396
To obtain VDEV reference to cleanup the ROC, change the
function argument of wlan_hdd_cleanup_remain_on_channel_ctx()
API to take link info pointer instead of adapter.
Existing references are changed to deflink.
Change-Id: I032c04d18f6d3e962ee767e621d418ad71609139
CRs-Fixed: 3462405
To cleanup the P2P action frame for a specific VDEV use
link info pointer to get VDEV reference instead of adapter.
Existing callers are changed to deflink.
Change-Id: I22bfe9170988f58456622ca7da321a4447b8234e
CRs-Fixed: 3462371
Move the function argument of hdd_get_pmf_bcn_protect_stats_len()
API to link info pointer to get status of beacon protected stats
of each link.
Existing references are changed to deflink.
Change-Id: If47edc82461269fe6612302dc39f21a9a9d998bd
CRs-Fixed: 3462350
To obtain the per chain rssi stats for each link in adapter,
change the hdd_wlan_fill_per_chain_rssi_stats() API to pass
link info pointer as argument instead of adapter.
Existing references are changed to deflink.
Change-Id: I7be0b69f53c87966e38846fb93a71a78fb75d63e
CRs-Fixed: 3462314
To get the per link rate details, change the function parameter
of wlan_hdd_refill_actual_rate() API to link info pointer to
fetch from hdd stats in that link.
Existing references are changed to deflink.
Change-Id: I9129638933337ca0d71d68beb983d553860dcfe1
CRs-Fixed: 3462300
To maintain the stats of each link, hdd_stats is moved
to per link data structure. To update the Tx parameters
for a specific link, change the hdd_get_max_tx_bitrate()
API function argument to take link info pointer.
Existing callers moved to deflink.
Change-Id: I095094b19e02b0f60c7f63ef25d8d684fe198327
CRs-Fixed: 3462230
The BW and operating channel will be present in each link's session.
Refactor the below two APIs to take link info as function argument
instead of adapter to get each link's data.
The following APIs are renameed and existing callers moved to deflink.
1) hdd_get_adapter_width() => hdd_get_link_info_width()
2) hdd_get_adapter_home_channel() => hdd_get_link_info_home_channel()
Change-Id: Iccf3ea693b7022fdb2e96b60f0c5b80abe846044
CRs-Fixed: 3462164
To get the connection state of the each VDEV change
function argument of hdd_is_vdev_in_conn_state() API
to link info pointer to corresponding VDEV instead of
adapter. Existing callers moved to deflink.
Change-Id: Icc49c274ce25efc081d5e89a5c7180ff38438c63
CRs-Fixed: 3461406
As VDEV is per link specific change the function argument
to link info instead of adapter. The existing callers
moved to deflink.
Change-Id: I795566b6586f4441eb33da293ed5ac0527c2894b
CRs-Fixed: 3461371
To save/retrieve link layer stats on per link, move
the ll_iface_stats member from adapter to link info.
Move the references of this field to deflink.
Change-Id: I386f11ea6aeb0e0058f3f759060582d04acd39e2
CRs-Fixed: 3452552
Introduce DP memory profile selection based on H.W
capabilities supported. Based on H.W capabilities
decide kind of memory profile required for DP operations
and select that profile for resource allocation, so that
resource/memory allocation will be done effectively.
Change-Id: Iffbea0cfd9e6b79f0c1ad9526217ba6922f6cdb6
CRs-Fixed: 3504128
Currently Kconfig is missing configs, fix this by adding
missing config values.
Change-Id: I72e3ababd35281262302a3eaa91ec573fb613984
CRs-Fixed: 3495369
Host allows scan for any channels allowed in the 2 GHz band or
channels allowed in the 5 GHz band or channels allowed in the 6 GHz
band. So the total number of frequencies allowed for the scan is
MAX_CHANNEL (NUM_CHANNELS - 1) defined in enum channel_enum.
Currently on receiving WMI_CHAN_INFO_EVENTID per channel, host
updates the channel info buffer for SIR_MAX_NUM_CHANNELS(64) only.
This result host fails to send channel info for frequencies present
at index MAX_CHANNEL - SIR_MAX_NUM_CHANNELS.
The fix is to allow the host to fill the channel info buffer till
the max allowed (MAX_CHANNEL) channel index.
Change-Id: Ic366d9fc832f06b096b934815464689d6279ec43
CRs-Fixed: 3502553
Process GET_CU_FOR_EACH_SUB_BW request from the upper
layer in case DUT is connected with a channel width
of 40 MHz and the connected frequency is in the 2 GHz
band.
Change-Id: Idc748f83af72baed946340c61d5c6a0bba1baf00
CRs-Fixed: 3506871
When link removal TBTT expires, indicate the link removal
info to upper layer by vendor event.
Change-Id: Iccc13898f76648bfa2167669c966538d95df5fe3
CRs-Fixed: 3482159
Send configured value of MLO TP preference percentage
via ini mlo_tp_preference_percentage to FW, so that FW
can consider provided value during score calculation
while roaming.
Change-Id: Iac8c82b525f9b37ff6d7eb86df369bd1efb375e3
CRs-Fixed: 3514938
Add support to boost or reduce MLO scoring with
mlo_tp_preference_percentage ini.
Change-Id: I0a1280fe259d9e65e5f0f991d456f650b9d1be69
CRs-Fixed: 3456412
Firmware sends NDP_HOST_UPDATE event as an immediate response to this
request and starts cleaning peers one by one. Once an NDP session is
ended (indicating NDP_END to peer + internal cleanup), firmware sends
NDP_END_IND to host.
Currently, host driver stops the wait timer and change state from NDP
end to disconnected upon receiving the NDP_HOST_UPDATE. But firmware
might still be in the process of NDP cleanup. As the NDP_END_ALL
context is unblocked, driver may send NAN disable request to firmware.
This may cause inconsistency in firmware state machine and firmware may
drop the ongoing NDP_END request. So, peer doesn't get the NDP_END frame
in such cases.
Unblock the NDP_END_ALL-wait call only upon last NDP_END indication to
avoid such issues. This change moves the major functionality of
NDP_HOST_UPDATE processing to last NDP_END indication. Cleanup/remove
the processing of NDP_HOST_UPDATE as it's not needed anymore.
Change-Id: I19d3e40700c1c0501b9c809820262472bf9bdba4
CRs-Fixed: 3512847
The VENDOR_ACS_RESPONSE_PENDING event flag is used
for tracking ACS request for SAP/P2P-GO modes, hence
move this flag to per link.
The references of this event flag are moved to deflink.
Change-Id: I54a3e9f592563cfe40ff68d5527d974eb84fe692
CRs-Fixed: 3452545
This event flag is used in SAP/P2P-GO modes which
will be per link.
The references of this event flag are moved to deflink.
Change-Id: Ia3dd0970ca82e6d4988b0f19dfcef9e100c064a2
CRs-Fixed: 3452540
The flag determines the state of softap bss,
hence move it to per link flags.
The references of this event are moved to deflink.
Change-Id: I1838cdf6067eb93421b424c4965258a9a497923d
CRs-Fixed: 3452220