Handle error condition of vdev not found (Logical delete
state), and scan req memory not allocated to prevent mem
leak for SAP ACS channel list.
Change-Id: I0ab00c0119f80299cc8d93236839e42c647b939f
CRs-Fixed: 2547058
As a part of 802.11ax amendment, 6GHz band operation is added.
Since the 6 GHz channel numbers are overlapping with existing 2.4GHz
and 5GHz channel numbers, use frequency to identify unique channel
operation instead of channel number. Channel frequency is unique across
bands.
As part of above requirement add logic to process rx mgmt
packets based on the frequencies instead of channel numbers.
Change-Id: Ib063070738ecdb4f83379eafe50629778a490aae
CRs-fixed: 2522693
Currently, the SAP peers are not cleared after an SSR in shutdown path
inside hdd_reset_all_adapters. This can lead to mem leak in the case
the device undergoes SSR with connected SAP clients.
To prevent this memleak, rectify the existing check to include SAP
mode also while cleaning up the registered peers.
Change-Id: I8faf54d420cd9198e257a3d93bbf1b37da2f3eb8
CRs-Fixed: 2546805
In WPA3 roam hybrid model, the SAE exchange/4-way handshake is
offloaded to the wpa_supplicant. After roam candidate selection,
firmware will send WMI_ROAM_PREAUTH_START_EVENTID to send SAE
authentication frame with the selected candidate. If the host
is in suspended state, then SAE preauthentication could fail.
So wakeup the host when WMI_ROAM_PREAUTH_START_EVENTID event is
received to carry out the SAE authentication with the provided
candidate
Change-Id: I7a89234e90e7fccef58ec3822dc0cda3740bad20
CRs-Fixed: 2512871
Invalid peer keeps sending rx ind which triggers sending of
deauth mgmt frame continiously.
Fix is to add flow control in wma_rx_invalid_peer_ind()
to limit per peer deauth mgmt frame to one.
Change-Id: Icfbcb9452ee9890a26945b3cdd0c0ab07649367a
CRs-Fixed: 2538222
Currently if there are 3 connections in MCC on same
MAC, FW asserts.
If there are several bssid for same ssid and channel id from wpa
supplicant is 0, driver will sort candidate AP and try one by
one, vdev start channel isn't decided until candidate is
selected, need do concurrency allow check at that time, or lead
to 3 connections on the same MAC.
STA+STA MCC on same MAC has no benefit, total throughput is even
lower than single STA for channel switch frequently on same MAC.
so add check to disallow STA+STA MCC.
Change-Id: Id286096ea156915432807e42983c68cc83a8b42e
CRs-Fixed: 2545411
The revert Change-Id: I1f3819fa093766abba87e5dc6dc44e6d2188740b
Inlucde the ol_rx_reorder.c for LL solution to avoid NULL pointer access
when handling the fragmentation frames.
Change-Id: I5182693437b00d4c8a932beb59fd03adea5ee8a1
CRs-Fixed: 2546353
Currently the MCS9 rates are not populated correctly in the host stored
MCS tables. The current rates entered are (1560, 1733) which is incorrect.
Since MCS9 is not defined in the spec but rather an internal
implementation, rectify the rates by confirmation from firmware team.
The new rates entered are (1730, 1920)
Change-Id: Idebc3afae8b1f251ea843b6578170e74f7152629
CRs-Fixed: 2517704
Advertise the Rx AMSDU in AMPDU support in addba response only
for 11ax connection when the connection is in 2.4G.
Change-Id: I3275f472503bc420b906f947b661490c3a52b670
CRs-Fixed: 2538118
The function wma_wake_event_piggybacked gets the pointer to pdev object
by calling cds_get_context with the respective module ID. This pdev
pointer is then passed on down the stack to CDP APIs where there are no
explicit NULL check to validate the same. In the case the pdev is NULL,
this can go on to cause a NULL pointer dereference.
Add a validation check on the PDEV pointer to avoid this.
Change-Id: Ifecd6853445c6df5e16e6310beb2bf7cbc6997a0
CRs-Fixed: 2524604
If supplicant disabled roaming, driver does not send RSO cmd to
fw. This causes roam invoke to fail in FW since RSO start never
happened at least once to configure roaming engine in FW.
So when supplicant disabled roaming on a vdev, send RSO start on
the vdev and then follow it with RSO stop command.
So when supplicant disabled roaming, disable the firmware
roam scans alone and allow roam invoke.
Change-Id: Ic3def72c6b60c42269d99e6db30cf3bfd1988d70
CRs-Fixed: 2543865
In function hdd_association_completion_handler, there are couple of
large stack allocated arrays defined. This leads to issues of stack
overflow in cases when the stack across the call stack exceeds limit.
Dynamically allocate and deallocate the variables to ensure that they
take no space in the stack.
Change-Id: Ia077e44d7458f160581e3e75564a77d25d20311a
CRs-Fixed: 2515106
cdp_fc_get_tx_resource API is being called without passing
pdev handle, which mis-matches the prototype. Adding a fix
to include right arguments to passed, also removing static
from function ol_txrx_get_vdev_by_peer_addr to expose scope
outside the file, to fix compile errors.
Change-Id: I8089aa5df3a127b85236e69f8a84de7ebd09ec3f
CRs-Fixed: 2545857
Currently, Host does not update value of max_num_probes and
roam_scan_home_away_time as per default value of INI. This
could leads to only one probe request being sent out during
roam scans which might reduce probability of finding candidates
on a particular channel.
Fix is to update value of max_num_probes and
roam_scan_home_away_time as per INI.
Change-Id: I2aaa302cec840967443dfbfb7ea93f2b5f2380cb
CRs-Fixed: 2545070
Add action_oui ini gActionOUIDisableAggressiveEDCA to identify peers for
which aggressive EDCA configuration causes some IOT issues.
Change-Id: Ifea0c224cef2378727c9f78d8b571ea9c57bb662
CRs-Fixed: 2507191
To support 6Ghz channel, update channel number of struct
sap_StartBssCompleteEvent_s, hdd_ap_ctx and sap_ch_selected_s.
Change-Id: I19e6d7d03072135abed25e077e8573b5326ddba8
CRs-Fixed: 2519308
For ROME SAP connection phase, we should post the
eWNI_SME_ASSOC_IND_UPPER_LAYER to the queue after
finish sending out the association response frame
for other thread to handle it, otherwise using sme
callback handler in the irq thread will make it has
QDF ASSERT issue in the qdf_mutex_acquire. And the
call sequence that cause the assert like this:
__do_softirq -> ce_engine_service_reg ->
htc_rx_completion_handler -> htt_t2h_msg_handler
-> ol_tx_single_completion_handler ->
ol_tx_desc_frame_free_nonstd ->
tgt_mgmt_txrx_tx_completion_handler ->
lim_assoc_rsp_tx_complete -> sme_process_msg ->
qdf_mutex_acquire.
Meanwhile, lim_assoc_ind will be free in the
lim_assoc_rsp_tx_complete, but it still need to
be used for sme_assoc_ind->assocReqPtr in the
lim_fill_sme_assoc_ind_params, which cause the
assoc req pass to hostapd should be NULL, fix
such issue.
Change-Id: I390224ba64ea6cd963630de5b360e7b5e74a4d10
CRs-Fixed: 2542880
Use wlan_reg_set_channel_params_for_freq to update SAP channel
parameters. The "freq" version API can handle 6GHz channel properly.
Change-Id: I519de47d4ec1fa1351b120f2faa9f23de1064493
CRs-Fixed: 2536568
Normalize the weights of the frequencies for ACS scan
if the user has changed them in the ini.
This is done as legacy devices wont be able to scan
the newly added 6ghz frequencies, and thus wont
be able to associate with the SAP if it starts
on 6ghz channels.
Change-Id: I2dd2f706c248f5339bde06963540d0874d08b847
CRs-Fixed: 2543007
Connect and disconnect info logs doesn't have vdev related info
and thus it become difficult to know for which interface the
req is received from logs in STA+STA case.
Change-Id: I8a8e83e1ee82614c06d736542e9be5f93308a6a1
CRs-Fixed: 2545444
Driver will set 11ax mode to legacy phymode currently, so it
will report no HT capability to hostapd, it's wrong.
11ax mode can support HT capability, fix is to set 11ax phymode
to non legacy.
Change-Id: Id8dce7eba9f5d986c57242242a7376d19e98eb3f
CRs-Fixed: 2503202
enum wlan_phymode is the enum to store the phymode in host
and thus replace WLAN_PHY_MODE with enum wlan_phymode
and add the corresponding change in the code to use
enum wlan_phymode.
Change-Id: I6c7990255f193eb3afdeeb278d3cc159ef8503b1
CRs-Fixed: 2544822
SDX55 defined both MDM_PLATFORM and FEATURE_WLAN_DP_RX_THREADS,
and this is causing redefined issue.
Change-Id: I1427be477dd3832b98332c9edaa4063b8c573ae4
CRs-Fixed: 2542264
Currently we use PM qos apis to set masks and latency values at
PLD_BUS_WIDTH_LOW throughput level. As per experiments and power
measurements, this can also be done at the PLD_BUS_WIDTH_MEDIUM level
without any throughput impact and can help CPU enter C4 states at this
level.
Hence, donot use pm-qos APIs at less than high throughput levels.
Change-Id: I8bebb3b593b9d26aa6764b16b218814979bcd322
CRs-Fixed: 2507386
Modem block/unblock shutdown callbacks are added to synchronize
modem shutdown when the driver is in deinit sequence.
With new changes everything is synchronized via the platform driver,
So remove the the block/unblock shutdown callback's.
Change-Id: If66eed5b51bbce64f024edf49e37a21b222a6a4c
CRs-Fixed: 2489733
Extract and add Advertisement Protocol IE from hostapd.
MBO AP needs to report the ANQP supported in Advertisement
Protocol IE.
Change-Id: I5d7bb650de7626f568c1868775a665eff2305647
CRs-Fixed: 2530870
Currently in hdd_adapter, the variable cache_sta_info is an array of
hdd_station_info structured indexed by the sta_id. As sta_id is no
longer used, this array based implementation becomes unnecessary.
Move the sta_info implementation to a hash table implementation.
Change-Id: Iac11ecd2ae4a454649235cf8763e9a5f80e7eb38
CRs-Fixed: 2515316
Currently in hdd_adapter, the variable sta_info is an array of
hdd_station_info structured indexed by the sta_id. As sta_id is no
longer used this array based implementation becomes unnecessary.
Move the sta_info implementation to a hash table implementation.
Change-Id: I7d6fe04b7e0ab22615d431de9a10a4ad38ed65ba
CRs-Fixed: 2514280
After SSR the vdev id in P2P GO adapter can become invalid.
So return success status in stop_ap to kernel for proper
cleanup.
Change-Id: I20aa0873e6aa199749c1cbabd098a581500bebce
CRs-Fixed: 2527535
Due to channel number duplication with introduction of 6Ghz band
support update hdd channel validation function to check channel
frequency instead of channel number. Also remove channel references
in start_bss path.
Change-Id: I5f37524b71a2b224ca79b0f67f871e50523e16be
CRs-fixed: 2545103
The host driver updates the group management cipher suite to the
firmware as part of RSO commands over the WMI_AP_PROFILE
command. The group management cipher suite is updated from the
group cipher suite which is not correct. As part of join success
update the group management cipher suite from roam_profile
in the roam serialization command in
csr_roam_save_connected_information().
Update the group management cipher suite from the roam profile
to the roam_request and copy it to the WMI_AP_PROFILE command
params in wma.
Change-Id: Ic8dca6938c487396e0202202efbb44ff214ecdcc
CRs-Fixed: 2542225
Driver uses old scan filter and old scan filter is converted
into new scan filter while sending scan command.
TO avoid this conversion use and fill new scan filter whenever
required.
Change-Id: Ib7e1c571c042a36f0b5864033ba640e8df1cd2f1
CRs-Fixed: 2544677
Get channel power information by center_freq from "defaultPowerTable"
list instead of chan_num because duplicated channel number exists if
enable 6GHz band.
Change-Id: I88c8ae2b14e1b2c48410fdf7bff5bba96b73f32d
CRs-Fixed: 2531046
Currently the interrupts are enabled before the datapath
srngs are initialized. This causes an invalid access of srngs
when any interrupt is received before srngs initialization,
which can happen during operation mode switch, eg during switch
from monitor mode to mission mode.
To avoid this invalid access of srngs, enable the interrupts
only after the srngs are initialized.
CRs-Fixed: 2486050
Change-Id: I9e436f30e2f6b67e02db3ed32231570ab51d5f7b
struct csr_roam_session is used in LIM in func
lim_get_session_by_macaddr to get if SA is same as one of the vdev.
struct csr_roam_session should not be used by LIM, so raise change
to used vdev obj manager to find a vdev with same MAC address.
Change-Id: I13bf65a65023a2a8dc82013e2668a075883c111a
CRs-Fixed: 2544552
HDD indicate mgmt frame API is called from scheduler context to send mgmt
frames to user which can happen in parallel to del virtual interface which
can lead to race conditions and stale netdev pointer usage and hence add
OS_IF DSC vdev op protection to indicate mgmt frame API such that when
management frames are getting indicated to user space del virtual interface
transaction is synchronized.
Change-Id: I620225f7a0a46efa6da6d615e3014a8f4f5e43cf
CRs-Fixed: 2543244
IBSS code is protected by "QCA_IBSS_SUPPORT" feature flag, at SME
layer CSR API checks the connection state. For IBSS disable, these
SME APIs to check connection state must return flase.
Change-Id: I1bcd20a07d484cea2769c5b3171d805c8b82b308
CRs-Fixed: 2542724
HDD open can come in the middle of idle shutdown and if the vdev start
wait API is not in use, HDD open will fail which will result into WIFI
on failure. Hence, use dsc vdev start wait api for HDD open.
Change-Id: I398879d9669d0a9124e844fc325065299a1d7259
CRs-Fixed: 2540661
Fw down indication is received after disconnection
is triggered on STA vdev. After peer delete command
is sent to fw, peer_detach is invoked and peer unmap
timer is started. Since fw is down, peer unmap is
not sent by firmware. Shutdown is not invoked by
pld within the peer unmap timeout value which results
in assert in peer_unmap_timer_handler even though
driver is in recovery state.
Fix is remove the assert in peer_unmap_timer_handler
and trigger recovery which already has the necessary
checks.
Change-Id: Iffd83305d2c1eaec836fcea53d406cada5bfe095
CRs-Fixed: 2542886
Add new runtime pm wakelock for user such that runtime PM can be
disabled for certain scenarios.
Change-Id: Ibaa64f351393b63559b55827f77cdf126e7038b3
CRs-Fixed: 2534535
Based on the ini "ignore_fw_reg_offload_ind" ignore regulatory
offload indicatin from fw.
Change-Id: I6e20f2100eeac8e93baa5c5d3f3d1c8b33356aed
CRs-Fixed: 2532989
In csr_roam_connect, driver check and move to DBS before the connect
is requested if required and once connection is completed, it check
if SMM can be achieved depending on the channel it connected to or
if it failed to connect.
Thus there is no need to check before connection is completed
if SMM is required as driver is not aware of the channel in which
STA will end up connected.
Thus remove the duplicate logic to move to SMM from STA connect.
Change-Id: I0d069fba3c47dec78601a0f3529fde381d4936ed
CRs-Fixed: 2543601
It has "ISO C90 forbids mixed declarations and code"
build issue on the LE.UM.4.1.1, so fix it.
Change-Id: I0bc918f55e9a7d3c540a455ed292977c15300456
CRs-Fixed: 2542657
If proper queue_type is not added the serialization command is not
removed from the queue. Thus the connect command is not removed
from pending queue on receiving the disconnect command.
This lead to HDD and SME out of sync with SME in connected state
and HDD in disconnected state. Thus during stop adapter HDD
doesn't try to disconnect the connected session.
Thus add queue_type as active or pending while calling cancel cmd.
Change-Id: I4af2c63a895065aefbb76609808a972354460cb2
CRs-Fixed: 2543246
In a connect request if there are multiple BSSID, opportunistic
timer is started for each failed BSSID. If connection to a BSSID
takes more than opportunistic time, driver may end up starting
opportunistic timer and queueing SMM request multiple times.
To avoid this unnecessary multiple start of opportunistic timer,
start it only once after final connect failure.
Change-Id: I351cb631fe832239e5f5539f00c306f90192880b
CRs-Fixed: 2543631
PTK and GTK are installed to firmware and installation status
of each key is maintained in driver. Data transmission is allowed
only if both the keys are installed.
Currently these flags are getting cleared after installing both
ptk and gtk to firmware.
But if one key is installed and the other key is not installed
due to some reason(e.g. connection abort), corresponding status
is not cleared and being referred in the next connection attempt.
This is causing the data transmission to happen from driver to
firmware after installing GTK before installing PTK, as the
ptk_installed from previous connection is still set. This is
not allowed by firmware and issues an assertion.
PTK and GTK are invalid once the station disconnects. So reset
the flags as part of connection info cleanup.
Reset the flags before issuing connection also to avoid usage
of previous connect status or garbage values.
Change-Id: I8fa7bd0a15eab2fed80f050e77df3554d0f1b73a
CRs-Fixed: 2542785
Few phymode are missing from enum wlan_phymode and many are not
valid phymode, e.g for 5ghz 40minus and 40plus are not valid.
So add the missing enums and remove invalid enums from enum
wlan_phymode.
Change-Id: I56710c6a04ac365a54e2c4ba138e0e887fbdd960
CRs-Fixed: 2531859
In SAP mode, if he is enabled, the BA buffer size will be
set to 256 in addba response, some STAs can not handle it
properly, which may result in data transmition failure on
these STAs. Then they can not send out DHCP request and so
failed to obtain IP address.
To fix this issue, check the he capability of both STA and
the session, set the buffer size to 256 only when both are
he capable.
Change-Id: If55619d598bb9603cf7ce3bc116d80cf718676d6
CRs-Fixed: 2515183
Consider STA+STA case where roaming is enabled on one sta.
There is a case where STA1 is roaming to a bssid and there is a
connect request for same bssid on STA2. Here the firwmare would
have already created peer for STA1 peer and STA2 peer creation
would have failed. But at host, since there is no response for
peer creation, the peer would be created for STA2 vdev.
When roam synch indication is received, then peer create fails
at host for the roaming vdev due to duplicate peer detection
logic. Still roam synch confirm is sent to the firmware.
When disconnection is received for STA1, then del bss is sent
for this vdev and firmware asserts as the peer was not created
for this STA2 vdev.
Defer the connect request processing and return failure when
roaming is in progress.
Change-Id: I0892dc567cd17e335b1de3cd5260050f2c1e6b44
CRs-Fixed: 2538389
The vdev subtype is needed to know if the operating
mode of a particular vdev is P2P or not.
Hence add the vdev subtype information in the
vdev handle.
CRs-Fixed: 2498715
Change-Id: Ia9b86bad389825474a0506804e07b7af555d36cb
In case wmi_service_peer_assoc_conf is not enabled the add bss resp
return failure and thus the STA connection fails.
To fix this send proper status to add bss resp in case
wmi_service_peer_assoc_conf is not enabled.
Change-Id: I0aa1de8cfb739e31fc89265766f67fea070d3b17
CRs-Fixed: 2538753
Change the very high bandwidth threshold to 9000 packets. Thus if the
packet length is 1500 bytes and for 100ms bandwidth interval this is
about 1030Mbps. This makes the high bandwidth range 240Mbps - 1030Mbps.
Change-Id: Ia9d5f9e3547148c5dc378a728514c4020649944e
CRs-Fixed: 2527623
Do not enable power save if the user configures the power save to
be disabled. And set the user power save configuration enabled
by default.
Change-Id: I7be3263888ddbe8302d941444b9751df73a4b165
CRs-Fixed: 2533757
Disable the current TWT session and re-enable the TWT if the
current session in FW trigger mode before changing the TWT mode
to host trigger mode.
Change-Id: I7de2126605685c85a240d38356d439cb4be8cce1
CRs-Fixed: 2539353
Currently during sap virtual interface delete, if FW is down then
sap stop bss fails. If sap stop bss fails there won’t be any IPA
WLAN events and ipa ctx will have the IPA interface. But adapter
and corresponding netdev are freed up for delete virtual interace.
As part of FW down system recovery takes place. So while doing ipa
SSR cleanup, ipa ctx ipa interfaces are freed and here during interface
cleanup host accesses the already freed net dev address. So clean up
wlan ipa sap interface in case of stop bss failure.
Change-Id: Ie1ce376e6811eb3cd55dd8dc7b921f82451cd892
CRs-Fixed: 2539863
6GHz channels that are PSC(preferred scanning channels) need to be
marked. Same information needs to be conveyed to firmware as well.
Change-Id: Ib4a59ae7859896704a06f6622f8f742e060b6ca1
CRs-Fixed: 2526783
Enable pktlog when bandwidth is
less than PLD_BUS_WIDTH_MEDIUM and
disable pktlog when bandwidth is
greater than PLD_BUS_WIDTH_HIGH.
Change-Id: I9ee979b08779397bc6d24aca8e241fd64eb93029
CRs-Fixed: 2525901
System suspend can happen very fast(in order of milliseconds) and if system
suspend is disabled by setting gDisableWow=1 in cfg ini file then excessive
console logging from wifi driver can lead to watchdog bark and hence rate
limit the system suspend not supported console logging.
Change-Id: I16a4a7a3d0b64fc404d881469dadb4cab38ef149
CRs-Fixed: 2540524
HDD runtime pm context is only created when fw wmi ready event is received.
Only deinit when fw wmi ready event is received.
Change-Id: I4dda8a95d8a8089693dcbc4dccefbd2079f558f1
CRs-Fixed: 2540580
During runtime suspend there is no need to run the periodic bus
bandwidth timer as there is no data traffic.
Change-Id: I7b53b773e5f9fa2c803e8f4dbb186a30d1dc696b
CRs-Fixed: 2504215
Identify TCP vs UDP Tx traffic to vote differently for system resource.
Accordingly vote for gold cores only for UDP Tx high TPUT traffic.
Change-Id: I27190b92b1be6ebe1574a9941a5de8c43bb59a0b
CRs-Fixed: 2499147
If 6 GHZ channel are enabled; then frequency range needs to be different.
Add new frequency limit if 6 GHz channels are enabled.
Change-Id: Ic8133468d3d6c6c7f7da2e6efb8662d930f69872
CRs-Fixed: 2520198
Fix a possible null pointer dereference in wlan_hdd_cfg80211_ll_stats_get
and _wlan_hdd_cfg80211_get_station if global qdf device context becomes
null.
Change-Id: I02362ae2c60769a562acc42805bd8c4ccac0e887
CRs-fixed: 2536319
Currently the driver uses a global safe channel
list, and also keeps another safe channel list in
policy mgr which results in duplicate copies
of the same thing.
Also there are many possible issues which are seen
if the global list implementation is used.
Issue 1:-
The global unsafe ch list is maintained for each
channel and is updated as part of ACS scan cb.
So if a user does ACS again and again ( SAP on off)
then the result of unsafe channels of the previous
ACS request would be updated as part of the ACS cb
of the new ACS scan request.
In the function of sap_get_freq_list, the driver
filters out the channels which are unsafe, and the
same channels are not chosen as the best channel for
SAP operation.
Now the filtration of the channels would happen
according to the previous ACS request, and the driver
would remove the channels from the ACS scan list.
But those channels were unsafe when the previous ACS
happened, and may not be unsafe now, and can be used
to turn on the SAP (can be chosen as the best channel)
Issue 2:-
If the channels are truly unsafe, then the driver
filters out the channel in the function sap_get_freq_list,
and do not chose them for the SAP.
It may happen that the channel list that the driver
preferred as part of do acs becomes unsafe, and the
channels that were unsafe at the time of do acs becomes
safe while the driver was scanning the ACS channels to
find other APs.
Now since the channels that were unsafe at the time of
ACS req are safe now, they could have been chosen as the
best channel but they were not scanned, so the ACS channel
weight of these channels would remain maximum, and they
would be sorted at last of the sorted list.
Also the channels that were as part of the ACS channels list
became unsafe, hence the driver would also assign maximum
weight to them, and they would too become unusable channels.
This would result in all channels having the same weight that
is maximum weight, and so the sorting algorithm does not have
to sort any channel now since all of the weights are same.
The first channel in the sorted list would be channel number
1 of 2.4Ghz, and would get chosen, but this may not be
correct if the HW mode is 5ghz only.
Fix:-
Safe and unsafe channels can be checked by using
policy mgr safe channel list too, so it is better
to keep just one unsafe channel list.
The driver would not filter out the unsafe channels
for ACS scan, and would filter out the unsafe channels
as part of the ACS scan done callback.
Change-Id: Ief236db9e73864e5cb2d290a8106799f9e80f82d
CRs-Fixed: 2530241
Add support for WMI over QMI to reduce power consumption for
periodic stats report.
Change-Id: Iec725b357d9bcfa33029aedf7c568814499bc130
CRs-fixed: 2521826
Protect pld_del_dev function as part of psoc transaction
to avoid race condition with pld_deinit.
Change-Id: I3180801308b9a5e85822fb8d8bc04a9ecb42b347
CRs-Fixed: 2530822
These APIs can be used to send data request to firmware over QMI
as well as receive response from firmware.
Change-Id: I186d4c53e846af028b5ea75079027217af1580b4
CRs-fixed: 2517225