Commit Graph

117 Commits

Author SHA1 Message Date
Ravi Joshi
277ae9beed qcacld-3.0: Add support to indicate subnet change status to user space
LFR3 to indicate the change in IP subnet to user space (supplicant).
This enables the DHCP refresh in case of IP subnet change during
roaming.

Change-Id: I9842a28461346fe97ab39f5a11ae504f2e32fa16
CRs-Fixed: 876335
2015-12-28 22:35:54 -08:00
Ravi Joshi
deb5a8d6ff qcacld-3.0: Add handler for gateway parameter update request
Add handler for gateway parameter request vendor command. The
request is issued to update the gateway parameters to be used
during subnet detection post roaming.

Change-Id: I848f24b36a1d65a0e8bb8465b2b6f2016cb2224c
CRs-Fixed: 876335
2015-12-28 22:35:54 -08:00
Ravi Joshi
742495dd30 qcacld-3.0: Add an INI item to configure LFR subnet detection
Add an INI item to configure LFR subnet detection feature.
LFR subnet detection is enabled by default.

Change-Id: Ifb4bba60dfcd0347137f4a690db50b0c453d1ae8
CRs-Fixed: 876335
2015-12-28 22:35:54 -08:00
Srinivas Girigowda
aab80e7298 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirWPSPBCProbeReq
Replace tSirMacAddr with cdf_mac_addr in tSirWPSPBCProbeReq.

Change-Id: I7f465505aceaf420172635b9b21e57fc1e1d51ae
CRs-Fixed: 898864
2015-12-28 22:20:27 -08:00
Srinivas Girigowda
9c330a9063 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirKeepAliveReq
Replace tSirMacAddr with cdf_mac_addr in tSirKeepAliveReq.

Change-Id: Id7184f0acfba870c2f17b9d2dd76015687eb06b2
CRs-Fixed: 898864
2015-12-28 22:20:27 -08:00
Srinivas Girigowda
0420991d02 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirAppTypeParams
Replace tSirMacAddr with cdf_mac_addr in tSirAppTypeParams

Change-Id: I4629ab11d8014eae6ba27b24362b9253be1606b7
CRs-Fixed: 898864
2015-12-28 22:20:27 -08:00
Srinivas Girigowda
b053239279 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in struct roam_ext_params
Replace tSirMacAddr with cdf_mac_addr in struct roam_ext_params

Change-Id: I54abd74a93abdfee4a8eb413de78b939a07b97e7
CRs-Fixed: 898864
2015-12-28 22:20:27 -08:00
Srinivas Girigowda
c79a7106b0 qcacld-3.0: Remove obsolete macros and functions
Remove obsolete macros and functions.

Change-Id: I18e3ba1ec3a38a0f1dfa2de70955f0af02bef37f
CRs-Fixed: 898864
2015-12-28 22:20:26 -08:00
Krishna Kumaar Natarajan
22b59a7689 qcacld-3.0: Add configuration option for mpdu density
qcacld-2.0 to qcacld-3.0 propagation

Add configuration option for mpdu density through INI. Update
the default value of mpdu density from 0 to 7.

Change-Id: Ib97869d4aec160065c945cd62876d6fd191d63a5
CRs-Fixed: 941182
2015-12-28 22:20:26 -08:00
Kabilan Kannan
2ccd9e6c57 qcacld-3.0: Change TDLS default teardown parameters
qcacld-2.0 to qcacld-3.0 propagation.

Current TDLS default teardown interval does not work in
all the scenarios. Hence, change the default teadown
interval to 5 seconds and default TDLS idle packet
threshold to 3 to support all TDLS use cases.

Change-Id: Idf8b4cd02963d24350a1322ac4c7465fbfc7204f
CRs-Fixed: 936003
2015-12-28 22:20:26 -08:00
Kabilan Kannan
421714b6c6 qcacld-3.0: Configure TDLS peer mac and kickout threshold to target
qcacld-2.0 to qcacld-3.0 propagation.

Add new TDLS mode for TDLS external control operation to
achieve power save on the target. Firmware will use this mode
to control timers precisely and save the power.
Add configuration "gTDLSPeerKickoutThreshold" to fine tune
TDLS peer sta kick out operation.

Change-Id: Ie941f93b54983ca6323ef4384a66e0807a56a7b1
CRs-Fixed: 929749
2015-12-28 22:20:26 -08:00
Kabilan Kannan
ca670be788 qcacld-3.0: Pass TDLS teardown notification interval to target
qcacld-2.0 to qcacld-3.0 propagation.

Firmware uses same notification interval to send trigger to the
driver for both TDLS setup and TDLS teardown operations. In ideal
scenario firmware needs to have an option to configure different
values for TDLS setup and TDLS tear down operations. This change
will enable firmware to have different values for setup and
teardown operations.

Change-Id: I300350c56d4ef23993953338529f29df2ea122a1
CRs-Fixed: 920835
2015-12-28 22:20:26 -08:00
Jeff Johnson
417af557d1 qcacld-3.0: Convert wlan_hdd_green_ap.c to unified logging
Currently the HDD code uses a variety of logging APIs.  In qcacld-3.0
HDD should converge on a unified set of logging APIs.  Update
wlan_hdd_green_ap.c to use the unified set of APIs.

Change-Id: If58683a833b1650a6cbea147debcead2551697da
CRs-Fixed: 937202
2015-12-28 22:20:26 -08:00
Rajeev Kumar
1bcfd63412 qcacld-3.0: Remove support of power gating parameters
Propagation from qcacld-2.0 to qcacld-3.0

- WLAN firmware does not support get/set operations for power
  gating VDEV parameters
- Remove support for power gating VDEV parameters from WLAN host
  driver

Change-Id: I5b262b71364c11f648b579a8bdb6fa993ecb4a81
CRs-Fixed: 880180
2015-12-28 22:20:25 -08:00
Nirav Shah
6ea4ca5f0d qcacld-3.0: Remove per vdev tx descriptor pool
Remove per vdev tx descriptor pool feature as
it is applicable only for High Latency.

CRs-Fixed: 916724
Change-Id: I22ab3dd187518790694356bdde8475b194845bf5
2015-12-28 14:20:46 -08:00
Srinivas Girigowda
bdc98160e9 qcacld-3.0: Add support for telescopic PNO
This is a qcacld-2.0 to qcacld-3.0 propagation.

QCACLD firmware already addresses power concern during PNO scanning by
extending fast_scan_period, slow_scan_period and fast_scan_max_cycles
configuration which need to be set by the host driver.

Add the host driver support to do the same.

Description:
1. fast_scan_period: This is the fast PNO scan period. The scan interval time
sent down by the supplicant is assigned to this.
2. fast_scan_max_cycles: This parameter tells firmware to switch from
fast to slow scan period after this many number of fast_scan_periods
has elapsed.
3. slow_scan_period: This is slow PNO scan period with which scan happens
less frequently to save power. Once the FW switches from fast to slow period,
it remains in slow scan period until next PNO Start.

cfg.ini items:
1. Repurpose gPNOScanTimerRepeatValue to fast_scan_max_cycles.
2. Introduce new cfg.ini gPNOSlowScanMultiplier to act as multiplier of
   fast_scan_period.

Change-Id: I453f09d42be3228ecc9c5023eca26eae1e589d6a
CRs-Fixed: 902381
2015-12-28 14:20:46 -08:00
Srinivas Girigowda
dccab9a38a qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirLinkSpeedInfo
Replace tSirMacAddr with cdf_mac_addr in sSirLinkSpeedInfo

Change-Id: Ieaac1d3bb7f632eeaa848e19dadb4f3013a272e4
CRs-Fixed: 898864
2015-12-28 14:20:46 -08:00
Srinivas Girigowda
3189655731 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirAddPeriodicTxPtrn
Replace tSirMacAddr with cdf_mac_addr in sSirAddPeriodicTxPtrn.

Change-Id: Idc7db873b0b1d5088465511eb7852fee40339c49
CRs-Fixed: 898864
2015-12-28 14:20:46 -08:00
Srinivas Girigowda
a5bba7ad2b qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirDelPeriodicTxPtrn
Replace tSirMacAddr with cdf_mac_addr in sSirDelPeriodicTxPtrn.

Change-Id: I0445b5c7ec7d1e361b5ab7d72d2c607c6b8121c0
CRs-Fixed: 898864
2015-12-28 14:20:46 -08:00
Srinivas Girigowda
9853049218 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirRcvFltPkt
Replace tSirMacAddr with cdf_mac_addr in tSirRcvFltPkt group of
structures.
1. tSirRcvPktFilterCfgType
2. tSirRcvFltPktClearParam
3. tSirRcvFltMcAddrList
4. tSirRcvFltPktMatchRsp

Change-Id: I7c0dabc5c4643eee6dfe69dad76fb7363b40dce6
CRs-Fixed: 898864
2015-12-28 14:20:46 -08:00
Srinivas Girigowda
2213b1d9cf qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in GtkOffload Req/Rsp
Replace tSirMacAddr with cdf_mac_addr in GtkOffload Req/Rsp.

Change-Id: Ib5a20b5741d08bd86cd8674d8e9724392093b706
CRs-Fixed: 898864
2015-12-28 14:20:46 -08:00
Srinivas Girigowda
5146deef9f qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirPlmReq
Replace tSirMacAddr with cdf_mac_addr in sSirPlmReq.

Change-Id: I21df91d980bc081af28f67a344d138b3c54eaf14
CRs-Fixed: 898864
2015-12-28 14:20:45 -08:00
Krishna Kumaar Natarajan
d913190603 qcacld-3.0: Fix mangled function names
Fix mangled APIs sme_configure_ext_wo_w,
sme_process_ready_to_ext_wo_w and
lim_remove_timeout_pbc_sessions which were introduced
while converting the names programmatically.

Change-Id: Ie0a79b476a99bf1be0411dae0542359e7d58141a
CRs-Fixed: 882962
2015-12-28 14:20:44 -08:00
Krishna Kumaar Natarajan
8a8df26374 qcacld-3.0: Fix incorrect reference to wiphy flags
Fix incorrect reference of wiphy flags while setting
WIPHY_FLAG_HAS_CHANNEL_SWITCH.

Change-Id: Ifebaa9a8452a8564f60f29015f240d5a43bb9afb
CRs-Fixed: 947551
2015-12-28 14:20:44 -08:00
Govind Singh
ede435fab0 qcacld-3.0: cleanup tx-queue during SSR
qcacld-2.0 to qcacld-3.0 propagation

During SSR, Host is sending packets to firmware before WMI_READY_EVENT.
Fix is to avoid sending tx when logp_in_progress & clean ll-queue
packets in shutdown.

Change-Id: Ib6b9f4d51f2aa7f85d384831818b45763c702c88
CRs-Fixed: 834887
2015-12-28 14:20:44 -08:00
Sreelakshmi Konamki
e1ce562b9b Revert "qcacld-3.0: After DELTS, revert to UAPSD related intervals in ini"
qcacld-2.0 to qcacld-3.0 propagation

This reverts Change-Id I858cd3cbd536ec189ea808c5d637abffe388f7aa.

With change id I858cd3cbd536ec189ea808c5d637abffe388f7aa,
host is not sending WMI_STA_UAPSD_AUTO_TRIG_CMDID command to firmware
during disable UAPSD per AC.

Change-Id: Ifdbcd6926ca86b1baeeadcf7a4720e460d41a6e5
CRs-Fixed: 911229
2015-12-28 14:20:44 -08:00
Peng Xu
278d012c68 qcacld-3.0: Dynamic OTA test mode enable
For OEM to do OTA tests, power save, background scan, and low RSSI
scanning need to be disabled and it should be done dynamically.
Implement a vendor command to enable and disable OTA test mode.

CRs-fixed: 941776
Change-Id: Ic9da11cf5f4bb19a01d9b55c50c0aea196abbfb6
2015-12-28 14:20:44 -08:00
Sushant Kaushik
7a53588e1d qcacld-3.0: Remove LL stats redundant logs
qcacld-2.0 to qcacld-3.0 propagation

Currently there are many LL stats related logs
which doesn't provide any useful information.
As a part of fix, remove all those redundant logs.

Change-Id: Id1a89f209cfb57646828c5ee059f6f3790aac1c0
CRs-Fixed: 903941
2015-12-28 14:20:43 -08:00
Abhishek Singh
1e94d7a2cc qcacld-3.0: IBSS: Handle IBSS mode in stop adapter properly
qcacld-2.0 to qcacld-3.0 propagation
In Stop Adapter IBSS mode is not handled properly and
no DEL BSS is sent for the connected IBSS before DEL SELF STA.
This may lead to crash in FW.

As part of fix handle the IBSS mode and send DEL BSS if IBSS is
connected.

Change-Id: Ice1304aced1a158c7b589a95337412cda0183a04
CRs-Fixed: 908990
2015-12-28 14:20:43 -08:00
Abhishek Singh
ac2be14ac2 qcacld-3.0: Update the status code in Re/assoc rsp for failure
qcacld-2.0 to qcacld-3.0 propagation

If deauth is received just after Assoc rsp from AP in addSTA
response Re/assoc confirm is sent with status failure.
But protStatusCode in assoc confirm is not updated and thus the
pRoamInfo->reasonCode may have garbage value.
In case of Wep connection failure reason code,
pRoamInfo->reasonCode, is sent to the supplicant in connect
result. Now if pRoamInfo->reasonCode is 0 supplicant receives
connection success though connection have actually failed.

To avoid this update protStatusCode, before sending Re/assoc
failure.
Also properly derive if connection is WEP from roamProfile before
clearing it.

CRs-Fixed: 926572
Change-Id: I5ae0832d37746be16696f521bddd5b67307b1ee4
2015-12-28 14:20:43 -08:00
Leo Chang
3bc8fedce7 qcacld-3.0: wdi2.0 feature enable, hdd cds
wdi20 enable implementation for hsoffload. Large physical address
support and wdi20 interface propagate to IPA.
part of HDD and CDS

Change-Id: Iaccab3ae233e0b9a8e4942bee0ebaa40ce94fc16
CRs-fixed: 941041
2015-12-28 14:20:43 -08:00
Yun Park
f19e07d2ef qcacldi-3.0:IPA-uC: Cleanup IPA pending event list when driver unload
qcacld-2.0 to qcacld-3.0 propagation

IPA pending_event list keeps IPA events arrived while IPA resource
loading/unloading.
This list is freed only when TX/Rx resume/suspend OP code from FW.
This change is to limit the pending event list size and free up the
pending event list when WLAN driver is unloaded.

Change-Id: Id0489a59bd3c2b04d2faba1069df7b2244a2a730
CRs-Fixed: 937765
2015-12-09 23:21:41 -08:00
Kanchanapally, Vidyullatha
e306281cab qcacld-3.0: Add new vendor command to get link properties
qcacld-2.0 to qcacld-3.0 propagation

Add support in driver for a new vendor command to get
the link properties nss, rate flags and operating
frequency.

Change-Id: Ie3b8d5b2c3886055d303441c5d8b2f2a0a2719bd
CRs-Fixed: 834199
2015-12-09 23:21:40 -08:00
Ratnam Rachuri
28dcf49c9f qcacld-3.0: avoid conditional compilation for HEADROOM_SIZE macro
qcacld-2.0 to qcacld-3.0 propagation
In hdd_alloc_station_adapter, deleted pWlanDev->hard_header_len updating
code.

Change-Id: I7a3ead434a910dd522f9a02a24cd6ad8669e3fc8
CRs-Fixed: 853305
2015-12-09 23:21:40 -08:00
Edhar, Mahesh Kumar
6a50152d98 qcacld-3.0: Honor NL80211_SCAN_FLAG_FLUSH scan flag
qcacld-2.0 to qcacld-3.0 propagation

Honor NL80211_SCAN_FLAG_FLUSH scan flag by flushing
sme and lim scan cache entries.

Change-Id: I1ff59e583f815bfec2df458c58a40b30b7bffa00
CRs-Fixed: 934979
2015-12-09 23:21:40 -08:00
Abhishek Singh
37595beb13 qcacld-3.0: Lower the log level of mtrace to Info to avoid WD bark
qcacld-2.0 to qcacld-3.0 propagation.

Too many log prints are seen if mtrace are dumped and this cause
WD bark.

To avoid this lower the log level of mtrace to Info.

Change-Id: I05d3fa8b3494785a1933f159280b6c9ba6923c0d
CRs-Fixed: 926416
2015-12-09 23:21:40 -08:00
Varun Reddy Yeturu
044bda2e10 qcacld-3.0: Create configuration item gfirst_scan_bucket_threshold
qcacld-2.0 to qcacld-3.0 propagation

Create a configuration item to program the first bucket
threshold of the scan results to have the flexibility to
adjust the first bucket threshold.

CRs-Fixed: 922979
Change-Id: I6fad27a2990f7555173e4735131e8392d0277009
2015-12-09 23:21:39 -08:00
Naveen Rawat
efa0108205 qcacld-3.0: Enable gEnableTxSUBeamformer by default
This patch enables gEnableTxSUBeamformer by default in config ini
which will help to uncover some of the bugs in default DEV testing.

Change-Id: Ib64d53d307aced8f5384d691a3d7f4b383d52a0f
CRs-Fixed: 930322
2015-12-09 23:21:38 -08:00
Masti, Narayanraddi
f8f6e7e95d qcacld-3.0: free cfgState->buf in failure cases.
qcacld-2.0 to qcacld-3.0 propagation

As part of cleaning up pending action frame, if timeout happens
for tx cnf event then indicate tx failure status as FAIL and free
cfgState->buf to avoid memory leak.

Change-Id: I6caaa8efeab769cce8c4cdfcc868101e63fd8e76
CRs-Fixed: 880779
2015-12-09 23:21:38 -08:00
Masti, Narayanraddi
3d8690cf14 qcacld-3.0: Fix memory leak in tx flow control timer
qcacld-2.0 to qcacld-3.0 propagation

TX flow control timer initialized when STATION interface is created.
During IBSS startup, STATION interface is changed to ADHOC type.
TX flow control timer is not required, so close tx flow control
and destroy timer.

Change-Id: Id9c440638964fb3ab0e95d8a7c747708886a94ff
CRs-Fixed: 882821
2015-12-09 23:21:37 -08:00
Masti, Narayanraddi
c4a7ab8239 qcacld-4.0: TDLS: provide operating class and channel to HAL
qcacld-2.0 to qcacld-3.0 propagation

1.Provide off channel and operating class info to user space
in HAL API wifi_get_tdls_status. If off channel is not enabled
then provide base channel info and in that case pass opclass as 0.
2.Provide correct tdls state based on tdls off channel
configuration.

Change-Id: Ic60500b95ebddcb88b4e03f29178068c5322b2b9
CRs-Fixed: 838167
2015-12-09 23:21:37 -08:00
Srinivas Girigowda
afede1885a qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirRateUpdateInd
Replace tSirMacAddr with cdf_mac_addr in sSirRateUpdateInd.

Change-Id: I28dc76e07721f6472bbc1ec5c107cd12b2123a8f
CRs-Fixed: 898864
2015-12-02 12:55:30 -08:00
Srinivas Girigowda
8b98396253 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirUpdateIE
Replace tSirMacAddr with cdf_mac_addr in sSirUpdateIE.

Change-Id: Id190e74be5063ecd7792380c6f25ba8de1461c51
CRs-Fixed: 898864
2015-12-02 12:55:30 -08:00
Srinivas Girigowda
f2599dd3c6 qcacld-3.0: WLAN logs cleanup
This is a qcacld-2.0 to qcacld-3.0 propagation.

1. Add log to print ssid, bssid, rssi, channel and country code
   while connecting to an AP.
2. Add log to print disconnect reason when disconnect request is
   received from user space.
3. Cleanup some of the logs moving it to appropriate log level
   which are showing up as ERROR level in bug report.

Change-Id: Id8ea69a14a18565c226f89a8a5e10be46741d76d
CRs-Fixed: 914336
2015-12-02 12:55:29 -08:00
Srinivas Girigowda
ba3091c366 qcacld-3.0: Increase MAX_CFG_INI_ITEMS to 1024
This is a qcacld-2.0 to qcacld-3.0 propagation.

Increase the maximum config ini items from 512 to 1024.

Change-Id: I5c4958d5c743f1e0b03a4f7b41e21ff9787ccd07
CRs-Fixed: 914336
2015-12-02 12:55:29 -08:00
Srinivas Girigowda
117e7fbb09 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sir_ocb_config_channel
Replace tSirMacAddr with cdf_mac_addr in struct sir_ocb_config_channel.

Change-Id: I0f22ba3b3b63f8d56d3285522c0d8d1303e2f89c
CRs-Fixed: 898864
2015-12-02 12:55:29 -08:00
Srinivas Girigowda
9721523f8e qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sMaxTxPowerParams
Replace tSirMacAddr with cdf_mac_addr in sMaxTxPowerParams.

Change-Id: Ia9f66cfd3a520019a83d671b7869d49558856698
CRs-Fixed: 898864
2015-12-02 12:55:28 -08:00
Rajeev Kumar
274034cd12 qcacld-3.0: Do not allow NoA setting in non P2P GO mode
Propagation from qcacld-2.0 to qcacld-3.0

- FW asserts after receiving P2P NOA parameter in non P2P GO mode
- Add P2P GO mode check in set NOA IOCTL and do not allow this command
  in non P2P GO modes

Change-Id: Ie786dcf33fc50eacadb407d74ae5638da68cf0d2
CRs-Fixed: 919889
2015-12-02 12:55:28 -08:00
Edhar, Mahesh Kumar
695468e069 qcacld-3.0: Protect dfs_radar_found global variable using lock
qcacld-2.0 to qcacld-3.0 propagation

dfs_radar_found variable will be accessed in different context
so protect the same with mutex lock and synchronize the channel
switch triggered by application and dfs module.

Change-Id: I724d22cde9a77c187a17dffef13a9b4c9b2c27da
CRs-Fixed: 809527
2015-12-02 12:55:27 -08:00
Edhar, Mahesh Kumar
df2ec12f48 qcacld-3.0: Properly handle channel switch through ioctl
qcacld-2.0 to qcacld-3.0 propagation.

1)Validate channel switch w.r.t concurrency rules set and switch
  channel only if there is no channel interference.
2)Disable channel bonding in 2.4Ghz on switching channel to 2.4Ghz band
  to avoid violating OBSS feature.

Change-Id: I81992b2c2876a32eba52010e72c4300608067e58
CRs-Fixed: 809527
2015-12-02 12:55:27 -08:00