نمودار کامیت

194 کامیت‌ها

مولف SHA1 پیام تاریخ
Ravi Joshi
1eaf7b5b82 qcacmn: Update radiotap header to include HE parameters
Add/extend radiotap header to include high-efficiency (11ax)
parameters.

CRs-Fixed: 2071602
Change-Id: I8bfbed16edca42eb38256bccc2efff8f21e50f15
2017-07-06 21:55:15 -07:00
Kapil Gupta
7401104431 qcacmn: Add support for AES ctr mode for kernel 3.18
Add changes to support AES CTR modes for FILS encryption and
decryption.

Change-Id: I418e85987bfa96efb7b9dc10e9b2125290299c89
CRs-Fixed: 2039626
2017-07-06 08:29:27 -07:00
Kapil Gupta
041087bfe8 qcacmn: Resolve compilation errors in lower version kernels
symmetric key cipher APIs are present in linux kernel version 4.3
and above only.

Add changes to protect symmetric key cipher APIs invoke in lower
version kernels.

Change-Id: I512d0d98886c887a242a834763b46b2ec0cd4751
CRs-Fixed: 2034502
2017-06-28 12:47:42 -07:00
Kapil Gupta
830881389a qcacmn: Add changes to support crypto API
Add support for hash, hmac-hash calculation and
aead encryption and decryption.

Change-Id: Idddcfaa2ec4c5689c997559551230bc8f59df032
CRs-Fixed: 2029962
2017-06-28 12:47:14 -07:00
Rajeev Kumar
fdcab13767 qcacmn: Do not free leaked memory if halt on kmem leak is enabled
If halt on memory leak is enabled then do not free the leaked memory
because when leaked memory gets freed kernel poisons it with 0x6Bs
and all useful data from leaked memory gets lost. In addition add the
leaked memory in a global trash list such that leaked memory can be
extracted for offline debugging.

Change-Id: Ie37fd810199e845831c3c3f325ef1e9ff60c5f37
CRs-Fixed: 2055470
2017-06-27 20:02:00 -07:00
Tallapragada Kalyan
0cd1793ba5 qcacmn: fix skb cb corruption issue
the ftype in skb->cb is overshooting allocated 48 bytes
causing kernel crash

Change-Id: Ie33508c462a032b28624de5270ce91a93d0b067d
2017-06-27 10:32:46 -07:00
Rakesh Pillai
847482ff8e qcacmn: Fix buffer overflow when radiotap header is larger than available headroom
The condition which detects if the length of the radiotap header is
greater than the available headroom in the skb is incorrect.

Correction to check if sufficient headroom is available
for updating the radiotap header.

Change-Id: I71c140c6af415678efe66cff2f16b8cabc62697a
CRs-Fixed: 2047909
2017-06-23 07:42:02 -07:00
Zhu Jianmin
af3420af93 qcacmn: Add icmp dptrace for latency issue debug
Ping latency is a key performance KPI for some customers,
need log in debug mode

Change-Id: I96eebf3f249668dd220aa1062fb339f940d36975
CRs-Fixed: 2039646
2017-06-22 04:38:28 -07:00
Mahesh Kumar Kalikot Veetil
6eaefc4bf9 qcacmn: Fix qdf_timer_init/free implementation
With DEBUG_OBJECTS_TIMERS enabled, cds_mc_thread prints warning
"ODEBUG: object is on stack, but not annotated". Since the wd_timer
is on the stack, we should rightly use set_timer API's.

Change-Id: I38061ff6c1b706484cd5d4532954cfa24c7ac0d6
CRs-Fixed: 2052484
2017-06-20 19:36:12 -07:00
Manjunathappa Prakash
86287dcf2e qcacmn: Define platform CACHE_LINE_SZ
Add platform CACHE_LINE_SZ so that it can be used to roundup the data
structures.

Change-Id: Iec45f5747956d0797411f76c2fec1368a13e7d6d
CRs-Fixed: 2046852
2017-06-19 12:43:31 -07:00
Tallapragada Kalyan
274eb9e76b qcacmn: Temporary WAR for Multicast echo check in host
This is a temporary WAR in host for multicast loopback check
until we finalize on exact design, and host or firmware will
take care of this

Change-Id: I4d2d1b0f5d2a78d4c8716740b74c4fee22c28e96
CRs-Fixed: 2039038
2017-06-16 17:12:15 -07:00
Karunakar Dasineni
4055568bad qcacmn: Monitor status ring handling
Changes to process PHY TLVs from monitor status ring and extract
information required for radiotap header.

Change-Id: I99d642e7506ea797b26dbfac89fd223d1a4c0a55
CRs-Fixed: 2048006
2017-06-16 17:12:13 -07:00
Anurag Chouhan
656ec600ac qcacmn: Fix Operands size in a bitwise operation
Bitwise operation on different operands size may lead
to unexpected results, Typecast the constant to
the size of the variable while performing the bitwise
operation.

Change-Id: Ifd9939905cc9df22bb249fa9b1a6a9670cf5f113
CRs-fixed: 2047880
2017-06-14 00:58:30 -07:00
Himanshu Agarwal
26cfe7eb28 qcacmn: Reduce log level of DPTRACE prints to DEBUG
Presently log level of DPTRACE prints is INFO due to
which they are coming in kmsg and causing watchdog bite.

Reduce log level of DPTRACE prints from INFO to DEBUG.

Change-Id: I0124dcc461d3e05541267c8310a43ea3ce0de9af
CRs-Fixed: 2043719
2017-06-14 00:58:27 -07:00
Nandha Kishore Easwaran
7249f0df2c qcacmn: Export qdf_trace_hex_dump
Export qdf_trace_hex_dump to make it available in other module.

Change-Id: Ib59439d64ad31dc23e46caf068914dd0601aa248
CRs-fixed: 2058321
2017-06-08 14:23:07 -07:00
Vivek
2c86b213c6 qcacmn: Replacing qdf_print with QDF_TRACE
Replace all object manager qdf_prints with obj_mgr_err/obj_mgr_info
based on QDF_TRACE with the right log levels.

Added additional debug information like
Pdev_id
Vdev id
Peer MAC address

Change-Id: I96d96182176d332b9fbdb202305d29c08ddc0d18
CRs-Fixed: 2026537
2017-06-06 01:26:00 -07:00
Nandha Kishore Easwaran
e43583f3c1 qcacmn: Dptrace changes to take per pdev stats
Initial changes for adding dp trace in common framework. Modified dp_trace
record sturcture to include pdev_id as a member to take per_pdev stats.
Dump command has been modified to dump stats per pdev.

Change-Id: I8aede0bd8ab6f381c7fa0542d077bdd8bf66b3d2
CRs-fixed: 2038944
2017-06-05 22:52:34 -07:00
Manjunathappa Prakash
ad866513f5 qcacmn: Do not free the src buffer in __qdf_nbuf_cat()
It is callers reponsibilty to free the src nbuf if concat succeeds.

Change-Id: Iaf83524924e312bf819483de38603241f45170a5
CRs-Fixed: 2047585
2017-06-02 14:47:28 -07:00
Houston Hoffman
4a4623c7c7 qcacmn: Let qdf_lock_stats_cookie_create failure be dbg level
qdf_lock_stats_cookie_create is a debug feature.  Its failure should be dbg
level since it fails gracefully.  This avoids watch dogs in cases where
all the cookies have been leaked.

Change-Id: I99c751e6153964d00f2fc0b7dbf174a0e50e7fb9
CRs-Fixed: 2045394
2017-06-01 12:32:21 -07:00
Dhanashri Atre
991ee4defc qcacmn: Modify legacy LRO implementation to use QDF
Modify the legacy LRO implementation to use the implementation
in QDF instead. This is to avoid code duplication and to unify
the LRO implementations for Napier and Helium.

CRs-Fixed: 2042812
Change-Id: I38e9da3b54392a1c5781133916361aac3875d43d
2017-05-26 16:11:22 -07:00
Mahesh Kumar Kalikot Veetil
6d5917ad22 qcacmn: Fix a function redefinition
Remove redefinition of the function 'qdf_mem_debug_debugfs_init' when
WLAN_DEBUGFS is not enabled.

Change-Id: Id35865edda7e41cbc073cfca6099c56e7455165d
CRs-Fixed: 2048039
2017-05-25 18:21:31 -07:00
Mahesh Kumar Kalikot Veetil
5b321ba16e qcacmn: Restrict debugfs file mode
Disable write permission to qdf mem debugfs entries.

Change-Id: I428f2018018cf8edacdbbb9011ed55a8894511d4
CRs-Fixed: 2047311
2017-05-25 18:21:30 -07:00
Mahesh Kumar Kalikot Veetil
e4f8f0e015 qcacmn: Add mem stats for perf builds
Add memory allocation statistics for perf builds where MEMORY_DEBUG is
not enabled. Part of this effort, re-structure some of the QDF memory
APIs. Memory stats shows real size allocated.

Change-Id: I1e8fe0f4080ea186b8bfa0ce0438b4a06dde5a66
CRs-Fixed: 2045476
2017-05-25 18:21:27 -07:00
Dustin Brown
c7e0c63260 qcacmn: Create QDF timer multiplier get/set APIs
In order to provide greater flexibility on emulation platforms, replace
the current hard-coded QDF_TIMER_MULTIPLIER with a pair of get/set
methods, configurable at runtime.

Change-Id: I0757da6c2129db08459411eaef75b6183f1aa557
CRs-Fixed: 2049309
2017-05-24 23:56:53 -07:00
Ishank Jain
6290a3c543 qcacmn: Add APIs to enable HTT FW Stats
Adding support to parse stream of HTT TLV's recieved as response
to the HTT EXT stats request message

Change-Id: I44c990a1ed91c2381b89811de33c0717bd24be7d
CRs-Fixed: 1114641
2017-05-24 02:41:10 -07:00
Dustin Brown
a4c33f01bc qcacmn: Define new qdf_cpu_to_be*() macros
Add a set of OS agnostic CPU-to-Big-Endian byte order macros to QDF.

Change-Id: I8315dd55cf909abb871f7e7eb73684ed794fb134
CRs-Fixed: 2041099
2017-05-23 23:24:48 -07:00
Pamidipati, Vijay
03f1a662a7 qcacmn: TSO Bug fix
Add fix to handle a case where the head SKB carries no payload
and only EIT header

Change-Id: I4513944d1e1f491f985be522bc04be6845c8a3c4
CRs-Fixed: 2004658
2017-05-22 17:05:23 -07:00
Venkata Sharath Chandra Manchala
35503cce26 qcacmn: TSO fixes
1. Unmap tso common segment only after receiving
   completions for all the tso segments for a given
   skb.
2. Keep a track of num of free tso descriptors available
   in the pool of tso descriptors.

Change-Id: I01bdbb9e40b7259f77dbcfeec22c6d8cd0c0a6dd
CRs-Fixed: 2042950
2017-05-22 17:05:21 -07:00
Adil Saeed Musthafa
03e2ac22d7 qcacmn: Change DP_TRACE level to FATAL (instead of NONE)
Change DP_TRACE and DP_TRACE_STATS to use FATAL level.
Set DP module at QDF_TRACE_LEVEL_FATAL by default.

Change-Id: Ia894c6695699192feed204bb0dffdb9cfd59480c
CRs-Fixed: 2048931
2017-05-20 19:26:09 -07:00
Rajeev Kumar
f37f18e2b3 qcacmn: Trigger panic on SKB memory leak in debug builds
To catch SKB memory leaks trigger panic on SKB leak in SLUB debug builds
if CONFIG_HALT_KMEMLEAK is enabled.

Change-Id: I25b65454ec3954fdcbf6e39390ac793ee77fc1f4
CRs-Fixed: 2049330
2017-05-19 23:06:35 -07:00
Dustin Brown
d7cfa497c7 qcacmn: Fix regression in qdf_trace_hex_dump
During convergence, a new module log level table was introduced, however
qdf_trace_hex_dump still points to the old table. Use the newly
introduced module log level table in qdf_trace_hex_dump.

Change-Id: I243a8c8b0ed84d501a472189d89074815ab67334
CRs-Fixed: 2046137
2017-05-19 05:27:18 -07:00
Kiran Kumar Lokere
a843634983 qcacmn: Add support to send new country to FW
Add support to set new country code to the FW

Change-Id: Id24967b7c9e93bfbf045f494f142be9e33e16483
CRs-Fixed: 2042879
2017-05-18 13:42:21 -07:00
Sathish Kumar
adeb66e07c qcacmn: Set default trace level for all modules as NONE
Setting default trace level for all modules registered through shared print
control init as NONE. Any module that requires a valid default trace level
may need to change the trace level in the default array, ensure sanity pass
and merge their changes.

Change-Id: I4d5b195da2646e53dea7beefdd2536fe743ecb34
CRs-Fixed: 2048931
2017-05-18 09:45:23 -07:00
Karunakar Dasineni
b92ecffc25 qcacmn: Fix bug in Hawkeye emulation WAR
Fix address check in Hawkeye emulation WAR.

Change-Id: Ia0a70d0b49084b891a74ca440d9a46485b68dd17
2017-05-17 19:30:42 -07:00
Sathish Kumar
470c620cf9 qcacmn: Modify trace related APIs to support dynamic configuration in WIN
New iwpriv commands are implemented in WIN to support dynamic configuration
of verbose level for each of the module IDs.

Add following changes in trace module to support above requirement -

1. Make qdf_get_pidx and qdf_set_pidx common to WIN and MCL
2. Export g_qdf_category_name to be accessible in WIN driver
3. Add macros to derive upper and lower 16-bits from a 32-bit value
   combining module and trace level information used for dynamic trace
   level configuration per module
4. Address trace level NONE case during registration to set the correct
   mask

Change-Id: I97be5f26b0d611e96409837fb0c03d55ce5f6e07
CRs-Fixed: 2041247
2017-05-16 22:08:07 -07:00
Edayilliam Jayadev
642201f048 qcacmn: Converge the Spectral feature
Add Spectral TxOps and RxOps interfaces in
psoc towards converging the Spectral feature.

CRs-Fixed: 2028657
Change-Id: If5b46fb9d71529060df6e5b242fcc8976fce82f8
2017-05-16 22:08:04 -07:00
Adil Saeed Musthafa
2ef2787255 qcacmn: pass parameter array to set the debug levels
Pass an array of values each of which contains a combination of
module-id and level. This way the levels can be set before all the
dependent KO modules are loaded

CRs-Fixed: 2042170, 2046694
Change-Id: If8c8260cc25e25bd821462f7d8860a13a5961148
2017-05-15 17:00:07 -07:00
Kris Muthusamy
ea7dc9339d qcacmn: Hawkeye emulation WAR
SKBs allocated from higher memory instead of
lower memory range. This is needed for Hawkeye
emulation

Change-Id: Ibeb27c43ee882d772b9166731804faefab2e406e
CRs-Fixed: 2046721
2017-05-12 17:59:10 -07:00
Abhishek Singh
ac80309005 qcacmn: Add runtime suspend logic for scan
Add runtime suspend logic for scan, to block runtime suspend when
scan is started and unblock when scan is completed.

Change-Id: I61c9afaf996d1ac97bfb5ffb0cd8a3abc971051e
CRs-Fixed: 2035675
2017-05-11 06:25:40 -07:00
Rajeev Kumar
452e744883 qcacmn: Define API qdf_create_singlethread_workqueue
Define API qdf_create_singlethread_workqueue to create a single
threaded dedicated work queue.

Change-Id: Iab70044888911c1e4adba63e8eee643d5693d716
CRs-Fixed: 2026443
2017-05-06 23:40:15 -07:00
Houston Hoffman
284d5f66cb qcacmn: Introduce qdf apis for register io
Hif should not be used as an os abstraction layer for hal.

Change-Id: I50600229ad24414967347d71a637f75b30699dd7
CRs-Fixed: 2032131
2017-05-02 20:06:39 -07:00
Orhan K AKYILDIZ
c59be52d47 qcacmn: Add debug for TSO seg double-free
Add TSO segment debug code, in a featurized way, so that
when disabled, it will tolerate redundant returns to the internal
pool and when enabled, it will check sanity on free, and record a
history of last 16 actions on the segment in the object.

Goes with the corresponding cld3 component counterpart.

Change-Id: Ifee2ceae940043031e4861d0e4f5d19a51262229
CRs-Fixed: 2036665
2017-04-28 13:19:43 -07:00
Dustin Brown
dd16c1b664 qcacmn: Export qdf_sprint_symbol
Some targets compile QDF into a separate module. In order to support
those targets, export qdf_sprint_symbol().

Change-Id: I7ff30aac3efdb0a119d5a9d1a63dc774b496e60e
CRs-Fixed: 2039906
2017-04-27 15:34:39 -07:00
Himanshu Agarwal
e5b7db3baa qcacmn: Fill rate and bw info for HT/VHT frames in monitor mode
In monitor mode, while filling the radiotap header, rate and bw
info for HT and VHT frames was not filled correctly due to which
packets in tcpdump are showing incorrect rates and bw for HT/VHT
frames.

Fill rate and bw info for HT/VHT frames correctly in monitor mode.

Change-Id: I2dc9677e48fcf9fe19d61f84a253353e253b16da
CRs-Fixed: 2037501
2017-04-26 23:53:46 -07:00
Dustin Brown
e226cebdd2 qcacmn: Add Scheduler Watchdog Timer
In order to catch long running scheduler messages, start a watchdog
timer before processing each message, and stop the timer after each
message is processed. When the watchdog timer expires, immediately
crash the device in debug builds for easier debugging.

Change-Id: I4b43a9e12fc1f5b8a795fec790fe7548a100d9db
CRs-Fixed: 2037094
2017-04-26 17:01:52 -07:00
Ravi Joshi
0c547bbd85 qcacmn: Export API to add radiotap header
Exporting a new API for updating radiotap header.

Change-Id: I1f942aa52ef737f68bb0578019f67e107a425fb0
CRs-Fixed: 1113187
2017-04-21 18:06:33 -07:00
Manoj Ekbote
8a204d2dcb qcacmn: Add a qdf type for net device
Create a type for struct net device so that lower
layers in WIN can have access to the device handle.

Change-Id: I5f5469ea3fc65c64c4382c2dfbcf455bd96294a8
2017-04-17 11:23:29 -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
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
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