Commit gráf

2586 Commit-ok

Szerző SHA1 Üzenet Dátum
gaolez
db66e6123e qcacmn: Add 4 counts to link layer stats
qcacld-2.0 to qcacld-3.0 propagation

Add 4 counts to link layer stats which will be retrieved along with
other link layer stats fields by application to decide if channel
hopping needed.

Change-Id: Ic413b8ad98f1147715cf89c083aa9a77e60a2dc6
CRs-Fixed: 1094958
2017-04-16 22:47:41 -07:00
Amar Singhal
9749753a75 qcacmn: Add API to pass configuration settings
Add API to pass initial configuration settings to
regulatory component.The regulatory component would
re-compute initialization channel list when this API
is called.

Change-Id: I414ecd189c0879515bd9b3f07537b3143a5cb0ed
CRs-Fixed: 2002892
2017-04-16 15:58:36 -07:00
Tushnim Bhattacharyya
8c4092b16e qcacmn: Replace legacy regulatory APIs with new ones from host cmn
Get rid of legacy regulatory API references from policy manager
as the new ones are available now.

Change-Id: I48d41599d7faeb760b51ca5f0d7672e8484e7f91
CRs-Fixed: 2009818
2017-04-16 15:58:34 -07:00
Arif Hussain
a1e18b6b7d qcacmn: Add dfs public structure file
Add dfs public structure file.

Change-Id: Id34164da42d2d7b593fcb86ebd585140cd263f6e
CRs-Fixed: 2017481
2017-04-15 23:02:16 -07:00
Om Prakash Tripathi
f527f16e8e qcacmn: add refcnt and lock support for scan
1. Take reference count for vdev/pdev/psoc object before posting
   async message to scan component.
2. Take proper lock before invoking objmgr APIs which require locking.
3. Fixed few memory issues in failure cases.

Change-Id: I594b9ebf904c1c3b049a5d9d9e15679ac41599e7
CRs-Fixed: 1095299
2017-04-15 18:07:05 -07:00
Rajeev Kumar
c350256efa qcacmn: Enable kernel panic on memory leak
Enable kernel panic on memory leak such that all basic memory
leak issues are reported every time and gets fixed on priority.

Change-Id: Ie990fa5bc4435ab717277578fa3a2ea71925e6d1
CRs-Fixed: 2030988
2017-04-14 17:12:41 -07:00
Sandeep Puligilla
ea68a2c6f2 qcacmn: Deinitialize the pdev scan private member
Added api to support the deinitialization of pdev scan
private member

Change-Id: Id887eab16f195fc5052f30900451625a586ed9fa
CRs-Fixed: 2033622
2017-04-14 15:06:52 -07:00
Amar Singhal
b4071431e9 qcacmn: Add new APIs to regulatory component
Policy mgr needs APIs for chan to freq and freq to chan APIs.
Add these APIs to regulatory component at pdev level.

Change-Id: I4a0cf2a4b02e16b81d24088c9e9b6c8d36ce6b6c
CRs-Fixed: 2002892
2017-04-14 13:53:36 -07:00
Sreelakshmi Konamki
45e7d95017 qcacmn: Add support to get the status for Roam Scan Offload command
Enable WMI_ROAM_SCAN_MODE_FLAG_REPORT_STATUS flag so that firmware
sends status for the Roam Scan Offload[RSO] STOP command.

Change-Id: I2758103e8ca3c49c0fecd3323b619542dbbabf0c
CRs-Fixed: 1111809
2017-04-14 12:43:27 -07:00
Venkateswara Swamy Bandaru
19dc8b23a6 qcacmn: Fix to configure external group interrupts
After configuting the external group interrpts called configuring api
to configure external group interrupts.

Change-Id: I9db8c9dc941421fa05676be732147929be24b0e6
CRs-Fixed: 2018655
2017-04-14 11:50:32 -07:00
Ishank Jain
c838b133c1 qcacmn: Add Mcast enhancement feature support
Feature to convert Multicast packet and send them as unicast.

Change-Id: I64d44ac337bd366c6799226fd69f89cd3e46e65d
CRs-Fixed: 1116432
2017-04-14 10:17:19 -07:00
Hanumanth Reddy Pothula
fd65c6eabc qcacmn: Add QDF wrappers for kernel atomic bit operations APIs
Add QDF wrappers for kernel atomic bit operations APIs.

Change-Id: If00b8434e60c516e89c6781eea459bc1931872df
CRs-Fixed: 2033255
2017-04-14 08:40:21 -07:00
Abhijit Pradhan
4a3a13d73e qcacmn: Revert disablement of regulatory component
Regulatory component was disabled in change
 I2d2b6cff74a174c19cd1a84c63e3009fc952d165 due to null range
value crash. That crash is fixed now. So re-enable regulatory
component..

Change-Id: I42a297bbe4e2b7c627fb11b2edc6323395ab8f8c
CRs-Fixed: 2002892
2017-04-14 05:49:10 -07:00
Amar Singhal
be6199297c qcacmn: Fix channel range for null range limits
If high limit value is not found; there can be infinite loop
for searching for it. Fix it by checking for lower limit. Also
do NULL check on extended service capabilities pointer.

Change-Id: Ie3f78e470be77b2e9b34a1003c9e273c33da21db
CRs-Fixed: 2002892
2017-04-14 05:49:08 -07:00
Naveen Rawat
d35749f195 qcacmn: Fix memory leak in wifi_pos send peer status api
In function os_if_wifi_pos_send_peer_status free buffer used to send
peer status indication to userspace after use.

Change-Id: Id90ea35aef4584d0ee7ef856d5cd12104eb089a4
CRs-Fixed: 2030121
2017-04-14 04:22:51 -07:00
Kiran Venkatappa
c068709444 qcacmn: Fix crash due to corruption in ce_mark_datapath
Use length of service_to_pipe array to loop through services instead of
array size.

Change-Id: I107203861501ed5ac348979868ac981b5a6cd1ae
CRs-Fixed: 2033254
2017-04-13 22:08:52 -07:00
Dustin Brown
6cb0fa1c4f qcacmn: Create qdf_log_timestamp_to_secs helper function
Create a timestamp conversion helper that returns whole seconds and
remaining micro seconds, for easier consumption by logging methods.

Change-Id: I5bc40075566485f3dc9f7e5fd81a13ec462c5da0
CRs-Fixed: 2031564
2017-04-13 21:31:10 -07:00
SaidiReddy Yenuga
674c4a0650 qcacmn: clear qdf_net_buf_track_free_list in nbuf memory manager destroy
qdf_net_buf_track_free_list not cleared in nbuf memory
manager destroy API leads to crash in reprobe case.

clear qdf_net_buf_track_free_list in nbuf memory
manager destroy.

CRs-Fixed: 2029297
Change-Id: I4d652c38a23f0e31ff21321692bcecc9456bf03a
2017-04-13 19:17:52 -07:00
Krishna Rao
5ded5dd1bd qcacmn: Populate DFS_CFREQ2 and BW-NSS mapping
Make the following TLV WMI layer changes related to 160/80+80 MHz
functionality:
  - While forming the VDEV start/restart command, if the request from
    the upper layer indicates the dfs_set_cfreq2 flag, then enable the
    WMI_CHAN_FLAG_DFS_CFREQ2 channel flag. This is needed in order to
    enable radar event reporting for the secondary 80 MHz segment.
    Make this change only in the WIN specific implementation of
    copy_channel_info(). If required for MCL, to be handled separately.
  - Move the 'peer_bw_rxnss_override' member in
    'struct peer_assoc_params' to outside the '#ifndef CONFIG_MCL'
    section so that it is available both on MCL and WIN. Since
    in MCL code peer_assoc_params is initialized to all zeros and
    peer_bw_rxnss_override is not set anywhere later, this should
    have no side effects.
  - While forming the PEER assoc completion command, populate the
    peer_bw_rxnss_override field as per the corresponding parameter
    sent by the upper layer. This is required for providing override
    values of Rx NSS for bandwidths higher than 80 MHz.

Testing:
   - Tested on QCA8074 that the WMI_CHAN_FLAG_DFS_CFREQ2 channel flag
     is being set in the VDEV start command if the secondary 80 MHz
     lies on DFS channels (tried VHT160 and VHT80_80)
   - Tested on QCA8074 AP and STA that the peer_bw_rxnss_override
     value is being set in the PEER assoc completion command to
     indicate Rx NSS value 2, when NSS value 4 is used for <=80 MHz
     (tried VHT160 and VHT80_80). Also tested ping.

Change-Id: Ic45d80567eeed3707f76e513f772ce4da71d6ee0
CRs-Fixed: 2022037
2017-04-13 18:37:50 -07:00
Himanshu Agarwal
33d0d707bd qcacmn: Add support to add memory tracking in tx path
Add support to add memory tracking in tx path in WLAN driver using
already present infrastructure for memory tracking.

Change-Id: I6a2c9890e0af1fd51c4e2dfcded68f0075a3a4ef
CRs-Fixed: 2025670
2017-04-13 17:53:03 -07:00
Wu Gao
a47828dd20 qcacmn: Handle scan dequeue event and start failed event
Handle scan dequeue event and start failed event in P2P component,
same as scan complete event. Fix incorrect method to call qdf wait
single event. Fix code style issue.

Change-Id: Id8fbf5180a942183eff9b02f36f945fe17ceab6e
CRs-Fixed: 2032600
2017-04-13 17:08:30 -07:00
Abhishek Singh
5468c57437 qcacmn: Register PNO callback only when PNO req is sent
PNO can be initiated from IOCTL with different calback and
thus register the callback while sending the PNO req.

Change-Id: I74109fc88cfbd082ce2ba5ca0a2396ab08b82b42
CRs-Fixed: 2032434
2017-04-13 16:27:01 -07:00
Subrat Mishra
9c63fb71d0 qcacmn: ATF Rx Ops prototype change
Minor changes to return types of few function pointers.
Changes made during ATF validation on DA.

Change-Id: I2db8fbe7942b293ca01811fdb482afc9c8f533ce
2017-04-13 13:17:14 -07:00
Selvaraj, Sridhar
e440caa3b3 qcacmn: Remove Logger socket app msg init/deinit changes
Now all host and firmware logs are sent to multicast group id's
and are not sent to particular process on userspace.

Change-Id: I6fc9540de1313d6a2ad3564090e5fed281f54a62
CRs-Fixed: 2024754
2017-04-13 10:32:09 +05:30
Houston Hoffman
1a601690a1 qcacmn: Set SRNG_ENBLE bit in SRNG MISC register
Setting the SRNG_ENABLE bit is required for devices with newer
hardware definitions.  Setting this bit is a no-op for older
hardware.

Change-Id: I2e0369b62a89f6a9a32f9e211ab815e3c16b2393
CRs-Fixed: 2032351
2017-04-12 18:23:10 -07:00
Kiran Venkatappa
3453674e75 qcacmn: Off-chan txrx componentization changes
Add new module id for offchan txrx compotent and call offchan init/deint.

Change-Id: I803925d2dafdbe3800636de4e5ac4ae69c4851d0
CRs-Fixed: 2030050
2017-04-12 06:02:11 -07:00
Tallapragada Kalyan
3a0005c210 qcacmn: skip wds handling for raw mode pkts
avoid  wds source port learning for RAW pkts

Change-Id: I38e27890bd4cd12b812a584a32de10499ef736fe
2017-04-12 05:22:30 -07:00
Tallapragada Kalyan
fd1edcc084 qcacmn: Add support for radio-based packet steering
packets received on a particular radio are queued to
a user configured reo destination ring.

Change-Id: I080090f22b80fd8d8868df4145b82888e1111cea
CRs-Fixed: 2017081
2017-04-12 04:42:35 -07:00
Venkateswara Swamy Bandaru
61824944ab qcacmn: Add API to support configuring external group interrupts
Added API to support configuring external group interrupts for AHB bus.

Change-Id: If65984183db808e68dea680c585692e1533e4c7a
CRs-Fixed: 2018655
2017-04-12 04:02:03 -07:00
Venkateswara Swamy Bandaru
0bce0449f0 qcacmn: Fix for htt_included bit issue for mesh raw packets
HTT meta data valid set properly for scatter gather path mesh packets.

Change-Id: I6dc5b061bc187f3679e9bc80615168724469fdd3
CRs-Fixed: 2003389
2017-04-12 03:17:24 -07:00
Poddar, Siddarth
5503c76aca qcacmn: Add iwpriv pktlog command to clear pktlog buffer
Implement iwpriv pktlog command to clear pktlog buffer.
This command is effective only if pktlog disable is issued previously.
This command needs one argument.
Command to use this feature : iwpriv wlan0 pktlog 4

Change-Id: I431169a10828b6cfcd21c7d8065f325c5eb8cbba
CRs-Fixed: 2031212
2017-04-12 01:14:08 -07:00
Kapil Gupta
a6e44ca3bd qcacmn: Initialize scan_f_chan_stat_evnt from configuration
Currently driver is not initialize scan_f_chan_stat_evnt from
the configuration file which causes WMI_SCAN_CHAN_STAT_EVENT
to be always not included in the scan flag.

Add changes to initialize scan_f_chan_stat_evnt based on
ini configuration.

Change-Id: If6ea1d5c4efcc6d934daf00b537f25f0727ee55b
CRs-Fixed: 2031301
2017-04-11 11:46:29 -07:00
Abhijit Pradhan
3228727ce2 qcacmn: Regulatory component is disabled to fix the crash in X86
Array overflow causes kernel panic. Need to fix it in future;
disabling the regdb component now.

Change-Id: I2d2b6cff74a174c19cd1a84c63e3009fc952d165
CRs-Fixed: 2002892
2017-04-11 11:45:49 -07:00
Wu Gao
5126329e8c qcacmn: support dequeue and start failed event for scan from STA
It doesn't process scan dequeue and start failed event, which cause
STA scan doesn't complete and blocking next scan work in
wpa_supplicant. For scan dequeue and start failed event with match
reason, indicate scan aborted to up layer.

Change-Id: I8861e277143116878f6714e50b600d77df69eeb1
CRs-Fixed: 2029955
2017-04-11 11:45:13 -07:00
Pamidipati, Vijay
8a4e27cd59 qcacmn: Move qdf_nbuf_map call to after adding HTT header
Remove the dependency of dma_map for align_pad calculation
move the dma_map to correct position after mesh mode header addition

Change-Id: Idd309ed47d82f68f97191048c582c1b429f3b378
CRs-Fixed: 2004658
2017-04-11 11:04:45 -07:00
Houston Hoffman
adc3147da9 qcacmn: add htc_get_tx_queue_depth api
Wish to know the number of unsent packets in a given tx queue

Change-Id: I73999de9aaadbb61eea13388e583e341e1d7855a
CRs-Fixed: 2018893
2017-04-11 11:04:44 -07:00
Houston Hoffman
ac99ac8eea qcacmn: Update sw index from hw for ce_sendlist_send on data path ces
Fix CE full error when only legacy hif_send_head api is used on a ce configured
to use the fastpath logic.

Change-Id: I59530a0e5ff8b62a1b97007dcd959daa03025785
CRs-Fixed: 2018893
2017-04-11 11:04:44 -07:00
Houston Hoffman
1c72830f3b qcacmn: Unmap ce nbufs before free
freeing mapped memory may lead to resource leaks.

Change-Id: I75664b1a987c1339aa173672c9af670f8b3ffeb8
CRs-Fixed: 2020793
2017-04-11 11:04:42 -07:00
Houston Hoffman
b01db18853 qcacmn: simplify error handling in ce_init(1)
move ce_id_to_state assignment to the end where ce_init
is guaranteed to succeed.

Change-Id: I5172eb1136dde2aad915c2497ece94150c95630f
CRs-Fixed: 2020794
2017-04-11 11:04:42 -07:00
Houston Hoffman
748e1a690f qcacmn: use hif_select_service_to_pipe_map for consistency
Copy pasted logic was not maintained, leading to different
maps being used in different code sections. Also fixes
fw assert where multiple wmi services are not available on
the fw for napier.

Change-Id: Iff3ec8938cc16afe0ebae54244060afb0a7d0b2e
CRs-Fixed: 2030840
2017-04-11 11:04:40 -07:00
Rajeev Kumar
bc62343617 qcacmn: Migrate WMI from shared work queue to dedicated work queue
WMI RX event processing is very critical for WLAN driver and today
we are using kernel's shared event work queue. Shared event work
queue is used by many drivers and if any work submitted in shared
work queue takes longer time to finish then it directly impacts WLAN
control path processing.

Define a dedicated work queue for WMI RX event processing and use
it for WMI RX event handling.

Change-Id: I8ee6ca5b4b20c3357d46f8b56943078a0a76977f
CRs-Fixed: 2029775
2017-04-11 11:04:40 -07:00
Rajeev Kumar
fd15ef2196 qcacmn: Return status from qdf_create_work
qdf_create_work is not returning any status hence modify it
to return proper QDF status to know proper status of work creation.

Change-Id: I8fc84933cc85ba628363638d7567b083ecbf4f34
CRs-Fixed: 2026441
2017-04-11 11:04:39 -07:00
Abhijit Pradhan
32eb664610 qcacmn: dfs_ioctl header file is moved to common services
dfs_ioctl header file is used by both mlme and dfs module.

Change-Id: Iafe0e38a97454418444e6489439f375d26928fe2
CRs-Fixed: 2001106
2017-04-11 11:04:38 -07:00
Venkata Sharath Chandra Manchala
a405eb741b qcacmn: Add dump stats feature for Lithium
Add support for dump statistics in Lithium.
Statistics include:
	1. Tx path packet flow
	2. Tx Histogram stats per interrupt
	3. Rx path packet flow
	4. Rx Histogram stats per interrupt

Change-Id: I7f399b717a9fb29a3d6ab672b669c6e323f61e27
CRs-Fixed: 2023386
2017-04-11 11:04:37 -07:00
Orhan K AKYILDIZ
5adc058835 qcacmn: Add boundary check on TSO segments
In the error-path execution stream where number of tso segments
in a tso_descriptor, there was an assumption that the number would
be > 0 (normal case is 2). When it is zero, a segment at a wrong
index (-1=> (4M-1)) was being unmapped, which was a bad access.
Add code to make sure that the index in question is in the range.
Need still to understand the reason why num_segs were smaller (0)
then expected (2).

Change-Id: I5d6e16f48f29c98cfb2191cf497f4203ea56a78f
CRs-Fixed: 2028808
2017-04-11 11:04:36 -07:00
Dustin Brown
07d24be439 qcacmn: Implement hif_dummy_map_ce_to_irq
Implement hif_dummy_map_ce_to_irq to prevent runtime errors on new
platforms that do not use hif_map_ce_to_irq.

Change-Id: I9e3da22e237c351ecc9919e69d8d68a656ef7cc9
CRs-Fixed: 2028145
2017-04-11 11:04:36 -07:00
Abhijit Pradhan
2e59ee0145 qcacmn: A common function to get dfs_rx_ops
Instead of calling and defining the same function from different files,
have a common function in a header file and call it from different files.
The function retrieves the dfs rx_ops from the psoc context.

Change-Id: I1c9089c2508faa9ee7a5bf6645dcf02659923bc3
CRs-Fixed: 2001106
2017-04-11 11:04:35 -07:00
Abhishek Singh
2c3ce9dbb8 qcacmn: Add WMI changes for PNO for converged scan
Add WMI changes for PNO for converged scan

Change-Id: I8133030502f63f458164f705aa88ebadf446ae60
CRs-Fixed: 1095299
2017-04-11 11:04:34 -07:00
Abhishek Singh
8c6e82d763 qcacmn: Add PNO changes for converged scan
Adds PNO related changes for converged scan

Change-Id: Ia18e48645d511134698777b334348d68daf2dbee
CRs-Fixed: 1095299
2017-04-11 11:04:33 -07:00
Kiran Venkatappa
fa59ee7936 qcacmn: Add WMI APIs to send and extract offchan data tx
Add API to send offchan data TX command and extract API to get offchan
data tx completion params.

Change-Id: I1e04d50810e43cec2c700476581e518b394db582
2017-04-11 11:04:32 -07:00