Commit Graph

122 Commits

Author SHA1 Message Date
Jeff Johnson
89c66ff56c qcacld-3.0: Avoid unexpected TSF GPIO failure
qcacld-2.0 to qcacld-3.0 propagation

A customer observed the following error log:
wlan: [1662:E :HDD] hdd_wlan_startup: 12873: set tsf GPIO fail

The customer was concerned that the device was not working correctly.
The reality is that the TSF GPIO is only expected to be set on
specific hardware platforms, and the customer platform was not one of
those platforms.

Fix this issue by making sure that all of the TSF GPIO logic is
properly encapsulated within the WLAN_FEATURE_TSF feature flag.

Change-Id: I34eab623243d4674c5fc1d0c8139d80efe5786a7
CRs-Fixed: 962955
2016-05-02 23:27:59 -07:00
Manikandan Mohan
296d4b5d32 qcacld-3.0: Configure only valid TSF gpio pin
qcacld-2.0 to qcacld-3.0 propagation

Update qcacld to configure only valid GPIO setting if enabled in
INI file. Default TSF Gpio value is set as invalid, so it will not
be set in firmware during driver load.

Change-Id: I0414becbf83718155a9ca51d60f34d0e8ffcd4e3
CRs-fixed: 994569
2016-05-02 23:27:56 -07:00
Manikandan Mohan
976e756f56 qcacld-3.0: Configure tsf gpio pin
qcacld-2.0 to qcacld-3.0 propagation

Add configuration of gpio pin used for TSF. FW shall toggle
this gpio when receive capture/get tsf cmd.

Change-Id: I442f2de3af4f3946a20bf3f4a9d8c9b285aa7a7c
CRs-Fixed: 817527
2016-05-02 23:27:52 -07:00
Manikandan Mohan
dcc21ba7f6 qcacld-3.0: get tsf from fw
qcacld-2.0 to qcacld-3.0 propagation

Get tsf from fw. Provide ioctl interface cap_tsf/get_tsf.
Driver issue wmi cmd to fw to realize capture/get.
It can be used in station and softap mode. For sta, getting
tsf from connected ap. For softap, it will generate tsf by-
self

Change-Id: I00d30882bce2f49ee3de3fa189e094c04c0d9943
CRs-Fixed: 817527
2016-05-02 23:27:49 -07:00
Manjunathappa Prakash
34e9616ebb qcacld-3.0: Make NAPI stubs neutral
When the feature is not defined, make sure that NAPI API calls
return success (0) so that the callers don't need to add any code
to check return values.

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

Change-Id: Ibfb8d407cb902ecc2b61dd971262904aa25aa9ba
CRs-Fixed: 999422
2016-04-25 22:55:47 -07:00
Chandrasekaran, Manishekar
b2d9fa14f4 qcacld-3.0: Enable packet tracker for non performance builds
Enable the packet tracker feature for non performance builds
by enabling the macro QCA_PKT_PROTO_TRACE and set the
default packet tracker log level to dump the DHCP, EAPOL
and management packet details. The necessary log level can
be modified using the ini 'gEnableDebugLog' entry either at
compile time or at run time using the IOCTL 'setDbgLvl'.
The logs are dumped using the same IOCTL 'setDbgLvl'.

e.g.,
To enable all the packet trace features
- iwpriv wlan0 setDbgLvl 0x0f
To dump the packet trace
- iwpriv wlan0 setDbgLvl 9999

Change-Id: I4fe82e0091517f0614baedf620976dd37b94a974
CRs-Fixed: 998642
2016-04-25 22:55:29 -07:00
Rajeev Kumar
94c9b45b3d qcacld-3.0: Pass IBSS peer mac address received from target
Propagation from qcacld-2.0 to qcacld-3.0

Pass mac address received from target in IBSS peer info event to
user space. In addition remove pronto specific rate conversion
logic as ROME FW returns data rate in Mbps directly

Change-Id: Id89e9f357831f242c43fc8ce121de18a3180e422
CRs-Fixed: 777960
2016-04-20 22:24:32 -07:00
Varun Reddy Yeturu
215ef9484b qcacld-3.0: Enable LFR3 by default
Enable LFR3(Firmware based roaming) feature by default
in the runtime configuration files.

Change-Id: Id9e4b496596c7c7fa3d1f62376cbc1f3edafc18c
CRs-Fixed: 991784
2016-04-20 22:24:00 -07:00
Krunal Soni
3ce0a78861 qcacld-3.0: Revert the MCC restriction on Adrastea emulation
With recent changes in firmware, emulation platform will now support
MCC on same mac. So, revert the restriction on adrastea emulation
platform.
Original change id:I17a92dce695ee30f7994f040d4bc612a38680f3e

Change-Id: I77e03328a20bd9c211484705aa573df7dac7fe15
CRs-Fixed: 997785
2016-04-20 22:23:41 -07:00
Poddar, Siddarth
8390502e2e qcacld-3.0: add ini support for throttling period duty cycles
qcacld-2.0 to qcacld-3.0 propagation

Provide support to configure duty cycle by adding ini item for
different level duty cycle.

CRs-Fixed: 990798
Change-Id: I95e4f4af669fd50c5b9fc10ffc61fa5d447b5bcf
2016-04-20 22:23:19 -07:00
Krishna Kumaar Natarajan
ee4dbedf8f qcacld-3.0: Increase maximum size of oem data request
Increase maximum size of oem data request from 280 to 500. This
change set also remove the following unused macros in UMAC
- OEM_DATA_REQ_SIZE
- OEM_DATA_RSP_SIZE

Change-Id: I768da4dd03c2de618c528cb72b86a5df72dd2efe
CRs-Fixed: 997085
2016-04-20 22:23:11 -07:00
Ravi Joshi
e2331e8f03 qcacld-3.0: Add an INI item to disable dynamic tcp delayed ack
Add an INI item to disable dynamic tcp delayed ack feature.
By default, the dynamic delayed ack is always enabled

Change-Id: I64b551ff294afc876fe46538d364e0c39add76ac
CRs-Fixed: 865144
2016-04-20 22:22:52 -07:00
Abhishek Singh
165bc60022 qcacld-3.0: Add INI param to ignore HT op mode of peer AP
qcacld-2.0 to qcacld-3.0 propagation

Currently even if peer AP is in Legacy mode, driver can enable
11g protection, even though there is no 11g AP in vicinity.

As a part of fix, add an INI param which will enable 11g
protection only when there is a 11g AP in vicinity.

Change-Id: Ic76e6070b02f92ef33934a0e5158fa4ef6c3e45b
CRs-Fixed: 897755
2016-04-20 22:22:35 -07:00
Varun Reddy Yeturu
d351a6c58e qcacld-3.0: Change name of routine is_roaming_offload_enabled
Modify the routine name of is_roaming_offload_enabled to
roaming_offload_enabled

CRs-Fixed: 978905
Change-Id: I1bfa1ebe1f7dd9dc88c68a0c660fa1886cf0e0fe
2016-04-17 18:11:18 -07:00
Varun Reddy Yeturu
bbbbe237f9 qcacld-3.0: Enable compile time enable/disable for roaming
Enable compile time featurization support for both LFR2.0
and LFR3.0 using WLAN_FEATURE_HOST_ROAM and
WLAN_FEATURE_ROAM_OFFLOAD respectively

CRs-Fixed: 978905
Change-Id: Ib5976cd0cd5a6e117a1334bfc73a043e36e25f77
2016-04-17 18:10:33 -07:00
Srinivas Girigowda
515a9efb36 qcacld-3.0: 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 18:07:30 -07:00
Kiran Kumar Lokere
13644679a2 qcacld-3.0: Move the channel width enum to cds
Currently channel width has different enum values in
different modules. Move the channel width enum definition
to CDS to maintain single channel width enum value in
the driver

Change-Id: I6a46d0c02546263080a15a3ec7c52486fc51e98e
CRs-Fixed: 983914
2016-04-17 18:06:59 -07:00
Naveen Rawat
3b6068c457 qcacld-3.0: Remove the file cds_regdomain_common.h
Data structures defined in cds_regdomain_common.h are similar
to those defined in cds_regdomain.h. Therefore remove the file.

Change-Id: I929b03058e9441e4a652314789cf91dbd94d0329
CRs-Fixed: 961806
2016-04-17 18:05:22 -07:00
Krunal Soni
276241e3d2 qcacld-3.0: (part-1)Replace enum device_mode to tQDF_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 18:01:12 -07:00
Chandrasekaran Manishekar
cde33d77d6 qcacld-3.0: 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 17:55:17 -07:00
Kiran Kumar Lokere
333a995e90 qcacld-3.0: Enable Tx LDPC by default
Enable Tx LDPC by default.

Change-Id: I5d276dbf40b8f85cedcf19be0aff5de2809661ea
CRs-Fixed: 983920
2016-04-17 17:50:46 -07:00
Archana Ramachandran
d41c3ed58c qcacld-3.0: Add interface files for dynamic antenna selection
Add interface files for dynamic antenna selection feature

CRs-Fixed: 931250
Change-Id: Ieafe368a25c3a69e32cd5de6822ef84130528096
2016-04-17 17:05:12 -07:00
Ryan Hsu
07495ea2e6 qcacld-3.0: Update wlan_hdd_add_virtual_intf for Kernel upgrade
Commit: 6bab2e19 ("cfg80211: pass name_assign_type to
rdev_add_virtual_intf)

Above commit add new parameter - name_assign_type to indicate the
ifname is set by userspace or generated by the kernel.

Also add this new param to all underlying interfaces, so that we can
get rid of the conditional flag interleave in APIs but only to the
toppest and lowest one.

Change-Id: I2233391f4e7313cf4134c975e14b6060ad852c5d
CRs-fixed: 966067
2016-04-17 17:05:12 -07:00
Rajeev Kumar
8e3e283a82 qcacld-3.0: Add extended IBSS feature on qcacld-3.0
Add extended IBSS feature on qcacld-3.0

Change-Id: I7faaf646df363a74954defbef103afbb4b72af92
CRs-Fixed: 766181
2016-04-17 17:05:12 -07:00
Sandeep Puligilla
93a29ecadd qcacld-3.0: HDD: Add support for 2.4Ghz HT40 STA
- Add support for 2.4Ghz HT40 STA.
- Add HT40 OBSS scan start and stop operation.
- Add support for extraction of OBSS scan paramters from beacon
  and probe response

Change-Id: Idc69d4d17271864c1d3bc2c6e16f25eae73331b0
CRs-Fixed: 947086
2016-04-13 21:51:26 -07:00
Kiran Kumar Lokere
9a733a7fcc qcacld-3.0: Remove WLAN_FEATURE_11AC feature flag
Remove WLAN_FEATURE_11AC feature flag

Change-Id: I8c521502a44f2e8a0647843cd7a972497e900c17
CRs-Fixed: 980682
2016-04-13 21:51:25 -07:00
Yue Ma
da39642b24 qcacld-3.0: Fix compilation bug for LPASS feature
If CONFIG_WLAN_FEATURE_LPSS flag is not enabled, there will be
compilation errors due to missing definitions. Fix them by moving
inline funtions to the corresponding header file.

Change-Id: I90b55daeb0068b2ab40fbb27d650a5382681705c
CRs-fixed: 979523
2016-04-13 21:51:25 -07:00
Amar Singhal
b8d4f1575c qcacld-3.0: Change channel nomenclature
Change channel nomenclature to more appropriate names.

Change-Id: If7fcd832a35563896534bab425ca05b528e1de93
CRs-Fixed: 856727
2016-04-13 21:51:25 -07:00
Amar Singhal
e4f28eedfd qcacld-3.0: Re-arrange regulatory code.
Re-arrange core regulatory code between HDD and CDS
layers. Move the OS dependent code to HDD.

Change-Id: I8ac26a48d0e8d613b2f6c23fd764e5cf94365c39
CRs-Fixed: 856727
2016-04-13 21:51:25 -07:00
Gupta, Kapil
c68ad460fc qcacld-3.0: Add support for dense roam params
qcacld-2.0 to qcacld-3.0 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-13 21:51:24 -07:00
Krunal Soni
e353194792 qcacld-3.0: Add support for changing FTM capability during runtime
Add VENDOR subcmd to support changing of Fine Time Measurement
capability
dynamically. This command can be used by user space application to
change
FTM capability. FTM capability set by user space is intersected with
capability set by firmware to compute new capability value.

Change-Id: I5f3a57e66f2c6a9f3fa8acc7e9da8cb23cb766e3
CRs-Fixed: 968594
2016-04-13 21:51:24 -07:00
Jeff Johnson
398b3d640f qcacld-3.0: Introduce ENTER_DEV() logging macro
Currently HDD defines an ENTER() macro which is used to log entry into
certain HDD functions.  Many of the functions HDD registers with the
kernel are called with either a netdev or wdev parameter.  When
logging entry into those functions it would be beneficial to log the
name of the netdev so that in subsequent log analysis we not only know
which functions were called but also know which device was being used.
Introduce a new ENTER_DEV() macro for this purpose which will log both
the function name and the device name.

Change-Id: I32ef2bcc958b8148e6d439b30b21102be144a327
CRs-Fixed: 938146
2016-04-13 21:51:23 -07:00
Prakash Manjunathappa
6eae0cd539 qcacld-3.0: Enable CE classification by default
Enables the CE classification by default.

Change-Id: Iabe2b58e41e30a449bebaa16daf8f869b2634b82
CRs-Fixed: 973502
2016-04-13 21:51:23 -07:00
Rajeev Kumar
dca5f81346 qcacld-3.0: Extend wow debug fs support to all interfaces
Currently WoW debug fs support is limited to 1st interface.
FW supports wow and periodic pattern generation on all
interface types. Extend wow debug fs support to all interfaces.

Change-Id: I83deb1845f921ecf8c5422786e025a051ee3c561
CRs-Fixed: 973003
2016-04-13 21:51:23 -07:00
Deepak Dhamdhere
641bf32b43 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI conditional compilation
Remove #ifdef WLAN_FEATURE_VOWIFI from host driver source code.
It has alwasys been defined in Kbuild and underlying features
will be permanent in cld3.0. Those features are 11r radio
resource measurement, beacon report, link report, neighbor
report and power constraint.

Please note that WLAN_FEATURE_VOWIFI_11R is used for different
purpose and it is not removed in this change.

CRs-Fixed: 958729
Change-Id: Icd80e9cce08c4662e86ccda94491c1fc22c5756d
2016-04-13 21:51:22 -07:00
Chandrasekaran, Manishekar
6639d325cb qcacld-3.0: Move DBS opportunistic timer out of HDD context
Move the DBS opportunistic timer out, from the HDD context
to the CDS context.

Change-Id: I57cb3010bc1ba4ce3736edc6c4c1f4c32f226144
CRs-Fixed: 970163
2016-04-13 17:58:16 -07:00
Manjunathappa Prakash
3454fd61da qcacld-3.0: Data path changes to use converged APIs (Part 5)
Changes in the data path to use the converged MCL specific APIs.

Change-Id: Iaedc5e7e175d6b8eb905a04178fe9772dc7bb797
CRs-Fixed: 994638
2016-04-01 16:19:43 -07:00
Dhanashri Atre
b08959a747 qcacld-4.0: Data path changes to use converged APIs (Part 4)
Changes in the data path to use the converged MCL specific APIs.

Change-Id: Ib6ae1917a9678dcd735b81e3aa83d086406ac404
CRs-Fixed: 994638
2016-04-01 16:09:57 -07:00
Dhanashri Atre
168d2b492e qcacld-3.0: Data path changes to use converged APIs (Part 3)
Changes to register a per vdev tx callback function.

Register a per-vdev transmit function during vdev registration.
The OS interface (HDD) adapter stores this transmit function and
invokes it to transmit data frames.

Change-Id: I1dfe6f58d1d26069dadc2d719fff242c29071bad
CRs-Fixed: 994638
2016-04-01 15:52:33 -07:00
Dhanashri Atre
182b027a73 qcacld-3.0: Data path changes to use converged APIs (Part 2)
Changes to register a per vdev rx callback function.

Register a per-vdev receive callback function using the vdev registration
API provided by the converged data path API. The changes include
- removing the older method of registering the receive callback
- modify the HDD callback to adhere to the rx callback function defined
by the converged data path API
- modify the invocation of the callback function in the data path

Change-Id: I2aef905132af4b3d7db22c7ec315d114607c9383
CRs-Fixed: 994638
2016-04-01 15:51:59 -07:00
Houston Hoffman
c7c69f014d qcacld-3.0: Add runtime pm ini items
Add runtime pm enable and delay ini items in hdd.
If runtime pm isn't enabled, the wlan driver will
not perform runtime suspends.
If runtime pm is enabled, the wlan driver will
perform a runtime suspend after delay time in
miliseconds.

Change-Id: I7fa05b9fc1e81bd189e8336efcb3d2977732ed81
CRs-Fixed: 935300
2016-03-31 22:48:03 -07:00
Anurag Chouhan
f04e84f24a qcacld-3.0: Add qdf references in place of cdf
Replace CDF references with QDF references.

Change-Id: Ifb4571174719b5fce61dd305545d05628265f317
CRs-Fixed: 981188
2016-03-24 11:58:26 -07:00
Nirav Shah
cbc6d72570 qcacld-3.0: Update driver to use QDF NBUF APIs(1/2)
Update driver to use QDF NBUF APIs

Change-Id: I4409b6c046de1221b57baed45088d5f3b898b565
CRs-Fixed: 981188
2016-03-24 11:58:23 -07:00
Anurag Chouhan
b2dc16fefe qcacld-3.0: Add QDF trace API's
Replace CDF trace API's with QDF trace API's.

Change-Id: I5b99dce73297f7de8f0755fa0b47dc3f84c78747
CRs-Fixed: 981188
2016-03-24 11:58:11 -07:00
Anurag Chouhan
210db07644 qcacld-3.0: Add QDF MC timer API's
Replace CDF MC timer API's with QDF MC timer API's

Change-Id: If18069e9cb8dbd24c5cdc8bd8def6932f55c0168
CRs-Fixed: 981188
2016-03-24 11:58:08 -07:00
Anurag Chouhan
a37b5b783a qcacld-3.0: Add QDF lock API's
Replace CDF lock API's with QDF lock API's.

Change-Id: I7c4a59920e17915f077c87457c513e763738c062
CRs-Fixed: 981188
2016-03-24 11:57:57 -07:00
Anurag Chouhan
6d760664ee qcacld-3.0: Add QDF types
Replace CDF types with QDF types

Change-Id: Idd6e65b148efb54f22d6951572957f1c6166465b
CRs-Fixed: 981188
2016-03-24 11:57:54 -07:00
Anurag Chouhan
42958bb929 qcacld-3.0: Add QDF defer API's
Replace CDF defer API's with QDF defer API's

Change-Id: I67a9f57a76813bf2c35c42d69013133aad0b2393
CRs-Fixed: 981188
2016-03-24 11:57:46 -07:00
Anurag Chouhan
50220ce67c qcacld-3.0: Add qdf time API's
Replace CDF time API's with QDF time API's.

Change-Id: I3418f5603e5a05219a8470de3a9197928a3a8f13
CRs-Fixed: 981188
2016-03-24 11:57:42 -07:00
Anurag Chouhan
fb54ab0eac qcacld-3.0: Add QDF status
Replace CDF status with QDF status

Change-Id: I7170c8ae4c5bd97a8f0f383af637bb2ec312f082
CRs-Fixed: 981188
2016-03-24 11:57:39 -07:00