Graf commitů

3380 Commity

Autor SHA1 Zpráva Datum
Dustin Brown
1b57dba257 qcacmn: Add wrapper for nla_parse()
The Linux kernel version 4.12 introduced an API change to nla_parse().
Add conditional compilation to call nla_parse with the correct
parameters based on the version of the linux kernel being compiled
against.

Change-Id: Ie904d217a42a2396f8245251a9c90a15dac2c0c9
CRs-Fixed: 2093354
2017-09-15 15:26:31 -07:00
Gyanranjan Hazarika
e72853c63f qcacmn: D1.4 support - Code changes for HE-MCS & NSS Set
D1.4 defines Supported HE-MCS and NSS Set (under HE-cap)
differently from its earlier versions in D1.0/D1.3.
Make code changes to bring in these new changes.

Change-Id: I4a482e48c071bbbe02c7f33645b7fe80870482d9
CRs-fixed: 2100674
2017-09-15 12:22:53 -07:00
Dustin Brown
49a8f6e37e qcacmn: Prepend kernel includes with "kernel/"
To avoid include conflicts, prepend all kernel includes with "kernel/"

Change-Id: I1c3ae9078d5537b03486afff9c2491881c9f694c
CRs-Fixed: 2098814
2017-09-15 12:22:51 -07:00
Ganesh Kondabattini
3f9b04cf46 qcacmn: Initialize SAP mandatory chan list
Initialize SAP mandatory chan list.

Change-Id: I126d67da1bfe8426cd3a7b031e97aba907e6155a
CRs-Fixed: 2089122
2017-09-15 11:19:59 -07:00
Tallapragada Kalyan
4c183b84c6 qcacmn: Configure REO dest ring ctrl register to address rng mapping non UDP TCP flows
earlier we configured only REO_R0_DESTINATION_RING_CTRL_IX_2
and REO_R0_DESTINATION_RING_CTRL_IX_3, but we now configure
REO_R0_DESTINATION_RING_CTRL_IX_0 and
REO_R0_DESTINATION_RING_CTRL_IX_1. Also added module param for
rx hash steering.

Change-Id: I690aa395bc19e49df3687be2e70eaaad4994003e
2017-09-14 16:48:07 -07:00
Alok Kumar
3aa586ac29 qcacmn: Compile errors when a preprocessor flag is on
Fix for compile errors when QDF_DEBUG is enabled.

Change-Id: Iaf02b0588d0ae0443726621ef3884a94dc8147cc
CRs-Fixed: 2022696
2017-09-14 01:37:51 -07:00
Dustin Brown
a86de10a9a qcacmn: Add qdf_print_thread_trace API
Add an abstraction to QDF for printing the stack trace of a given
thread.

Change-Id: Ibea6e6bed7f3ebe67538b8ea8b6b437b643d5541
CRs-Fixed: 2088806
2017-09-13 15:25:44 -07:00
Dustin Brown
7b32946958 qcacmn: Dump scheduler thread stack for watchdog bite
In the event of a scheduler thread watchdog bite, dump the scheduler
thread stack trace to aid in debugging.

Change-Id: I222556c7cb01985abe20b04a9383fc6c6d0724fc
CRs-Fixed: 2091875
2017-09-13 15:25:43 -07:00
Houston Hoffman
ae850c6d62 qcacmn: Cleanup some excessive logging
Cleanup some excessive logging used durring bringup.

Change-Id: I09df15b7aad8176ad35f70d4d51b4a0a254699e0
CRs-Fixed: 2101103
2017-09-13 15:25:42 -07:00
Tushnim Bhattacharyya
374c849736 qcacmn: Do not notify supplicant of 5GHz LTE avoid channel range
Do not notify supplicant of 5G LTE avoid channel range if ini
restart_beaconing_on_chan_avoid_event is set to CH_AVOID_RULE_RESTART_24G_ONLY.

Change-Id: Ide862882f4cf871688880653ec5c746e4c2dce38
CRs-Fixed: 2098933
2017-09-13 14:15:20 -07:00
psimha
f098e73c0b qcacmn: Disable servicing of uninitialized WBM2SW rings
Set tx completion masks for WBM2SW1/2 to zero for MCL.
This is to prevent accessing of tx completions rings whose
contexts are shared with REO rings.

Change-Id: Id1b8a98495668225ced71141f00d9f2094f37cd2
CRs-Fixed: 2106708
2017-09-13 11:32:49 -07:00
Soumya Bhat
539ecfa47d qcacmn: HTT PPDU Status TLV processing
Add support to process HTT PPDU per-user TLVs that are sent to host from
FW on PPDU Tx completions.

Change-Id: Ia05d5d0e045bfeb4143886ef3a1b075d927645fa
CRs-Fixed: 2098696
2017-09-13 01:48:20 -07:00
Anish Nataraj
38a2956c7a qcacmn: Add PPDU Statistics Support for Rx datapath
Add support for processing rssi, mcs etc fields from
PPDU status ring and delivering to CDP interface

Change-Id: I312bef20605594645bae6ec748f0b59e4d427075
CRs-Fixed: 2098696
2017-09-13 01:48:19 -07:00
Pamidipati, Vijay
038d090817 qcacmn: Add PPDU statistics support for Tx datapath
Add support to process HTT PPDU statistics for transmit
datapath and deliver PPDU indication to CDP interface.

Change-Id: I22e757497e13ce86fb7b42112fd56555c58e97bc
CRs-Fixed: 2098696
2017-09-13 01:48:18 -07:00
Jeff Johnson
9b24afb720 qcacmn: Remove obsolete START and STOP SYS_MSG_IDs
The SYS_MSG_ID_MC_START and SYS_MSG_ID_MC_STOP message IDs are no
longer being used. so remove them.

Change-Id: I8d35a537ac2c2f7436b23033561e5d0ef09895df
CRs-Fixed: 2107075
2017-09-12 23:27:33 -07:00
Rohan Dutta
44a78ca333 qcacmn: Fix Null Pointer Kernel Panic on wlan_crypto_setkey
Fixing the Null pointer derefence in wlan_crypto_setkey.

Change-Id: I4853d9603be7f6b7d4f9e2c253dd9d2074bf4f68
CRs-Fixed: 2107331
2017-09-12 14:58:55 -07:00
Vivek
ea368417b0 qcacmn: Add more information to object manager debug prints
Add more information to object manager debug prints
1. Print the string of the component taking object manager reference.
2. Print vdev & pdev id in case of failure in some vdev related functions.
3. Print vdev & vdev id in case of failure in peer related functions.
4. Fromat the prints for printing pending reference
   when psoc is going brought down.

Change-Id: I75b2d1a04feb688d6e397fa28c988abb56b2a11d
CRs-Fixed: 2069665
2017-09-12 05:27:31 -07:00
Mohit Khanna
7750a17a55 qcacmn: Dptrace enhancements
* Log EAPOL, ARP, DHCP, MGMT, ROAM Events, ICMP, Data packets,
  TX-Completions by default.
* Set default verbosity as low (existing is high)
* Throttle ICMP and Data packets if threshold exceeds.
* Enable live mode by default. Added ini entry to disable
  it and configure high throughput thresh - gDptraceConfig
* Log only SA and DA for proto packets (and not 32 bytes)
* Format prints to fit in 1 line.

CRs-Fixed: 2051134
Change-Id: I2f82c38f5fda73f440c4c4c760e633904705b5a2
2017-09-12 03:37:55 -07:00
Padma Raghunathan
9b1964e78a qcacmn: Fix compilation errors under BIG_ENDIAN_HOST
* MIPS uses BIG_ENDIAN_HOST
* This change fixes compilation errors  uncovered during MIPS build

Change-Id: Iaedf714f36416b21eaedf586ded6f10c84a74e9c
CRs-Fixed: 2095835
2017-09-11 23:27:21 -07:00
Manoj Ekbote
525bcabbb7 qcacmn: Clean up desc pool during soc detach
During soc detach, free the memory allocated for
link desc pool. This will return the 2 MB regions to
buddy allocator.

Change-Id: I1f1929525cf1d5de32321d56ec947969bebfeb93
2017-09-11 15:37:00 -07:00
psimha
a079b8c678 qcacmn: Deregister HIF ext groups on rmmod
- Deregister & free the hif ext ctx when detaching DP interrupts.
- Unregister the hotcpu_notifier during rmmod.

Change-Id: Icbd3c6cee70b6b224059a4b301b9840485a96d11
CRs-Fixed: 2086729
2017-09-08 19:40:02 -07:00
Houston Hoffman
579c02f570 qcacmn: Provide special sleep_state_adjust api for srng based targets
current pci version of sleep_state_adjust is not supported on srng based targets.

Change-Id: I6ff0c78681cc15c677b6458b3a7d8b571a051925
CRs-Fixed: 2090590
2017-09-08 18:57:10 -07:00
Abhijit Pradhan
382c50fff7 qcacmn: refactor DFS code Part-I
Reduced the max indentation level to five.
Spilt functions to several smaller functions.
Only a few functions were split
in this commit. Rest need to be done in future commits.

Change-Id: I1c9dcf3ae12edef6bcce37023f93d062705e0142
CRs-Fixed: 2098511
2017-09-08 16:47:36 -07:00
Om Prakash Tripathi
4d23cd7886 qcacmn: Add support to fetch min and max tx power
Add support to fetch min and max tx power from target for
a given set of mcs, nss, chainmask, bw, and other rate flags.

Change-Id: Iafe082db81503a52bdc704d4b71d86d23788fddb
CRs-Fixed: 2061802
2017-09-08 15:46:56 -07:00
Sreelakshmi Konamki
77dd1efb64 qcacmn: Add support for PNO scan in connected state
qcacld-2.0 to qcacmn propagation

Add changes to support PNO scan in connected state to find better Ap's
based on rssi threshold, band and rssi preference.

Change-Id: I0744297cc5269f0fe37613247c911102e293d8e9
CRs-Fixed: 2000342
2017-09-08 15:46:55 -07:00
Tushnim Bhattacharyya
3734a9d2b8 qcacmn: Update PCL table for non DBS to give SCC preference
Update the non DBS PCL table to give preference to SCC.

Change-Id: I9d2d982f367bf6fb8d18e4d448fa0c45e95cbbf4
CRs-Fixed: 2063060
2017-09-08 14:28:02 -07:00
Tushnim Bhattacharyya
818d59f91a qcacmn: Strip out the DSRC channels while getting valid channel list
Strip out the DSRC channels while getting valid channel list from sme.

Change-Id: I540869a01dbc045033ba1e3623c3d237b1e5a54c
CRs-Fixed: 2063060
2017-09-08 14:28:01 -07:00
Jeff Johnson
4e0ea80390 qcacmn: Remove cds_ctx param from register_ocb_peer()
The cdp_peer_ops register_ocb_peer() method currently takes a cds_ctx
parameter. Converged datapath APIs should not require the MCL-specific
CDS context, and in fact it is not required by the MCL implementation,
so remove it from all OCB peer registration APIs.

Change-Id: I8ebb49713b26ef5bbf25cc7e4b09b1b29e579844
CRs-Fixed: 2103450
2017-09-08 03:57:25 -07:00
Subrat Mishra
c15357faae qcacmn: Add API to get pdev vdev count
Add API to get vdev counts of pdev.

CRs-Fixed: 2101491
Change-Id: I320aaecb5c13e5ecfef4623d4df35c9ce4d639df
2017-09-08 03:17:56 -07:00
Houston Hoffman
5645dd2803 qcacmn: Use qdf_dbg instead of qdf_print for non-error logs
Stats printing with excessive loops should not go to the console.
Avoids watch-dog bites.

Change-Id: I7b0f9d73139dff97c16f492cbd1cb2d255255b3e
CRs-Fixed: 2091039
2017-09-08 02:37:26 -07:00
Dustin Brown
8f6788d071 qcacmn: Use vm_fault->address instead of virtual_address
Linux kernel 4.10 removed vm_fault->virtual_address in favor of simply
using vm_fault->address. Add conditional compilation to use the
appropriate vm_fault address field based on the version of the Linux
kernel being compiled against.

Change-Id: I3f29721888bf349a7ac4f5f62d576b668ee0abc2
CRs-Fixed: 2094806
2017-09-08 01:57:46 -07:00
Jeff Johnson
23f532b887 qcacmn: Remove reference to obsolete vos_ctx
wlan_logging_sock_svc has a reference to the vos_ctx. Since this is
obsolete, remove the reference.

Change-Id: I1256aa8a1220859911eceec8048a57856e64299a
CRs-Fixed: 2102456
2017-09-07 18:08:25 -07:00
Jeff Johnson
fa099795fa qcacmn: Replace hdd_adapter_t in wlan_logging_sock_svc
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_adapter_t typedef does not
meet any of those criteria, so replace references to it with a
reference to the underlying struct.

Change-Id: Ia5177a671f3657a23e88ec1a47c6ed0ac569934a
CRs-Fixed: 2100985
2017-09-07 18:08:21 -07:00
Jeff Johnson
0960ae344a qcacmn: Replace hdd_context_t in wlan_logging_sock_svc
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The hdd_context_t typedef does not
meet any of those criteria, so replace references to it with a
reference to the underlying struct.

Change-Id: I3dfe59ac92a374639faa6774a6538c5d970d3f1d
CRs-Fixed: 2100797
2017-09-07 18:08:18 -07:00
Dustin Brown
2af3d67336 qcacmn: Add Wake MSI support
Using the same MSI for wake and copy engines has a number of negative
side effects. Instead, set aside a whole MSI just for the wake
notification from firmware.

Change-Id: If871b88ca255ad970dabb4a7773d2b4d3b71c3fe
CRs-Fixed: 2055359
2017-09-07 17:31:36 -07:00
Govind Singh
903165f2ef qcacmn: Reduce CE msg flush count for SLUB build
With SLUB build in Low memory condition rx processing is taking
more time, reduce CE msg flush count for fastpath in SLUB build.

Change-Id: I8901bd770ca01997299f882394bbe99871d2400e
CRs-Fixed: 2043999
2017-09-07 13:30:34 -07:00
URAJ SASAN
81d9571879 qcacmn: Enable client isolation
[PATCH 0/1][CR:2093711]

The client isolation feature parameters were
pass and stored but were not used for enabling/disabling.
Added the changes to enable disable the feature.

iwpriv ath0 ap_bridge 1
iwpriv ath0 get_ap_bridge

By default feature is enabled so the STA-STA packet does not
go through the bridge interface and incase the feature is disabled
packets are given to the kernel stack.

Change-Id: I76e8683a0a7e8791cf8cf743e39b7201fee39d30
2017-09-07 05:30:27 -07:00
Mukul Sharma
7d978533ad qcacmn: Define a QCA vendor attribute to update the listen interval
This commit defines an attribute
QCA_WLAN_VENDOR_ATTR_CONFIG_LISTEN_INTERVAL which allows the currently
used listen interval to be updated using
QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION. This update applies
only during the association and is done without updating the AP about
the change.

Change-Id: Ie7b2016c1d3d06c7fcb5099b53e3fc0a159cc246
CRs-Fixed: 2048443
2017-09-07 02:01:45 -07:00
Ashish Kumar Dhanotiya
cc0b0dae42 qcacmn: Add an attribute to represent PNO/EPNO Request ID
This request ID was wrongly referred from the REQUEST_ID in
enum qca_wlan_vendor_attr_gscan_config_params which is mapped to
QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_LIST_PARAM_NUM in PNO Config.
Hence define a different attribute to represent the request ID
for the PNO Config.

CRs-Fixed: 2095917
Change-Id: I76289468fe926f5bd157c4d37b45bbf5a0ebdfb7
2017-09-07 01:21:20 -07:00
Krunal Soni
be546459fa qcacmn: Remove all commands related to vdev when it is destroyed
If serialization module has queued some commands for particular vdev
and if that vdev gets destroyed without informing serialization
module then upon those command timeout, serialization try to point
vdev pointer which is invalid. This situation create a crash.

If serialization module has some commands pending or active for vdev
which is being destroyed then remove those commands as part of vdev
destroyed notification.

CRs-Fixed: 2099063
Change-Id: I8df9900d83bea758ca5c50cbe0edf31e06f83a4c
2017-09-06 22:52:23 -07:00
Manoj Ekbote
7c2444ce91 qcacmn: Add function to extract MAC addr list
For DBDC/DBS cases, each radio will have a separate MAC
address. FW will provide the list to host in ready
event. Handler has been added to extract the list.

Change-Id: I6da96ae02a1f30995e3953358677090b84fc57c4
2017-09-06 20:56:03 -07:00
Rohan Dutta
3844c6009c qcacmn: Set the TX_Usage in key Flags for EAP-TLS
The TX_usage is set for EAT-TLS with WEP as cipher.

CRs-Fixed: 2095158
Change-Id: I4f2f61c5cbc266a1c27b3b74e59065fc1d9aa4c2
2017-09-06 20:56:02 -07:00
Dustin Brown
0add4c2028 qcacmn: Migrate to linux/sched/signal.h
Linux kernel version 4.11 moved several signal related functions out of
linux/sched.h into linux/sched/signal.h. Add conditional compilation to
include the correct file based on the version of the Linux kernel being
compiled against.

Change-Id: Ic50a8ec0a76178b5231388983a890bdfdc4615e2
CRs-Fixed: 2094019
2017-09-06 11:27:07 -07:00
Chris Guo
175e034a96 qcacmn: Fix RX Bus bundle error for SDIO WLAN
Fixed below errors:
1 RX bundle number calculation error.
2 Last bundled PKT block error.
3 RX bundle max checking error.

CRs-Fixed: 2071151
Change-Id: I3cf2cb7e933a47c88ac4916a18234d81ff068d2a
2017-09-05 03:21:56 -07:00
Kiran Venkatappa
e2f4335d23 qcacmn: Add CDP API to configure mgmt tx power
Add CDP API to configure mgmt TX power.

Change-Id: I68449d2f22487017b680f18c811853576a36a8e9
CRs-Fixed: 2098375
2017-09-04 17:57:57 -07:00
Pamidipati, Vijay
2da6acd74b qcacmn: Enable all HW Transmit datapath rings
Enable all 3 HW Transmit rings by default to be able to tie each ring to
a CPU core for transmit datapath

Change-Id: I6f1dd011e1289f8ee603a81e373629c79af0fd3f
CRs-Fixed: 2103112
2017-09-02 13:46:48 -07:00
Tushnim Bhattacharyya
481a9dfb4c qcacmn: Avoid deadlock while protecting connection list
Avoid deadlock while protecting connection list during SAP channel
switch.

Change-Id: Ib4f8bd3e185b3dd6bd746e49645b6456dca50e96
CRs-Fixed: 2088106
2017-09-02 04:19:21 -07:00
Tushnim Bhattacharyya
95e7e27147 qcacmn: Handle no common channel between PCL and the favorite channel list
Handle the scenario where no common channel between PCL & the
favorite channel list is found.

Change-Id: I560d7ef861d89f3f4a0c63afacd0ffbf6aaa976e
CRs-Fixed: 2063060
2017-09-02 04:19:18 -07:00
Tushnim Bhattacharyya
4980f3c81c qcacmn: Fix logic to force SCC in SAP+STA concurrency
If SAP is up & STA is coming up next(or vice versa) on a different
channel causing MCC, move SAP to cause SCC or DBS. This logic is
enabled only if gWlanMccToSccSwitchMode is set to
QDF_MCC_TO_SCC_SWITCH_FORCE_WITHOUT_DISCONNECTION or
QDF_MCC_TO_SCC_SWITCH_WITH_FAVORITE_CHANNEL.

Change-Id: I16615d828a285762133ee3533339320ef119b3d3
CRs-Fixed: 2063060
2017-09-02 04:19:15 -07:00
Tushnim Bhattacharyya
d3c96deba9 qcacmn: Dynamically allocate memory for work sta_ap_intf_check_work
To handle back to back scheduling of sta_ap_intf_check_work, allocate the
memory used by the work dynamically.

Change-Id: Ibbcfafb2fadd2de1cca44086f9335dca86641f50
CRs-Fixed: 2070220
2017-09-02 04:19:12 -07:00