نمودار کامیت

4069 کامیت‌ها

مولف SHA1 پیام تاریخ
Will Huang
a30dd10220 qcacmn: Rename wmi_do_wow_xxx to wmi_d0_wow_xxx
wmi_do_wow_disable_ack_event_id was named by mistake, rename it where
use it as wmi_d0_wow_disable_ack_event_id.

Change-Id: Ic11cb2a260b2ac65d0324d950d043988a7da6657
CRs-Fixed: 2160870
2017-12-19 13:37:42 -08:00
Krishna Rao
fcb834f3bc qcacmn: Add QCA vendor command and attributes for RROP
Add QCA vendor command and attributes for vendor specific
Representative RF Operating Parameter (RROP) information. This
information is intended for optional use by external ACS. It provides
guidance values for some RF parameters that are used by the system
during operation, so that external ACS can utilize these to compare
between channels, bands, etc.

CRs-Fixed: 2152786
Change-Id: I911a96ad860331ab7af718c166806ffc7d1c5052
2017-12-19 05:45:32 -08:00
Sathish Kumar
a9a42ebe04 qcacmn: Add module id for direct buffer rx module in QDF debug trace
Direct Buffer Receive provides the driver with a mechanism by which target
can transfer information directly into host memory via DMA.

Add module id and set default trace level for the module.

Change-Id: Id2c64a342867c499a1f5f10e46b40a2b53161d2e
CRs-Fixed: 2157978
2017-12-19 03:03:48 -08:00
psimha
9aec0b53dc qcacmn: Add NULL checks before accessing pldev
Add NULL checks before accessing pldev object in the pktlog module.

Change-Id: I7139480c028a54fab9d73d5b68494cc42ef6d427
CRs-Fixed: 2158642
2017-12-18 21:48:42 -08:00
Kabilan Kannan
529d3e8a7c qcacmn: Fix the TDLS command process map
TDLS command processing incorrectly fall through
to the wrong command, and it causes the crash
in the system.
Fix the mapping in TDLS process command
function

Change-Id: I296e10f92e283a813259e1f33143d09bcf3ab39b
CRs-Fixed: 2159351
2017-12-18 17:37:14 -08:00
psimha
223883fb88 qcacmn: Handle RX defrag in exception path
- Perform SW chaining of fragments.
- Reinject only the head fragment to REO.

Change-Id: I198db3ba4319b8a2e800eb7495cf190c5e86d4cd
CRs-Fixed: 2144197
2017-12-18 15:55:14 -08:00
sumedh baikady
e3947bd8d6 qcacmn: Add stats for BA per Tid
Adds stats for number of ADDBA, DELBA requests,
pn size and window size per tid.

Change-Id: Ib7e3a9b948439695afd9a952fe46ac42ac58c653
CRs-fixed: 2151863
2017-12-16 19:25:08 -08:00
Paul Zhang
8b7ea68fc0 qcacmn: Do sanity check of requester ID
If the requester id is 0 or other invalid values,
the function scm_scan_get_requester_event_handler
will get unexpected handler.

Change-Id: I505e2e1a1bdc9cec57aaa0c28abadf28d228ba5b
CRs-Fixed: 2147555
2017-12-16 14:08:10 -08:00
Paul Zhang
d1e56f9082 qcacmn: Correct the structure of rsn_mdie
The function util_mdie_match() will get the value of
mobility_domain. Since the structure is not right, it
will get the ie ID and length instead of the right
value.

Change-Id: I1d3d831ebf39fedc17c0f88a88d82114df9e6979
CRs-Fixed: 2147555
2017-12-16 14:08:08 -08:00
Surabhi Vishnoi
e7c1401cf0 qcacmn: Change the data type of message type id
The datatype of wd_msg_type_id was uint16_t which truncates the
upper bytes of msg id.

Changing the datatype of wd_msg_type_id from uint16_t to uint32_t.

Change-Id: I49b5eefd878660f6ba3d0b7da451df99661c59df
2017-12-16 14:08:06 -08:00
chenguo
8107b66d8f qcacmn: Fix NR_CPUS overflow for one byte data structure
For one byte data structure of unsigned type, it is expected that
the maximum value is 255. However, NR_CPUS is 512 in x86 setup of
Napier.

CRs-Fixed: 2158203
Change-Id: I057fb0cf3c11e687dfdd6cd2295b16743297d561
2017-12-16 13:27:46 -08:00
chenguo
2649554e73 qcacmn: Fix memory copy overflow in dp_process_htt_stat_msg
In dp_process_htt_stat_msg function, the stats message must be
interpreted one by one. It can't move to the next message unless
the current one is handled completedly. Or else it will cause a
memory copy overflow.

CRs-Fixed: 2156792
Change-Id: I8a3784cd17f2a68b16c4f47c6b1a24e12d23aaa5
2017-12-15 23:19:45 -08:00
Om Prakash Tripathi
8509483038 qcacmn: Add option to wait for target scan cancel
Current scan cancel API frees scan request and notifies internal
scan complete event to registered scan event handlers.
Add option to wait for target scan cancel event before freeing
scan request.

Change-Id: I9ccd753595b3467f6b4e668e9cac876a1105bba0
CRs-Fixed: 2145484
2017-12-15 21:25:19 -08:00
Govind Singh
11c7f8b00e qcacmn: Dump WMI work queue stack for watchdog bite
In the event of an WMI work queue watchdog bite, dump the stack
trace to aid in debugging.

Change-Id: I7f3df5a56904748fb80afb1aef1aed90d20fbbc0
CRs-Fixed: 2145913
2017-12-15 19:26:25 -08:00
Dustin Brown
e0c9f6699f qcacmn: split scheduler init/deinit
A commonly used and robust life-cycle pattern consists of the following
4 steps:

	1) create (allocate resources)
	2) start (mark resources as safe for use)
	3) stop (mark resources as unsafe for use)
	4) destroy (deallocate resources)

This pattern effectively prevents access to uninitialized and freed
resources. While the dispatcher psoc life-cycle follows this pattern,
the global life-cycle is condensed into steps 1 and 4. Unsurprisingly,
this led to uninitialized and freed resource access problems, especially
in regards to the scheduler thread.

Split the scheduler init and deinit life-cycle functions into init,
enable, disable, and deinit. Create new global enable and disable
dispatcher functions, and call the new scheduler APIs as appropriate.
This brings the global dispatcher life-cycle in line with the existing
psoc life-cycle, and prevents many scheduler related resource access
issues.

Change-Id: I58b65be0611f48e48354f28c221185f6f490f30c
CRs-Fixed: 2153283
2017-12-15 05:25:35 -08:00
Naveen Rawat
c3b7a68d54 qcacmn: Add SYS_MSG_ID_UMAC_STOP system message
Add SYS_MSG_ID_UMAC_STOP to allow umac close to be done in
mc thread context.

Change-Id: I11946ce7aa21ce96f71d604244b9981dcae9704a
CRs-Fixed: 2156189
2017-12-15 03:42:16 -08:00
Lin Bai
ebf8d63835 qcacmn: Fix athdiag regression caused by boundary check
for QCA6290/QCA8074, input offset value will include memtype as well,
which not covered by current boundary-check, and will fail it.

Limited current boundary-check for legacy chip currently.

CRs-Fixed: 2157285
Change-Id: Id1e1fd10b4539288c461c6403fd8110fd5056dd5
2017-12-15 03:42:14 -08:00
nobelj
2c3db26446 qcacmn: passing correct argument to qdf_mem_set api
qdf_mem_set api parameter switched!
old
qdf_mem_set(void *ptr, uint32_t value, uint32_t num_bytes)

new
qdf_mem_set(void *ptr, uint32_t num_bytes, uint32_t value)

Change-Id: I4ebbc222d32e6fe18c28f2446102c95bfc734c8e
2017-12-14 17:45:20 -08:00
Lin Bai
fca7640032 qcacmn: Fix memory leak when failing to delete RX TID
During RX TID deletion, if FLUSH_CACHE REO cmd fail to be sent,
the required callback function won't be invoked, hence
local allocated REO desc and related TID queue desc will leak.

Do clean up when REO cmd failed to be sent.

CRs-Fixed: 2155929
Change-Id: I02ff4a2340ad32986c30b935a376924bb75edb67
2017-12-14 17:45:18 -08:00
Ravi Joshi
54ee5e48db qcacmn: Enable support for HE radiotap headers
radiotap has updated HE (11ax) radiotap header extensions.
The change enables the support for those headers in the
driver.

CRs-Fixed: 2133532
Change-Id: I42c4f13e157ea981d6a276582553893921a70758
2017-12-14 11:25:18 -08:00
Nandha Kishore Easwaran
b0ac369215 qcacmn: Delete igtk keys: key_idx 4 and 5 for PMF
Delete igtk keys of index 4, 5 if PMF configuration
is changed

Change-Id: I5f0de09fb713864a0e2cb3036633bf5c131e1f8c
2017-12-13 23:38:14 -08:00
chenguo
85d964f48b qcacmn: Add AST type for DP path
There is a hard-coded AST type number used for DP path, which will
cause poor readability. Fix this problem by using a pre-defined
constant type value.

CRs-Fixed: 2142975
Change-Id: I3520970bf59ea7152a0851cfdc3b8e7943ddbc19
2017-12-13 23:38:12 -08:00
Krunal Soni
6be39c17e9 qcacmn: Remove unused structure while sending probe resp template
While sending probe response template down to firmware, driver
populates some items in data-structure which is not getting used.

Remove those unused items and send only what is needed.

CRs-Fixed: 2130437
Change-Id: I1878f523f0f88c354854dfdb75e60e66c4ecb0e8
2017-12-13 21:38:45 -08:00
nobelj
d124b749b7 qcacmn: Add support to set monitor filter dynamically
htt_h2t_rx_ring_cfg is invoked with suitable configuration based on
filter passed by wlan_set_monitor_filter.

Change-Id: I2fbb81e95903ae1bead92892fdb3165c8a515f14
2017-12-13 20:08:29 -08:00
Sathish Kumar
03d77e6590 qcacmn: Add source ring for direct buffer rx module
Direct Buffer Receive provides the driver with a mechanism by which target
can transfer information directly into host memory via DMA.

DMA rings must be initialized and configured before they can be shared
to the target for transfer ot data. Host driver will use the HAL SRNG
APIs to create, initialize and configure the DMA rings.

Change-Id: I43cd39ccbb5f5069c9a14092459d5c88ea514dca
CRs-Fixed: 2157986
2017-12-13 19:18:09 -08:00
Tallapragada Kalyan
2a5fc625d2 qcacmn: Add WDS Vendor Extension ECM Framework
Add WDS tx/rx policy checks in Tx and Rx datapaths.
In Rx path, check packets against rx policy configured
In Tx Reinject path, checks are to process or drop 4-addr/3-addr packets
to peers decisively

Change-Id: I0a6c01b7555fa5d369ab2c9baf454d49808857fc
2017-12-13 12:15:54 -08:00
jiad
9dee72a40c qcacmn: fix invalid vdev for group tkip mic error
In tkip mic error handler, addr1 (RA) is used to find vdev.
This is fine for unicast tkip mic error. But for group tkip
mic error, addr1 will be group address thus vdev will not
be correctly returned.

Fix is to use sw_peer_id in rx_mpdu_start tlv to find peer.
And use peer to find corresponding vdev and pdev.

Change-Id: I1e9e461318e25184ef7113132adaa7fe7853924d
CRs-Fixed: 2157532
2017-12-13 05:40:24 -08:00
Abhishek Singh
3f11bd6b0a qcacmn: Add logic to logically delete the scan cache node
When a beacon/probe resp is received the scan cache delete the
old node (N1) and adds a new node(N2) at the end of the list, If any
other process is using old node (N1), for some amount of time driver
will have 2 entry for the same AP. Now if driver again receive a
beacon/probe resp during this time, it end up deleting the older node
(N1) Again and thus making its ref count 0 and freeing it, even when
the process using old node (N1) hasnt freed it.

To fix this add a active state to the scan node, and mark it inactive
or logically delete the node as soon its deleted from ageout, entry update
or flush logic. Also do not use the inactive or logically deleted node
for any new operation. For this add a logic to return only active nodes in
scm_get_next_node.

CRs-Fixed: 2155538
Change-Id: I186d3a0b0540f0b572735e1d95239ddcd8c9bdc9
2017-12-13 05:40:22 -08:00
Soumya Bhat
5c60deba48 qcacmn: Send RX DESC WDI event with AM Copy mode
Add support to send RX PPDU metadata, when AM copy mode is
enabled.

Change-Id: I1971dcb7653421d25bd40c52e257d9b06ffaaf38
CRs-Fixed: 2157345
2017-12-12 21:27:35 -08:00
Soumya Bhat
f451d046d1 qcacmn: Fix bug in handling hal rx status tlv
Add missing break identifier in switch case of
hal_rx_status_get_tlv_info() used to parse hal rx status
TLV.

Change-Id: Ie913b6795d0a73fe8d28fefedd7ab799edda2619
2017-12-12 18:36:21 -08:00
Mohit Khanna
adfe908a35 qcacmn: Add peer APIs to get and release peer ref
The existing peer API cdp_peer_find_by_add does not maintain any peer
references. So a peer which is returned by the API may get deleted in a
different context. This may lead to access to a already deleted memory.

Fix the issue by introducing new APIs "peer_get_ref" and
"peer_release_ref" which make sure the peer is valid until it is
"released" (peer_release_ref is called).

Change-Id: Id04d13bc6a1b8a55c1ae9246077f64ffb86de3d8
CRs-Fixed: 2146742
2017-12-12 17:57:32 -08:00
Dustin Brown
f7fb76bd5e qcacmn: Add qdf_mc_timer_check_for_leaks API
Add a new  QDF MC Timer API for asserting that there are no active MC
Timers allocated. This is useful for detecting MC Timer leaks at
runtime.

Change-Id: I272ce806111b01b5c7f6b0dfef2e992c27b83529
CRs-Fixed: 2125800
2017-12-12 15:56:48 -08:00
Tallapragada Kalyan
c5ac638d51 qcacmn: Save first msdu and last msdu flags in NULL queue handler
We need to save the first msdu and last msdu flags in nbuf cb
so we can do WDS source port learning only for the first msdu
even in the null_q_handler. Without this fix we observed traffic
stops when WMM is disabled.

Change-Id: Ic7870354519ebebb8a5025b3e6c9741064686199
2017-12-12 03:24:38 -08:00
Dustin Brown
f4c76f9329 qcacmn: Refactor Scheduler init/deinit paths
There are many minor discrepancies in the scheduler module's init and
deinit paths. Refactor the scheduler init/deinit code paths to address
any discrepancies between the two. Also ensure error path cleanup cleans
up all the resources that were previously created.

Change-Id: Ib392f41a887031cd710aebaca32eb653952550a4
CRs-Fixed: 2153210
2017-12-11 22:08:32 -08:00
Dustin Brown
91abaccb45 qcacmn: Use sched logging helpers in scheduler_api.c
A set of logging helpers for the scheduler component were previously
added to reduce boilerplate logging code. Update scheduler_api.c to use
the new logging helpers.

Change-Id: I45715e40dbdd5a94d064ca4c64290a443cacea34
CRs-Fixed: 2152575
2017-12-11 22:08:30 -08:00
Paul Zhang
d6d1635ec8 qcacmn: Implement interface to set WLM level
WLAN Latency module (WLM) is added by fw to gain latency
because of schedule out of service like power saving,
scanning, roaming etc. per the level set by framework.

Change-Id: I6b8775e5f492b6f287d60d39610a544114185a23
CRs-Fixed: 2152290
2017-12-11 22:08:28 -08:00
Alok Kumar
ebdb2daf68 qcacmn: Replace instances of unadorned %p
Replace instances of unadorned %p which violates security guidelines.

Change-Id: I0b00fb9f997d3ed6a2824c2bb133c343fc92caef
CRs-Fixed: 2133330
2017-12-11 11:25:12 -08:00
Kiran Venkatappa
ca1b9f8769 qcacmn: Increase WMI event ring size for HK
WMI event pipe is shared between multiple pdev and it needs be big
enough to support events from 16+16 vaps. Increase it to 256 considering
128 used in older chipsets to support 16 VAPs for single pdev.

Change-Id: I7a1d8915c7c9a1916fb10408678f49e42147b189
CRs-Fixed: 2153720
2017-12-11 11:25:08 -08:00
Radha krishna Simha Jiguru
47876f618c qcacmn: make dp_send_compl_to_stack non static
make dp_send_compl_to_stack non static to be able to call it from
NSS offload path for FR 42926

Change-Id: Ie93f011c784bd6c95efbd79b6645f556ba198d66
2017-12-11 09:31:27 -08:00
Venkata Sharath Chandra Manchala
09adf5336c qcacmn: Enable Packetlog
Enable Packetlog for Lithium Based chipsets by:
Replacing ol_txrx calls with equivalent cdp calls

Change-Id: Ibf4431daca23c23c9e1c1a5e1ebb2579079e4969
CRs-Fixed: 2117063
2017-12-09 23:27:27 -08:00
Venkata Sharath Chandra Manchala
5a6f4296cd qcacmn: Add timer to reap monitor rings
Add polling timer to reap monitor status rings
until PPDU end interrupts are enabled.

Change-Id: I742b0df6fd5a369d9664b5c2e09a70916585174b
CRs-Fixed: 2117063
2017-12-09 23:27:22 -08:00
Poddar, Siddarth
7055c33bdb qcacmn: Fix potential buffer overflow in process_tx_info
Check for buffer overflow for pktlog messages in process_tx_info
function before doing mem copy.

Change-Id: I5d34bfdecb4fd9dad1741da2256873ef3e9e708c
CRs-Fixed: 2154974
2017-12-09 15:44:41 -08:00
Karunakar Dasineni
ce24321384 qcacmn: Fix bug in recent NAPI scaling change
Fix issue in reverse mapping of scaled NAPI budget.

Change-Id: I61e54122b406eed2189c9c857ca8423a61d38090
CRs-Fixed: 2156349
2017-12-09 15:08:29 -08:00
Linux Build Service Account
42f0350da1 Merge "qcacmn: Fix ext Tx descriptor pool lock issue" 2017-12-09 03:33:26 -08:00
Manjunathappa Prakash
ddf07405c5 qcacmn: Fix ext Tx descriptor pool lock issue
Replace internal spin_lock macros with qdf_spin_lock APIs for lock
operating on TSO/EXT descriptor pools.
TX_DESC_LOCK_* APIs are used only by the flow_control V2 support
to by pass them.

Change-Id: I926c279de3878b6f48efd798194fa896072c1f6d
CRs-Fixed: 2142815
2017-12-08 06:22:32 -08:00
Chaithanya Garrepalli
30927c532c qcacmn: changes for httstats application
Added a cdp call back to indicates HTT stats response
to ol layer

Change-Id: I90024469a7877419508c230358fdebe4c1525ee7
CRs-Fixed: 2133000
2017-12-08 00:21:23 -08:00
Varun Reddy Yeturu
e0883edf1d qcacmn: Define BAND_UNKNOWN in enum band_info
Define BAND_UNKNOWN in enum band_info

Change-Id: Icae4576b5c511fb8d74fd2bcef95642b416a56e4
CRs-Fixed: 2154595
2017-12-07 23:19:04 -08:00
Yun Park
11d46e0476 qcacmn: Optimize data path logging
Remove or lower log level to reduce log from data path which affects
to TPUT.

Change-Id: I7d4344c80cefb4a9539644ef50ff2074d80d6548
CRs-Fixed: 2143250
2017-12-07 22:34:10 -08:00
Ashish Kumar Dhanotiya
33608d1e94 qcacmn: Add a wakelock reason for monitor mode
Add a wakelock reason for device entering monitor
mode.

Change-Id: I27ba2d43fd7b84bc1ae7e6046ab635065872b2d2
CRs-Fixed: 2150162
2017-12-07 22:34:07 -08:00
Kris Muthusamy
f1db3f4b21 qcacmn: WMI changes for target scheduler policy
WMI changes for target scheduler policy

Change-Id: I80407695af4bd8c9c57ae0bf33d0f03bac879c84
CRs-fixed: 2152448
2017-12-07 17:25:30 -08:00