Commit Graph

1069 Commits

Author SHA1 Message Date
gaurank kathpalia
644413b274 qcacmn: Do a full scan if no candidate found
Sometimes if the user changes his location in the
connected state it may happen that the scan does not
happen and thus the AP cache channel map would not be
updated.
Now if partial scan happens due to a roaming trigger then
the candidate would not be found and thus would effect
roaming.
To avoid this set a full scan in roam invoke if the APs
are not found in the partial scan.

Change-Id: I2d2fd94760de78eaf495effc9caf8cca66c50ff6
CRs-Fixed: 2636431
2020-03-21 05:32:23 -07:00
Srinivas Dasari
069884fe62 qcacmn: cleanup NAN/NDP logging
Few NAN/NDP logs are redundant in the current logging infra.
Optimize the same and add few necessary logs.

Change-Id: I9621416f7c9b17fe62db32bea48d4de0122ce17e
CRs-Fixed: 2644420
2020-03-20 00:16:13 -07:00
Amruta Kulkarni
9b01e38405 qcacmn: Add support to handle assoc reject based on rssi
When AP rejects assoc request based on poor rssi
host will put the AP in blacklist mgr list, only when
rssi value improves by threshold value,should the
STA try to connect to AP.

Change-Id: Ie40d29cbb63f337f8560c08290300f575c0e2b72
CRs-Fixed: 2632022
2020-03-19 12:42:48 -07:00
Abhinav Kumar
3d4911dc92 qcacmn: Log enhancement for PNO scan
Enhance logs for PNO scan to remove duplicate
or unwanted prints and keep only useful logs to debug.

Change-Id: Ibe24714e925a00933911c801685528849e160480
CRs-Fixed: 2636641
2020-03-19 10:46:08 -07:00
Rhythm Patwa
78ddddb141 qcacmn: Add WMI support to enable injector frame cmd
Add corresponding WMI host param for enabling the
injector frame on the AP.

CRs-fixed: 2640751
Change-Id: I00a634375e0eafbacfd505aa39dce9c8d90804c6
2020-03-16 13:52:34 -07:00
Sumedh Baikady
c673777be4 qcacmn: Add WMI event support for dynamic Muedca
Add support for WMI event to host to process
dynamically selected Muedca values and update
the mgmt frames with the new set of values.

Extract the params and store in Muedca_param
struct from control path, to be used for
updating mgmt frames.

Change-Id: I6cc7756d1a246ff994edef195f6191d280bc5c47
2020-03-14 09:15:20 -07:00
sheenam monga
a6cb1901a5 qcacmn: Log optimization for NCHO
Currently information is printed in multiple lines that
can be represented in single line.

Change-Id: I7f53acaa4cabd1c970b06cdd82e0c462ffcdffe1
CRs-Fixed: 2617812
2020-03-05 05:38:38 -08:00
Himanshu Batra
ba2b72b351 qcacmn: Update the wmi flags for bcn rate code
In the current implementation the wmi cmd flags to enable bcn rate
code n start req are not getting updated as the flag param is passed
to the API by value and not by reference.
Update the API argumets to pass the wmi cmd flag param by reference.

Change-Id: I8bca4ce78ce68f7b0d05af871641a86bf6622607
CRs-Fixed: 2633704
2020-03-05 01:40:28 -08:00
Pankaj Singh
ab8d9337ce qcacmn: Clean up logs in Tdls path
Clean up redundant logs in tdls path.

Change-Id: Ibb47110b82ffc6ddd37442f5a058746d4350cfe3
CRs-Fixed: 2625103
2020-03-03 18:55:25 -08:00
Paul Zhang
e54fd8b367 qcacmn: enable/disable detecting interop issues ap
Per flag detect_enable to enable/disable detecting
interop issues ap function in firmware.

Change-Id: I52617e3700a3c79fc5b72c53af6d4b8db5e97879
CRs-Fixed: 2602001
2020-03-03 14:18:20 -08:00
Pragaspathi Thilagaraj
7a60a81d3a qcacmn: Use enum roam_trigger_reason for fw bitmap conversion
From upper layers the vendor specific control roam bitmap is
converted to unified enum roam_trigger reason. From this bitmap,
deriver the fw trigger reason bitmap at
convert_control_roam_trigger_reason_bitmap.

Depreciate the roam_control_trigger_reason enum.

Change-Id: I64ac273d88b696c32c5b72462454a8983774ef90
CRs-Fixed: 2631968
2020-03-03 04:02:29 -08:00
Adwait Nayak
99a4329e07 qcacmn: CFR: code clean up
Remove unnecessary inclusion of cfr_api.h
and fix the return types

Change-Id: I85fb45777e527b46ad086a3d3211cdf6019312ec
CRs-Fixed: 2609610
2020-02-27 14:52:15 -08:00
Vulupala Shashank Reddy
616976e2ce qcacmn: Add support to include ACK status and tx retry count
Extend radiotap header to append ACK status and tx retry count
for packets sent to virtual mon interface.

Change-Id: I51037ffd11dfdee49278d43643fb7861a514ee18
CRs-Fixed: 2627710
2020-02-26 22:39:17 -08:00
hqu
e6d0730c6b qcacmn: Rename is_target_pdev_id to is_host_pdev_id
It's more suitable that rename is_target_pdev_id to is_host_pdev_id.

Change-Id: I5ec8971ac564e1a26f1b544f9bc2cc08e29f949d
CRs-Fixed: 2627802
2020-02-26 11:40:32 -08:00
Abhinav Kumar
edda5aa847 qcacmn: Send WMI_ROAM_OFFLOAD_FLAG_SAE_SAME_PMKID flag to FW
Send new flag WMI_ROAM_OFFLOAD_FLAG_SAE_SAME_PMKID through
11i offload param to indicate fw whether WLAN_SAE_SINGLE_PMK
feature is enable or not.

If flag is set, fw should use single PMKID for SAE roaming
between VSIE AP(s), else fw should complete roaming by
doing full SAE authentication.

Change-Id: I9c88772c9571230c38e2cfa41c8a0c79663572ab
CRs-Fixed: 2616046
2020-02-26 06:42:37 -08:00
Ananya Barat
cbee232e21 qcacmn: Do not allocate memory of size zero
In a few scenarios, the number of reg rules can be 0.  For example,
for  a  2Ghz-only radio  there are no 5Ghz reg rules.  In such cases,
if we try to allocate memory (0 bytes) the allocation function prints
an error message. Also, the allocation is not required. Therefore, avoid
the allocation when the number of rules is zero.

Change-Id: Ic9caf578541970e9cf12cdde181f23762f137db8
CRs-Fixed: 2622109
2020-02-26 04:54:08 -08:00
Abhinav Kumar
0cb7296478 qcacmn: Optimize logs for roaming and tdls
Optimize logs for roaming and tdls

Change-Id: I55d3f1242c240064fe34dbfe6552ee5bae6522f6
CRs-Fixed: 2627699
2020-02-25 15:32:37 -08:00
Linux Build Service Account
be01c0d348 Merge "qcacmn: Add corresponding host wmi for roam reason vsie vdev param" 2020-02-24 08:43:32 -08:00
Dundi Raviteja
459060642c qcacmn: Add wmi interface changes to extract mgmt offload event
Add wmi interface changes to extract mgmt offload event params
when WLAN_FEATURE_PKT_CAPTURE is enabled.

Change-Id: Icacd65a99953fdc77b2c6823e9d26baaed3737c8
CRs-Fixed: 2619316
2020-02-20 21:36:26 -08:00
gaurank kathpalia
b73ede30b8 qcacmn: Add support for NAN msg in kmsg
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: I7f67b67153904b7efe8a708e3f93d069e399395c
CRs-Fixed: 2618433
2020-02-20 01:09:04 -08:00
Ashish Kumar Dhanotiya
07810f61ce qcacmn: Reduce logging while printing channel list
As part of logging optimization, reduce logging while
printing channel lists.

Change-Id: I0241dc4dbaa3879bbe354a0e4750a0d559d1ba40
CRs-Fixed: 2624517
2020-02-19 19:26:27 -08:00
Gurumoorthi Gnanasambandhan
c4880c3a0b qcacmn: WMI tlv support to profile commands
WMI_WLAN_PROFILE commands support for tlv path.
Add WMI profile enable and trigger commands in tlv path

Change-Id: I10f867b181b559b82c097d6a61236f2145549238
2020-02-19 10:08:40 -08:00
Sourav Mohapatra
9fae7f7537 qcacmn: Clean up logs in STATS path
Clean up logs in STATS request and response path.

Change-Id: I45135233eb4c10793dc9c62f28d91c49183a0a09
CRs-Fixed: 2618310
2020-02-19 04:58:56 -08:00
sheenam monga
b0a5a85ebb qcacmn: Add corresponding host wmi for roam reason vsie vdev param
Add host wmi vdev param 'enable_disable_roam_reason_vsie' for the
corresponding FW wmi WMI_VDEV_PARAM_ENABLE_DISABLE_ROAM_REASON_VSIE

Change-Id: I64d7566641888107f26ccdf87efc38132bf7be05
CRs-Fixed: 2624734
2020-02-19 13:46:48 +05:30
Linux Build Service Account
67ef957780 Merge "qcacmn: Rename cmd ring to cmd_credit ring" 2020-02-15 11:08:15 -08:00
Shashikala Prabhu
3aa150756b qcacmn: Use restricted 80+80 MHz service bit instead of 165 MHz
For restricted 80+80 MHz FR, target team initially added
wmi_service_bw_165mhz_support to indicate the target is capable of
supporting restricted 80+80 MHz.
Later, they have added wmi_service_bw_restricted_80p80_support to indicate
the same. Therefore rename wmi_service_bw_165mhz_support as
wmi_service_bw_restricted_80p80_support.

Change-Id: I12229b5d35911d4c34e63902c09592187d902bed
CRs-Fixed: 2621249
2020-02-14 10:46:07 -08:00
Abhishek Ambure
122adb67b3 qcacmn: Add support to get roam scan channel list from fw
Firmware advertises WMI_SERVICE_ROAM_SCAN_CHANNEL_LIST_TO_HOST_SUPPORT
at the time of initialization, that means host can querry for roam scan
channels list to firmware.

Host driver sends WMI_ROAM_GET_SCAN_CHANNEL_LIST_CMDID to firmware to
querry roam scan channels list and firmware responds with an event
WMI_ROAM_SCAN_CHANNEL_LIST_EVENTID.

Change-Id: I419a0206d7b06b6186d0c333c951bca5206f342f
CRs-Fixed: 2620607
2020-02-14 00:59:21 -08:00
Linux Build Service Account
8f7b57c903 Merge "qcacmn: Add dcs component" 2020-02-13 07:38:30 -08:00
Linux Build Service Account
71dccc8bc2 Merge "qcacmn: Set DBS scan if ndp peers are active" 2020-02-13 04:38:15 -08:00
hqu
fed4bfb049 qcacmn: Add dcs component
Add dcs component to implement interference detection algorithm
and dynamic channel selection frequency control.

Change-Id: Ia201d77e77feb9de3aff03d6e389d4891dde118e
CRs-Fixed: 2594837
2020-02-13 04:12:30 -08:00
nwzhao
b666fe52b7 qcacmn: DebugFS Improvements for WMI logs
1)Configurable number of bytes to log
2)Add support to record only specific WMI command/events
  Separate buffers are added to save user specified WMI commands and events
    1.To record specific wmi cmd, e.g. WMI_VDEV_START_REQUEST_CMDID
	echo 0x5003 > /sys/kernel/debug/WMI_SOC0_PDEV0/filtered_wmi_cmds
    2.To record specific wmi evt, e.g. WMI_MGMT_RX_EVENTID
	echo 0x7001 > /sys/kernel/debug/WMI_SOC0_PDEV0/filtered_wmi_evts
  Results of recorded specific WMI command/events:
    1. WMI commands, e.g.:
	cat /sys/kernel/debug/WMI_SOC0_PDEV0/wmi_filtered_command_log
    2. WMI events, e.g.:
	cat /sys/kernel/debug/WMI_SOC0_PDEV0/wmi_filtered_event_log

CRs-Fixed: 2597854
Change-Id: I1e90a13ac0717f1f37ba998fb1d06a990d3f4fa2
2020-02-12 15:51:03 -08:00
sheenam monga
ccb34ac40a qcacmn: Remove new line from trace
Currently while printing commnad information new
line is added which needs to be removed.

Change-Id: I639508a9a14db173f8d61d7a55c4ec99db4f1a1f
CRs-Fixed: 2618863
2020-02-11 23:04:58 -08:00
sheenam monga
428b9654bc qcacmn: Log optimization for Roam Invoke
Currently there are unnecessary/duplicate logging. Identify and
reduce those logs that are not necessary.

Change-Id: If47a4fc0762a7a11666771e76a56d4fa1013647b
CRs-Fixed: 2615419
2020-02-08 20:17:53 -08:00
Pragaspathi Thilagaraj
50661d5d8e qcacmn: Rename candidate_min_roam_score to fix compilation error
The candidate_min_roam_score_delta in struct
wmi_roam_cnd_scoring_param at the interface definition and this causes
compilation issues with older host.

Rename candidate_min_roam_score to fix compilation error.

Change-Id: Ie214b386ef4c14be2cdcaec9be0d8b6c7f1e7f33
CRs-Fixed: 2617981
2020-02-08 12:01:07 -08:00
Surabhi Vishnoi
d6e10c598e qcacmn: Add function to extract the events for FTM TIME SYNC feature
This patch adds the function to extract and parse the wmi events
WMI_VDEV_AUDIO_SYNC_START_STOP_EVENTID and
WMI_VDEV_AUDIO_SYNC_Q_MASTER_SLAVE_OFFSET_EVENTID. These events are
required for ftm time sync feature.

Change-Id: Ib17da82b7a8abfcff5d18125a0ba0e5249d6bf54
CRs-Fixed: 2615452
2020-02-08 00:48:40 -08:00
Shashikala Prabhu
29aca291c5 qcacmn: Add WMI support for native 160MHZ
A service bit is added to indicate Firmware supports sending NSS ratio
information to Host and Host receives the NSS ratio information from
Firmware as part of service ready ext event. Save this service bit in
soc's extcap feature bit. Extract the NSS ratio info from service ready
ext event and save the results in wlan_psoc_host_mac_phy_caps structure
to calculate NSS value.

Change-Id: I8fbee48d872b0724bbb629ad38b3c959736a3c39
CRs-Fixed: 2612959
2020-02-07 20:06:29 -08:00
Vevek Venkatesan
f6c3329e23 qcacmn: add support to send dscp-to-up map to FW
Add support to send DSCP-to-UP map table values to
FW over WMI cmd to update its corresponding map table.

Change-Id: I92c1464881282ead00714d0b115cffd34dc9ba1f
CRs-Fixed: 2617045
2020-02-06 22:45:47 -08:00
Abhishek Ambure
188721c9ac qcacmn: Add support to send candidate min roam score delta in firmware
During CU and low rssi based roam triggers, consider AP as roam candidate
only if its roam score is better than connected AP score by at least
candidate min roam score delta.

Hence, driver adds support to set candidate min roam score delta in
firmware.

Change-Id: I98d2c4ed5599e5d6d52941c46a236e0e5ccd8ba8
CRs-Fixed: 2614118
2020-02-06 03:25:57 -08:00
Abhishek Singh
daaeeb218a qcacmn: Optimize logs in scan path
Remove redundant logs and optimize the logs in scan path.

Change-Id: I59c59db012f5e9526752d45303e44f2a27f91ec6
CRs-Fixed: 2612629
2020-02-03 23:07:32 -08:00
Surabhi Vishnoi
2339b27eef qcacmn: Add wmi service for wlan time sync ftm feature
Add firmware service capability for wlan time sync feature.

CRs-Fixed: 2610094
Change-Id: I7ae0e004ef5dae37d10af3b844199008ab41141a
2020-02-03 19:47:34 -08:00
Debasis Das
f2edacfcc0 qcacmn: Optimize vdev host-fw handshake
Send bcn_tx_rate as a start parameter.

Change-Id: I821e0a936dea2fb3be4edbfb67a7ffa07919bf97
2020-02-01 03:16:03 -08:00
Linux Build Service Account
2a5e76f0c6 Merge "qcacmn: Add firmware service support" 2020-01-31 15:35:41 -08:00
Sandeep Puligilla
c4b7f66569 qcacmn: Add firmware service support
Firmware advertises service capability bit
WMI_SERVICE_PEER_DELETE_NO_PEER_FLUSH_TIDS_CMD
when peer delete command takes care of flush
all tids functionality.

If this service bit is set advertised by FW
then host does not need to send the flush tid
command before sending the peer delete command.

Change-Id: Ic6632772eeebc7f1494f1dd5e9d533b2bc22e533
CRs-Fixed: 2609962
2020-01-31 14:35:32 -08:00
Linux Build Service Account
f91621de73 Merge "qcacmn: Send val of separate iface support for NAN INI to Fw" 2020-01-31 05:37:07 -08:00
Abhinav Kumar
b59458c284 qcacmn: Send val of separate iface support for NAN INI to Fw
Update value of new ini for separate iface support for NAN
"nan_separate_iface_support" to fw through a command
WMI_INIT_CMDID.

Change-Id: I55830e0d16d86ee5a0bfa7d3e44c6309c0d3d54b
CRs-Fixed: 2612010
2020-01-31 00:57:35 -08:00
Surabhi Vishnoi
61df09450e qcacmn: Add wmi interface changes for wlan time sync eventid
Add wmi event id's for ftm based wlan time sync feature.

CRs-Fixed: 2610092
Change-Id: Ifd7b10bbbe2b4c3f954233da55f318bef99fa13a
2020-01-30 23:23:33 -08:00
Linux Build Service Account
9468889cdf Merge "qcacmn: Handle roam stats event with neighbor report tlv alone" 2020-01-30 21:05:43 -08:00
Pragaspathi Thilagaraj
778e4b7163 qcacmn: Handle roam stats event with neighbor report tlv alone
Currently, the driver rejects the roam stats event if any of the
roam trigger or roam scan or roam results tlv is not present.
Now the firmware will send neighbor report immediately after the
neighbor report response is received from AP instead of buffering
it as done before.

So do not parse the roam trigger, roam scan, roam result tlv if
the tlv is not present. Add new flag in the tlv parsing structure
if the TLV is not present.

Change-Id: I366d8853f7f45dcdac6d4aa5c3a8a12a8b602a4f
CRs-Fixed: 2610377
2020-01-30 19:39:09 -08:00
Pankaj Singh
a973835c45 qcacmn: Add support for WLAN thermal mitigation
As part of new requirement WLAN subsystem needs to perform thermal
mitigation action as per the thermal state of the device. The
wifi hal sends vendor command QCA_NL80211_VENDOR_SUBCMD_THERMAL_CMD
with the thermal level parameter and wlan host performs the required
appropriate action. wlan host driver maps the thermal level to
corresponding duty cycle off percent value and duty cycle value,
send WMI_THERM_THROT_SET_CONF_CMDID cmd to FW.

Make changes to perform vendor command handling, mapping thermal level
to duty cycle value and communicating the thermal information to FW.

Change-Id: I5b455ae6483f3d5bf2fe708f40c32a55eb8b9bdb
CRs-Fixed: 2610404
2020-01-30 02:08:18 -08:00
Mainak Sen
394483b4a4 qcacmn: Add wmi config for AST flow override
Add wmi configuration to send AST flow override
config to wlan fw during init

Change-Id: Ia2915b40273bce25ab2cb48fdf34a618991c44bc
2020-01-27 17:37:25 -08:00