Commit Graph

1880 Commits

Author SHA1 Message Date
Kondabattini, Ganesh
e4f18e0c34 qcacld-3.0: Add access policy for vendor IE
qcacld-2.0 to qcacld-3.0 propagation

User configures vendor IE and access policy to allow or deny
association. PE should allow or deny connection based on access
policy and presence of vendor ie in probe request/association
irequest frame.

Change-Id: Ia2714ba07a67602e552a6f43928f02de0d4d0b9b
CRs-Fixed: 1020078
2016-09-16 21:06:36 +05:30
Deepthi Gowri
1de51e3876 qcacld-3.0: Use preauth channel to fetch the band during roaming
qcacld-2.0 to qcacld-3.0 propagation

During roaming the connected AP's operating channel is used instead of
preauth channel to fetch the band, based on which the data rate is set.
Due to this incorect data rate is set.

To address this, use the preauth channel during roaming to fetch the band
and set the data rate accordingly.

CRs-Fixed: 1017943
Change-Id: Ia3bf13c1a93a156eba8461bcdcf3490b9f49c2a2
2016-09-16 21:06:36 +05:30
Kondabattini, Ganesh
3f2d02cd32 qcacld-3.0: Fix to send the deauthentication frame from HDD
qcacld-2.0 to qcacld-3.0 propagation

Currently, On sending disassoc from HDD lim will process
disassoc and clear's session of station and thus leading to
drop deauth in lim since context is already cleared. Hence
deauth frame is not sent from SoftAP although deauth command
is executed on hostapd_cli.
Fix will ensure to send disassoc command through new API
and doesn't clear's session and the same is cleared after
sending deauth.

Change-Id: I912a91f1df4001bb2d4f1f0d6031cc102d1bbd65
CRs-Fixed: 981121
2016-09-16 21:06:35 +05:30
Deepthi Gowri
b3bfefd6e1 qcacld-3.0: Pass the correct reason code to disassoc
qcacld-2.0 to qcacld-3.0 propagation

use the same reason code in the disassoc, which the upper
layer has passed to the driver

Change-Id: I6302a5c8318a8e3c1221b9272637455da4e7f150
CRs-Fixed: 852387
2016-09-16 21:06:35 +05:30
qcabuildsw
81f573f56d Release 5.1.0.27B
Release 5.1.0.27B

Change-Id: I0c83f9c785d1119c3f6f0e5bff3e7f79fadf84d3
CRs-Fixed: 688141
2016-09-16 05:50:06 -07:00
Himanshu Agarwal
cd8a84ad46 qcacld-3.0: Refactor support to get per chain rssi stats
Propagation from qcacld-2.0 to qcacld-3.0.

Add sanity check based on TLV len in addition to the check
based on TLV tag id to ensure that if fw does not support or
is not sending rssi stats then HOST does not process it at all.

Change-Id: I92b197f9578aa003bf622617c363fea7334dbcb2
CRs-Fixed: 1023179
2016-09-16 05:50:05 -07:00
Himanshu Agarwal
37e4241cf0 qcacld-3.0: Add support to get per chain rssi stats
Propagation from qcacld-2.0 to qcalcd-3.0.

Add support to get per chain rssi from fw via
already existing WMI command WMI_REQUEST_STATS_CMDID
and then store it in the station_info structure defined
by cfg80211.

Change-Id: Id50c96dd322b5ca4db34cf2df901730d8b103251
CRs-Fixed: 1005367
2016-09-16 05:50:03 -07:00
qcabuildsw
b6bfefe7a5 Release 5.1.0.27A
Release 5.1.0.27A

Change-Id: Idc76f6db701a3e3e607c9bc07b880c7a7ec8cec0
CRs-Fixed: 688141
2016-09-16 02:54:40 -07:00
qcabuildsw
c4b4a4b9f6 Release 5.1.0.27
Release 5.1.0.27

Change-Id: I025b0bd846197f44d5bb97febfc92754a3a11615
CRs-Fixed: 688141
2016-09-16 00:25:15 -07:00
Anurag Chouhan
172a7c353b qcacld-3.0: Add check to Validate SSID length
qcacld-2.0 to qcacld-3.0 propagation.

Validate ssid length before accessing the ssid
if the length exceeds max ssid length then return.

Change-Id: I6902a8a3edf6547cf30d37fe5e435ad4f226ac46
CRs-Fixed: 1059205
2016-09-16 00:25:14 -07:00
Anurag Chouhan
2c4e0a1b73 qcacld-3.0: Add check to Validate cfg_ini
qcacld-2.0 to qcacld-3.0 propagation

Validate cfg_ini before dereferencing the ini
parameter gEnableRoamDelayStats.

Change-Id: I0b2b78f8838cb1c46c60669b8f327ac18e863e80
CRs-Fixed: 1059205
2016-09-16 00:25:13 -07:00
qcabuildsw
c78f42e46e Release 5.1.0.26Z
Release 5.1.0.26Z

Change-Id: Icfcfd412b51e9063cba20d68791c640c8b76f1b4
CRs-Fixed: 688141
2016-09-15 22:30:56 -07:00
Mahesh Kumar Kalikot Veetil
4057511a64 qcacld-3.0: Cleanup ESE feature
Fix compilation errors when turning off FEATURE_WLAN_ESE

Change-Id: I8a9c87c1ed9b72ae662ec199b373746c5ef6f911
CRs-Fixed: 1067021
2016-09-15 22:30:55 -07:00
qcabuildsw
193c75973e Release 5.1.0.26Y
Release 5.1.0.26Y

Change-Id: I3fa032ef7762f08818f8b783b7c886ab56520f81
CRs-Fixed: 688141
2016-09-15 21:04:45 -07:00
Mahesh Kumar Kalikot Veetil
d214d55b6e qcacld-3.0: Fix a compilation error in wlan_hdd_auto_shutdown_cb()
Fix a compilation when FEATURE_WLAN_AUTO_SHUTDOWN is enabled

Change-Id: Ib3b4c48a32482dc3175b02e8c7180d8ced976239
CRs-Fixed: 1067109
2016-09-15 21:04:44 -07:00
Mahesh Kumar Kalikot Veetil
0641e37974 qcacld-3.0: Fix a compilation error ing nl_srv_init()
Fix compilation errors when turning on CONFIG_CNSS_LOGGER

Change-Id: I65cf319d6e0a608d51708bb1acaa320207ec17f0
CRs-Fixed: 1067048
2016-09-15 21:04:43 -07:00
Mahesh Kumar Kalikot Veetil
919e01d422 qcacld-3.0: Cleanup NAN feature
Fix compilation errors when turning off WLAN_FEATURE_NAN

Change-Id: Ic1106d88ea7d9fc8d08f748a6b6e66e6e6607128
CRs-Fixed: 1067040
2016-09-15 21:04:41 -07:00
Mahesh Kumar Kalikot Veetil
32e4fc75d1 qcacld-3.0: Cleanup IBSS feature
Fix compilation errors when turning off QCA_IBSS_SUPPORT

Change-Id: I3a493c710077bec0a8bc5521d0d433ccd62b4e74
CRs-Fixed: 1067029
2016-09-15 21:04:40 -07:00
qcabuildsw
b7b5843a3f Release 5.1.0.26X
Release 5.1.0.26X

Change-Id: I13f4d6734a7cde563a80c31f4847e823a656b845
CRs-Fixed: 688141
2016-09-15 19:34:09 -07:00
Yuanyuan Liu
187dcc5b93 qcacld-3.0: Call pld_pcie_power_off in pld_power_off
There's mistake that pld_power_off calls pld_pcie_power_on. Fix
this by calling the correct pcie power function.

Change-Id: I9e968d749479856510e0dd7f32f5babc57b6ebed
CRs-Fixed: 1064058
2016-09-15 19:34:09 -07:00
qcabuildsw
354ed8553e Release 5.1.0.26W
Release 5.1.0.26W

Change-Id: Ie5186561c3fbef8b68c39074fdf48271ca764b9f
CRs-Fixed: 688141
2016-09-15 18:40:04 -07:00
Dustin Brown
d3fc9eec42 qcacld-3.0: Populate CDS config flag bpf_packet_filter_enable
The CDS config flag bpf_packet_filter_enable is not being populated.
Populate bpf_packet_filter_enable with the corresponding value from
the ini config.

Change-Id: Ia13386e74d43d7a5cad55e4c77f5eb8bcdc9f43b
CRs-Fixed: 1067041
2016-09-15 18:40:04 -07:00
Dustin Brown
5118e8ebd3 qcacld-3.0: Cleanup MBSSID compilation flag (phase 3)
The WLAN_FEATURE_MBSSID conditional compilation flag is no longer
needed since MBSSID is a required feature. Remove this flag and
any alternate code referenced in the conditional compilation blocks.
Phase 3 covers wlan_hdd_hostapd.c, with other *.c files to follow in
future changes.

Change-Id: I740344af895edadbc30cb8a3d8aea2909d9661cb
CRs-Fixed: 1066509
2016-09-15 18:40:03 -07:00
Dustin Brown
6ba30a1309 qcacld-3.0: Cleanup MBSSID compilation flag (phase 2)
The WLAN_FEATURE_MBSSID conditional compilation flag is no longer
needed since MBSSID is a required feature. Remove this flag and
any alternate code referenced in the conditional compilation blocks.
Phase 2 covers wlan_hdd_cfg80211.c, with other *.c files to follow
in future changes.

Change-Id: Id7171529eaeefe652085bd1ed6377e3cde050694
CRs-Fixed: 1066411
2016-09-15 18:40:01 -07:00
Dustin Brown
0a1da14441 qcacld-3.0: Cleanup MBSSID compilation flag (phase 1)
The WLAN_FEATURE_MBSSID conditional compilation flag is no longer
needed since MBSSID is a required feature. Remove this flag and
any alternate code referenced in the conditional compilation blocks.
Phase 1 covers wlan_hdd_p2p.c, with other *.c files to follow in
future changes.

Change-Id: I7c68b0af7181cdabc324d94464ae6ceb8edd66df
CRs-Fixed: 1065945
2016-09-15 18:39:59 -07:00
qcabuildsw
d7a19422e1 Release 5.1.0.26V
Release 5.1.0.26V

Change-Id: I71c9dae5f5861419b22995a2d958d5dae3c5b84a
CRs-Fixed: 688141
2016-09-15 17:47:52 -07:00
Varun Reddy Yeturu
3b21c7e93d qcacld-3.0: Fix possible NULL pointer dereference for sta_ds
Fix the possible null pointer dereference for sta_ds

Change-Id: I547f4d5e0a3603c2408b835705c617befc1107c5
CRs-Fixed: 1065301
2016-09-15 17:47:52 -07:00
Varun Reddy Yeturu
5a18365aae qcacld-3.0: If mac_ctx is NULL, do not use it for logging purpose
1) Do not dereference mac_ctx for logging when mac_ctx itself is NULL
2) Use standard logging mechanism such as the QDF infrastructure for
logging purpose

Change-Id: Iedb4b5d20fd7aa85ff1b98e5fab4edb9de51f7b2
CRs-Fixed: 1065301
2016-09-15 17:47:50 -07:00
Varun Reddy Yeturu
c48ad6ed1f qcacld-3.0: Check WMA for NULL before dereferencing
Once WMA context is retrieved, check if it has NULL value
before dereferencing it

Change-Id: I9896204933deb0588bca51e006e1477d5ed6c03e
CRs-Fixed: 1065301
2016-09-15 17:47:48 -07:00
qcabuildsw
278831a3b2 Release 5.1.0.26U
Release 5.1.0.26U

Change-Id: I4a82a52bba87e13574bea2942b9fcb9e61583002
CRs-Fixed: 688141
2016-09-15 16:51:45 -07:00
Dustin Brown
1079f2771e qcacld-3.0: Cleanup HDD suspend/resume logging messages
Some HDD suspend/resume logging messages are vague or include redundant
status codes. Update these messages to reflect what actually happened and
remove redundant status codes.

Change-Id: I5c4a481a8fbbdebe88f2ecffffb1f2189922da4f
CRs-Fixed: 1062544
2016-09-15 16:51:44 -07:00
Rajeev Kumar
99805a7ac3 qcacld-3.0: Fix race condition between PM suspend and fw irq
PM suspend and FW interrupt handler is running at same time
which is leading to multiple race conditions and host is missing
FW wake up interrupt which is causing APPS not waking up reliably.

Define .suspend_noirq and .resume_noirq callbacks and make
sure there is no pending FW interrupt before allowing PM
suspend to complete. Kernel PM suspend framework gives guarantee
that suspend_noirq and device interrupt handler can't run
simultaneously. This helps WLAN driver to reliably detect FW
wake up interrupt during PM suspend and fail PM suspend gracefully
if FW has requested for initial wake up.

Change-Id: Ic82d7dd6b6b743dd3f55b036e012ad0c8bebd50d
CRs-Fixed: 1060748
2016-09-15 16:51:43 -07:00
Yuanyuan Liu
22896aa193 qcacld-3.0: Register suspend_noirq/resume_noirq to kernel
Register suspend_noirq/resume_noirq callbacks to kernel. It will
make sure no wake up is pending from FW and if initial wake up is
received then failing it should trigger resume.

Change-Id: Ie553dfc1401c2c6934961773bc98a24626a9cd34
CRs-Fixed: 1060669
2016-09-15 16:51:41 -07:00
Yuanyuan Liu
3508408d32 qcacld-3.0: Call ICNSS APIs for get/set channels and dfs
Call ICNSS API for get/set unsafe channels and dfs nol when bus
type is SNOC.

Change-Id: I82f4f32097f38c0b26b80b861a15fda9b04b24d9
CRs-Fixed: 1061220
2016-09-15 16:51:39 -07:00
qcabuildsw
3a89cf6c3f Release 5.1.0.26T
Release 5.1.0.26T

Change-Id: I9fdc9c16213298d25195deb3d7131d3af5921a31
CRs-Fixed: 688141
2016-09-15 15:42:15 -07:00
Jeff Johnson
291af6a2aa qcacld-3.0: Remove obsolete RRM "max duration" configuration
Currently cfg.ini supports the following configuration items:
gRrmOperChanMax
gRrmNonOperChanMax

However these configuration items are no longer in use, so remove
them.

Change-Id: Ib6f1ea0b86d97132ebf58b09ad1699efc96e592f
CRs-Fixed: 1060775
2016-09-15 09:41:29 -07:00
Jeff Johnson
d404d03538 qcacld-3.0: Re-fix max dwell time for passive scan beacon report
Previously change "qcacld-3.0: Fix max dwell time for passive scan
beacon report" (Change-Id: Idc0b4f15f2b7464507aacfaefb99e1ba48ad1eca)
modified the default value of the "rm_capability" INI item, but it
also included other changes which incorrectly utilized the obsolete
gRrmOperChanMax & gRrmNonOperChanMax INI items.  Since those INI items
are going to be removed from the code, the original implementation of
"qcacld-3.0: Fix max dwell time for passive scan beacon report" was
reverted.  To correctly solve the original problem, bring forward the
change to update CFG_RM_CAPABILITY_DEFAULT.

Change-Id: I7a473a5babf7a7b32a633ea1fe6373574457dcb3
CRs-Fixed: 1060775
2016-09-15 09:41:29 -07:00
Jeff Johnson
1c17173df3 Revert "qcacld-3.0: Fix max dwell time for passive scan beacon report"
This reverts Change-Id Idc0b4f15f2b7464507aacfaefb99e1ba48ad1eca.

"qcacld-3.0: Fix max dwell time for passive scan beacon report"
introduced a change to allow some of the RRM parameters to be
controlled by the existing gRrmOperChanMax & gRrmNonOperChanMax INI
items.  However those INI items are obsolete, having been replaced
with rm_capability.  So revert the change, and a subsequent change
will update the default value of rm_capability to correctly solve the
original issue.

Change-Id: Ie67f9f95ea6832a5aec706a8ec0a42ee49b4844c
CRs-Fixed: 1060775
2016-09-15 09:41:29 -07:00
Jeff Johnson
9c9be7126c qcacld-3.0: Converge gDataInactivityTimeout default values
There is a desire to remove unnecessary items from the default version
of WCNSS_qcom_cfg.ini that is shipped to customers. Currently the
default WCNSS_qcom_cfg.ini contains the following entry:
    gDataInactivityTimeout=200

The associated default value within the driver is:
    #define CFG_DATA_INACTIVITY_TIMEOUT_DEFAULT (20)

These are obviously divergent and should be converged.

Note that this flag is used to change the value of the MAC CFG item
WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT, and this currently has the
following default value:
    #define WNI_CFG_PS_DATA_INACTIVITY_TIMEOUT_STADEF 20

Since all recent testing has used the default WCNSS_qcom_cfg.ini,
converge on the value defined there, 200, in all locations.

Change-Id: I7895911708d5d17f73971254865da2cc177a3c5a
CRs-Fixed: 1063037
2016-09-15 09:41:29 -07:00
Jeff Johnson
5187facc9d qcacld-3.0: Converge ImplicitQosIsEnabled default values
There is a desire to remove unnecessary items from the default version
of WCNSS_qcom_cfg.ini that is shipped to customers. Currently the
default WCNSS_qcom_cfg.ini contains the following entry:
    ImplicitQosIsEnabled=0

The associated default value within the driver is:
    #define CFG_QOS_IMPLICIT_SETUP_ENABLED_DEFAULT (1)

These are obviously divergent and should be converged.

Note that this flag was added in a prior generation of the driver
during WMM-AC certification testing since some test cases would fail
when Implicit QoS was enabled.  It is expected that all customers are
disabling this feature, and hence this feature should be disabled by
default within the driver itself.

Change-Id: If611b2b491b81b46c3254146ebd734dc244ffde5
CRs-Fixed: 1062978
2016-09-15 09:41:29 -07:00
Jeff Johnson
9e6ff21295 qcacld-3.0: Converge Intf*MacAddress default values
There is a desire to remove unnecessary items from the default version
of WCNSS_qcom_cfg.ini that is shipped to customers. Currently the
default WCNSS_qcom_cfg.ini contains the following entries:
	Intf0MacAddress=000AF58989FF
	Intf1MacAddress=000AF58989FE
	Intf2MacAddress=000AF58989FD
	Intf3MacAddress=000AF58989FC

The associated default values within the driver are:
	#define CFG_INTF0_MAC_ADDR_DEFAULT "000AF5898980"
	#define CFG_INTF1_MAC_ADDR_DEFAULT "000AF5898981"
	#define CFG_INTF2_MAC_ADDR_DEFAULT "000AF5898982"
	#define CFG_INTF3_MAC_ADDR_DEFAULT "000AF5898983"

These are obviously divergent and should be converged.

Elsewhere in the driver, in hdd_update_tgt_cfg(), is logic to
auto-generate MAC addresses if no addresses have been configured.
This logic currently checking:
	static struct qdf_mac_addr default_mac_addr = {
		{0x00, 0x0A, 0xF5, 0x89, 0x89, 0xFF}
	};

Since this logic is aligned with the values present in the default
version of WCNSS_qcom_cfg.ini, update the CFG_INTF*_MAC_ADDR_DEFAULT
definitions to match.

Change-Id: Ic34bc67cffad44b4d61cdfeb06776d0e3a63889f
CRs-Fixed: 1062967
2016-09-15 09:41:29 -07:00
Jeff Johnson
65e7a00d04 qcacld-3.0: Remove obsolete "isAndroidPsEn" configuration
Currently cfg.ini supports an "isAndroidPsEn" configuration item.
However this item is no longer in use, so remove the obsolete support
for this item.

Change-Id: I632513b5e6365a658bb02e0a47a40de94b04856c
CRs-Fixed: 1060747
2016-09-15 09:41:29 -07:00
Jeff Johnson
7f24a4a64b qcacld-3.0: Remove "Beacon Early Termination" configuration
Currently cfg.ini supports the following configuration items:
beaconEarlyTerminationWakeInterval
enableBeaconEarlyTermination

However neither of these is actually used by the driver, so remove the
obsolete support for these configuration items.

Change-Id: I41caec6697c0ff37efcf7db5dd7ab27ff2cdee95
CRs-Fixed: 1060657
2016-09-15 09:41:29 -07:00
Jeff Johnson
285b12e959 qcacld-3.0: Remove obsolete "flex connect" configuration
Currently cfg.ini supports a "gFlexConnectPowerFactor"
configuration item, and this is used to override the
WNI_CFG_FLEX_CONNECT_POWER_FACTOR entry in the MAC CFG database.
However this MAC CFG database entry is no longer in use, so remove
the obsolete support for this configuration item.

Change-Id: I660a18a2663ca7ce29ca2c8bacf4a869de684ffb
CRs-Fixed: 1060643
2016-09-15 09:41:29 -07:00
Jeff Johnson
df7f9e9c53 qcacld-3.0: Remove obsolete "AGC Listen mode" configuration
Currently cfg.ini supports a "gEnablePhyAgcListenMode"
configuration item, and this is used to override the
WNI_CFG_ENABLE_PHY_AGC_LISTEN_MODE entry in the MAC CFG
database. However this MAC CFG database entry is no longer in
use, so remove the obsolete support for this configuration item.

Change-Id: I24a0dcf3d834ec794d88d16ca092ee25084183ce
CRs-Fixed: 1060636
2016-09-15 09:41:29 -07:00
Jeff Johnson
9306c088f0 qcacld-3.0: Remove obsolete "num rx antenna" configuration
Currently cfg.ini supports a "gNumRxAnt" configuration item, and this
is used to override the WNI_CFG_CURRENT_RX_ANTENNA entry in the MAC
CFG database.  However this MAC CFG database entry is no longer in
use, so remove the obsolete support for this configuration item.

Change-Id: I8a8f7ca382262edee187013425fd41598783342c
CRs-Fixed: 1060626
2016-09-15 09:41:29 -07:00
Jeff Johnson
3507908a02 qcacld-3.0: Remove obsolete "TX Power Control" configuration
Currently cfg.ini supports a "gEnableAutomaticTxPowerControl"
configuration item, and this is used to override the
WNI_CFG_TX_PWR_CTRL_ENABLE entry in the MAC CFG database.  However
this MAC CFG database entry is no longer in use, so remove the
obsolete support for this configuration item.

Change-Id: I8ca653bc75c18692519ff1d88f52441e7f0375f5
CRs-Fixed: 1060597
2016-09-15 09:41:29 -07:00
Jeff Johnson
8db2d53dec qcacld-3.0: Remove obsolete "enable close loop" configuration
Currently cfg.ini supports a "gEnableCloseLoop" configuration item,
and this is used to override the WNI_CFG_ENABLE_CLOSE_LOOP entry in
the MAC CFG database.  However this MAC CFG database entry is no
longer in use, so remove the obsolete support for this configuration
item.

Change-Id: Ic8b7f4f522e910476273dd428bbb471a19cbe79f
CRs-Fixed: 1060579
2016-09-15 09:41:29 -07:00
qcabuildsw
c9fbe2950e Release 5.1.0.26S
Release 5.1.0.26S

Change-Id: Ie63eb9da551a0787e5770ae343d8636283fde891
CRs-Fixed: 688141
2016-09-15 01:39:46 -07:00
qcabuildsw
df85ff5ebe Release 5.1.0.26R
Release 5.1.0.26R

Change-Id: I47ba5562b1a121dc31c5bc2dbf97c2b0adb5986b
CRs-Fixed: 688141
2016-09-14 15:53:04 -07:00