Commit Graph

1323 Commits

Author SHA1 Message Date
Wu Gao
ca416ff63a qcacld-3.0: Apply mlme lfr configuraions
Since refined mlme lfr configures based on converged cfg component,
apply mlme lfr configurations, remove related legacy codes.

Change-Id: Iebda5bbb3c5c68b922b7f6ac1adaf25cccf903a6
CRs-Fixed: 2316494
2018-09-18 12:49:00 -07:00
Dustin Brown
76cd293220 qcacld-3.0: Introduce hdd_contex.psoc
The name 'hdd_psoc' is misleading, since it is not actually an HDD psoc
context. Rather, it is the Object Manager psoc context. Rename hdd_psoc
to psoc for consistency, and to make room for HDD to have its own psoc
context.

As a first step towards this large renaming, introduce a union in
hdd_context such that such both names can exist during the transition
period.

Change-Id: I9971c478c0d1dc111bb20a7cd6614f73ffb0b15d
CRs-Fixed: 2315990
2018-09-18 12:48:50 -07:00
Pragaspathi Thilagaraj
cd6aef0bd3 qcacld-3.0: Add MLME CFG items of MBO INI configs
Add the MBO ini configs to mlme for the following:
1. CFG_MBO_CANDIDATE_RSSI_THRESHOLD
2. CFG_MBO_CURRENT_RSSI_THRESHOLD
3. CFG_MBO_CUR_RSSI_MCC_THRESHOLD
4. CFG_MBO_CAND_RSSI_BTC_THRESHOLD

Change-Id: I9e779c912538973c8281170ec8c212a4f05b7e2e
CRs-Fixed: 2314168
2018-09-18 06:17:05 -07:00
Dustin Brown
f0f7056644 qcacld-3.0: Refactor __hdd_module_init/exit
In preparation for additional work in this area, refactor the
__hdd_module_init and __hdd_module_exit areas.

* Rename __hdd_module_init to hdd_driver_load
* Rename __hdd_module_exit to hdd_driver_unload
* Add missing error handing in hdd_driver_load
* Address symmetry issues between hdd_driver_load and hdd_driver_unload
* Remove redundant call to hdd_sysfs_destroy_version_interface
* Update hdd_set_conparam to take a signed integer
* Address various other style issues

Change-Id: I8ea936a493bb262abf7d43a816dbf72530efa424
CRs-Fixed: 2315840
2018-09-17 14:24:48 -07:00
Wu Gao
93816217da qcacld-3.0: Apply mlme sta configuraions
Since refined mlme sta configures based on converged cfg component,
apply mlme sta configurations, remove related legacy codes.

Change-Id: Ia5989a29378bf33e3c9550a0ae26338aeb966592
CRs-Fixed: 2312079
2018-09-17 10:44:54 +08:00
Pragaspathi Thilagaraj
48d273cbf0 qcacld-3.0: Remove legacy INI items of QOS aggregation configs
Remove the legacy INI code from hdd_cfg. Replace the existing
access from hdd_config with new mlme api.

Change-Id: Iddde15330c1ad39a59bd9a3c7ea86af971df61b5
CRs-Fixed: 2313296
2018-09-14 03:12:25 -07:00
Jinwei Chen
ffaa467dff qcacld-3.0: support HE STS Caps setting by INI
Currently user can not configure HE STS capability through
INI, use gTxBFCsnValue that share same INI with VHT to achieve
it.

Change-Id: Ia83462113cdf06e0af8b9f00c968745363aba9b4
CRs-Fixed: 2306083
2018-09-13 07:58:35 -07:00
Wu Gao
d8f3db0fb5 qcacld-3.0: Refine mlme obss ht40 configurations
Refine mlme obss ht40 configurations based on converged cfg component.
Remove related legacy codes.

Change-Id: If4f061a16e9a2a0bba81d1d24aa1f52bbeadacf5
CRs-Fixed: 2311907
2018-09-13 04:52:15 -07:00
Harprit Chhabada
e8155d3e50 qcacld-3.0: Enable EXTSCAN based on converged extscan component
Enable EXTSCAN based on converged cfg component and remove
legacy codes.

Change-Id: Ia4af89c6a898a936c89c6f3f155609a9c3d98541
CRs-Fixed: 2302197
2018-09-12 17:56:55 -07:00
Yeshwanth Sriram Guntuka
35bc5ccf91 qcacld-3.0: Enable few OCE STA ini by default
Enable oce_enable_probe_req_rate, enable_esp_for_roam
and oce_enable_probe_req_deferral ini by default.

Change-Id: I84aaceb468bac54c97c30f681981296a0666063c
CRs-Fixed: 2312013
2018-09-12 15:55:55 -07:00
Vignesh Viswanathan
8c207396ff qcacld-3.0: Set gAutoBmpsTimerValue to 30 seconds by default
Currently gAutoBmpsTimerValue is set to defaut value of 5 seconds
so that after 5 seconds from association completion, the device would
go to power save. However, this would lead to issues if an ADDTS req is
received from the supplicant. The ADDTS req would be sent to the AP but
the AP would not send the ADDTS response immeidately and would buffer it
as the device is in power sleep.

Ideal way is for the framework to control the device power save where
the framework should push the device to power save after connection and
should disable power save before sending an ADDTS request.

However, to avoid cases where the framework fails to send the power
cfg ops to the host after connection leading the FW to the stuck in
full power mode, setting the gAutoBmpsTimerValue to 30 seconds by
default.

Change-Id: Idc8af26174a56cd1afee3c7a4353b4d7ebeac2d7
CRs-Fixed: 2313913
2018-09-12 11:58:22 -07:00
Sandeep Puligilla
b7beb478db qcacld-3.0: Add legacy VDEV manager callbacks
Add legacy VDEV manager callbacks framework.

Change-Id: I8529a54382b3ffdecd25e54a97fc69d6a6a68177
CRs-Fixed: 2312724
2018-09-12 07:08:13 -07:00
Ashish Kumar Dhanotiya
9f72df00fd qcacld-3.0: Add mtrace logging for P2P module
We are transitioning to new logging infrastructure
by using existing mtrace functionality.

Add new logging for complete P2P module.

Change-Id: If49d66ea42a48be0ac6c7a8b4c91d69ebd5fcef9
CRs-Fixed: 2308618
2018-09-11 12:01:40 -07:00
Pragaspathi Thilagaraj
00bd8bc47f qcacld-3.0: Remove legacy ini for chainmask configs
Remove the legacy ini config values defined in hdd_cfg.
Call the mlme cfg get api to retrieve chainmask config values.
Remove the tx_chainmask_cck from cds_config as mlme object is
not initialized during cds_open. Call mlme cfg api during
wma_open to populate the tx_chainmask_cck value.

Change-Id: If48aeb62cf35e2e604be2b72845b8e98c5c313dc
CRs-Fixed: 2310382
2018-09-11 12:01:28 -07:00
Dustin Brown
1a20b08cd1 qcacld-3.0: Remove DRIVER_MODULES_OPENED
The "open" state only comes into play once, when the wlan driver is
first loaded. It represents a driver state that is neither fully up, nor
down, as the soc has been probed, but many internal data structures have
not been initialized yet. After the first interface up operation,
however, the driver moves to the "enabled" state, and can never re-enter
the "open" state.

This half-up driver state causes a number of difficult to deal with side
effects, without adding much value. Simply remove the state, instead moving
straight into the "enabled" state on wlan load instead. Thus, moving
into the idle "closed" state after wlan load will look exactly the same
as it does  after the last interface is downed.

Change-Id: I4ec1268eb491fec04a78b90e51c6e616d95e019e
CRs-Fixed: 2295921
2018-09-07 23:23:44 -07:00
Dustin Brown
07901ecb55 qcacld-3.0: Rename hdd_pdev to pdev
The name 'hdd_pdev' is misleading, since it is not actually an HDD pdev
context. Rather, it is the Object Manager pdev context. Rename hdd_pdev
to pdev for consistency, and to make room for HDD to have its own pdev
context.

Change-Id: Ie27e4b21d83865474bd464ba2c3948a0684de29b
CRs-Fixed: 2311497
2018-09-07 19:02:23 -07:00
Dustin Brown
89fa06ec3a qcacld-3.0: Rename hdd_vdev to vdev
The name 'hdd_vdev' is misleading, since it is not actually an HDD vdev
context. Rather, it is the Object Manager vdev context. Rename hdd_vdev
to vdev for consistency, and to make room for HDD to have its own vdev
context.

Change-Id: I6186d010404c0a7b1e25590d87e5350195faba80
CRs-Fixed: 2311435
2018-09-07 17:22:45 -07:00
Qiwei Cai
1c52ef67ba qcacld-3.0: Optimize struct reg_table_entry definition
Optimize struct reg_table_entry definition by means of
alignment and data type declarations to save memory.

Change-Id: Ib97541b0868416d1d797d8326e265e9789a040da
CRs-Fixed: 2301744
2018-09-07 09:25:26 -07:00
Rajeev Kumar Sirasanagandla
4f20b67e7a qcacld-3.0: Add debugfs support for roam scan stats
Add debugfs entry to get last five roam scan stats info which includes
old bssid, new bssid, roaming candidates etc., for STA interface.

Change-Id: Ied66beb270d97b6e17a6116c1be0e82783094519
CRs-Fixed: 2203885
2018-09-07 04:43:53 -07:00
Ashish Kumar Dhanotiya
12f682166b qcacld-3.0: Add ini to enable/disable Mtrace logging
Add ini to configure Mtrace log level for all the Modules.

Change-Id: I7b2a2d7c4ebeb9731365bd3a33c340ca74717944
CRs-Fixed: 2310401
2018-09-07 03:04:01 -07:00
Pragaspathi Thilagaraj
f4cc58b320 qcacld-3.0: Add MLME CFG items of sap/sta erp protection
Add the following SAP/STA protection ini and cfg parameters to MLME cfg:
CFG_PROTECTION_ENABLED       - CFG
CFG_FORCE_POLICY_PROTECTION  - CFG
CFG_IGNORE_PEER_HT_MODE_NAME - INI

Change-Id: I3763d62c6aa4ae79a5a31dfac248e8367b6369ad
CRs-Fixed: 2310378
2018-09-07 01:29:17 -07:00
Rajeev Kumar Sirasanagandla
85f8b02175 qcacld-3.0: Add debugfs support for offload info
Add debugfs entry to get offload info (mc addr list, arp, ns etc.,)
for STA interface.

Change-Id: I8bf4491929b5ef04ed5ce19f4b0030945f0eb0c0
CRs-Fixed: 2203786
2018-09-06 08:54:37 -07:00
Rajeev Kumar Sirasanagandla
4c8edc0e69 qcacld-3.0: Add debugfs support for connect info
Add debugfs entry to get connect info (bssid, ssid, freq etc.,)
for STA interface.

Change-Id: Id5c350dbb4ca9b9f6b203459adee59b2d5e94f67
CRs-Fixed: 2203654
2018-09-06 08:54:34 -07:00
Rajeev Kumar Sirasanagandla
197d417733 qcacld-3.0: Add debugfs framework support for CSR
Add debugfs framework support to get connect, scan,
roam scan statistics and offload info from debugfs.

Change-Id: I86bdd7e449488d2bcda1b2eaaeb07aac7465770b
CRs-Fixed: 2203626
2018-09-06 08:54:31 -07:00
Bala Venkatesh
113a9e602a qcacld-3.0: Configure the tdls offchannel params through IOCTL
Add support to configure tdls offchannel params
through IOCTL commands.

Change-Id: I90ba90b5ef980f837ce4759755efe190672ad911
CRs-Fixed: 2303145
2018-09-05 18:11:23 -07:00
Liangwei Dong
2f29b37809 qcacld-3.0: Add INI for dbs mode selection
Add dbs_selection_policy to select preferred
2x2 DBS band.
Add vdev_priority_list to set the vdev 2x2
priority list.

Change-Id: I79bba3dbeecba85a04a4ddc1b57ca798998fc7d7
CRs-Fixed: 2304298
2018-09-05 06:46:55 -07:00
Rachit Kankane
f6834c4b4c qcacld-3.0: Featurize Dynamic Voltage Config
Host provides INI way to control voltage configs, featurizing the
same for Genoa.

Change-Id: Ia58d84eb2e2a67ead189a51d2a0b98230513f8f9
CRs-Fixed: 2304125
2018-09-05 00:17:45 -07:00
Nirav Shah
5c083da176 qcacld-3.0: Remove hardcoded print message for ini parameters
Remove hardcoded print message for ini parameters during
insmod and use hdd_cfg_get_global_config to print ini
parameters.

Change-Id: I3ac077818e99c461866211e220232fa6c0e3e00d
CRs-Fixed: 2278888
2018-09-03 00:22:07 -07:00
Dustin Brown
20f9fc4f4d qcacld-3.0: Use enums for hdd bit flags
Hdd has two sets of bitmap flags which are using #define's. It so
happens that two of the flags use the same bit offset. To address this,
and ensure no such issues arise in the future, convert these into
auto-incrementing enumerations.

Change-Id: I8f0e9d0f3a0a493176227ccf16f25d0a4c5bdc73
CRs-Fixed: 2307446
2018-09-01 19:19:26 -07:00
Amar Singhal
0fcce7d7a3 qcacld-3.0: Add INI to enable 11d in world mode
In WORLD mode, there can be urgency to discover the current country
since WORLD mode restricts the channel and TX power availability.Add
INI enable_11d_in_world_mode to automatically enable 11d in WORLD
mode. This INI supersedes the setting in 11d INI variable
Is11dSupportEnabled.

CRs-Fixed: 2289349
Change-Id: I7b289cdb60be5e737f41f9de5a478f32a234e717
2018-08-31 11:17:18 -07:00
Karthik Kantamneni
22dd0f69cb qcacld-3.0: Add MLME CFG items of rates [PART 1]
Add MLME CFG items of rates

Change-Id: I9f52f2ef0eef4698ddc13c55dd56d938a6e4c677
2018-08-31 02:33:14 -07:00
Krunal Soni
6c3859f433 qcacld-3.0: Add iwpriv command to set and get BA aging timeout value
Add new iwpriv command to set BA aging timeout value to hardware.

e.g. "iwpriv wlan0 set_ba_timeout <ac> <duration>" which should set
given duration in msecs for given access class.

"iwpriv wlan0 get_ba_timeout" which should get duration
value for each access class and display.

CRs-Fixed: 2254891
Change-Id: I79f79191c47376e414dceeb73b736a0a9610e3ae
2018-08-28 14:46:24 -07:00
Dustin Brown
35008baacb qcacld-3.0: Stop bus bandwidth work with timer
The bus bandwidth compute timer is a periodic timer which computes bus
bandwidth usage of associated adapters over a period of time. When the
last adapter disassociates, this timer is stopped. However, the timer
starts a work that is not stopped or flushed at this time. When the
device is under load from external subsystems, this work can get pushed
out past what is safe. When the bus bandwidth timer is stopped, also
stop and flush the bus bandwidth work to ensure safe memory access.

Change-Id: I32c15b42c9756341d1ecf534c05f87738fd24edb
CRs-Fixed: 2300697
2018-08-27 16:43:10 -07:00
Nachiket Kukade
989bb351cb qcacld-3.0: Advertise NAN support only if INI is enabled
Under get_supported_features vendor command driver is advertising
NAN capability by checking only the Firmware support. If NAN is
disabled through INI it should not advertize this support.

Add an INI parameter check before advertizing NAN capability.

Change-Id: Ib48044a04500d6619b97d5ca1c3431ee64d7e096
CRs-Fixed: 2288204
2018-08-27 07:00:35 -07:00
Mohit Khanna
7032200a77 qcacld-3.0: Support for DP RX Threads
Add support for DP RX Threads as a part of the FR. Multiple RX threads
can be enabled from the ini. The code is added in a new DP module
outside of the cmn project.

Change-Id: Ief6ee955f13c5e527986307371b8e45677cb9700
CRs-Fixed: 2256446
2018-08-24 18:35:32 -07:00
Kai Liu
aa88d2f9c2 qcacld-3.0: Define macro WLAN_SYSFS for feature sysfs interface
Disable this feature for MOBILE_ROUTER product, since some MOBILE_ROUTER
platform will attach two wlan cards with separate wlan driver,
during second driver loading process, it will report a warning of
"cannot create duplicate filename" as node with same name has been
created after first driver was loaded.

Change-Id: I9e06439b3a6dacdf4eb5ae87898338ab1eeb8b16
CRs-Fixed: 2295391
2018-08-22 07:46:43 -07:00
Vignesh Viswanathan
c6812821f7 qcacld-3.0: Add support for wildcard OUI in Action OUI framework
Add support for wildcard OUI 0xFFFFFF in action OUI framework.
When the OUI FFFFFF is defined for some action OUI ini and bit 0
of info_presence bit is set to 0 then the check for vendor OUI
in vendor specific IEs and the vendor IE data checks are skipped
and other checks like MAC, Capabilities are done during connection.

Change-Id: I6e996c5d79f4f7bd91e11134b1b8ba69a1ff0253
CRs-Fixed: 2293167
2018-08-20 15:15:11 -07:00
Vignesh Viswanathan
21c58cb8c3 qcacld-3.0: Add MLME CFG items and APIs
Add the basic infra for MLME CFG items and the APIs to be used from
other components.

Change-Id: I39654de8f7266089d574b85437a19e8d21f91249
CRs-Fixed: 2293825
2018-08-20 05:29:46 -07:00
Alok Kumar
3dd311dd48 qcacld-3.0: Add support to check if LRO is enabled or not
Add an API to validate if LRO is enabled or not based on
FEATURE_LRO flag.

Change-Id: I85bce60d3f7b47a57fba1122d058d17c474c456c
CRs-Fixed: 2298731
2018-08-17 08:48:34 -07:00
Qiwei Cai
e689a26cd8 qcacld-3.0: Featurize some vendor commands
Featurize some vendor commands to compile out when not needed.

Change-Id: I6757b5764930efbd9cd1c7ab74e5990e96267421
CRs-Fixed: 2270461
2018-08-13 23:15:17 -07:00
Manikandan Mohan
dcd0fdfcc0 qcacld-3.0: Update for converged NAN config params
Update driver to use NAN config params based converged CFG
component. Cleanup hdd config references to nan ini params.

Change-Id: I5af85d68ee53ad557e64523f7a1719e328536926
CRs-fixed: 2290360
2018-08-10 20:45:16 -07:00
Dundi Raviteja
4016e93fdd qcacld-3.0: Remove unused variable from hdd_ctx structure
Remove set_antenna_mode_cmpl variable from hdd_ctx structure
as it is not using anywhere.

Change-Id: Ifc3395f944b10da9537815a94c5484312190141a
CRs-Fixed: 2289642
2018-08-09 16:24:43 -07:00
Vignesh Viswanathan
f9a704c92a qcacld-3.0: Add support for 1x1 connect with 1 Tx/Rx Chain action OUI
Add support for new 1x1 connect with 1 Tx/Rx Chain action OUI to be
parsed and sent to the FW. From host during connection, the behaviour
is same as existing connect 1x1 action OUI where nss is sent to 1 to
the FW, but the FW takes the decision to use only one Tx/Rx chain
based on the OUIs defined in the new action ID.

Change-Id: Ia464209043dc73bcc71577c43b28fbe13e780c23
CRs-Fixed: 2264326
2018-08-09 14:34:02 -07:00
Dustin Brown
a8700cc8f5 qcacld-3.0: Add caller to validate adapter logs
The error logs in hdd_validate_adapter are mostly useless without
knowing where it was called from. To avoid adding additional logs at all
of the call sites, log the caller information from hdd_validate_adapter
itself.

Change-Id: If953412c8435069c0ab87649fbf54130eb81cd09
CRs-Fixed: 2292705
2018-08-08 09:11:41 -07:00
Dustin Brown
6350061075 qcacld-3.0: Internalize validate session Id logs
Nearly all the callers of wlan_hdd_validate_session_id() log largely the
same message. Such copy-pasted code has poor maintainability. Instead,
internalize these failure logs into the function itself, which allows us
to control the logs driver-wide much more easily.

Change-Id: Ib7bfa8020492a5cb1df2283f99b827095dfb7578
CRs-Fixed: 2292702
2018-08-08 05:41:35 -07:00
Tushnim Bhattacharyya
aececb20dc qcacld-3.0: Add ENABLE_DBS_CXN_AND_DISABLE_SIMULTANEOUS_SCAN
Add ENABLE_DBS_CXN_AND_DISABLE_SIMULTANEOUS_SCAN option for the ini
gDualMacFeatureDisable. This is to enable DBS support for the
connection and disable simultaneous scan from upper layer. But DBS
scan remains enabled in FW.

Change-Id: Ic280de2cc63a3775c0d9dd61985ff89df58a4a89
CRs-Fixed: 2288294
2018-08-07 02:19:18 -07:00
Dustin Brown
86d196bacd qcacld-3.0: Normalize bus bandwidth init/deinit sequence
The HDD bus bandwidth infrastructure init/deinit sequence is currently
very sporadic. Startup and re-init initialize it at different point, and
failed to de-initialize it in the case of failure. Likewise, exit and
shutdown de-initialize it at different points. Update the HDD bus
bandwidth init/deinit sequence so that it is uniform and symmetrical in
all situations.

Change-Id: I5312bd340d885aafb8d4e809672eb02afc199781
CRs-Fixed: 2290237
2018-08-03 14:28:37 -07:00
Ashish Kumar Dhanotiya
9fbe737fee qcacld-3.0: Increase ll_stats driver buffer size
Currently driver allocates buffer of size 10KB which is
getting filled completely in some cases when size of
ll_stats is more than 10KB. Because of this driver
ignores some of the stats and user space does not
get the complete stats.

To address this issue increase the size of the buffer
to 12 KB.

Change-Id: I8c5500545a3c69ecb5ba3b1bb3e7f3338a61714f
CRs-Fixed: 2279495
2018-08-02 20:36:03 -07:00
Wu Gao
3365e780ff qcacld-3.0: Cleanup P2P and TDLS WNI configures
Use new cfg API for P2P and TDLS WNI configures, and cleanup related
legacy codes. Remove two not use P2P INI configures.

Change-Id: Ie37fd5e598ececba561581952a23601595607b2e
CRs-Fixed: 2286387
2018-08-02 18:29:58 -07:00
Dustin Brown
7e761c71eb qcacld-3.0: Reduce hdd/ipa info logs
A number of HDD and IPA logs are generally unnecessary and have been
identified as contributing to log spam. Reduce these log messages to the
debug level.

Change-Id: I2f92bb4caec5adc65fdad0146298aa5f88b43def
CRs-Fixed: 2288430
2018-07-31 19:01:18 -07:00