Commit graph

1,394 commits

Author SHA1 Message Date
Manjunathappa Prakash
4a9c3a8fb6 qcacmn: Cleanup fastpath changes
Do following cleanup on fastpath code changes:
1) Do not reap off Tx HIF buffers in Rx handling, instead handle
   reaping in Tx fastpath itself.
2) In ce_per_engine_service_fast check for more Rx packets after
   packet processing.
3) Make stub functions as static inline for non-fastpath enabled case.

Change-Id: If07c4344a424ce13b94128bf28931a24255b661a
CRs-Fixed: 987182
2016-04-17 15:23:37 -07:00
Manjunathappa Prakash
7399f148b5 qcacmn: Add fastpath Rx support
With dedicated CE for Rx and Tx completion HTT messages, skip processing
in Host Target Communication layer.
Do special handling in HIF-CE and HTT layer, this optimization results
in 3-4% CPU utilization gain.

Change-Id: I400148a0e24ac62dd09e2a95d5f35d94d83fe2df
CRs-Fixed: 987182
2016-04-17 15:23:32 -07:00
Houston Hoffman
c7d5429428 qcacmn: Support multiple RX CEs for NAPI/LRO/FastPath
Make changes so that LRO and FastPath can check whether a
given CE is a datapath RX CE. This is done through new
flags in CE_state which indicate whether or not a given
CE is a htt_[tr]rx CE.
Also add support to enable multi-queue NAPI.
Note that the paths are not yet parallel-execution protected,
but this should be OK as all NAPI instances are processing
the same interrupt now and as such as serialized.

Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>

Change-Id: I57125b3e1fbad0345b6e1f4ed25e71babaf4f520
CRs-Fixed: 982728
2016-04-17 15:23:26 -07:00
Yuanyuan Liu
a7a282f1e3 qcacmn: Bypass GLINK/QMI for 8998 RUMI bring up
Bypass QMI for 8998 RUMI bring up as it doesn't support
QMI for now.
Increase regulatory timeout for slow RUMI setup.

Change-Id: Ie4d790a79aaa166731c876bdecf0f4f6970caae4
CRs-Fixed: 978953
2016-04-17 15:22:30 -07:00
Naveen Rawat
9eb124d274 qcacmn: CL 1469034 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

add a wmi command to enable/disable channel
avoidance report event from firmware

Change-Id: Ic84728b315b4729470238098a91ef6bb629b3f7b
CRs-Fixed: 865207
2016-04-17 15:19:14 -07:00
Naveen Rawat
32a8dc6fb2 qcacmn: Remove FEATURE_WLAN_ESE_UPLOAD compile macro
At present and going forward ESE and ESE_UPLOAD will be the
de-facto approach supporting ESE. Hence there is no need of two compile macros
FEATURE_WLAN_ESE and FEATURE_WLAN_ESE_UPLOAD.

Instead Remove FEATURE_WLAN_ESE_UPLOAD and Keep only FEATURE_WLAN_ESE.

Change-Id: If1a04e95211a0d639db7b60a57a6d5f215d26f4e
CRs-Fixed: 950762
2016-04-17 15:19:10 -07:00
Naveen Rawat
9123c15bb0 qcacmn: Replace enum device_mode to tCDF_ADAPTER_MODE
Instead of using two different enums for setting adapter mode,
combined them to make only one set of enum.

Change-Id: Ie41244becec39fe1f5f24a721f5b24e137e7fd26
CRs-Fixed: 985273
2016-04-17 15:19:07 -07:00
Chandrasekaran Manishekar
4758eb4153 qcacmn: Send channel switch request instead of doing SAP restart
Send channel switch request instead of performing SAP restart when
doing a MCC to SCC switch. This is controlled using the existing INI
item 'gWlanMccToSccSwitchMode'. The new value of '3' will perform
this channel change by sending (E)/CSA whereas the old value of '2'
can still be used to do a channel change by doing SAP restart.

Change-Id: I79e7317219503de0a9957940f3cf7a4e91c7a521
CRs-Fixed: 986202
2016-04-17 15:19:03 -07:00
Sreelakshmi Konamki
9a2518da77 qcacmn: CL 1466376 update fw common interface files
qcacld-3.0 to qcacmn propagation

Enhanced mcast filtering for incoming packets that have
multicast IP but unicast mac

Change-Id: Id50d9130f050ec9a948fdba9931c88b9111bb6ad
CRs-Fixed: 865207
2016-04-17 15:18:39 -07:00
Sreelakshmi Konamki
1aae997fb3 qcacmn: CL 1463814 update fw common interface files
adding wmi cmd for setting BT paging and WLAN P2P/STA/SAP sched interval

Change-Id: I07b885d726c12d8a9e7e8b179ad427b24a2f5db8
CRs-Fixed: 865207
2016-04-17 15:17:16 -07:00
Houston Hoffman
ca40cbad9d qcacmn: Incremental Release 5.1.0.6G
qcacmn: Incremental Release 5.1.0.6G
Matches with driver version 5.1.0.6G

Change-Id: I57022c29b5bae1ae72bbe3be2022a3d853f1dda3
CRs-Fixed: 688141
2016-04-15 15:05:20 -07:00
Houston Hoffman
c7636aca07 qcacmn: Enable station SMPS only if the session supported NSS > 1
If HT SMPS is enabled and if the session supported NSS > 1
then include SMPS IE in the HT capabilities of the association
and the reassociation management frame.Enabling SMPS with an AP
whose capability is only 1x1 will result in association/reassociation
request being rejected or an unexpected behavior. Send SMPS force mode
to FW to trigger SMPS action frame only if SMPS is enabled in the
INI. For dynamic antenna switch, the chain mask manager will send
the SMPS action frames.

CRs-Fixed: 931250
Change-Id: Ifff2ef2c8790994a68e676b8bba2fb03c21370d4
2016-04-15 15:04:43 -07:00
Houston Hoffman
59aa1f57e5 qcacmn: Incremental Release 5.1.0.5G
qcacmn: Incremental Release 5.1.0.5G
Matches with driver version 5.1.0.5G

Change-Id: I097696a9a6c07d434f34c5fdc48e760d5819d7db
CRs-Fixed: 688141
2016-04-15 00:03:56 -07:00
Vishwajith Upendra
7de43ac2b2 qcacmn: Incremental Release 5.1.0.5GG
qcacmn: Incremental Release 5.1.0.5GG
Matches with driver version 5.1.0.5GG
Equivalent to SU165 on qcacld-3.0

Change-Id: I70bd31342e1b97ab102ea5f06b29f8d306cb948a
CRs-Fixed: 688141
2016-04-14 18:41:41 -07:00
Sandeep Puligilla
4afc7c37ac qcacmn: Add qdf roundup macro
Add qdf utility macro to roundup the input value

Change-Id: Ic1a7ee0d3a35090b3d0f24858ba8003eee86b057
CRs-Fixed: 947086
2016-04-14 18:41:41 -07:00
Rajeev Kumar
8e73708b0e qcacmn: Fix compilation error caused by hif_disable_power_management
hif_disable_power_management is only defiend for PCI devices which is
causing compilation error for SNOC devices. Define empty definition of
hif_disable_power_management for SNOC devices.

Change-Id: I4da5e2346119626fd6478d3eb835bcb1ba9dd663
CRs-Fixed: 978810
2016-04-14 18:41:41 -07:00
Rajeev Kumar
cbbd7b2ee9 qcacmn: Fix compilation error caused by hif_enable_power_management
hif_enable_power_management is only defiend for PCI devices which is
causing compilation error for SNOC devices. Define empty definition of
hif_enable_power_management for SNOC devices

Change-Id: If6a4de93d18e8c5ca2a67f43a0eae69e781efa68
CRs-Fixed: 978802
2016-04-14 18:41:40 -07:00
Gupta, Kapil
8093bc42d5 qcacmn: Add support for dense roam params in wmi layer
qcacld-2.0 to qcacmn propagation

In High dense environment roaming should be triggered early
at dense RSSI threshold which provide better throughput result.
Add support for dense roaming parameters to read from ini file
and send to FW with other roaming parameters

CRs-Fixed: 953579
Change-Id: Ia63bfdd1248b4507d988b019f07164a7c75566af
2016-04-14 18:27:09 -07:00
Satish Singh
fbb6c0f4d6 qcacmn: Incremental Release 5.1.0.1H
qcacmn: Incremental Release 5.1.0.1H
Matches with driver version 5.1.0.1H

Change-Id: I4232e71f2518d810a5b901a513a29f7bcd78925a
CRs-Fixed: 68814
2016-04-12 14:22:20 -07:00
Vishwajith Upendra
ff2c10068c qcacmn: Incremental Release 5.1.0.1G
qcacmn: Incremental Release 5.1.0.1G
Matches with driver version 5.1.0.1G

Change-Id: Ifa32cd24e31b2fc1fe48fc3950c3a84d685d7411
CRs-Fixed: 68814
2016-04-04 10:01:10 -07:00
Siddarth Poddar
c28ab7b4bc qcacmn: Fix tlv formation of gtk offload command
Add gtk offload enable/disable macros and use them
while copy keys and replay counter.

Change-Id: Ifdd776bc0c567d6c815ab5cb3eb212a43889b5a5
CRs-Fixed: 987362
2016-04-04 09:50:25 -07:00
Govind Singh
3f14f6f9d4 qcacmn: Use QDF_STATUS instead of Linux return type in wmi layer
Replace Linux return type with QDF_STATUS to have uniformity
across common wmi layer.

Change-Id: I74730602c6b20fb240182afd7c6e5ec6b3fcfd55
CRs-Fixed: 987362
2016-04-04 09:50:14 -07:00
Govind Singh
e6fc2e1941 qcacmn: Fix tlv formation of pno start command
Fix tlv formation of pno start command by adding the pno channel
prediction parameter in variable length tlv of pno start command.

Change-Id: I10274519eedf3d3cbcebfdc5e308fcf86bc2a804
CRs-Fixed: 987362
2016-04-04 09:49:57 -07:00
Vishwajith Upendra
b757dea383 qcacmn: Incremental Release 5.1.0.1F
qcacmn: Incremental Release 5.1.0.1F
Matches with driver version 5.1.0.1F

Change-Id: Id916cd39e0a792b4fb6b9a08a9f7b5c73b0409c5
CRs-Fixed: 688141
2016-04-01 16:59:47 -07:00
Dhanashri Atre
fe5662c2b8 qcacmn: Data path converged internal APIs (Set 2)
Initial check-in of the data path converged APIs that
are currently only implemented by WIN.

Change-Id: I68bc403dc652b514bfcc27f1eac1e9c5ca27c8d8
CRs-Fixed: 993414
2016-04-01 16:24:39 -07:00
Dhanashri Atre
0a485f1a58 qcacmn: Fix the return type of the rx function
Receive function should return QDF_STATUS type

Change-Id: I420a117ff723e7bb880abd731ec34c96f526c85a
CRs-Fixed: 993414
2016-04-01 16:23:17 -07:00
Yue Ma
b16cf3028e qcacmn: Clean up header files for HTC
Remove the header files which are not in common project so that HTC
layer can be converged.

Change-Id: Iaf5869e1d739cc80dcc5b89a446f499527350e38
CRs-fixed: 982024
2016-04-01 11:53:21 -07:00
Yue Ma
ec9e71c33b qcacmn: Remove CDS related functions in HTC
Clean up CDS related functions so that HTC layer can be converged.
Also add compilation flag for runtime PM APIs.

Change-Id: I4c4a06b4387c8cc3f9b41d0191f46d7fa1b0a0b4
CRs-fixed: 982024
2016-04-01 11:53:21 -07:00
Yue Ma
9be730f61b qcacmn: Update credit flow control enable/disable in HTC
There are two ways to enable/disable HTC credit flow control. One is
in HTC itself with a static variable. The other is from the modules
who want to establish HTC service (e.g. WMI or HTT) by sending the
request. Make sure credit flow control enable/disable can be safely
done by other modules so that HTC layer can be converged.

Change-Id: I169c1ac7b410a7c9e7203c174bf1f1ec8a07ca06
CRs-fixed: 982024
2016-04-01 11:53:21 -07:00
Vishwajith Upendra
e8e3b12939 qcacmn: Incremental Release 5.1.0.1E
qcacmn: Incremental Release 5.1.0.1E
Matches with driver version 5.1.0.1E

Change-Id: I98f5994f50d9821fce93c56d4cd244ea129fa9bd
CRs-Fixed: 688141
2016-03-31 23:27:54 -07:00
Houston Hoffman
20968291c5 qcacmn: Reset the Runtime PM state when exiting
qcacld-2.0 to qcacld-3.0 propagation
Add prevent method to reset the Runtime PM state before driver
unload to ensure Runtime PM is recovered by driver load.

Change-Id: I5fccc345e5217d1a26c3c4f0cda1dca5ee71004c
CRs-Fixed: 899522
2016-03-31 22:47:12 -07:00
Houston Hoffman
b21a053526 qcacmn: Fix runtime pm compilation
Runtime PM compilation broke while it was disabled.

Change-Id: I1378e5a10c8982b11ccaaff3041223da94bf25ae
CRs-Fixed: 935300
2016-03-31 22:47:03 -07:00
Houston Hoffman
b4149dda4f qcacmn: pointerize hif power_management apis
Bus power management requirements are different for different busses.
Add them to the bus opps table.

Change-Id: Ia5a2500dc2f1db3be2ddbbaea6a5969420ec0c51
CRs-Fixed: 978810 978802
2016-03-31 22:46:46 -07:00
Rajeev Kumar
febbf6b9ec qcacmn: Clean-up log messages from data path
In data path per packet logging is overwriting previous useful
logs. Use HDD data module ID for WMM per packet logging with
debug log level such that by defualt per packet WMM debug log
messages are not logged.

Change-Id: I64053a6d5048a14277e01f35fcb6e0bbf6ac42b9
CRs-Fixed: 969712
2016-03-31 22:46:37 -07:00
Vishwajith Upendra
5653d6e94f qcacmn: Incremental Release 5.1.0.1D
qcacmn: Incremental Release 5.1.0.1D
Matches with driver version 5.1.0.1D

Change-Id: I9411cf30faadc1455401d61f85be0b676ddbcf9b
CRs-Fixed: 688141
2016-03-31 13:53:25 -07:00
Manjunathappa Prakash
5f45de5139 qcacmn: APIs to access core datapath data structures
Non datapath modules use these APIs when they work with datapath
module data structures.

Change-Id: Ic257c6fc621820199b1691b8e62f7f7109237b01
CRs-Fixed: 993414
2016-03-31 13:35:44 -07:00
Manjunathappa Prakash
a22c2169fb qcacmn: Converged datapath APIs (set 1.1)
Add below changes:
1) Add peer handling functions.
2) Bring in the APIs under else(#else) part of compile time flags
   QCA_SUPPORT_TXRX_LOCAL_PEER_ID, QCA_COMPUTE_TX_DELAY and
   QCA_SUPPORT_TX_THROTTLE.

Change-Id: I08b101702a7d0d870e9fab9b8a3cc7cc19d3464f
CRs-Fixed: 993414
2016-03-31 13:35:43 -07:00
Dhanashri Atre
9c222b15b0 qcacmn: Data path converged internal APIs (Set 1)
Initial check-in of the data path converged APIs that
are currently only implemented by MCL.

Change-Id: I8132aeef4631a8e2fb5e132126a0fc5292c96d12
CRs-Fixed: 993414
2016-03-31 13:35:41 -07:00
Dhanashri Atre
d90a4473ec qcacmn: include the qdf_event header file when using qdf events
Fix compilation error since qdf_event is used without including
the appropriate header file.

Change-Id: Iecc2f4080f8cb699ada4892dd431d68df4a080ca
CRs-Fixed: 994652
2016-03-31 13:35:39 -07:00
Dhanashri Atre
5b64648f9f qcacmn: Data path converged common APIs
Initial check-in of the shared converged APIs and structures
on the data path

Change-Id: I29a9a587832cbe25a43267135e3df896f1a3e7b1
CRs-Fixed: 993414
2016-03-31 13:35:37 -07:00
Dhanashri Atre
795d5196b6 qcacmn: Clean-up the data path folder
Clean-up the data path folder to create an empty canvas which
should contain only the converged data path APIs.

Change-Id: I90002dc48ef1a2f8d11ab7064ec900fcd82c0fe9
CRs-Fixed: 993414
2016-03-31 13:35:35 -07:00
Komal Seelam
7508012ea9 qcacmn: Rename hif_callbacks and remove unwanted header files in source files
Rename hif_callbacks structure to hif_driver_state_callbacks and remove
get_monotonic callback and use qdf API to get monotonic time.

Remove following unwanted header files in the hif source files.
osdep.h, athdefs.h, a_types.h, osapi_linux.h.

Change-Id: Ib7a03cab1b056a33b39247989fa3dfca41c85f77
CRs-Fixed: 967765
2016-03-31 13:35:33 -07:00
Prakash Dhavali
39ac6ff576 qcacmn: Incremental Release 5.1.0.1C
qcacmn: Incremental Release 5.1.0.1C
Matches with driver version 5.1.0.1C

Change-Id: Ia59b8788ae4c910baf555356961cc6d73a29f57c
CRs-Fixed: 688141
2016-03-30 13:00:45 -07:00
Service qcabuildsw
e50ae58587 Merge "qcacmn: Add tlv formation of key installation commands in common wmi layer" into wlan-cmn.driver.lnx.1.0-dev 2016-03-30 12:12:19 -07:00
Service qcabuildsw
39d02fc965 Merge "qcacmn: Fix tlv formation of vdev start command" into wlan-cmn.driver.lnx.1.0-dev 2016-03-30 12:12:16 -07:00
Service qcabuildsw
2ee07ffec6 Merge "qcacmn: Use IEEE80211_ADDR_LEN macro for size of mac address" into wlan-cmn.driver.lnx.1.0-dev 2016-03-30 12:12:14 -07:00
Service qcabuildsw
aa592b4dca Merge "qcacmn: Fix tlv formation of arp ns offload command" into wlan-cmn.driver.lnx.1.0-dev 2016-03-30 12:12:10 -07:00
Service qcabuildsw
f515949f90 Merge "qcacmn: Fix tlv formation of Peer assoc wmi command" into wlan-cmn.driver.lnx.1.0-dev 2016-03-30 12:12:08 -07:00
Himanshu Agarwal
a41da1d50f qcacmn: Add tlv formation of key installation commands in common wmi layer
Move tlv formation of wmi setup key installation commands from umac to
common wmi layer.

Change-Id: I51250a9b1b6bb5aed06657b9f88f4659430f4c74
CRs-Fixed: 987362
2016-03-30 12:06:53 -07:00
Siddarth Poddar
7e30287bde qcacmn: Fix tlv formation of vdev start command
Add channel info in tlv formation of vdev start command

Change-Id: I83164934978f6cac179e1e66c576549a732e356d
CRs-Fixed: 987362
2016-03-30 23:13:11 +05:30