Enable lower 6G edge channel ch2 (5935MHz) for APL2 6G regdmn
using a service bit WMI_SERVICE_ENABLE_LOWER_6G_EDGE_CH_SUPP,
which is not enabled by default.
Also, disable upper 6G edge channel (7115MHz) using another
service bit WMI_SERVICE_DISABLE_UPPER_6G_EDGE_CH_SUPP, that
is enabled by default.
Change-Id: Ia7cb7f7d3165375178adbe70adb19b8671496b6d
CRs-Fixed: 2885623
In order to support different power levels of 6G AP and client,
the channel list event from FW namely "REG_CHAN_LIST_CC_EVENTID"
is modified to add few parameters specific to 6GHZ devices.
Hence the existing event is replaced by REG_CHAN_LIST_CC_EVENT_EXT for
all 2G/5G/6G pdevs in FW. Therefore, after the service ready event, FW
sends the channel list for the configured country/regdomain via
REG_CHAN_LIST_CC_EVENT_EXT. This mandates that all host software need
to have the processing capability of REG_CHAN_LIST_CC_EVENT_EXT to bring
up the AP.
As there can be host software which has not yet implemented the
version of "REG_CHAN_LIST_CC_EVENT_EXT", backward compatibility is lost
if "ONLY REG_CHAN_LIST_CC_EVENT_EXT" is sent by FW.
Hence a 3 way handshake between host and FW is established.
1. FW advertises its capability of processing REG_CHAN_LIST_CC_EVENT_EXT
id via wmi service bit 'wmi_service_reg_cc_ext_event_support'.
2. If the host is capable of processing the "REG_CHAN_LIST_CC_EVENT_EXT"
event id (which is done based on registration of this event), host
sends the capability in WMI_INIT_CMDID setting a bit in host_service_flags.
3. Based on host capability advertised in WMI_INIT_CMDID, FW decides to
send the old event ("REG_CHAN_LIST_CC_EVENTID") or the new event
("REG_CHAN_LIST_CC_EVENT_EXT").
4. If there is no flag indicated by host to FW in WMI_INIT_CMDID, FW
by default sends the old event ("REG_CHAN_LIST_CC_EVENTID").
CRs-Fixed: 2876360
Change-Id: Ibe95f414ad9fff0e5641bcc6e60450ef9afe245b
Add support for TWT AP params not in range and IE validation failed
status code.
Presence of num_additional_twt_params is enough to extract the additional
params sent by the firmware, there is no need for extra status check.
Change-Id: I9fa6afd22aa4de1b2a5b75fa98a00f89768dd8cf
CRs-Fixed: 2890682
For some targets, FW expects WMI_REQUEST_UNIFIED_LL_GET_STA command
always over QMI irrespective of WOW state. FW will crash if this request
is sent over WMI on those targets. Currently there is no direct way for
the host to identify this requirement by FW. So FW may crash when this
WMI_REQUEST_UNIFIED_LL_GET_STA stats request is sent over WMI.
To resolve this, add service bit support for LL_GET_STA request over QMI.
With this change the INI parameter send_ll_and_get_station_stats_over_qmi
becomes obsolete and corresponding code will be removed.
Change-Id: I43f2827a0b1cae6e75f1224f452f8277d53736b2
CRs-Fixed: 2847483
FW advertises WMI_SERVICE_OCV_SUPPORT bit in service ready event if
firmware supports Operating Channel Validation feature.
Change-Id: Ida1ee9874f9cd32a684ceee728e3323306137c64
CRs-Fixed: 2880794
The host will send TPC power to FW via the new WMI cmd
WMI_VDEV_SET_TPC_POWER_CMDID going forward instead of
WMI_VDEV_PARAM_TX_PWRLIMIT to accommodate 6GHz channels.
But, to support backward compatibility for New Host+old FW
the TPC power will be sent to FW via legacy WMI cmds
WMI_VDEV_SET_PARAM_CMDID (during initial connection) or
WMI_VDEV_PARAM_TX_PWRLIMIT (power value change during RRM
req/bcn processing from connected AP) with the help of a
service bit WMI_SERVICE_EXT_TPC_REG_SUPPORT.
Change-Id: Iea1ecb62841c539c13a804ae9c475831b2d4c89c
CRs-Fixed: 2874250
Fix issue on enabling packet log.
Fix issue on logging CBF pkt in AP/STA mode.
Fix issue on setting data length 4 bytes aligned in pktlog header
, htt stats indication message header and Rx management TLV header.
Add CBF support for pktlog WMI enable command for firmware to enable
CBF receive.
Change-Id: Ib0067f32d7414be96503c4c67846c1312a59586e
Move ctrl_path_twt_stats related functions to appropriate source
and header files.
CRs-Fixed: 2871393
Change-Id: I7043259c102e5aee6cbb13260ce2bb0c53c17853
Add SAP and P2P GO d3wow feature support config to send it down
to FW during WMI INIT such that FW is aware when SAP and GO with
client connected mode d3 wow feature is enabled.
Change-Id: I04b398f71727112ce5c536bbf2bfcfd4eefe2752
CRs-Fixed: 2866604
Add a pci gen switch flag in the wmi resource config to send
to FW in the init command.
Change-Id: If3a50d80103387a8f1f77ecb43a16c7b41ce5a11
CRs-Fixed: 2865866
Firmware advertises service capability WAPI_CONCURRENCY_SUPPORTED
if it supports other security modes when WAPI is active. Get the
same from service capabilities to decide whether to accept a
new concurrent connection or not.
Change-Id: I718503e52be2dda8ebd440f5a68b496d846b6ffc
CRs-Fixed: 2858770
Since in wmi_gpio_config_cmd_fixed_param, the input
0 mean output, and 1 mean input, which is different
from host side enum gpio_direction. So add this fix
to do the right conversion.
Change-Id: Id60a9327e853440fd58a45c7c839109cf1f22c22
CRs-Fixed: 2856833
Firmware has added support for control path stats
infrastructure. Add wmi support to prepare wmi tlv buffer
and send WMI_REQUEST_CTRL_PATH_STATS_CMDID. In the response
path, add support to handle WMI_CTRL_PATH_STATS_EVENTID and
extract the tlv.
Change-Id: I930a44187af29adfda8acd90d0e41cff5fc94603
CRs-Fixed: 2856370
Using this option the user pd assert and root pd assert can
be linked together or unlinked from each other.
By default, a user pd assert leads to root pd assert.
Unlinking the user pd assert from root pd assert helps in
handling the selective radio recovery seamlessly.
Change-Id: I734805b060bf1cb11a0dc325bae5dbf6ed7db83f
Initially, Host updates the AKM only after the EAPOL
handshake. Due to this, Enterprise auth is not detected
for initial connection.
Add AKM in peer assoc command(WMI_PEER_ASSOC_COMMAND)
to the firmware. In firmware, this will help to detect
Enterprise auth as part of connection and prioritize
the WLAN connection over BT traffic accordingly.
Change-Id: I6463dacbba098c76e6c3b7f4722915797bee1a99
CRs-Fixed: 2848392
Firmware has added TWT nudge, All TWT and TWT stats support.
This feature capability is advertised by firmware in service
ready. Add support fetch and store this information.
Change-Id: Ife3f9e4fbebd5e971c512115d924535a84bf82e6
CRs-Fixed: 2854129
Add new API to handle the logic of sending the WMI command,
WMI_SET_TPC_POWER_CMDID. Create the struct to hold this new
transmit power information.
Change-Id: Ibc7c6109176577f56d149baf87022de557e84445
CRs-fixed: 2841781
Register the event handler for new WMI event,
WMI_REG_CHAN_LIST_CC_EXT_EVENTID. Extract the parameters to be used when
building the channel lists in the regulatory component. Update the reg
rule parsing function to include the new PSD flag and PSD power levels.
Change-Id: I0f5a747f98e43ac3d43b4aa1fb5958f0eac69a9d
CRs-fixed: 2843793
Fw advertise big data stats in response of host
command WMI_VDEV_GET_BIG_DATA_P2_CMDID.
Add interface change to handle BIG_DATA_P2_EVENTID.
Change-Id: I906afb71eb7f6bf95cd967a69d56fa333ecae177
CRs-Fixed: 2848445
Add CFO, agc_gain and rx start timestamp related parameters
to wmi_cfr_peer_tx_event_param and populate the same with
data from FW peer tx event.
Change-Id: I462fa56a854b18d1f9b46d1e14eea85da0d45f23
In nudge response, FW sends wake TSF value. Implement changes
to handle wake TSF values.
Change-Id: I941f1dbab3ba83bba1f0b8e03b83d1b81365c7dd
CRs-Fixed: 2847181
Add a new WMI service bit to indicate whether normal
Spectral scan is disabled.
CRs-Fixed: 2840128
Change-Id: I09314afeb5372f83b8356e06f245c83c7acbc85d
Add support to configure minimum and maximum wake duration
values, minimum and maximum wake interval values for TWT setup.
Change-Id: I69c328815be511833abce0fcd18649e136027f53
CRs-Fixed: 2827115
Add support for WMI_TWT_NUDGE_DIALOG_CMDID and
WMI_TWT_NUDGE_DIALOG_COMPLETE_EVENTID.
Change-Id: I9d4bf1061f6f08479967619ce50d2756c062f55f
CRs-Fixed: 2825138
Currently, Stats request commands are sent over qmi right from the
target suspend request is sent to FW. This is leading to a crash in
FW since it is trying to access PCI when it is in suspend state.
To address this, send stats request over QMI only after the ack is
received for the target suspend command.
Change-Id: Id7a79d52740916f66476bf911e571c0ff466c7d3
CRs-Fixed: 2838737
Introduce wmi_validate_handle() with the caller function name
embedded in it to validate the WMI handle and log incase
of error. Calling functions can avoid logging in case
wmi_validate_handle() returns -EINVAL. This reduces logging and
thereby memory foot print.
Change-Id: Ie0a6a84ffad6e5cf2da8f547c7209dc77cdf5729
CRs-Fixed: 2838960
The bcast twt functionality may need to be enabled separately
for requestor and responder roles. Enable such configuration
by looking up WMI service bit support from target:
wmi_service_twt_bcast_req_support
wmi_service_twt_bcast_resp_support
Change-Id: Ibc91173c23cf69f0d248af27d61c77bee3e8f48a
CRs-Fixed: 2828720
Add support to view station's peer RSSI value in auth and assoc request
packet by extracting rssi from probe request and passing it down to
FW in the auth request and assoc request mgmt frames.
Change-Id: I92f714ed815ab8c77f6a6b7df3363dc96f1119bc
CRs-Fixed: 2832982
Extract btm response and initial roaming stats coming
from FW through WMI_ROAM_STATS_EVENTID event as
wmi_roam_msg_info_tlv_param.
Change-Id: I9a9b768d09a45ba70066cacb4aa420a90a39a76d
Crs-Fixed: 2826323
Currently, FW diag logs, management frames and stats responses are
processed in worker context. Because of this, there is a possible
out of memory scenario when there are huge number of diag events
waiting in work queue.
To address this, process diag events in a separate worker thread and
set the limit for the number of diag events that can be queued in
work queue.
Change-Id: Ie6e5b905a3b591cf724cd6b024bec0612f9e2e0c
CRs-Fixed: 2818013
Skip wmi sequence check during SOC stop and enable after
initializing wmi handle. It is required to skip sequence check
during soc stop as the endpoint flush is preceding CE flush.
CRs-Fixed: 2813341
Change-Id: Ieb821483e9786471d033773dc2365ab456345f83