Commit graph

1,089 commits

Author SHA1 Message Date
Nirav Shah
75cc5c83eb qcacmn: Use different copy engine for packetlog
Create new endpoint and use CE11 for packetlog
messages from target to host.

CRs-Fixed: 995628
Change-Id: I0df597468b0b7399dc545b5a4d4fd1a4c04a1df0
2016-06-06 18:52:23 -07:00
Nirav Shah
c64364e6a9 qcacmn: Add logic to log pause/unpause time
Add logic to calculate pause and unpause time for
network queues to debug data path issues.

Change-Id: I825b10837d999384a91ca3c2271e472a71fd8863
CRs-Fixed: 999861
2016-06-06 18:52:20 -07:00
Akash Patel
436558b6c8 Release 5.1.0.10
Release 5.1.0.10

Change-Id: I3921f9ffc1abf1543e9ceb6dd12f8c3aa401cb63
CRs-Fixed: 688141
2016-05-25 16:35:58 -07:00
Govind Singh
8f7a1ff2c6 qcacmn: Abstract delta code of fw common to respective layer
FW common files needs to be in sync with host and fw.
Abstract extra definition of hia map internal to hif layer.
MSI_NUM_REQUEST is incorrectly overwritten, keep the original
change as MSI_ENABLE is false across all target versions.
These changes are incorrectly added in following change id.
Iced029073c2db9eb175adcebcad9163ab39443a9.

Change-Id: Ie38666f315067ae40676e3bdac9238e4b52e6be1
CRs-Fixed: 1012542
2016-05-23 11:33:47 -07:00
Yuanyuan Liu
a5f0a396a2 qcacmn: Use PLD layer
Remove ICNSS_CONFIG dependency as it is taken care by PLD layer.

CRs-Fixed: 1013853
Change-Id: I7f174642a1d9053670b4544e0e37dee1d4849872
2016-05-23 11:33:41 -07:00
Houston Hoffman
c8993b5509 qcacmn: Force unwake in ce_per_engine_service for fastpath
ce_per_engine_service fails to call Q_TARGET_ACCESS_END in fastpath
execution flow.

Change-Id: I0caed62a4775e6e1231fead6eaa1ad7f38bc9ba2
CRs-Fixed: 1017064
2016-05-23 11:33:35 -07:00
Houston Hoffman
5364165a30 qcacmn: Add yielding to ce_per_engine_service_fast
Prevent fastpath from hogging the cpu.

Change-Id: I26de5f3108ac690eae4ded956c2524a309b7353a
CRs-Fixed: 1017061
2016-05-23 11:33:32 -07:00
Houston Hoffman
3b252aa509 qcacmn: Re-indent ce_per_engine_service_fast
Remove an unneeded if check and re-indent

Change-Id: If09ec8133df267120953c94e156f745b84913621
CRs-fixed: 1017061
2016-05-23 11:33:28 -07:00
Houston Hoffman
056527220d qcacmn: per_engine_service yield based on timing
Yield based on timing instead of relying purely on packet count

Change-Id: Ie464f9344f39cba7cb1f95047ce8a160b050e503
CRs-Fixed: 1017059
2016-05-23 11:33:21 -07:00
Houston Hoffman
2bfb82fd6f qcacmn: make qdf_time_t synonymous with system ticks
Currently the use of qdf_time_t vs unsigned long is arbitrary.

Change-Id: I658b1e9169e50389f9054b9fe1d229e51e578461
CRs-Fixed: 1017055
2016-05-23 11:33:18 -07:00
Houston Hoffman
a757eda356 qcacmn: Mangle napi_poll return value when rescheduling
4.4 kernel NAPI implementation requires drivers to
return full work when they ask to be re-scheduled
or napi_complete and re-start with a fresh interrupt
Also takes care of the expectation that when not rescheduling
you return strictly less than budget.

Change-Id: I31b024d80b9941c539a9c9f89799a30dac2f5dfe
CRs-Fixed: 1017058
2016-05-23 11:33:12 -07:00
Houston Hoffman
e683eea688 qcacmn: Move locking for qdf_net_buf_debug_look_up to the colision list
At a cost of keeping 1023 more spinlocks in memory, we can avoid
spinlock contention between different hash keys while performing
the lookup.

Change-Id: Icca2bf0b49186176caf1ea40fb508efa7e7c89b4
CRs-Fixed: 1013620
2016-05-23 11:33:09 -07:00
Houston Hoffman
10749156e4 qcacmn: Reduce spinlock time in qdf_net_buf_debug_look_up
Improve hash function to better utilize the memory entropy.
Do memory allocation outside of the spinlock.

Change-Id: Ife7da44c81463bfa9bcf19850d98471f5c61d3f3
CRs-Fixed: 1013620
2016-05-23 11:29:53 -07:00
Vishwajith Upendra
341e6a9ec5 Release 5.1.0.9
Release 5.1.0.9

Change-Id: I1b7cfab8c8e0fedb221eef4a4bcf42010cbc2af0
CRs-Fixed: 688141
2016-05-20 17:06:36 -07:00
Anurag Chouhan
f0825aed74 qcacmn: Add Win Driver Compilation Fix
Add Win Driver Compilation Error Fixes

Change-Id: I362d05937ab5868c7957b573376317322495d5c4
CRs-Fixed: 1012511
2016-05-19 18:00:39 -07:00
Houston Hoffman
056d452238 qcacmn: Add check for supported register
Register offsets have 2 possible invalid values.
need to check for both values.

Change-Id: I6168aa46c4af66169284b98dee26ab56e4ed12c5
CRs-Fixed: 1012824
2016-05-19 18:00:33 -07:00
Houston Hoffman
3db96a43b6 qcacmn: Support IPQ4019 driver probe and detach
Add AHB bus type support.

Change-Id: I968f3ae06bb63a2116a9d24d75957f397a0e8c50
Acked-by: Balamurugan Mahalingam <bmahalin@codeaurora.org>
CRs-Fixed: 1009050
2016-05-19 18:00:25 -07:00
Houston Hoffman
abd0077413 qcacmn: Address win specific compilation issues
Fixing compliation issues due to fw common files which
are not yet converged.

Change-Id: I60c2045c0807e2700b548f3dfb9f07fe04eede46
Acked-by: Varsha Mishra <varsham@codeaurora.org>
CRs-Fixed: 1009050
2016-05-19 18:00:13 -07:00
Houston Hoffman
8592507dfb qcacmn: nss wifi offload changes
Expose copy engine infrastructure for use by an nss subsystem.

Change-Id: Icad9dc056ecccf4029caa4b83d4c976dcfc232a4
Acked-by: Varsha Mishra <varsham@codeaurora.org>
CRs-Fixed: 1009050
2016-05-19 18:00:03 -07:00
Houston Hoffman
f241eb09ae qcacmn: Fix for wifi reload
Disable the PCI during wifi down.
Pass correct values when target awake is checked.

Change-Id: Iaf8e03056d6cfdba19350adac9085e6ac2d4e58c
Acked-by: Venkateswara Swamy Bandaru <vbandaru@codeaurora.org>
CRs-Fixed: 1009050
2016-05-19 17:59:55 -07:00
Houston Hoffman
fb698efe55 qcacmn: Add support for AP chipsets
Add copy engine configuration, extended set_hia functionality,
htc_module credit flow control function and physical address calculations.

Change-Id: I5e4394bed39cc92bb8323d332dc124d948737322
Acked-by: Venkateswara Swamy Bandaru <vbandaru@codeaurora.org>
CRs-Fixed: 1009050
2016-05-19 17:59:48 -07:00
Houston Hoffman
c3c6bc1e5c qcacmn: Add support for Regtable convergence
Add regtable definitions for chipsets AR6004,AR6320,AR900B,
      AR9888,IPQ4019,QCA9888,QCA9984

Change-Id: Ic018a1396aa36f61ead6d8607feda4711e2a2b07
Acked-by: Venkateswara Swamy Bandaru <vbandaru@codeaurora.org>
CRs-Fixed: 1009050
2016-05-19 17:59:43 -07:00
Houston Hoffman
9348186afb qcacmn: Support WIN fastpath in HTC_module
WIN requires htc_ctrl_msg_cmpl api.

Change-Id: I3c7a1fb8a0da6271b3f0d02d83044d484ce63870
Acked-by: Venkateswara Swamy Bandaru <vbandaru@codeaurora.org>
CRs-Fixed: 1009050
2016-05-19 17:59:39 -07:00
Houston Hoffman
56e0d70c3c qcacmn: Introduce APIs needed by WIN
Added new APIs ce_batch_send and ce_send_single
only used by WIN.

Acked-by: Varsha Mishra <varsham@codeaurora.org>
Change-Id: I55d86d692455be118734f6e0a13e0e58c227b1a0
CRs-Fixed: 1009050
2016-05-19 17:57:57 -07:00
Houston Hoffman
4f529982ce qcacmn: Add HOST_INTEREST_AREA defines for ap chips
These defines should eventually come from /target/inc.

Change-Id: I7e931049f4543352654b946c807a70b5f62656a4
CRs-Fixed: 1012824
2016-05-17 11:09:33 -07:00
Houston Hoffman
2d75fb987b qcacmn: Remove ol_fw include from wmi_unified.c
ol_fw include was not needed.

Change-Id: I9a3a408029c00ca528a09fb92e1b1ed4a6acf8e9
CRs-Fixed: 1012824
2016-05-17 11:09:33 -07:00
Houston Hoffman
ec93ab0efa qcacmn: Remove qwlan_hw_list from hif_hw_version.h
Preparation to include hif_hw_version.h in ol_fw.h

Change-Id: If4395a9e05071f7b1239e1b2d7af2cc24b6d8339
CRs-Fixed: 1012824
2016-05-17 11:09:33 -07:00
Houston Hoffman
4849fcc9cd qcacmn: Fix CONFIG_CNSS ifdefery
Driver needs to support CONFIG_CNSS not defined.

Change-Id: I6c0112274fe5aa1ab3803a19efccee0381bc1964
CRs-Fixed: 1012824
2016-05-17 11:09:33 -07:00
Akash Patel
b3e469d6e3 Release 5.1.0.8
Release 5.1.0.8

Change-Id: I1ee2ebfc1b559779249ed45815ebb9b525059015
CRs-Fixed: 688141
2016-05-17 11:09:33 -07:00
Anurag Chouhan
fcc15e29a7 qcacmn: CL 1498085 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation.

WMI changes to handle action frames of different category in WoW mode

Change-Id: Icbf9ad7cac93dd75ddb976a0f781e20b60201896
CRs-Fixed: 865207
2016-05-17 11:09:33 -07:00
Anurag Chouhan
61c3aba066 qcacmn: CL 1492713 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation.

WMI changes for adaptive dwell time scan.

Change-Id: Ibdd1bdd607b3acac5d55312ee2595c32892c89b5
CRs-Fixed: 865207
2016-05-17 11:09:33 -07:00
Govind Singh
fe2c815b77 qcacmn: Add non-tlv implementation in common wmi layer( part 2)
Add non-tlv fixes for issues observed during L1 validation in WIN platform.

Change-Id: I20efe25021258137a97dc408b93c9fdc3714f367
Acked-by: Sathish Kumar <ksathis@qti.qualcomm.com>
CRs-Fixed: 1005778
2016-05-17 11:09:33 -07:00
Anurag Chouhan
7c9496b6a6 qcacmn: CL 1488100 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add support for scenario debug logging
WMI changes to control WISA features of firmware from host

Change-Id: I01d96c423b6241248242aa2feae6887d8f202691
CRs-Fixed: 865207
2016-05-17 11:09:18 -07:00
Prakash Manjunathappa
6a4c9803a3 qcacmn: Remove extra ticks-to-msec conversion
qdf_wait_single_event expects msecs as the timeout value.
However, two references in dp, first of which is this instance,
passes the value in ticks. This causes the value to be converted
to msecs a second time by the function and hence an incorrect
timeout value.
The other instance is in the qcacld-3.0 project.

Change-Id: Ic73f5b22e987589c1f0607ced6ae9e51ff3c52c2
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
CRs-fixed: 1012345
2016-05-12 11:22:38 -07:00
Prakash Manjunathappa
82b8996739 qcacmn: Make MAX_NUM_RECEIVES same for all cases
MAX_NUM_RECEIVES, the maximum number of messages to be processed
by the bottom-half before control is returned to kernel was
defined as different (but close) numbers for NAPI and non-NAPI
cases (based on NAPI feature flag), 100/1000 for non-NAPI and
128/1024 for NAPI cases.
With this update the value is set to 128/1024 regardless of NAPI
feature being compiled or not.

Change-Id: I152afd30b302d52426c07ae39a95af388ba0ae52
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
CRs-Fixed: 1012336
2016-05-12 11:22:38 -07:00
Manjunathappa Prakash
32afe374d8 qcacmn: Fix lro dereg crash on driver unload
If lro_disable is called after  cds_close, which is the case
for module unloads, then many of the pointers used in dereg
sequence are NULL (CE_state, hif, txrx_pdev). There is a case,
when interfaces are removed, when these pointers are there.
Check pointers before using them in dereg code.
Update hif_map_service_to_pipe so that it will return E_INVAL if
the service is not in the table. Add logs for cases where either
leg information is not updated on return.

Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
Change-Id: I5b88a297134dcc1d7a6a68dd2a9879dfd1553a7e
CRs-Fixed: 1014428
2016-05-12 11:22:05 -07:00
Houston Hoffman
47808175d4 qcacmn: Use CE index register values during init
Shadow registers and DDR are not guaranteed to reflect
the actual copy engine register values before transactions
are performed.
Also adds debug code to verify that the register values
make sense.

Change-Id: Ied0352638765571545f92b2e0dc18b4ca7a399a7
CRs-Fixed: 1012744
2016-05-11 15:23:50 -07:00
Krunal Soni
2959c637e8 qcacmn: Fix incorrect arguments being passed in few WMI APIs
There are some WMI APIs which are using invalid arguments in
WMI interface layer. Send correct arguments.

CRs-Fixed: 1014141
Change-Id: If483a3ebcc62693be6ac6d3a767cb98e3bf064c7
2016-05-11 15:23:44 -07:00
Vishwajith Upendra
00cdc90fb6 Release 5.1.0.7A
Release 5.1.0.7A

Change-Id: I47005ea6d16532022cfd4f6d95a4a224b86e6e57
CRs-Fixed: 688141
2016-05-11 14:43:34 -07:00
Yuanyuan Liu
614628ba98 qcacmn: Remove CONFIG_CNSS dependency
Use OS standard APIs. Remove CONFIG_CNSS dependency.

Change-Id: I6689e8b5c4260f393a2b499c8b41359d042ce894
CRs-Fixed: 1000797
2016-05-11 09:28:36 -07:00
Akash Patel
edd83c7c8a Release 5.1.0.7
Release 5.1.0.7

Change-Id: I7f017dc56aec7465cfad922ceb5172d5a26b7158
CRs-Fixed: 688141
2016-05-09 11:04:03 -07:00
Yuanyuan Liu
bc8441f46f qcacmn: Add QDF_BUS_TYPE_NONE for error check
Add QDF_BUS_YTPE_NONE in qdf_bus_type, which is used to represent
error bus type.

Change-Id: I274a795d32b2a5581b8849f5827cb8ac3bbf169b
CRs-Fixed: 1000113
2016-05-09 11:04:03 -07:00
Govind Singh
2a56c22843 qcacmn: Add support for WMI_PDEV_WAL_POWER_DEBUG_CMD
Add host support for WMI POWER DEBUG command to control mac_core power features
for run time debugging.

Change-Id: Ifc810b24222507f1445a84a54caa8aee5e815b38
CRs-Fixed: 1007598
2016-05-06 16:45:34 -07:00
Manjunathappa Prakash
2c3575e635 qcacmn: Add qdf, nbuf changes for monitor mode
Add monitor mode changes, takes care to add radiotap header from
rx_status info.

Change-Id: Ie18b698836854df6f27e27534a61f8dd8a689bfd
CRs-Fixed: 963060
2016-05-06 13:09:27 -07:00
Manjunathappa Prakash
dff1f975d9 qcacmn: Takecare of extended nbufs memory leak tracking
Update nbuf memory leak tracking logic to handle extended nbufs.

Change-Id: I172f9de0b3dd99d634cfe70dfab964749b9d49a7
CRs-Fixed: 963060
2016-05-06 13:09:27 -07:00
Dhanashri Atre
42364947db qcacmn: Increase CE6 Ring Size
Increase the CE ring that is used by firmware for HIF memcpy.
Increase the size to 0x4000

Change-Id: I8a71c795469b7cd51c3c2609a8e22a3b19ab7e77
CRs-Fixed: 1006872
2016-05-06 13:09:27 -07:00
Yuanyuan Liu
ae38003449 qcacmn: Clean up OS wrapper functions
Use OS standard APIs instead of CNSS wrapper functions

Change-Id: Icd048f41864c33463f4bb582d8d184816fa77c5d
CRs-Fixed: 1000797
2016-05-06 13:09:08 -07:00
Vishwajith Upendra
d8d4c735a8 Release 5.1.0.6
Release 5.1.0.6

Change-Id: I5997337f2277d70f44638775eb363e49f08728b7
CRs-Fixed: 688141
2016-05-04 21:11:13 -07:00
Houston Hoffman
735bb8def4 qcacmn: Define SLOTS_PER_DATAPATH_TX in ce_service.c
SLOTS_PER_DATAPATH_TX needs to be defined in the common project.

Change-Id: I9dd3cea3b9b2563960dd5d81a661c9ac1e61ac0d
CRs-Fixed: 1009290
2016-05-04 21:11:09 -07:00
Houston Hoffman
127467f040 qcacmn: Add hif_ctx to fastpath_cb_register api
Hif apis can't rely on a global context.

Change-Id: I2cad80573fc0102f210bb0f7c3f9e22c5f8e16f9
CRs-Fixed: 1009274
2016-05-04 21:11:05 -07:00