Commit Graph

4577 次程式碼提交

作者 SHA1 備註 提交日期
Ruchi, Agrawal
1ca70f07c8 qcacmn: Resolve KW issues
Add NULL check for nbuf_clone after calling
qdf_nbuf_clone

Change-Id: Ibffff984b0ace3c5ea19fb72f0e56e041eba0b14
CRs-Fixed: 2209137
2018-04-09 13:35:24 -07:00
Mahesh Kumar Kalikot Veetil
9d240daf92 qcacmn: Fix architecture dependency
API arch_counter_get_cntvct()/arch_counter_get_cntpct() are
specific to MSM/ARM platform. Use proper compilation flags for
QDF to compile against other platforms.

Change-Id: I7fcc5d84cd205151d839d19dfdc3432cb289807d
CRs-Fixed: 2216035
2018-04-09 11:13:26 -07:00
Srinivas Pitla
fd3685537b qcacmn: change lock order to avoid deadlock
Acquiring parent lock with in child lock context can occur deadlock
as some caller can invoke API with parent lock acquired.

Change-Id: I8fab6226d9cafe6df20737f966be1063feebb603
CRs-Fixed: 2219624
2018-04-09 11:13:24 -07:00
Naveen Rawat
4ef4fb339c qcacmn: Process scan event for 11d only if event indicates completion
Process scan event for 11d only if event indicates completion. Else in
case of dequeue due to failure or timeout will also cause scan event
handling for 11d which might have undefined effects.

Change-Id: I9d3599a9c60bccebea8ded9922dd3ddf995d8d61
CRs-Fixed: 2210347
2018-04-08 16:08:51 -07:00
Naga
6d06baaa60 qcacmn: Add new component id for cp stats
Add support for new component cp stats module id,
component id, obj mgr ref id and default log level

CRs-Fixed: 2192386
Change-Id: Ibb523f3756ad5cc80d5691ab421bcaaa0c7e2e4a
2018-04-06 17:49:56 -07:00
Naga
f325f1fe60 qcacmn: Add support for cp stats in os_if
Add framework for cp stats cfg80211 command handlers

CRs-Fixed: 2192386
Change-Id: Ief2a9f3f7d1f26722f9db09fcab674270d1859a1
2018-04-06 17:49:52 -07:00
Naga
a3d376270a qcacmn: Add support for cp stats in global_umac_dispatcher
Add support for cp stats lmac Tx and Rx Ops data structure
and handle Rx Ops registration

CRs-Fixed: 2192386
Change-Id: I07f41d8550778142abf01d8bd66c8c373c479ac2
2018-04-06 17:49:48 -07:00
Naveen Rawat
1c4d57ea15 qcacmn: Avoid un-initialized pointer access
Avoid un-initialized pointer access by initializing pointer to NULL
or valid value that is address of another variable.

Change-Id: I0666e7cebf9f39928b6b095fa4f7f017b5b2a837
CRs-Fixed: 2219381
2018-04-06 17:49:44 -07:00
Naga
f2d4e23818 qcacmn: Add support for cp_stats in target_if
Add support to register cp_stats for lmac Tx Ops and
provide inline APIs to get cp_stats lmac Rx and Tx Ops
structure

CRs-Fixed: 2192386
Change-Id: I33e7e22018a3aa3d3e76836ef9ddf1ead21209ea
2018-04-06 17:49:40 -07:00
Naga
f161d3eea6 qcacmn: Add framework for cp stats component
Control plane statistics is converged central
component which maintains all control plane stats
and provides necessary support to access statistics
through public APIs

Add framework necessary to create,destroy cp stats
objects corresponding to common object on receiving
event notifications from obj mgr and provide framework
to interact with southbound and northbound

CRs-Fixed: 2192386
Change-Id: I76ec50c1203aa56c4aefc23cbfa03e828b0d7bfd
2018-04-06 17:49:36 -07:00
Srinivas Girigowda
22d99df340 qcacmn: Fix function return type for epping_hard_start_xmit
Fix function return type for epping_hard_start_xmit.
Currently .ndo_start_xmit callback functions returns int, but
the correct return type should be netdev_tx_t.

Change-Id: I36d3cc886bfa0fd74a264f2791f09a251baab2ef
CRs-Fixed: 2219223
2018-04-06 14:47:20 -07:00
Soumya Bhat
402fe1a26a qcacmn: Tx capture/Mcopy mode changes
The following changes are added for Tx capture/Mcopy mode
1. Append ppduid for FW generated mgmt. frames
2. Append ppduid received in mgmt. TX completion for host
   generated mgmt. frames
3. Reuse nbuf received in HTT msg to send mgmt. payload to
   upper layers

Change-Id: I073cafa6389ed1ed835cc3ba4b9421b7a4b97d7f
CRs-Fixed: 2185543
2018-04-06 14:47:18 -07:00
Venkateswara Swamy Bandaru
3b16ea52b5 qcacmn: Fix kernel warning in free irq path
Free irq only if it is requested based on CE_ATTR_DISABLE_INTR flag.

Change-Id: I606b4099dd5f61aef94c1eaaee9a283f731b1a57
CRs-fixed: 2219495
2018-04-06 14:47:16 -07:00
Ruchi, Agrawal
44461ef589 qcacmn: Resolve peer ref count increment issue
Resolve peer ref count issue for correct peer
delete sequence.

Change-Id: Ifa34b6d3c8089fba09d1b25f65b26bff721c8ab1
CRs-Fixed: 2209045
2018-04-06 14:47:14 -07:00
Edayilliam Jayadev
01b4921127 qcacmn: Enable spectral registration to direct dma
Enable registration of spectral feature to direct dma

CRs-Fixed: 2219121
Change-Id: I483e87b9a6c7dcd297bc8b88d24c49e8d80ed547
2018-04-06 13:25:41 -07:00
Krishna Rao
24a08f2ad9 qcacmn: Adjust FFT bin size for Spectral report mode 2
On IPQ8074, for report mode 2 only the in-band bins are DMA'ed.
Scatter/gather is used. However, the HW generates all bins, not just
in-band, and reports the number of bins accordingly. The subsystem
arranging for the DMA cannot change this value. The host driver needs
to check if report format is 2, and if so halve the number of bins
reported to get the number actually DMA'ed.

CRs-Fixed: 2218423
Change-Id: Ic0be87422c67110cf3595a4bea71dc872d5b2504
2018-04-06 13:25:39 -07:00
Akshay Kosigi
428d34b091 qcacmn: Use fix length for RADIOTAP_HEADER instead of arbitary length
Use fixed max length for RADIOTAP_HEADER instead of arbitary
length. Increase the RADIOTAP_HEADER length when we add more radiotap
elements

Change-Id: I0d290b0def8408029ee787999faa4498b75b212f
CRs-Fixed: 2217245
2018-04-06 13:25:37 -07:00
Akshay Kosigi
abdf9afdea qcacmn: Initialize array indices with default value
Initialize QDF module id with default trace values.

Change-Id: I5aa5b62ea10dd217d4ea1fbfd479b731142f3b54
CRs-Fixed: 2217245
2018-04-06 13:25:35 -07:00
Om Prakash Tripathi
f06184550a qcacmn: Move object ref prints to error level
By default object manager log level is error
while reference prints use info level. This
eventually disables object ref prints.
To fix this move ref prints to error level.

Change-Id: I87bd589cc0eee3bed4591d5a978cf51840ac6b34
CRs-Fixed: 2219152
2018-04-06 13:25:33 -07:00
Venkata Sharath Chandra Manchala
16fcceb7de qcacmn: Change the buffer manager
Change the buffer manager from HAL_RX_BUF_RBM_SW3_BM to
HAL_RX_BUF_RBM_SW1_BM to handle regular and error packets.

Change-Id: I696d41f6cf0be1d5045ab27841ccc3ee2afea7de
CRs-Fixed: 2189452
2018-04-06 13:25:31 -07:00
jiad
de2ec73f9b qcacmn: fix ipa mcc scc event notification
Issue is under AP-AP MCC config, mcc event is not sent from wlan
to IPA driver. mcc mode is decided with the help of connection
table. But for AP mode, mcc mode is checked and updated before
connection table is updated by adding the SAP vdev entry.

Fix is to make ipa mcc mode check and notification when connection
table is updated.

Change-Id: I1ba3fcb874b014f05cebd8af90530b9aa54980a2
CRs-Fixed: 2214351
2018-04-06 13:25:29 -07:00
Rajeev Kumar
708e7f57c5 qcacmn: Remove multicast logging check from wlan_log_to_user API
Multicast logging is MCL specific feature which controls sending
of host and fw netlink DIAG events to user space. This feature
should not control console logging from wlan_log_to_user because
it can lead to all debug logs getting logged on console until
CFG INI for multicast logging is parsed during initialization and
this can lead to watchdog bark beacuse of excessive logging during
WiFi driver initialization. Hence remove multicast logging check
from wlan_log_to_user API to avoid logging all debug logs on console
during WiFi driver initialization sequence.

Change-Id: I2a29928757f683a72345436a57de1ee8d02f53b3
CRs-Fixed: 2217749
2018-04-05 16:41:16 -07:00
Arif Hussain
958e7515b2 qcacmn: spectral: Replace instances of unadorned %p
Replace instances of unadorned %p in
target_if_spectral_process_phyerr_gen3.

Change-Id: I1f70e613885780b71aa69cd12b61e9d24415b333
Crs-Fixed: 2213177
2018-04-05 11:04:32 -07:00
Tallapragada Kalyan
e33a5632b8 qcacmn: add abstraction to update rx stats
Add a new API to update the stats which will be
called from dp_rx_process instead of updating stats
directly from within the dp_rx_process function

Change-Id: I13bdfd1606c3ceb2e38921ffa0cf3fe9f29c57ee
CRs-Fixed: 2189088
2018-04-05 07:46:47 -07:00
Paul Zhang
2db395377a qcacmn: Add reg domain FCC2_FCCA
The defination is missing for reg domain FCC2_FCCA
which is used by country "DM" and "DO".

Change-Id: I4ad1cde55b54ba16eb6f1c6a2b96c73c17a932b9
CRs-Fixed: 2215875
2018-04-05 01:30:03 -07:00
Manjunathappa Prakash
029b665b6f qcacmn: Add enum for invalid htt stat type
Add enumeration for invalid stat type htt_cmn_dbg_stats_type for
ol_txrx_stats_callback handler.

Change-Id: I8a976737af8f226a1774950170f445c93ebf683b
CRs-Fixed: 2215678
2018-04-04 17:47:21 -07:00
Jeff Johnson
d7f3057bc4 qcacmn: Fix build error when Green AP disabled
When the Green AP feature is disabled in the Kbuild the following
build issue is observed:

target_if_green_ap.h:59:10: error: 'struct wlan_green_ap_egap_params'
declared inside parameter list [-Werror]
target_if_green_ap.h:59:10: error: its scope is only this definition
or declaration, which is probably not what you want [-Werror]

Fix this by including a forward reference for the struct.

Change-Id: Ia5d867c0ebde17dba0f20c1e97391197ae9dbb77
CRs-Fixed: 2216249
2018-04-04 16:40:04 -07:00
Soumya Bhat
560f90ce73 qcacmn: send packets for invalid peers
Add change to process packets received for invalid peer
when m_copy mode is enabled

Change-Id: I85aa41ff79e97eee9c696b63717206ac1329078e
CRs-Fixed: 2194058
2018-04-04 07:37:39 -07:00
Naveen Rawat
2a5dc61663 qcacmn: Fix memory allocation in NDP firmware events
Fix memory allocation during NDP firmware events by allocating
memory before wmi_extract APIs are called.

Change-Id: I3af2f49895a79a45b3add246eeb9025b1df92faa
CRs-Fixed: 2183493
2018-04-04 07:37:36 -07:00
Karunakar Dasineni
9ff1ef9798 qcacmn: Disable CE6 interrupts for Hawkeye
CE6 is used for autonomous HIF_memcpy by FW, but interrupts
are coming to host since there is no separate HW control to
turn off host interrupts. Avoid requesting these interrupts.

Change-Id: I7b09b7c6e39d37e111e6e7a4292f605b3fb602e0
2018-04-04 04:02:11 -07:00
Manjunathappa Prakash
9eaa6f099b qcacmn: Remove redefinition of *tx_flow_control_fp
ol_txrx_tx_flow_control_fp and ol_txrx_tx_flow_control_is_pause_fp are
redefined dp/inc/cdp_txrx_mob_def.h, original definition is in
dp/inc/cdp_txrx_cmn_struct.h. Remove duplicate redefinition.

Change-Id: I2c2af59d8b24360cd09efeb12ea19c0340771bb8
CRs-Fixed: 2215678
2018-04-04 04:02:08 -07:00
Manjunathappa Prakash
d345d27867 qcacmn: Remove obsolete dmac_inv_range API
Remove obsolete dmac_inv_range API, instead use
qdf_mem_dma_sync_single_for_cpu API where ever required.
https://www.kernel.org/doc/Documentation/DMA-API-HOWTO.txt

Change-Id: I44f14e6c87c1086decc600f59f298b7b8a94bc82
CRs-Fixed: 2215678
2018-04-04 04:02:05 -07:00
Rhythm Patwa
03f2586d7f qcacmn: Fix BSS color issue and add cmd support to disable BSS color
Add macros to set and get BSS color value and the BSS Color
disable bit values. These macros are used to construct the value
to send to the WMI BSS Color vdev param with BSS color and BSS color
disable status embedded.

Change-Id: Id0721a1a5d66fff5d2c50708aeefb5e0ec03e999
CRs-fixed: 2186897
2018-04-03 18:11:47 -07:00
Ruchi, Agrawal
89219d97b4 qcacmn: ast entry reset api for son
API to reset ast entry for son, ast entry active
field will be set on call of reset_api and all the
ast entry active field will reset on call of reset_table
api, ast_flush api will delete enteries in table

Change-Id: I26ed0fff818a112348a7aefba3b028ed40b2fe26
CRs-Fixed: 2209095
2018-04-03 16:50:17 -07:00
Tushnim Bhattacharyya
414d2e790c qcacmn: Use correct enum type in function send_get_rcpi_cmd_tlv
Use the wmi enum type in function send_get_rcpi_cmd_tlv converting from
rcpi_measurement_type.

Change-Id: I5b506059ad8b0f4cd65c24e20df6306a47249fdb
CRs-Fixed: 2216017
2018-04-03 16:50:15 -07:00
Chaithanya Garrepalli
e323f80584 qcacmn: remove assert for peer delete_in_progress from peer map
At the time of peer map delete_in_progress can be set for newly
created peer in case host send sends the peer delete to FW before
we receive the peer map even from FW

Hence removing the assert to check delete_in_progress flag in
peer map

Change-Id: I28b2f46cf4fdd12bf98ce54dd7dcea68d96dc795
CRs-Fixed: 2216550
2018-04-03 02:56:22 -07:00
Edayilliam Jayadev
bf873df722 qcacmn: Fix API for getting first vedv of pdev
Since vdev_id is globally unique across multiple pdev,
assuming vdev_id 0 to find the first vdev of a pdev wouldn’t work.
Fix this issue by getting the first vdev from the head of vdev
linked list maintained per pdev.

CRs-Fixed: 2211742
Change-Id: I5a7b5436cff363d5470fb600cca54f587a7d683e
2018-04-03 01:42:58 -07:00
Kabilan Kannan
7eab01c3f9 qcacmn: Add magic string for debug enhancement
Add magic string in the driver to automate the
stability analysis.

Change-Id: Ic4989d70827bbb680de428f8065e2fff6ea8ad2f
CRs-Fixed: 2212155
2018-04-02 19:39:42 -07:00
Kabilan Kannan
0cc70bc6ff qcacmn: Add magic string for memory leak debug
Add magic string in the driver to automate the
memory debug analysis.

Change-Id: I79b6ef49fa5c1c5fb74c72b228c3dae05b483a77
CRs-Fixed: 2212167
2018-04-02 19:39:40 -07:00
Kabilan Kannan
0cc3fc4ad8 qcacmn: Fix compilation warnings in TDLS
Fix the warning issue in TDLS, which popped up with newer
compiler options.

Change-Id: I1516a47ec01faa9315d2045ebcfe49097680e80d
CRs-Fixed: 2215517
2018-04-02 16:41:55 -07:00
Yuanyuan Liu
80bfeb949d qcacmn: Fix LLVM compiling issues
Remove typedef redefinition, use correct enum type, remove extra
parentheses and correct header guard.

CRs-Fixed: 2214003
Change-Id: I0a75c70cd530590a16f6bfa884955ebc26906de0
2018-04-02 16:41:52 -07:00
Tushnim Bhattacharyya
f940918d4f qcacmn: Use enum type policy_mgr_con_mode instead of enum QDF_OPMODE
Use enum type policy_mgr_con_mode instead of enum QDF_OPMODE.

Change-Id: Ia7a6bb5e05c6dac650dc6386734462547365a4eb
CRs-Fixed: 2214003
2018-04-02 16:41:50 -07:00
Tushnim Bhattacharyya
bf1e4f3f28 qcacmn: Use correct enum type in function call
Use correct enum type in tdls_determine_channel_opclass,
tdls_process_antenna_switch & tdls_process_send_mgmt_rsp.

Change-Id: Idd4e7ac47196e3e11971fe3013805b6a8551c8de
CRs-Fixed: 2214003
2018-04-02 16:41:47 -07:00
Abhishek Singh
dba772b9c8 qcacmn: Fix OCE WAN scoring logic for initial connection
Set the range of score index to 1-15 as 0 is used for the AP
which does not advertise the OCE WAN. Also if OCE WAN downlink
capability is 0 return 0 score.

Change-Id: I8c6757458c542050a6a31cb03fad0ce17d60aa16
CRs-Fixed: 2208282
2018-04-02 15:22:01 -07:00
Tiger Yu
054a6a4fd4 qcacmn: Initialize the local variable do_pm_get to false
Initialize the local variable do_pm_get to false to avoid using the
uninitialized variable potentially.

Change-Id: Ie45126b05afee1d4e5bb061189846bc8e301c2a6
CRs-fixed: 2215809
2018-04-02 15:21:59 -07:00
Kabilan Kannan
d6c4f2209c qcacmn: Validate nbuf in dp trace function
Validate nbuf before processing in dp trace function

Change-Id: Idb59f83edc09f9be8bf0bd231b8eb6ff28f37fd4
CRs-Fixed: 2213737
2018-04-02 15:21:57 -07:00
Chaithanya Garrepalli
0323f80221 qcacmn: Correct peer create-delete sequence
If peer with given MAC Address
already exists, just increment the refcnt
instead of allocating a new peer and deleting older
peer object. This avoids unnecessary memory fragmentation.

Change-Id: I76a3ffca4e907fccfdfd1b6857de721623f455d5
CRs-Fixed: 2209045
2018-04-02 15:21:55 -07:00
Anish Nataraj
cf526b7b9f qcacmn: Free memory for ppdu descriptor tlv list in detach path
ppdu tlvs are maintained in linked list and was not freed in detach
path but only freed after wdi post message. This was causing memory
leak to happen

Change-Id: I7b7b49d7ec829a6ef6b99edb1c7999bed713ae49
2018-04-02 03:09:00 -07:00
Venkata Sharath Chandra Manchala
bcfa6d8683 qcacmn: Add lock to protect rx_desc_pool
Create a lock for protecting rx descriptor
pool allocation during initialization and destroy it
during unloading the driver.

Change-Id: Icd489e400dab9bb648709134dcaa24c4d7724aa6
CRs-Fixed: 2215430
2018-04-01 21:02:38 -07:00
Sumedh Baikady
12b2b2c897 qcacmn: Use mon_lock while accessing monitor vap
Use monitor mode lock to prevent vap down while monitor
vap is still delivering all MPDUs to radiotap Api.

Change-Id: I908d8048afbf3210bddaafc2c19b177ec8209085
CRs-fixed: 2212004
2018-04-01 19:40:48 -07:00