Graphe des révisions

5642 Révisions

Auteur SHA1 Message Date
Linux Build Service Account
fed7e16093 Merge "qcacmn: Fixes for IPA datapath" 2018-09-27 17:34:19 -07:00
Linux Build Service Account
c1c178932c Merge "qcacmn: Separate WMI MGMT RX event logging" 2018-09-27 17:34:19 -07:00
Gerrit - the friendly Code Review server
444e0adef3 Merge changes into wlan-cmn.driver.lnx.2.0 2018-09-27 17:16:55 -07:00
Pramod Simha
b2ef27ba26 qcacmn: Fixes for IPA datapath
1. Disable host processing of REO2SW4 when IPA is enabled.
2. Change buffer memory location provide to IPA TX transfer
   ring from consistent to non-consistent memory.

Change-Id: Ibb62d9faf5dc9adb5ee8a2e113d10a2912269cbd
CRs-Fixed: 2315889
2018-09-27 16:36:58 -07:00
jitiphil
67a658da1c qcacmn: Add QDF abstraction for FW rejuvenate event
During FW rejuvenate, a message needs to be sent to
IPA driver to indicate of the event's occurrence.

Add a QDF abstraction for the FW rejuvenate event to
be sent as a message to IPA driver.

Change-Id: I3ffa220234f9690306c408a24ddd31ac94015124
CRs-Fixed: 2290656
2018-09-27 16:36:55 -07:00
Rajeev Kumar
183ef8819f qcacmn: Separate WMI MGMT RX event logging
Separate WMI MGMT RX event logging from main WMI event
logging because WMI MGMT RX event is too frequent and its
over-running useful WMI control path events.

Change-Id: Iacd1576c3e133b70224e45f589f566c73637a626
CRs-Fixed: 2318021
2018-09-27 16:36:52 -07:00
Rajeev Kumar
8047370dfc qcacmn: Separate WMI diag rx event logging
FW generates too many diag events and these diag events
also come on CE-2 together with other critical control
path WMI events and easily over-run useful control path
WMI RX even log buffer. Separate WMI diag rx event loggig
in a separate log buffer such that useful control path WMI
log event buffer is not over-run.

Change-Id: I89b5d88036bc9d7e57e8e16858bc556be4e2ed41
CRs-Fixed: 2318083
2018-09-27 15:00:49 -07:00
Jianmin Zhu
e4dc0494f6 qcacmn: Release pdev pending list instead of active list wrongly
When destry pdev, need release serialization active list if it
is not empty, but release pending list by mistake, assert will
happen.

Change-Id: I83be2cb512f3a832d03c0c33c8ea63243d745a54
CRs-Fixed: 2323512
2018-09-27 15:00:47 -07:00
Varun Reddy Yeturu
defbdb4f0a qcacmn: Make policy_mgr_pdev_set_pcl as public API
Make policy_mgr_pdev_set_pcl as public API
Remove SET PCL for STA vdev from policy manager as it
is being done now from the roaming start cmd core
function which is csr_roam_offload_scan()

Change-Id: I3fc0eb4d37278a67a1f18579cec7d65e491bd967
CRs-Fixed: 2320734
2018-09-27 15:00:44 -07:00
Bala Venkatesh
f174aefeca qcacmn: Update TDLS channel switch params correctly to FW
Use WMI layer tdls_offchan_mode enum value while sending tdls
offchannel mode request to FW.

Change-Id: I3faee2d22ab2bcbf99918d46eeeb5b5bbe925048
CRs-Fixed: 2320796
2018-09-27 15:00:42 -07:00
Bala Venkatesh
9e084cd5ad qcacmn: Fix double free of qdf idr
Currently, As part of mgmt tx request qdf id is alloted
and it is removed as part of mgmt tx cancel and the same
idr value is stored in roc context and that idr is removed once
again during roc context destroy that lead to double free of the
same qdf idr. This will result in subsequent mgmt tx cancel
failures.

Dont remove qdf idr as part of mgmt tx cancel.

Change-Id: I7c6f19f6d50e7f5eef216eedfa750f058dbc1ba6
CRs-Fixed: 2320990
2018-09-25 15:33:51 -07:00
Nirav Shah
59b6c45fbc qcacmn: Changes for QCN7605(Genoa) bringup
1. Add QCN7605 device id for PCIe
2. Enable PLD implementation for QCN7605.
3. Add enable/disable msi interrupt implementation for
   legacy CE.

Change-Id: I8ae8a230bbd7d2d521ad11c0602e32171440ffc8
CRs-Fixed: 2317211
2018-09-25 15:33:48 -07:00
Priyadarshnee S
2ad0655c19 qcacmn: Fix the inconsistency in updating to NOL list
Consider AP is brought up in channel 100 VHT80 mode. When "bangradar" cmd
is issued, all the HT20 channels 100, 104, 108, 112 must be added to NOL.
It is found that only chans 100, 104 are added to NOL. This is because
dfs_find_radar_affected_subchans() does not find out all the radar affected
HT20 (4 in this eg) sub-channels.

dfs_find_radar_affected_subchans() is invoked as dfs_use_nol_subchannel
_marking is set to true by default. Also, dfs_find_radar_affected_subchans
finds the frequency offsets of the radar_found channel from
radar_found->freq_offset variable which is updated only in case of real
HW radar. For bangradar, this freq_offset takes to some scrap value.
As the radar found frequency offsets are wrong, the radar found channels
are computed incorrectly and it leads to chaos in NOL addition.

dfs_find_radar_affected_subchans() is used to compute radar found
frequency offsets only in case of real HW radar. For bangradar,
dfs_get_bonding_channels() is used to compute the radar found sub-channels.

Change-Id: Ie190e9266bcb696a07e389736df1258409abf08b
CRs-Fixed: 2313201
2018-09-25 11:29:01 -07:00
Paul Zhang
6780655a63 qcacmn: Fix kw issue in target_if_reg.c
Pointer wmi_handle is returned from a function may
be NULL and will be dereferenced in another function.
Add sanity checking to return if the pointer is NULL.

Change-Id: I2a38098335dde8d76a04129c06166203aefdd2ec
CRs-Fixed: 2317021
2018-09-25 05:33:47 -07:00
Manjunathappa Prakash
4a010f442d qcacmn: Use %pK to log kernel addresses
Use %pK format string to log kernel module data structure addresses.

Change-Id: Ifd343848d47e022e7cf4bb5832df4bcdc0764273
CRs-Fixed: 2321440
2018-09-25 05:33:44 -07:00
Amir Patel
20a0efabb1 qcacmn: Add qdf_platform source file to qdf/Kbuild
Add qdf_platform source file to qdf/Kbuild and
clean-up WAR introduced in change
I8172f3dbe0716be24a4dda739afb49f94528a4f6

Change-Id: Icb76d53544590b8bcace275ef52870606fb5d826
2018-09-24 18:55:20 -07:00
Jinwei Chen
38c92c691b qcacmn: remove unnecessary IRQ in host2rxdma ring mask
For MCL, only keep one interrupt in host2rxdma ring mask definition,
which is used for host2fw RX refill ring low threshold reporting.
remove the left unnecessary ones to avoid invalid access
to uninitialized RX Desc pool.

Change-Id: I0d353eb68493573383b2ccd0cb36e98cd4a7a95d
CRs-fixed: 2317464
2018-09-24 18:55:17 -07:00
bings
747b176c98 qcacmn: Replace wlan_phy_ch_width with phy_ch_width
Delete enum wlan_phy_ch_width. Move phy_ch_width definition
from reg_services_public_struct.h to wlan_cmn.h.

Change-Id: I9f2b3ade1b023b9728274ce4edd3b90f562ae02e
CRs-Fixed: 2318356
2018-09-24 17:16:16 -07:00
Jingxiang Ge
de9bd0182e qcacmn: Fix kw issue in target_if_nan_register_events
Potential NULL pointer dereference of handle in
target_if_nan_register_events.

Add null check in the function.

Change-Id: I1fc57d712713bc47345b178c972cc5fc926a42d0
CRs-Fixed: 2317017
2018-09-24 13:02:17 -07:00
Chaithanya Garrepalli
1f64b2453e qcacmn: in tx path set the lmac_id from wlancfg
in tx path set the lmac_id in the tx descriptor
from wlancfg

Change-Id: Ib7f355983142564500a20daa1f0eef41808df449
CRs-fixed: 2320597
2018-09-24 13:02:13 -07:00
Amir Patel
1de3d3ddf3 qcacmn: Fix Tx rate for multicast packets
Fix tx rate for multicast packets

Change-Id: I0f5e628b571577a282817b165a62a1ff640bb0c5
CRs-Fixed: 2309177
2018-09-24 08:48:41 -07:00
Vignesh Mohan
9d1c7a223f qcacmn: cleanup crypto component prints
Updated error log from qdf_print to crypto_err/
crypto_debug/crypto_info implementing QDF_TRACE
for files in crypto to avoid console cluttering.

Change-Id: I1f7860373c505f4e1d80909662b6673f8263bdcd
CRs-Fixed: 2299591
2018-09-24 05:07:35 -07:00
Kiran Venkatappa
e7609f7cec qcacmn: Add wbuff include path for spectral compilation
wbuff is a module which maintains a pre-allocated pool of
skbs for each registered module and allocates skbs when
requested. Add wbuff/inc in include path for qca_spectral
compilation.

Change-Id: I6bc9eaca99f7789eaa5cb0500d0258495caf7ea4
CRs-Fixed: 2313935
2018-09-24 05:07:32 -07:00
Rakshith Suresh Patkar
1f18454889 qcacmn: Enable wbuff support for WMI
Register WMI with wbuff for pre-allocation of
skbs. Register at wmi_unified_attach() and
de-register at wmi wmi_unified_detach().

Change-Id: I9d6df1a8480324dd2a258de12672669a8fbe8940
CRs-Fixed: 2313935
2018-09-24 05:07:30 -07:00
Vignesh U
a1860003dd qcacmn: Add usenol support to Host DFS Test
When user sets the usenol to 0 and inject the radar, host sends RADAR found
WMI command to firmware. Firmware sends status code as 2 and starts a
2 minutes timer to receive channel change request from host. Since usenol
was set to 0, host does not change the channel. This leads to firmware
timer expiry and sends status code 1 to block all the DFS channels. This is
not desired.

Do not send the RADAR found WMI command to firmware when usenol is 0.

Change-Id: I5884eb343cc419d4c9f5bda3e6eaa7c95c4d4af5
CRs-Fixed: 2276722
2018-09-24 01:41:40 -07:00
gaurank kathpalia
7b95da6afa qcacmn: Possible NULL pointer dereference in target-if
Currently, the return value of get_wmi_unified_hdl_from_psoc() API
is passing directly as argument to some functions without checking
the return value for NULL which may cause NULL pointer dereference.

To address this issue, add NULL checks for return value of
get_wmi_unified_hdl_from_psoc() API where ever it is getting used.

Change-Id: I9e9bf1372a8728e1af1be65065c9ba12f95ee305
CRs-Fixed: 2317025
2018-09-23 15:50:53 -07:00
Dustin Brown
e60cba22e1 qcacmn: Remove radio index from logs
As part of the effort to reduce the volume of logs produced by wlan,
remove the radio index from the base information which gets logged with
every message. The module name, which is also logged with every message,
is the preferred way to keep track of which wlan module is logging.

Change-Id: Ib13f12c55fb9a90ac61661d2a13e44913997804e
CRs-Fixed: 2318008
2018-09-21 22:40:33 -07:00
Adil Saeed Musthafa
12205b544b qcacmn: Add timer to flush out log buffers periodically
Add timer to flush out log buffers periodically. Add command to set the
time period value.

Change-Id: I8e796a9bc7caac2661d00852420dd5fa66f5bca5
CRs-Fixed: 2296362
2018-09-21 20:50:55 -07:00
bings
eeeeaded77 qcacmn: Use malloc to prevent stack overflow
For large local variable, it is better to use malloc to prevent the stack
overflow.

Change-Id: Ibf5f516132410122b730bfc1407ea14e0f26d630
CRs-Fixed: 2318354
2018-09-21 17:46:08 -07:00
Arif Hussain
4957585f02 qcacmn: Add validation code for wmi handler in stats module
Add validation code for get_wmi_unified_hdl_from_psoc() return
to avoid null pointer access.

Change-Id: Id5dc6069ddcd9604248039f2957a69f27bc48187
CRs-Fixed: 2317016
2018-09-21 10:09:28 -07:00
Sathish Kumar
4c46c87ce0 qcacmn: Replace qdf_print calls with appropriate WMI_LOGx APIs
WMI APIs currently use qdf_print() calls to print the messages onto
the console irrespective of whether it is an error, info or debug
message.

Replace qdf_print() calls with appropriate WMI_LOGX() APIs to ensure
they align with the debug framework.

Change-Id: I9a14a3defc61462bf4c7a8f0278e258603b781c7
CRs-Fixed: 2319398
2018-09-21 05:28:48 -07:00
Vivek
83b8ffc556 qcacmn: Protect queue access inside activate_multiple_cmds API
The removal of blocking command from active non scan queue,
can result in movement of either single/multiple
blocking/non blocking commands from  pending to active queue,
so the activation of new command(s) moved to active queue
as a result removal of blocking command, is done inside the
wlan_serialization_activate_multiple_cmd where the active
list is traversed and activated, which needs to be protected by the queue
lock to avoid concurrent access and updates to the cmds in the queue
from different contexts.

Change-Id: Ibf3034083d348ef7187bfac9cf2c540c748cd678
CRs-Fixed: 2317626
2018-09-21 03:53:40 -07:00
Paul Zhang
f7fb463692 qcacmn: Stability feature enhancement
Stability feature enhancement to log below highlighted QTIMER
tick into Hexadecimal(currently its logged in decimal) such
that it can easily compare WLAN log QTIMER with WMI and HTC
credit log in crash-scope.

Change-Id: I0e0db3cbe90519248be98678e692cc89a87fcd2f
CRs-Fixed: 2315210
2018-09-21 03:53:38 -07:00
Venkateswara Swamy Bandaru
41ebb3396b qcacmn: Fix kernel panic issue in mesh tx path
Add check for headroom before pushing the head for sufficient headroom
to prevent kernel panic in skb push function.

Change-Id: Iafc963f68b35564c7f291e9d91d933b3e31d7daa
CRs-Fixed: 2315569
2018-09-21 02:06:43 -07:00
Frank Liu
3526a0eb12 qcacmn: Fix KW issue in tdls
Potential NULL pointer dereferences of wmi_handle are found in these
functions:
target_if_tdls_event_handler()
target_if_tdls_register_event_handler()
target_if_tdls_unregister_event_handler()

Do wmi_handle NULL check in the above functions.

Change-Id: I7cb4b574750d6bc6538862aa24a0cf49831b7c25
CRs-Fixed: 2317029
2018-09-21 00:27:25 -07:00
Abhishek Singh
a337ac3159 qcacmn: Remove legacy APIs to modify vdev state machine
This change Removes legacy APIs to modify vdev state machine and
add use new API to get vdev state.

Change-Id: I48aa3744dafc6d13a43a14e48de821c7dadf3a37
CRs-Fixed: 2314731
2018-09-21 00:27:22 -07:00
Arif Hussain
d5a4e64886 qcacmn: Add validation code for wmi handler in dfs module
Add validation code for get_wmi_unified_hdl_from_psoc() return
to avoid null pointer access.

Change-Id: I05a8c135df5197356c77df4997d978c0209b0dfd
CRs-Fixed: 2317012
2018-09-21 00:27:19 -07:00
Pramod Simha
e3d4d25f62 qcacmn: Initialize local variable
Initialize local variable to zero to prevent compilation
warning for KASAN enabled builds.

Change-Id: I22a6115800ea31e0fe0c86204722664355b53947
CRs-Fixed: 2310542
2018-09-20 22:24:30 -07:00
Karthik Kantamneni
574d2147c3 qcacmn: Filter diag events in WMI extended debug mode
Filter diag events while recording WMI extended debug log messages.

Change-Id: I4071c66eee5880fbe336ea8c21081b3054dfb835
CRs-Fixed: 2316702
2018-09-20 14:54:53 -07:00
Jianmin Zhu
035ab54cdc qcacmn: MCL part change after serialization enhancement
1. Keep serialization legacy api not broken.
Serialization enhancement have much changes on internal struct
and API, need re-implement serialization legacy APIs.

2. Set all cmds on MCL platform as blocking type.
MCL dones't support cmd concurrency on multi vdevs, while WIN need
it.

Change-Id: I5d5d6e0e16becb0b0f285fd8ed20982f2819659c
CRs-Fixed: 2315407
2018-09-20 13:10:45 -07:00
Chaithanya Garrepalli
29b9a45af0 qcacmn: add pdev NULL check in peer inactivity timer
In dp_txrx_peer_find_inact_timeout_handler ignore pdev
which is already detached

Change-Id: I0349d5f9c8d249cf332727bff3c120ddf38a6807
CRs-fixed: 2312279
2018-09-20 13:10:42 -07:00
Linux Build Service Account
1d27cc3a48 Merge "qcacmn: Spatial Reuse changes" into wlan-cmn.driver.lnx.2.0 2018-09-20 04:22:38 -07:00
Amar Singhal
5e8c2375c0 qcacmn: Check for NULL ptr in wmi API
Wmi_hdl can be NULL in call to wmi_unified_ipa_offload_control_cmd. Do
a check for the same.

Change-Id: I2629e03a812cbafdfd1494798ad7d8b986ceec75
CRs-Fixed: 2316859
2018-09-20 00:56:22 -07:00
Sourav Mohapatra
9806f5c4c4 qcacmn: Send roam preauth retry_count and no_ack_timeout ini to FW
Create and send user configurable ini for max number of roam preauth
retries and roam preauth no-ack timeout to the firmware.

Change-Id: I0343cb29952286d9b42a69136fc6353cd86e4752
CRs-Fixed: 2286079
2018-09-19 13:13:03 -07:00
Linux Build Service Account
c89905f07d Merge "qcacmn: Reduce log level in policy manager" 2018-09-19 10:34:54 -07:00
Linux Build Service Account
e51b6da594 Merge "qcacmn: Add member in the stats ops for vdev stats" 2018-09-19 10:34:53 -07:00
Tushnim Bhattacharyya
56eb2ef814 qcacmn: Reduce log level in policy manager
Reduce log level from error to debug in
policy_mgr_convert_device_mode_to_qdf_type,
policy_mgr_get_qdf_mode_from_pm, policy_mgr_decr_active_session,
policy_mgr_decr_session_set_pcl.

Change-Id: I236c6770b87c5a4d4888cb6249aaf128b1cdcb8f
CRs-Fixed: 2317899
2018-09-19 09:59:54 -07:00
Debasis Das
c24679128b qcacmn: Add member in the stats ops for vdev stats
The stats ops framework needs a member for updation
of vdev stats.

Change-Id: I4a131fdadb50e89f4db55548ac6ee40afda5d182
2018-09-19 09:59:50 -07:00
Venkateswara Swamy Bandaru
1f0755c015 qcacmn: Add qca8074v2 support for DP
Add suuport in cdp soc attach for qca8074v2 chip.

Change-Id: I81e679f220f9b8656597498f82538c7618303e95
CRs-Fixed: 2306001
2018-09-19 04:21:09 -07:00
Kiran Venkatappa
f3e6bf1557 qcacmn: Add target service ce map for HKV2
HKV2 has support for three radios. Update Target service map
for HKV2 to map third endpoint for WMI commands corresponding to
third radio.

Change-Id: I9b84dedf1fcddf5c6d43e12c6688d8f9ee7db886
CRs-Fixed: 2313124
2018-09-19 02:54:44 -07:00