Commit Graph

496 Commits

Author SHA1 Message Date
Nirav Shah
bb8e47c200 qcacld-3.0: Featurize packet log
Featurize packet log.

Change-Id: Id747d142d72d02759b20bcf3091fd769261b8f67
CRs-Fixed: 2245422
2018-06-06 23:49:08 -07:00
Tiger Yu
9973e36524 qcacld-3.0: Reset the soc before htc_stop when failure in cds_pre_enable
Reset the soc before htc_stop when failure in the cds_pre_enable to stop
the copy engine which might continue deliver the data to host after
cleaning up the destination ring buffers to avoid the poison overwritten.

Change-Id: I2ef111926af4a889f1ee005681d68eafba7e5564
CRs-Fixed: 2250860
2018-06-06 22:12:24 -07:00
Jeff Johnson
d0a6b2c979 qcacld-3.0: Consistently use CDS logging APIs
The CDS module currently has a mixture of directly using QDF_TRACE
(with an assortment of module IDs) along with using its own CDS
logging APIs. Update the module to consistently use just the CDS
logging APIs.

Change-Id: I5581c960d2b3c973246b44bda3b5bbb740ac3bf3
CRs-Fixed: 2251991
2018-06-06 20:27:52 -07:00
Jeff Johnson
028033d7a0 qcacld-3.0: Add cds_warn() API
The set of cds trace APIs is missing the "warn" API, so add cds_warn().

Change-Id: I1d15f7e01667c5f8ec46c7a7c20d9d8ac4987f28
CRs-Fixed: 2251990
2018-06-06 20:27:48 -07:00
Jeff Johnson
13269963d7 qcacld-3.0: Rename pModuleContext & ppModuleContext
Per the Linux coding style "mixed-case names are frowned upon" so
rename identifiers pModuleContext & ppModuleContext.

Change-Id: Ib0c37fa2ec295da24cfcdfbf903c6ba121dec04b
CRs-Fixed: 2251989
2018-06-06 20:27:45 -07:00
Jeff Johnson
835b760a1e qcacld-3.0: Rename pGpModContext & pModContext
Per the Linux coding style "mixed-case names are frowned upon" so
rename identifiers pGpModContext & pModContext.

Change-Id: I077cd7b7b3415c14549f02bb166ec31e79712b7b
CRs-Fixed: 2251988
2018-06-06 20:27:42 -07:00
Jeff Johnson
b3be6a6a36 qcacld-3.0: Rename moduleID & moduleId
Per the Linux coding style "mixed-case names are frowned upon" so
rename identifiers moduleID & moduleId.

Change-Id: I1bda5cb9d0d57a5af072ed0eb61c7d8125dfd3cd
CRs-Fixed: 2251987
2018-06-06 20:27:39 -07:00
Jeff Johnson
2ccd815bf5 qcacld-3.0: Rename cds_context field wmaCompleteEvent
Per the Linux coding style "mixed-case names are frowned upon" so
rename field wmaCompleteEvent in struct cds_context.

Change-Id: I0b56daf9e387bbc96ddd2b0539ddefb16c82cca2
CRs-Fixed: 2250673
2018-06-06 20:27:36 -07:00
Jeff Johnson
a40e21c1d3 qcacld-3.0: Rename cds_context field pHIFContext
Per the Linux coding style "mixed-case names are frowned upon" so
rename field pHIFContext in struct cds_context.

Change-Id: I023d61b0a26a6f4f35a46e5c04ab63b83182b846
CRs-Fixed: 2250672
2018-06-06 20:27:33 -07:00
Jeff Johnson
830f322c66 qcacld-3.0: Rename cds_context field pWMAContext
Per the Linux coding style "mixed-case names are frowned upon" so
rename field pWMAContext in struct cds_context.

Change-Id: Ia8fa98366d57ab2bf81549570ef7b1766e579a00
CRs-Fixed: 2250671
2018-06-06 20:27:30 -07:00
Jeff Johnson
528c2cfc31 qcacld-3.0: Rename cds_context field pMACContext
Per the Linux coding style "mixed-case names are frowned upon" so
rename field pMACContext in struct cds_context.

Change-Id: I50007d80d12276b682237d728435203e455a18c9
CRs-Fixed: 2250670
2018-06-06 20:27:27 -07:00
Jeff Johnson
323a6f06aa qcacld-3.0: Rename cds_context field pHDDContext
Per the Linux coding style "mixed-case names are frowned upon" so
rename field pHDDContext in struct cds_context.

Change-Id: I483c5fa09127753770ec644527989902d842af0e
CRs-Fixed: 2250669
2018-06-04 13:58:51 -07:00
Jeff Johnson
7d63adb741 qcacld-3.0: Remove pVContext from struct _cds_sched_context
The pVContext field of struct _cds_sched_context is written but never
read, hence it is unused, so remove it.

Change-Id: I38a6491fb8581df00af59f7f2bc3f5f88c65b7e5
CRs-Fixed: 2250668
2018-06-04 13:58:48 -07:00
Jeff Johnson
2b6982c4a5 qcacld-3.0: Replace references to cds context typedefs
To align with the Linux Kernel coding style replace typedefs
cds_context_type and p_cds_contextType with a reference to the
underlying struct.

Change-Id: Ifc85a9bbecd29614835ed9e61ab143d0387e82b0
CRs-Fixed: 2250667
2018-06-04 13:58:45 -07:00
Jeff Johnson
cba3b465d2 qcacld-3.0: Rename struct _cds_context_type
Currently struct _cds_context_type is poorly named and poorly defined.
Rename it to struct cds_context to better align with expected naming,
and define it separately from the typedefs which reference it in
anticipation of removing those typedefs in the near future.

Change-Id: Icd096b7e99f13402fb7dab53493e6c55dda4d764
CRs-Fixed: 2250666
2018-06-01 10:57:16 -07:00
Dustin Brown
a22671a594 qcacld-3.0: Remove cds_sys_probe_thread_cback()
The sys-probe feature has been removed. Remove related unused function
cds_sys_probe_thread_cback() as well.

Change-Id: Idb1f090a40c255812e9e8b573cd239503dddac49
CRs-Fixed: 2250488
2018-06-01 05:26:06 -07:00
Dustin Brown
9746bd6a57 qcacld-3.0: Cleanup cds_pre_enable
There are a number of code hygiene issues with cds_pre_enable().
Cleanup some trivial items such as using appropriate logging wrappers,
removing excessive QDF_ASSERTs, using standard naming conventions, etc.

Change-Id: I1a236c4aae9a48195b73943bf83c9498d44501ea
CRs-Fixed: 2249436
2018-05-31 21:31:53 -07:00
Dustin Brown
c30f3933ff qcacld-3.0: Remove wlan_sys_probe
wlan_sys_probe has been superseded by the scheduler thread watchdog.
Since it is no longer needed, remove wlan_sys_probe.

Change-Id: I31e7cf0021774d074a6c94eb6a636e1f87452923
CRs-Fixed: 2249435
2018-05-29 12:27:30 -07:00
Dustin Brown
b309cf139a qcacld-3.0: Refactor CDS logging wrappers
Refactor the CDS logging wrappers to use the new per-level logging APIs.

Change-Id: I13e6d0676250348c07a3abb256d5220b48f77737
CRs-Fixed: 2249432
2018-05-29 12:27:27 -07:00
Jeff Johnson
47486e2f87 qcacld-3.0: cds: Fix misspellings
Address the following issue in the core/cds folder:
CHECK: 'couter' may be misspelled - perhaps 'counter'?
CHECK: 'defintions' may be misspelled - perhaps 'definitions'?
CHECK: 'endianess' may be misspelled - perhaps 'endianness'?
CHECK: 'extention' may be misspelled - perhaps 'extension'?
CHECK: 'independant' may be misspelled - perhaps 'independent'?
CHECK: 'initilize' may be misspelled - perhaps 'initialize'?
CHECK: 'minumum' may be misspelled - perhaps 'minimum'?
CHECK: 'recieve' may be misspelled - perhaps 'receive'?

Change-Id: I8586ee1aa0a2ab59faa064ff534148511e662615
CRs-Fixed: 2241940
2018-05-16 18:01:33 -07:00
Jeff Johnson
6bb5d7852a qcacld-3.0: Fix misspelling of 'retrieve'
Fix misspelling 'retreive' => 'retrieve'

Change-Id: I7fd51f73a911e528e2e17088f7a099056478efc8
CRs-Fixed: 2241935
2018-05-16 18:01:07 -07:00
Jeff Johnson
f2cf659cc2 qcacld-3.0: Fix typo "diable"
Replace typo "diable" with correct spelling "disable".

Change-Id: Ifb0d0086c1356a92fd868a22c2f1e1693f66066a
CRs-Fixed: 2238297
2018-05-12 04:30:06 -07:00
Jeff Johnson
4ceed38fbf qcacld-3.0: Fix typo "recieve"
Replace typo "recieve" with correct spelling "receive".

Change-Id: I16de4aedcd0f401da8b11fa0ea4989ad1e73bf57
CRs-Fixed: 2238297
2018-05-12 04:30:02 -07:00
Jeff Johnson
6201829f3a qcacld-3.0: Fix typo "retrive"
Replace typo "retrive" with correct spelling "retrieve".

Change-Id: I09ae4ea41031a0a8108e1b60494eedb8751c5b3e
CRs-Fixed: 2238297
2018-05-12 04:29:54 -07:00
Lin Bai
362e52b391 qcacld-3.0: Fix regression of peer map adjustment
Change I8e1b62cd9586f5b2be7acb863a106d2486be1b35 used unassigned
member dp_handle of wlan_objmgr_psoc, that causing failure on DP.

Assign dp_handle properly to avoid it.

CRs-Fixed: 2237072
Change-Id: If230b8a24f5ac9d26ac27f89779c7669cdee5455
2018-05-08 13:47:22 -07:00
Rajeev Kumar
dcce809079 qcacld-3.0: Log reason code while flushing logging events
Log reason code while flushing logging events to precisely know
the reason of failure.

Change-Id: Ibe26563780f165e85490c54c2b4f83d959a3587f
CRs-Fixed: 2235138
2018-05-03 08:04:57 -07:00
Himanshu Agarwal
fc5d66088a qcacld-3.0: Send frames with GCMP MIC LEN if encryption is GCMP
CCMP and GCMP both have different lengths of their MIC part. MIC
length for CCMP is 8 bytes whereas it is 16 bytes for GCMP. When
encryption type is GCMP/GCMP-256, sending packets with CCMP MIC
length causes fw to drop the GCMP encrypted management packets
leading to connection issues.

Send GCMP encrypted frames with GCMP MIC length.

Change-Id: Ia83fa6ffde880fe69e5e4c3e3c3ce9c62ad8fa3c
CRs-Fixed: 2203224
2018-04-26 21:38:55 -07:00
Jeff Johnson
cec401235e qcacld-3.0: cds: Remove legacy markings
Per current guidance remove legacy markings.

Change-Id: I5aa9814a2c281f28d84c8775480b454fec8ae9bf
CRs-Fixed: 2229655
2018-04-24 14:48:44 -07:00
Vignesh Viswanathan
cad91325bf qcacld-3.0: Register SCAN queue to scheduler thread
Register the new low priority QDF_MODULE_ID_SCAN queue to the scheduler
thread to handler beacon/probe frames and scan events.

Change-Id: I80c9b6bbbce97942d188f8a7941a3937130d7c8e
CRs-Fixed: 2226222
2018-04-23 00:30:28 -07:00
Nirav Shah
e6c8e64600 qcacld-3.0: Fix to set start/stop threshold from ini
Fix to set start/stop threshold value from ini
for flow control for LL.

Change-Id: Id77e47ea959dfce02cea8b4af648b07b12bb5cdc
CRs-Fixed: 2213290
2018-04-18 18:38:40 -07:00
Kabilan Kannan
fc3a8c0631 qcacld-3.0: Block WMI cmds before issuing HTC stop
WMI cmds should be blocked, before calling HTC stop
to avoid the race condition in the system

Change-Id: I677c55cd96ea6af973595eec1e759641fbea109a
CRs-Fixed: 2193653
2018-04-16 16:56:47 -07:00
Sravan Kumar Kairam
5a8c4ba2e2 qcacld-3.0: Update io smmu mapping to osdev
Update io smmu mapping to osdev during smmu map set up.

Change-Id: I639d4fb515d66c1bafab4303d97546b013fc2078
CRs-Fixed: 2223185
2018-04-14 15:41:53 -07:00
jitiphil
5fdc34704f qcacld-3.0: Prevent access to rx thread after thread shutdown
During unload/SSR, the ol_rx_thread is shutdown and then the
cpu hotplug notifier is unregistered. In other context
cpu hotplug notifier could be accessing the freed contents
of rxthread resulting in use after free.

To avoid this race condition, reject the cpu hot plug
notificaiton in case of a driver SSR in addition to
load/unload.

Change-Id: Iafadff92d5660b979c6cf20a70eef42d22a9e51a
CRs-Fixed: 2219011
2018-04-06 01:58:53 -07:00
Sravan Kumar Kairam
983a445b37 qcacld-3.0: Move IPA SMMU functions to IPA component
IPA module has been moved to CLD component under the converged
driver model. Move the legacy HDD IPA SMMU functions to the
IPA component.

Change-Id: I3ac5ebe87cc48913f3e8e075e60737e78664f861
CRs-Fixed: 2177925
2018-03-21 18:57:34 -07:00
Sravan Kumar Kairam
858073b1f9 qcacld-3.0: Remove legacy IPA code from HDD
As part of converged driver model remove IPA from
HDD and create a new IPA CLD component. Remove the
legacy code from the HDD.

Change-Id: Id4691e0f490c2f9bd9ccc8d5225be32002a5df9e
CRs-Fixed: 2177925
2018-03-21 18:57:20 -07:00
Sravan Kumar Kairam
d01b445db4 qcacld-3.0: Move IPA setup and initialization to IPA component
IPA module has been moved to CLD component under the converged
driver model. Move the legacy IPA setup and initialization code
to the IPA component.

Change-Id: I63717eb2601c569131c6642f7330e4182e604424
CRs-Fixed: 2177925
2018-03-21 18:57:08 -07:00
Alok Kumar
fa826fdba9 qcacld-3.0: Fix Null pointer dereference issue
Add null check for context in cds_get_connectivity_stats_pkt_bitmap
and cds_get_arp_stats_gw_ip to avoid Null dereferencing.

Change-Id: I3481508ee62f630b9db580fdf7d73821733d1599
CRs-Fixed: 2191518
2018-03-19 15:33:05 -07:00
Poddar, Siddarth
3906e17e74 qcacld-3.0: track connectivity stats for rx packets
Track connectivity stats for data rx packets through a
callback function hdd_tx_rx_collect_connectivity_stats_info().

Change-Id: I045ba694495876273691373a9d0a8995d4aa9c34
CRs-Fixed: 2161889
2018-03-19 15:33:00 -07:00
Poddar, Siddarth
31797fa6a8 qcacld-3.0: Extend debug stats
Extend to collect connectivity check stats other
than ARP such as DNS, TCP SYN/SYN-ACK/ACK, and Ipv4.
Add extra attributes in existing vendor command(set/reset
and get NUD debug stats) for above  connectvitiy stats.

CRs-Fixed: 2161889
Change-Id: I037c4ec29b181a0b3117ae2abbc7a2229b373ac2
2018-03-19 15:32:58 -07:00
Yun Park
45d3597a63 qcacld-3.0: Check IPA HW support before SMMU enable
Currently even if IPA HW support is not there during load
HOST is checking for SMMU enable status which returns error.
As a result driver load fails. So check for IPA HW support
before checking for SMMU enable status.

Change-Id: I5705f98f88d495b100af7cb2b3d2ad40e7030a8d
CRs-Fixed: 2185620
2018-03-19 12:18:14 -07:00
Himanshu Agarwal
a89ce24bd4 qcacld-3.0: Add support to get IPA SMMU status
Add support to get IPA SMMU status

Change-Id: I0e476b465bcaa2c5e8ae58c0783265e78ebc8181
CRs-Fixed: 2176317
2018-03-19 12:18:12 -07:00
Sravan Kumar Kairam
4329c5fea8 qcacld-3.0: Map/Unmap IPA RX buffers at driver load/unload time
Map/Unmap IPA RX buffers at driver load/unload time when WLAN
SMMU is enabled.

Change-Id: Ibe2c5d234cc67a18979aed9af273d2340beb124a
CRs-Fixed: 2088439
2018-03-19 09:34:28 -07:00
Sravan Kumar Kairam
b664b6c61b qcacld-3.0: Add support for WLAN-IPA WDI 2 SMMU S1 translation
Update WLAN-IPA WDI-2 datapath buffer sharing for SMMU Stage 1
translation support. When SMMU Stage 1 translation is enabled
DMA APIs return IO virtual address(IOVA) instead of physical
address. This IOVA need to mapped to physical address by IPA
module before accessing them

Change-Id: I969ad020d5b423c785539f346286b212ea5830a1
CRS-Fixed: 2072960
2018-03-19 09:34:26 -07:00
Himanshu Agarwal
edf30dc042 qcacld-3.0: Add support for WLAN-IPA SMMU Stage 1 translation
Update WLAN-IPA datapath buffer sharing for SMMU Stage 1
translation support. When SMMU Stage 1 translation is enabled,
DMA APIs return IO virtual address(IOVA) instead of physical
address. This IOVA needs to be mapped to physical address by IPA
module before accessing them.

Change-Id: I6b24cde7b7805395053a8fd8f9afbad202e6105f
CRS-Fixed: 2072960
2018-03-19 09:34:23 -07:00
Rajeev Kumar
a6268de325 qcacld-3.0: Register fw down callback with QDF
Register fw down callback with QDF such that new UMAC
components can check if FW is down or not.

Change-Id: I86346db08ced59bb5f77c640eb7f9257cc0bb42c
CRs-Fixed: 2203498
2018-03-16 10:35:37 -07:00
Rachit Kankane
0baf6e723f qcacld-3.0: Compile out MTRACE feature
Fix to disabled MTRACE feature

Change-Id: I400933feecc54b46bd9aebdbc2cb5440c882112b
CRs-Fixed: 2189869
2018-03-15 08:04:44 -07:00
Rajeev Kumar
3f5c593023 qcacld-3.0: Ignore qdf debug fs create failure during init
Debug fs create failure should not fail wifi turn on. Add logic
to allow wifi turn on even if kernel debug fs create API returns
failure.

Change-Id: I02ce1ae4022f6590b29b8666bbe39c7387e8d0dd
CRs-Fixed: 2203329
2018-03-14 15:53:08 -07:00
Rajeev Kumar
807c5f5193 qcacld-3.0: Register fw down callback with QDF
Register fw down callback with QDF such that new UMAC
components can check if FW is down or not.

Change-Id: I394860324368d7671f83536791b021109ddb39aa
CRs-Fixed: 2202602
2018-03-14 15:53:01 -07:00
jitiphil
5256306ace qcacld-3.0: Fix access to ol_rx_thread after thread shutdown
Currenty we are trying to access the ol_rx_thread in
ds_cpu_hotplug_notify function after we shut the thread
down in cds_sched_close function

To address the issue keep a NULL check for the ol_rx_thread

Change-Id: Icddd3ace52bbe773790546d1ace1fd463bc1a7e7
CRs-Fixed: 2200501
2018-03-14 01:48:54 -07:00
Rachit Kankane
b103562c27 qcacld-3.0: Add HTC Credit History Feature flag
Add compilation flag to compile out HTC credit History
feature cleanly from the cld-3.2 driver binary.

Change-Id: I5f5e73e430d282c99d3077fb82ed1cb8eb79715a
CRs-Fixed: 2190545
2018-03-08 18:46:38 -08:00