Commit Graph

965 Commits

Author SHA1 Message Date
Krishna Kumaar Natarajan
062d054549 qcacld-3.0: Update dot11f.frms for new radio measurement types
Update dot11f.frms to decode LCI and Fine Time Measurement in
incoming Radio Measurement frames.

Currently we do not have these new types supported leading to
incorrect frame parsing. Adding these types make sure that
incoming radio measurement request frames are unpacked correctly.

Change-Id: I542bb2b782fed144702c372cbfc314c666c72f53
CRs-Fixed: 980863
2016-04-17 18:04:27 -07:00
Naveen Rawat
206e2ac787 qcacld-3.0: Reindent csr_validate_mcc_beacon_interval
This patch is to reindent csr_validate_mcc_beacon_interval

Change-Id: I0e9c420aab7a2f5534e8acc52d09a27693194073
CRs-Fixed: 985273
2016-04-17 18:03:56 -07:00
Krunal Soni
0acfdcd696 qcacld-3.0: Fix incorrect struct assignment & HT-ie addition
Fix incorrect struct assignment while handling join request in
SME module.

Fix not to add HT ie in outgoing P2P action frames.

Change-Id: Ic49ca5ca3171be50a16a16281ae68edb35449605
CRs-Fixed: 985273
2016-04-17 18:02:01 -07:00
Krunal Soni
fb84cbd911 qcacld-3.0: (part-8)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: Ic3e7c2944d1b8d66042398c57eb307ab30223524
CRs-Fixed: 985273
2016-04-17 18:01:56 -07:00
Krunal Soni
9b04c9b8dd qcacld-3.0: (part-7)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: If408976d5554a50a0023c2a49f80876911fdf1d8
CRs-Fixed: 985273
2016-04-17 18:01:51 -07:00
Krunal Soni
056ea0ffde qcacld-3.0: (part-6)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: Ia98c4406992c1065850dc70ab3b33c49216d0a24
CRs-Fixed: 985273
2016-04-17 18:01:47 -07:00
Krunal Soni
b4326f27d9 qcacld-3.0: (part-5)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: I62a36b3e4d7f92a6d8b15648645035c6ea7735c2
CRs-Fixed: 985273
2016-04-17 18:01:43 -07:00
Krunal Soni
a368784fee qcacld-3.0: (part-4)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: Iaa945f64dd9f90f6abc0b1716b176fce0971ba71
CRs-Fixed: 985273
2016-04-17 18:01:39 -07:00
Krunal Soni
f07bb38727 qcacld-3.0: (part-3)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: I963d1d7f854ecdfe8c301cc5c8fc554ce8df4e35
CRs-Fixed: 985273
2016-04-17 18:01:29 -07:00
Krunal Soni
be766b01b8 qcacld-3.0: (part-2)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: If20617734c5f6f71cef6b85b86d907f8be9d39f9
CRs-Fixed: 985273
2016-04-17 18:01:19 -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
Satish Singh
7624902237 Release 5.1.0.7G
Release 5.1.0.7G

Change-Id: Ic169127937315b8f84983b656fbf97ff824234d7
CRs-Fixed: 688141
2016-04-17 18:00:44 -07:00
Archana Ramachandran
28ab41212d qcacld-3.0: Fix memory leak in protocol stack due to cdf_mem_free removal
Fix memory leak in protocol stack due to cdf_mem_free removal.

CRs-Fixed: 987178
Change-Id: If2aa813322cbfea68001862098e6c0b18e6921ae
2016-04-17 18:00:34 -07:00
Rajeev Kumar
dd4dd08b2c qcacld-3.0: Fix deadlock in hdd_adapter_lock usage
hdd_adapter_lock is acquired from MC thread and hif_napi soft IRQ
context so it should be acquired using spin_lock_bh such that when
MC thread is holding the lock soft IRQ can't pre-empt it and lead
to deadlock

Change-Id: Iee4a4905bf7cc09cba9bd26f416d505eb47a5c96
CRs-Fixed: 981886
2016-04-17 18:00:21 -07:00
Manjunathappa Prakash
7e16b0a68f qcacld-3.0: Use fastpath Tx entry point with flowcontrol V2
Use common entry point ol_tx_ll_wrapper and use fastpath Tx if enabled.

Change-Id: I3a19fd6af43ab10eb5d8dd2754134a8dbc3783ab
CRs-Fixed: 987182
2016-04-17 17:59:18 -07:00
Amar Singhal
90aaa6ae49 qcacld-3.0: Fix setting vht160/80p80 driver capablities.
We dont need to set both 80p80 and 160 mhz driver capabilties
in driver. Since 160 is a subset of 80p80 capability; we need to
set only one

Change-Id: I20ea254523bade3ad93e49added35d4bdc1d0509
CRs-Fixed: 985763
2016-04-17 17:56:05 -07:00
Peng Xu
242002c759 qcacld-3.0: Increase connection update timeout value
Current connection update timeout value for DBS concurrency case
is 500ms, which is not long enough as there are other WMI messages
need to be processed by master thread. Increase the timeout value
to 1000ms to ensure the set hardware mode WMI message has enough
time to be processed

Change-Id: Idecf2e830a7a37258787eb4f8c5f117cbe2a825b
CRs-fixed: 983174
2016-04-17 17:55:53 -07:00
Nirav Shah
93e789e6d5 qcacld-3.0: Fix firmware statistics mask and format
Send prorper firmware statistics mask and fix
firmware statistics format

Change-Id: I786a7a6e3cec46660c497a001b4b39fb1a049b3a
CRs-Fixed: 986060
2016-04-17 17:55:45 -07:00
Krishna Kumaar Natarajan
db582ec0e0 qcacld-3.0: Fix incorrect argument type in lim_chk_assoc_req_parse_error
Fix incorrect argument type in lim_chk_assoc_req_parse_error function

Currently uint32_t is passed to the function but this function typecasts
it to uint8_t which results in losing 3 bytes of data. This lead to
incorrect parsing of Assoc request frame.

Change-Id: Ib55f7afa06972234d06edd12098e44608460a10d
CRs-Fixed: 987559
2016-04-17 17:55:30 -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
Chandrasekaran Manishekar
4fcb7f5feb qcacld-3.0: Fix enum mismatch while calculating regulatory class
Fix the enum value used while calculating the regulatory class
from the operating channel. Currently, the channel width is of
type 'enum ch_width' whereas the expected enum is of type
'offset_t'. Fixing the same by performing the enum conversion
before calculating the regulatory class to avoid incorrect
value of regulatory class.

Change-Id: I6aabb8ae78836e3c640f41b27e10830adc91a57e
CRs-Fixed: 986246
2016-04-17 17:54:53 -07:00
Chandrasekaran Manishekar
068e25eeb8 qcacld-3.0: Enable FEATURE_WLAN_MCC_TO_SCC_SWITCH flag in the driver
Enable feature flag FEATURE_WLAN_MCC_TO_SCC_SWITCH in the Kbuild to
make use of the MCC to SCC switch feature. The resulting errors in
compilation are fixed along with some enhancement in the debug logs
in this feature path

Change-Id: I0ddb2f371c28ade6d8fc9ea12ba104a99394827f
CRs-Fixed: 986079
2016-04-17 17:54:28 -07:00
Ryan Hsu
9206a4ef77 qcacld-3.0: Update cfg80211_vendor_event_alloc for Kernel upgrade
Commit: 6c09e79 ("cfg80211: Allow NL80211_ATTR_IFINDEX to be added
to vendor events")

This commit add parameter wdev to cfg80211_vendor_event_alloc(), that would
be used to check at __cfg80211_alloc_vendor_skb() to assign ifindex to
the skb and is merged in Kernel 4.1, so add a kernel version macro to
support this

Also merge the hdd_vendor_put_ifindex into cfg80211_vendor_event_alloc
to assign the ifindex when wdev is given, that way we can unify the interface.

Change-Id: I321e12bfe3f9160a8a0fcfeb2408f6336d50e2c5
CRs-fixed: 964291
2016-04-17 17:51:33 -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
Houston Hoffman
575ff11540 Release 5.0.0.6G
Release 5.0.0.6G

Change-Id: Ia8f15633bf15406cd628d86f7c17c4b176bf67aa
CRs-Fixed: 688141
2016-04-17 17:50:19 -07:00
Vishwajith Upendra
bf673e7258 qcacld-3.0: Add support for SAP DFS-3 160MHz, 80+80MHz NOL
Add support for DFS Master mode NOL channel blacklisting.
In 80+80MHz mode add only the channels to NOL based on the segment
id on which radar has been detected and in 160MHz add all or only
DFS channels skipping the Non-DFS channels,  part of the 160MHz bond.

Acked-by: Rakesh Sunki <rsunki@qca.qualcomm.com>

Change-Id: Ie56d14b17997a86e12eacd0ea86cf1742899feb4
CRs-Fixed: 964262
2016-04-17 17:48:41 -07:00
Sandeep Puligilla
2111d3c9b6 qcacld-3.0: SAP DFS-3 channel selection suppport for 80+80MHz/160MHz
Add support for setting channel width for CSA and modify the
SAP DFS channel width fallback algoritham to support DFS for
80+80Mhz and 160Mhz bandwidth. Also, compile out channel matrix
restriction from channel selection process after radar
indication is received for newer platforms and only compile
for older platforms

Change-Id: I771fc162b18aa1e485c513046a265b2d94612972
CRs-Fixed: 964262
2016-04-17 17:05:13 -07:00
Sandeep Puligilla
949eaa7aab qcacld-3.0: SAP DFS CAC Support in 80+80MHz mode
Add support to perform CAC when SAP comes up in 160MHz
or 80+80MHz with any of the 80MHz band is DFS band.

Change-Id: If24d6cd325f747934195598ffe0f456eea939026
CRs-Fixed: 964262
2016-04-17 17:05:13 -07:00
Sreelakshmi Konamki
9d6b75d1a4 qcacld-3.0: Downgrade WMM AC for data frames if BMPS disabled
qcacld-2.0 to qcacld-3.0 propagation

As per the current implementation STA is sending Vo tagged data after
delTspec if BMPS disabled.

To fix this issue, make wmmAcAccessAllowed to false in hdd_wmm_delts().

Change-Id: I2351a4fd463e0e80cc7aefa5485046eab491ce45
CRs-Fixed: 967685
2016-04-17 17:05:13 -07:00
Amar Singhal
30193a7fa4 qcacld-3.0: Remove obsolete regdomain structures
Remove obsolete regdomain data structures. Also remove the obsolete
fields from REG_DOMAIN and REG_DMN_PAIR_MAPPING data structures.

Change-Id: I1ff906571dfadf9cf6a4dc963d8eef62acc5f6b5
CRs-Fixed: 961806
2016-04-17 17:05:13 -07:00
Amar Singhal
c1f9c1af05 qcacld-3.0: Remove sub-ctl codes.
Firmware does not require the sub-ctl codes from the host. Therefore,
remove the calculation of sub-ctl codes from the host APIs. Also
remove the associated data structures.

Change-Id: Ib5d5f074b45f2dae2bb9a7c172ee7f8750ad5355
CRs-Fixed: 961806
2016-04-17 17:05:12 -07:00
Amar Singhal
76b4132090 qcacld-3.0: Define correct country codes
Define the correct country codes per the data published by the
regulatory compliance team.

Change-Id: I2474acb2657ba1e4a0f62aef013df296aebfcb53
CRs-Fixed: 961806
2016-04-17 17:05:12 -07:00
Archana Ramachandran
393f3796b6 qcacld-3.0: Dynamic antenna switch in disconnected/station mode feature
Functionality for switching antenna mode (TX/RX chains)
from 1x1 to 2x2 and vice versa dynamically without reloading
the driver. This feature is currently supported in the
disconnected state where only scan operation can happen and
standalone station mode.

The changes include the following:
1. Driver command IOCTL to set/get antenna mode as follows
DRIVER SETANTENNAMODE <# of streams>
DRIVER GETANTENNAMODE

2. Processing SETANTENNAMODE and GETANTENNAMODE to dynamically
change the number of TX/RX chains as follows

Dynamic switch request is allowed only when the supported
number of chains in the system is greater than 1.

Dynamic antenna switch is achieved by sending
WMI_PDEV_SET_ANTENNA_MODE command to the FW chain mask
manager with parameters to change the number of TX/RX chains.
This request will be maintained by the chain mask
manager and applied whenever only one MAC is active.

If there is a station association followed by dynamic switch
to 1x1 mode then SM power save IE is included in the HT caps
of the association/reassociation request management frame.

Dynamic switch in the connected standalone station mode is
achieved by sending SMPS force mode command with appropriate
values for smps mode by the chain mask manager.

Change-Id: I65d51d173a627dc2751ef10cc2172a5215e7b8db
CRs-Fixed: 931250
2016-04-17 17:05:12 -07:00
Archana Ramachandran
fec2481466 qcacld-3.0: Do not send SMPS force mode on dynamic antenna mode switch
When dynamic antenna selection requests to change the number of
TX/RX chains, the FW chain mask manager will take care of sending
the corresponding SMPS action frames to the AP to put the station
in 1x1 or 2x2 mode. The host driver should only handle setting
the right SMPS mode in the HT capabilities of association
or re-association requests.

CRs-Fixed: 931250
Change-Id: I9bedcc5024a98040f571f730ff084f6fe3e3ad00
2016-04-17 17:05:12 -07:00
Archana Ramachandran
20d2e23fca qcacld-3.0: 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-17 17:05:12 -07:00
Archana Ramachandran
a20ef8127d qcacld-3.0: Dynamic antenna selection request/response messages
Add support to request for antenna mode to FW to switch from
1x1 to 2x2 and vice versa dynamically and process the response
status of whether the request was sent successfully.

Change-Id: Ie4b0b36981423f9325c48c7ebad445d5cc1f2a21
CRs-Fixed: 931250
2016-04-17 17:05:12 -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
Chandrasekaran, Manishekar
d3cb4778fe qcacld-3.0: Fix potential static code analysis issues
Fix potential null pointer access during sap open
session and validation of the session id which could
be reported during static code analysis.

Change-Id: I6146c7223c586df06c08c76abd9e38a3c1ad1c4b
CRs-Fixed: 979960
2016-04-17 17:05:12 -07:00
Chandrasekaran, Manishekar
6e9aa1b9cd qcacld-3.0: Avoid message handler of netlink APIs to be OS agnostic
Avoid message handler of netlink APIs to be OS agnostic. Retain the
message handler to get the concurrency matrix in HDD.

Change-Id: Ieb121512e3d8ae15678da46ed8425c07fd003f69
CRs-Fixed: 946161
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
Gupta, Kapil
3e61707d7c qcacld-3.0: Add debug print for EAPOL msg
qcacld-2.0 to qcacld-3.0 propagation

Currently driver has debug print for EAPOL
but it doesn't tell whether its M1, M2 etc.
As part of fix, add debug print for M1-M4 msg.

Change-Id: I1eb4f9dac6520b1ce00cdfc3e0fcef721ae498d6
CRs-Fixed: 919617
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
Govind Singh
25a9578b3f qcacld-3.0: Remove unused WMI layer code
WMI layer is moved to converged repository.
Remove unused WMI layer code from cld3.1 codebase.

Change-Id: I6ca9d468ae9628f6b1d78a53917c9c67994e02dc
CRs-Fixed: 987362
2016-04-15 13:51:23 -07:00
Vishwajith Upendra
df1d46459b Release 5.1.0.5GG
Intermediate release to address cleanup proprietary
and old stale lines

Change-Id: Ie68c7f85ca0694ae5b54feb18e3a666982714ebb
CRs-Fixed: 688141
2016-04-13 22:52:05 -07:00
Komal Seelam
faad20feb2 Release 5.1.0.5G
Rebase of 5.0.0.165 onto 5.1.0.4G

Change-Id: I7813c88803d912feea91609960bd6ed642fd05d7
2016-04-13 21:51:26 -07:00
Peng Xu
66162de29e qcacld-3.0: Fix firmware assertion caused by vdev delete
Currently the SME session is deleted during interface change API and
a new session is not opened until SAP is ready to start. This will
cause crash when scan API is invoked. This fix opens the SME session
after interface type is changed, so that it can be used to scan and
SAP later.

Change-Id: I3c4f8da14dbc70a3102fb1892bb101eb1a90a00d
CRs-fixed: 968572
2016-04-13 21:51:26 -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
Sandeep Puligilla
e087566368 qcacld-3.0: UMAC: 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: I58e8d72b8ee922f710af0474ed3efd0438fff3a7
CRs-Fixed: 947086
2016-04-13 21:51:26 -07:00
Tushnim Bhattacharyya
15596cf5c1 qcacld-3.0: Fix compilation issues with ocb functions
OCB header files shouldn't be under FEATURE_WLAN_CH_AVOID. During cld2.0 to
cld3.0 propagation ocb header file inclusion mistakenly got inside above
featurization. Relocate it outside the FEATURE_WLAN_CH_AVOID conditional.

Change-Id: Ib1cbc179dc0f5b769e18a4d7d8268081a25ede3f
CRs-Fixed: 975731
2016-04-13 21:51:25 -07:00
Kiran Kumar Lokere
5899f43818 qcacld-3.0: Remove obsolete StaRateMode related code
Remove obsolete StaRateMode related functionality.

Change-Id: Id051d9081a68adfa8e32dd7960caff06fd9b677a
CRs-Fixed: 980689
2016-04-13 21:51:25 -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
Krishna Kumaar Natarajan
047e7d590e qcacld-3.0: Redefine dfs data structure to fix prealloc size concern
Redefine dfs filter type to avoid prealloc problem by making one
large chunk into multiple smaller chunks.

With current data structure, dfs attach was requesting huge chunk
of memory from the heap which results in failure. This change set
fixes the issue by modifying the data structure so that one
large chunk is made as multiple smaller chunks.

Change-Id: If944747de63a68d55a83b8595d0a07dd05f53dbe
CRs-Fixed: 975903
2016-04-13 21:51:25 -07:00
Krishna Kumaar Natarajan
59f546c6ac qcacld-3.0: Fix incorrect flags setting in peer assoc command
qcacld-2.0 to qcacld-3.0 propagation.

Fix incorrect flag setting while sending peer assoc command.

This change set will add a check before setting 40MHZ support bit
and shortGI support bit in the peer flags. If the peer is not HT
capable, these flags should not be set.

Change-Id: I89d43bd86b97637b291dc871aaf7e2a3269df853
CRs-Fixed: 974242
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
388b3f01f0 qcacld-3.0: Make regulatory code more readable
Re-write part of regulatory code to make more readable.
Rename variables to more intuitive names. Also simplify the
logic.

Change-Id: I4ab896d18a6b5f6e2f9c84884268e2af2077f74b
CRs-Fixed: 856727
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
7ccdc4ff47 qcacld-3.0: Remove 40mhz bonded channel from driver
40 mhz channel array is redundant and does not give the
correct channel bonding information. Therefore remove
these channels, bonding array, and its associated usage.

Change-Id: I913fb97cdc913b1a027d21b0df526dfd5cd5902f
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
Rajeev Kumar
d004abc6f3 qcacld-3.0: Fix compilation error caused by hdd_indicate_mgmt_frame
hdd_indicate_mgmt_frame is defined under CONFIG_CNSS feature flag
which is not defined for MSM8998 SNOC target. Fix this compilation
error by taking out definition of hdd_indicate_mgmt_frame from
CONFIG_CNSS feature flag.

Change-Id: I4b2de5d947ff4fdd21032d6b7e3d5fe4e9eb3eec
CRs-Fixed: 978800
2016-04-13 21:51:25 -07:00
Nirav Shah
36a87bfb6e qcacld-3.0: Use sta id to derive peer in ol_rx_data_cb
Derive peer from sta id in ol_rx_data_cb to
make sure that peer is still valid before
using peer to avoid NULL pointer dereference

Change-Id: I8f9219d4c6ffbfb207385b08bc704cc0f86a1e1b
CRs-Fixed: 962949
2016-04-13 21:51:25 -07:00
Govind Singh
a72a4e325d Release 5.1.0.4G
Rebase of 5.0.0.164 onto 5.1.0.3G

Change-Id: Ia080faea192c9da47bdf492535f2a42293a5ec17
CRs-Fixed: 688141
2016-04-13 21:51:25 -07:00
Manjunathappa Prakash
7b67e626c5 qcacld-3.0: During load/unload ignore pdev suspend ack timeout
qcacld-2.0 to qcacld-3.0 propagation

Ignore the ack timeout in case of load/unload, as FW is anyways going to
get reset. This handles the CDF_BUG assertion when FW crashed during
driver unload and wma_suspend_target fails to receive ACK for pdev
suspend.

Change-Id: I0883c5161c6db18cf7af2b0c0ca23573ecd985ba
CRs-Fixed: 911696
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
Kiran Kumar Lokere
40a9d8da1f qcacld-3.0: Remove the PS timer check in suspend req
FW can enter into suspend mode even if the BMPS is not enabled.
Hence the auto PS timer check is not required in suspend request.

Change-Id: Ic2b774cea10516ea0b23141922ba1e16aa33f395
CRs-Fixed: 974918
2016-04-13 21:51:24 -07:00
Krishna Kumaar Natarajan
0379b59f95 qcacld-3.0: Fix memory leak in dfs module
Fix memory leak in dfs module by removing check for the board id.

During dfs_attach dfs_hw_bd_id was zero, so memory was allocated for
pulses_ext_seg but in wma registration process correct board was
updated. In dfs_detach while freeing the memory we check for the
board id and we leaked the memory for pulses_ext_seg.

Change-Id: Ica9719cc4cd67e895fad850c59c753d39473f46d
CRs-Fixed: 974299
2016-04-13 21:51:24 -07:00
Krishna Kumaar Natarajan
f1d6deee43 qcacld-3.0: Fix the timeout handler to handle add bss timeout
Fix the timeout handler to handle add bss request timeout.

wma_hold_req_timer is not defined to handle WMA_ADD_BSS_REQ. When
WMA_ADD_BSS_REQ times out, no response is sent back to SME which
results in SME command queue stuck. This change set will enable
wma_hold_req_timer to handle add bss request timeout.

Change-Id: I55ec44acafc3af717458134340075b55bca7cddf
CRs-Fixed: 975400
2016-04-13 21:51:24 -07:00
Krishna Kumaar Natarajan
bc7e494559 qcacld-3.0: Fix error in populating oem data capabilities
Fix the error in populating oem data capabilities by fixing
incorrect conditional logic.

populate_oem_data_cap API returns zero on success and that
was misinterpreted as failure in the caller. Caller returns
without doing proper assignment.

Change-Id: I579106cb62c08622e8e5ab933747faf671a1d5cd
CRs-Fixed: 975352
2016-04-13 21:51:24 -07:00
Ryan Hsu
3a0f5230d6 qcacld-3.0: Update rate_info_flag for Kernel upgrade
Commit: b51f3be ("cfg80211: change bandwidth reporting to explicit field")

Above commit clean up the rate flag and bandwidth info and is merged since
Kernel 4.0.

Remove bandwidth info from rate_info flag, and use a separate bw field
instead.

Change-Id: I655ed919f1069cc04ed71ee1f3d457e228734d33
CRs-fixed: 966065
2016-04-13 21:51:24 -07:00
Ryan Hsu
6bf33b327c qcacld-3.0: Update cfg80211_sched_scan_request for Kernel upgrade
Commit: 3b06d27 ("cfg80211: Add multiple scan plans for scheduled scan")

Above commit introduces the scan_plan to include the interval parameters,
to support configuring multiple sched scan, and is merged since Kernel 4.4.

Change-Id: I9e232cfd6f82408fb2e21bef905b6e044951089d
CRs-fixed: 966054
2016-04-13 21:51:24 -07:00
Ryan Hsu
a335c16780 qcacld-3.0: Update cfg80211_disconnected interface for Kernel update
Commit: 80279fb ("cfg80211: properly send NL80211_ATTR_DISCONNECTED_BY_AP
in disconnect")

Above commit is merged in Kernel 4.2, it introduces the new parameter
to indicate if the disconnect event is generated locally.

Change-Id: I016df3b400f5f4b8447676882df79fab6915a8f5
CRs-fixed: 966069
2016-04-13 21:51:24 -07:00
Ryan Hsu
8ecb0fa07a qcacld-3.0: Clean up cfg80211 del_station for Kernel upgrade
Commit: 89c771e ("cfg80211: Convert del_station() callback to
use a param struct")
Commit: 9885686 ("cfg80211: Specify frame and reason code for
NL80211_CMD_DEL_STATION")

These two commits have been merged in Kernel 3.19.

Add a kernel version macro to support this.
And refactor the inclusion of CFG80211_DEL_STA_V2 by adding a
helper function to clean it up, that way we can keep the flag
only in wlan_hdd_cfg80211.h/c as this is the cfg80211 interface
related changes.

Change-Id: I811065b7fa1cf2aee68cfe63c5cf78c2270e5af7
CRs-fixed: 963651
2016-04-13 21:51:24 -07:00
Ryan Hsu
e7bc3a73f6 qcacld-3.0: Clean up enum station_info_flags for Kernel upgrade
Commit: 319090bf ("cfg80211: remove enum station_info_flags")

The station_info_flags is removed from cfg80211.h since Kernel 4.0.
Since they're duplicate information that's already in nl80211 attributes.

One more small change needed:
  * remove STATION_INFO_ASSOC_REQ_IES, nl80211 interface use the length
    (assoc_req_ies_len) to check the existence

Change-Id: I9ed324c097ac300c7233f439d71540176744e425
CRs-fixed: 961351
2016-04-13 21:51:24 -07:00
Naveen Rawat
5b34c95e16 qcacld-3.0: Do not request ROC if already on correct channel
This is qcacld-2.0 to qcacld-3.0 propagation

If cfg80211_mgmt_tx_params.offchan is set, driver need not send ROC
if device is already on correct channel. Check current home channel
of associated adapter and if it is same as target channel requested
skip ROC request and directly send frame over the air.

Change-Id: Ib13a885437a4349702e1706b3a466af262813f8a
CRs-Fixed: 921117
2016-04-13 21:51:24 -07:00
Naveen Rawat
2546093dca qcacld-3.0: Fix memory leak for lim preauth timers at driver unload
This is qcacld-2.0 to qcacld-3.0 propagation

Fix memory leak at driver unload by freeing memory for lim preauth
timers.

Change-Id: I7be177e6c475a8f8fdc4cc7d2744e34a4bf5dbf5
CRs-Fixed: 960617
2016-04-13 21:51:24 -07:00
Krunal Soni
99752a11b3 qcacld-3.0: Splits function lim_process_assoc_req_frame
Splits function lim_process_assoc_req_frame into smaller sub functions

Change-Id: Iaf21b0d157e910b740ac3288039465bac43507c4
CRs-Fixed: 824222
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
Naveen Rawat
6186ff9600 qcacld-3.0: Reindent lim_fill_assoc_ind_wapi_info
This patch fixes multi-level indentation for function
lim_fill_assoc_ind_wapi_info()

Change-Id: I438309425a82bb76c4c31d463b6cead7c661e27b
CRs-Fixed: 824222
2016-04-13 21:51:24 -07:00
Naveen Rawat
e6ddcaab1a qcacld-3.0: Proper mem allocation for lim, pre auth timers
This is qcacld-2.0 to qcacld-3.0 propagation.

Fix mem alloc for pre auth timer and add error handling for limInitMlm.

Currently number of preauth timer is taken as cfg param and memory is
allocated in bulk. In case the memory allocation fails, no error is
returned from limInitMlm, which causes undefined behavior. Also preauth
timers do not need contiguous memory allocation, so allocate an array of
pointers instead of single chunk for pre auth timers.

Change-Id: I92677aa9bb7970034630f4c6487fa9d196ccfb4c
CRs-Fixed: 955557
2016-04-13 21:51:24 -07:00
Sandeep Puligilla
fade9b7887 qcacld3.0: Remove condition to start BSS in HT20
SAP is always coming up in HT20 on 2.4Ghz band even though
hostapd configures HT40 mode.

Remove condition to start BSS only in HT20 for
2.4Ghz channels.

Change-Id: I1e4712ee49bbb079c81a2193e2130d2c846c865f
CRs-Fixed: 970396
2016-04-13 21:51:24 -07:00
Sandeep Puligilla
e390be5cda qcacld-3.0: Remove pending scans from HDD scan queue
Pending scan entries are not cleared during SSR
execution which is causing scan failure after SSR
recovery.

Remove all pendings scans from global scan queue and
send scan complete callback to NL with abort flag set.

Change-Id: Iebffcf56ace59a3ded4df8141caf639c55f0b278
CRs-Fixed: 966580
2016-04-13 21:51:24 -07:00
Jeff Johnson
1f61b61df4 qcacld-3.0: Use ENTER_DEV() in cfg80211 vendor commands
The ENTER_DEV macro was introduced to log both the function and device
name when a function is entered.  Update all cfg80211 vendor command
handlers to use this macro.

Change-Id: I3bb7112c6e5967577fa0f891e0b37ad7412bd2fc
CRs-Fixed: 975826
2016-04-13 21:51:24 -07:00
Jeff Johnson
6ee91eeeb3 qcacld-3.0: Use ENTER_DEV() in STA private WEXT ioctls
The ENTER_DEV macro was introduced to log both the function and device
name when a function is entered.  Update all STA-mode private
wireless extensions ioctl handlers to use this macro.

Change-Id: I5a69d2a92c82bcf7931350e12ee7610748f5e3ab
CRs-Fixed: 975414
2016-04-13 21:51:24 -07:00
Jeff Johnson
0205031ea9 qcacld-3.0: Use ENTER_DEV() in HostAP private WEXT ioctls
The ENTER_DEV macro was introduced to log both the function and device
name when a function is entered.  Update all HostAP-mode private
wireless extensions ioctl handlers to use this macro.

Change-Id: I746788be7dd9a0d5317b483908adde22d96413dc
CRs-Fixed: 975414
2016-04-13 21:51:23 -07:00
Jeff Johnson
651f9f2758 qcacld-3.0: Use ENTER_DEV() in HostAP standard WEXT ioctls
The ENTER_DEV macro was introduced to log both the function and device
name when a function is entered.  Update all HostAP-mode standard
wireless extensions ioctl handlers to use this macro.

Change-Id: I5cc2ee8c6fbde2778d4153a0dc3d5e509a3bb647
CRs-Fixed: 975414
2016-04-13 21:51:23 -07:00
Jeff Johnson
b25dcb1704 qcacld-3.0: Use ENTER_DEV() in STA standard WEXT ioctls
The ENTER_DEV macro was introduced to log both the function and device
name when a function is entered.  Update all STA-mode standard
wireless extensions ioctl handlers to use this macro.

Change-Id: Ia76fb5a471e4e3f03a1b4cd53c95227e6b7a815c
CRs-Fixed: 975414
2016-04-13 21:51:23 -07:00
Jeff Johnson
3c3994a8be qcacld-3.0: Use ENTER_DEV() in control plane netdev ops
The ENTER_DEV macro was introduced to log both the function and device
name when a function is entered.  Update all control plane netdev
methods to use this macro.

Change-Id: Id73214481616eb34cc40f125ea7fb756b3097dc7
CRs-Fixed: 938146
2016-04-13 21:51:23 -07:00
Jeff Johnson
a6177c31b6 qcacld-3.0: Convert wlan_hdd_trace.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_trace.c to use the unified set of APIs.

Change-Id: I41f40000031a6a7203bebfdd4fcf11cc0673a973
CRs-Fixed: 959683
2016-04-13 21:51:23 -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
Chandrasekaran, Manishekar
ce2172e9ed qcacld-3.0: Fix reason code used during Nss update request
Fix the reason code used during Nss update request. If
there is MCC upgrade or DBS downgrade, the hw mode change
request internally send the Nss update request. But, the
current implementation uses the same fixed reason code
during Nss update request and due to this on receiving the
hw mode change response, the expected callback function is
not getting invoked. Fix this by passing the right reason
code during Nss update request.

CRs-Fixed: 978663
Change-Id: I706cb9a86d66d8601ec87f560459604e562f6037
2016-04-13 21:51:23 -07:00
Chandrasekaran, Manishekar
2859de43af qcacld-3.0: Sanitize the session id before issuing scan
Ensure that the session id is sanitized before issuing
the scan request. During the transient stages of a new
interface when no session exists for that interface and
if a scan is received for that particular interface, it
would result in scan with invalid vdev id. Validate the
session id to avoid the same.

Change-Id: Ib22262493a141491d1d86ae682b14113d303685d
CRs-Fixed: 973773
2016-04-13 21:51:23 -07:00
Chandrasekaran, Manishekar
41ab6b0036 qcacld-3.0: Fix incorrect value of Rx Nss in operating mode field
Fix the incorrect value of receive spatial streams added for use
in operating mode field. The Operating Mode field is present in
the Operating Mode Notification frame and Operating Mode
Notification element. These are used to notify STAs that the
transmitting STA is changing its operating channel width, the
maximum number of spatial streams it can receive, or both.

As per the 802.11ac spec:
- If the Rx NSS Type subfield is 0, indicates the maximum number
of spatial streams that the STA can receive.
- If the Rx NSS Type subfield is 1, indicates the maximum number of
spatial streams that the STA can receive as a beamformee in an SU
PPDU using a beamforming steering matrix derived from a VHT
Compressed Beamforming report with Feedback Type subfield
indicating MU in the corresponding VHT Compressed Beamforming
frame sent by the STA.

Set to 0 for Nss = 1
Set to 1 for Nss = 2
...
Set to 7 for Nss = 8

Change-Id: I60cb7259df3986c0356666a357b8a4ef575b7ca4
CRs-Fixed: 973411
2016-04-13 21:51:23 -07:00
Krunal Soni
ee57247afe qcacld-3.0: Fix follow-up comments for csa changes in STA/CLI case
Move cdf/cds module related operation from
lim_handle_hw_mode_change_on_csa to cdf_handle_hw_mode_change_on_csa
to keep majority of cdf/cds operation in one place.

Change-Id: I5af9ee941f8430be49cf2e467f9eac77dc09dde4
CRs-Fixed: 972184
2016-04-13 21:51:23 -07:00
Chandrasekaran, Manishekar
5c19dc5f8e qcacld-3.0: Set hw mode during channel switch in STA/P2P-CLI case
Set the hw mode, if needed, during channel switch in STA and
P2P-CLI scenario. The STA/P2P-CLI on receiving the channel change
event may need to do a hw mode change to get the best out of the
hw capabilities.

e.g.1, In a STA+SAP concurrency, the STA and SAP are doing SCC on
channel 6. When the STA interface receives a channel event for
channel 36, it is better the driver moves to a DBS scenario.

e.g.2, In a STA+SAP concurrency, the STA is on channel 6 and the
SAP is on channel 36. When the STA interface receives a channel
event for channel 36, it is better the driver moves from a DBS
scenario to a SCC scenario.

For MCC upgrade, the following steps are taken
1. Opportunistic timer is started
2. vdev restart is initiated on the new channel
3. PM will check if MCC upgrade can be done on timer expiry

For DBS downgrade, the following steps are taken
1. PM will initiate HW mode change to DBS right away
2. vdev restart is initiated on the new channel

Change-Id: I202842bf28c3117e8cc91954cdfd3b39a0062f4e
CRs-Fixed: 972184
2016-04-13 21:51:23 -07:00
Satish Singh
107e6a36c1 Release 5.1.0.3G
Rebase of 5.0.0.163 onto 5.1.0.2G

Change-Id: If244ee2a2bc26a8b4387c89d7bce965c00497630
CRs-Fixed: 688141
2016-04-13 21:51:23 -07:00
Houston Hoffman
c7c72a8cc9 qcacld-3.0: Prevent runtime suspend when recovery initiated
qcacld-2.0 to qcacld-3.0 propagation

When self recovery initiated, CRASH_INJECT command is sent to
firmware. If firmware crash doesn't reach the host in time then
RuntimePM may kick in and try to suspend the PCIe link. At this
time, firmware might already been crashed just that host missed
the interrupt. Add the logic to prevent the Runtime suspend when
initiating the recovery so that host driver doesn't attempt the
suspend which may not go through and cause stability issues.

Change-Id: Ie8d5fc6aa08e4864fa5f03119c25037f5aeb5cec
CRs-fixed: 924538
2016-04-13 21:51:23 -07:00
Krishna Kumaar Natarajan
164e6b0c7b qcacld-3.0: Merge extended capability IE in beacon/probe resp template
qcacld-2.0 to qcacld-3.0 propagation.

Merge extended capability coming from hostapd and remove it from
extra IE before sending beacon/probe response template to firmware.

Change-Id: Iae50bbf1f70fd280f3366a89e58ad8f2c729720c
CRs-Fixed: 943078
2016-04-13 21:51:23 -07:00
Krishna Kumaar Natarajan
70133f0f37 qcacld-3.0: Fix double free of delete sta params
Fix double free of delete sta params by adding appropriate
check in wma_delete_sta.

If the synchronization feature is enabled, memory will be freed
in the wma_peer_delete_handler else memory will be free in
wma_delete_sta.

Change-Id: I40e664f10766faa8a20e9089f1c6b95d490b8658
CRs-Fixed: 971280
2016-04-13 21:51:23 -07:00
Krishna Kumaar Natarajan
608291e13b qcacld-3.0: Pass correct data length in oem data response msg
Add data length information in oem data response messages. Currently
maximum response size is passed to upper layers.

Change-Id: Id74d44e03755af9a5402e5409ee5f6b5e7abbb7c
CRs-Fixed: 942260
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
Deepak Dhamdhere
4fc968d17f qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R option from WMA
Conditional compilation option WLAN_FEATURE_VOWIFI_11R is always
defined in cld3.0 and underlying code is permanent in the driver.
Hence, remove #ifdef WLAN_FEATURE_VOWIFI_11R check from WMA source
code.
Remove -DWLAN_FEATURE_VOWIFI_11R compilation flag from Kbuild.

CRs-Fixed: 960105
Change-Id: Idbcea2faf9aa31ef62920ef322d6de61378198a6
2016-04-13 21:51:23 -07:00
Rajeev Kumar
b08f39cc4c qcacld-3.0: Add error log in wow periodic pattern handler
WoW periodic transmit pattern handler has no error log if
given input format is wrong. Add error log message to indicate
input is wrong and suggest the correct input format.

Change-Id: Ie3a37c7e1a9b9fd8a974c68a5cc7456b1b622168
CRs-Fixed: 973006
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
Varun Reddy Yeturu
28925b4c24 qcacld-3.0: LFR3.0: Fill Self MAC Address properly
The self MAC address should be filled from the previous
session in PE and has to be passed to WMA which is used
while creating the new PEER.

CRs-Fixed: 973463
Change-Id: If7f0d4d8400fd8dfcafb08e3795e434621b67a6d
2016-04-13 21:51:22 -07:00
Varun Reddy Yeturu
9044489d18 qcacld-3.0: Improve default logging for LFR3
Log the improtant messages with respect to roam synch propagation
by default so that they appear in the kernel logs and give an
hint of roaming. Also ensure not to log too much.

CRs-Fixed: 972498
Change-Id: Ia0bd7c9960a29275f872a9ec18173b8c5a08539a
2016-04-13 21:51:22 -07:00
Varun Reddy Yeturu
30bc42cbe8 qcacld-3.0: LFR2.0 Ignore STA kickout when roaming is in progress
If roaming is in progress, then there is a good chance to connect
to a better AP very soon, so ignore the sta kickout event that is
received from the firmware.

CRs-Fixed: 947880
Change-Id: I9197ed09a40d9acb706d1bfa535a4eb292a1af74
2016-04-13 21:51:22 -07:00
Varun Reddy Yeturu
16e8f0114e qcacld-3.0: Do not send replay counter for CCKM
Do not include replay counter attribute when roaming
is done for CCKM authentication type. For 11R and CCKM
roaming, the re-association frame carries additional
IE's which help cut down the Key exchange post
association. Hence there would be no EAPOL exchange
and hence it is not needed to include the replay
counter attribute to the supplicant after roaming.

CRs-Fixed: 972486
Change-Id: Ib861bdc91e949605788a19df4a706e6544dd4c73
2016-04-13 21:51:22 -07:00
Varun Reddy Yeturu
d521600a10 qcacld-3.0: Change channel bonding mode after roaming
The CB mode could get changed after roaming since the non-AP STA
can roam to an AP which has a different channel bonding mode.
So, derive the CB mode from the IE's and accordingly set in the
connected profile.

CRs-Fixed: 972479
Change-Id: I01daa88d69397fb0e88615656903c43ed623ed38
2016-04-13 21:51:22 -07:00
Krunal Soni
8c37e32104 qcacld-3.0: Fix to make common change intf api for ibss/sta/p2pcli
Current code is using seperate change interface for IBSS and
STA/P2PCLI.

Fix the API such that IBSS/STA/P2PCLI all can use same API.

Change-Id: I7a1d9fa3ef42091fcb7f71d95b604e3dceb8da50
CRs-Fixed: 973626
2016-04-13 21:51:22 -07:00
Krunal Soni
9be5eaa438 qcacld-3.0: Remove wma_recreate_ibss_vdev_and_bss_peer logic
wma_recreate_ibss_vdev_and_bss_peer is obsoleted API and no longer
needed. Remove this API as part of clean-up efforts.

Change-Id: I277e775b7f44ca5aa05129d45e80c98fe1a53753
CRs-Fixed: 973626
2016-04-13 21:51:22 -07:00
Krunal Soni
f988222e04 qcacld-3.0: Fix memory leak while cleaning up scan filter
Memory leak observed while cleaning up scan filter in SME module.

Change-Id: Ic4bbf622f1950d1ed6323a45504e4ad57fbf3b09
CRs-Fixed: 973626
2016-04-13 21:51:22 -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
Deepak Dhamdhere
262d95a523 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R option from MAC
Conditional compilation option WLAN_FEATURE_VOWIFI_11R is always
defined in cld3.0 and underlying code is permanent in the driver.
Hence, remove #ifdef WLAN_FEATURE_VOWIFI_11R check from MAC source
code.

CRs-Fixed: 960105
Change-Id: Iae95c169c7e78310d18cbf9ae097501d4c66230c
2016-04-13 21:51:22 -07:00
Satish Singh
e27e2aa2c0 Release 5.1.0.2G
Rebase of 5.0.0.162 onto 5.1.0.1G

Change-Id: Ice0a1557e23a66b94d278879337ea10769b894d1
CRs-Fixed: 688141
2016-04-13 21:51:22 -07:00
Tushnim Bhattacharyya
3e2e935a03 qcacld-3.0: Fix typo on gEnableM2MLimitation config
Fix a typo on default values of gEnableM2MLimitation config parameter

Change-Id: I730dd10118777359fe644d5c5c9f1671b5d185bb
CRs-fixed: 922181
2016-04-13 21:51:22 -07:00
Naveen Rawat
ada5faca16 qcacld-3.0: Fix names for lim_process_assoc_req_frame.c
This patch fixes:
1) Fixes variable names as per linux kernel coding guidelines.
2) Removes PELOG definitions.
3) Fixes few of long debug prints.
4) Fixes function headers
for file lim_process_assoc_req_frame.c. This patch is then used as
base for reindentation of function lim_process_assoc_req_frame()

Change-Id: I5d4a39356b4555789ca9119f54a54766594b26c3
CRs-Fixed: 824222
2016-04-13 21:51:22 -07:00
Chandrasekaran, Manishekar
abc98d1483 qcacld-3.0: Log the channel switch IEs to debug any related issue
Log the channel switch and extended channel switch information
element along with the wide channel bandwidth sub element to
debug any channel switch related issues. Since the IEs are
populated only during channel switch, this logging of the IEs
from the beacon should not have any impact in performance.

Change-Id: I7a7e0dcf45f39fb6e4d049dde0b02289bde1d4f7
CRs-Fixed: 972007
2016-04-13 17:58:16 -07:00
Chandrasekaran, Manishekar
5738eb0fe8 qcacld-3.0: Fix extraction of invalid PE session entry during Nss update
Ensure that the PE session is extracted using the SME session id during
Nss update request. The Nss update request carries the SME session id
and not the PE session id. Fixing the implementation by invoking
pe_find_session_by_sme_session_id() to extract the PE session entry
using the SME session id, instead of pe_find_session_by_session_id()
which uses the PE session id.

Change-Id: If388fa917635c7a536d21fcfb664b081babd5c2a
CRs-Fixed: 970802
2016-04-13 17:58:16 -07:00
Chandrasekaran, Manishekar
ce7ab08669 qcacld-3.0: Update the policy manager table during channel switch
Update the policy manager table during channel switch in case of
STA/CLI/SAP/P2P-GO mode. The vdev (re)start response carries the
updated vdev parameters such as the new MAC to which the vdev
connection moved to etc.

Change-Id: I55a56acdba8234e09d1439698b2b13751d4e9b2d
CRs-Fixed: 970794
2016-04-13 17:58:16 -07:00
Chandrasekaran, Manishekar
8104abd5a9 qcacld-3.0: Restrict channel switch only to the intended interface
Ensure that application triggered channel switch impacts only the
interface of interest. eSAP_DFS_CHNL_SWITCH_ANNOUNCEMENT_START
gets used for both radar detected channel switch and application
triggered channel switch using ioctl or nl commands. On radar
detected channel switch, if radar was detected by one of the SAP
interface, all SAP interfaces in the driver would vacate the
channel. In application triggered channel switch, only the
interface of interest should vacate the channel.

Change-Id: I8eee8bde89ae44eec31c1bd35a99a78e517b4a5e
CRs-Fixed: 969323
2016-04-13 17:58:16 -07:00
Chandrasekaran, Manishekar
e716c40025 qcacld-3.0: Set hw mode during channel switch in SAP/P2P-GO case
Set the hw mode, if needed, during channel switch in SAP and
P2P-GO scenario.

Change-Id: Icef31277465b3a298695ccefb856d9cad8a16108
CRs-Fixed: 969307
2016-04-13 17:58:16 -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
Houston Hoffman
c45db899eb qcacld-3.0: Prevent runtime suspend untill clean-up completes
qcacld-2.0 to qcacld-3.0 propagation

When runtime suspend fails because of wma_suspend_req() not
completing in time, PM runtime workqueue posts resume request to
MC thread to clean-up. If MC thread is busy or slow in processing
resume request and after the timeout Runtime PM framework posts
another suspend request then there may be race condition between
MC thread processing resume request (Or even suspend request) and
Runtime PM workqueue posting subsequent suspend request.
Synchronize subsequent suspend request by not allowing the
runtime suspend till resume requests completes in MC thread
context.

Change-Id: Ie9aaf72fbced41f8d23640b9032a3c2236dc6826
CRs-fixed: 921373
2016-04-13 17:58:16 -07:00
Rajeev Kumar
aea89633d6 qcacld-3.0: Set wow enable parameter in WMA properly
WoW is getting enabled even in disconnected state when
PNO, EXT_SCAN or LPASS is not enabled. Enable wow only
when one of interface is in beaconing mode, connected
state or PNO/EXT_SCAN/LPASS is enabled.

Change-Id: I30226700844c9b4adbe3a0659a270b99dc6e66f8
CRs-Fixed: 971738
2016-04-13 17:58:16 -07:00
Satish Singh
88fdf825d4 cld-3.0: Incremental CLD3.1 Release 5.1.0.1H
Incremental CLD3.1 Release on top of 5.1.0.1G with
data path fix.

Change-Id: I3838483c0e1c7e3b698433fa74563e535e7cd309
CRs-Fixed: 688141
2016-04-12 14:04:02 -07:00
Dhanashri Atre
50141c53a3 qcacld-3.0: Register vdev before registering peer
Ensure that the per vdev rx callback is registered before
registering the peer. The peer registration function may
try to flush the rx frames so we need to ensure that the rx
callback is registered before it is called.

Change-Id: Ibd1d73d89105bbc3f9d29fa2c64e9f515d4b0da5
CRs-Fixed: 1000834
2016-04-07 16:28:28 -07:00
Vishwajith Upendra
e068982a92 cld-3.0: Incremental CLD3.1 Release 5.1.0.1G
Incremental CLD3.1 Release 5.1.0.1G after relocating
the driver development to new branch and path.

Change-Id: Ib75f16fb56ab6a9306f09377bb3df2094d0fc516
CRs-Fixed: 688141
2016-04-04 09:59:24 -07:00
Vishwajith Upendra
59e44b029c cld-3.0: Incremental CLD3.1 Release 5.1.0.1F
Incremental CLD3.1 Release 5.1.0.1F after relocating
the driver development to new branch and path.

Change-Id: Ic34b6e6f810f1ab32eaefe0b624b4183b86a43cf
CRs-Fixed: 688141
2016-04-01 17:01:08 -07:00
Manjunathappa Prakash
2593a640d4 qcacld-3.0: Replace cdf references with qdf
Replace cdf references with qdf.

Change-Id: Ifba0c1045af57e285c87017e62ae240c2faa28ff
CRs-Fixed: 994638
2016-04-01 16:19:51 -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
Manjunathappa Prakash
10d357a17c qcacld-3.0: remove references to datapath structures from other modules
Core datapath structures should be opaque to non-datapath modules,
remove the references to them.

Change-Id: I3618253566a971c27f16b14923d1ff8028718918
CRs-Fixed: 994638
2016-04-01 16:19:36 -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
Dhanashri Atre
12a0839cd6 qcacld-3.0: Data path changes to use converged APIs (Part 1)
Change the data path and external modules to use the new
converged common data path APIs.

Change-Id: Ifb48178efd012b6ad9ea6f6d5230d0a809922b1c
CRs-Fixed: 994638
2016-04-01 15:46:10 -07:00
Yue Ma
1e11d79646 qcacld-3.0: Remove CDS related functions in HTC
Update runtime PM APIs and HTC connection mode parameter
accordingly.

Change-Id: I2f54933b90aaed233042c113d246fae4726f5707
CRs-fixed: 982024
2016-04-01 15:24:33 -07:00
Vishwajith Upendra
6785797b91 cld-3.0: Incremental CLD3.1 Release 5.1.0.1E
Incremental CLD3.1 Release 5.1.0.1E after relocating
the driver development to new branch and path.

Change-Id: I49934210bb4c92f7cf9d700845812e49615af6da
CRs-Fixed: 688141
2016-03-31 23:22:33 -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
Rajeev Kumar
3d4b1ef5eb qcacld-3.0: 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:47:58 -07:00
Vishwajith Upendra
9e6f1dd447 cld-3.0: Incremental CLD3.1 Release 5.1.0.1D
Incremental CLD3.1 Release 5.1.0.1D after relocating
the driver development to new branch and path.

Change-Id: Ifc161a74d121e11e9e21c3f2006889de8a5c71b8
CRs-Fixed: 688141
2016-03-31 13:56:22 -07:00
Komal Seelam
1aac198ff8 qcacld-3.0: Rename hif_callbacks and fix typos
Rename hif_callbacks to hif_driver_state_callbacks and remove
function pointer for monotonic API and fix some minor typos.

Change-Id: Iae2326e26b58a00e4cc197104b31aca36d569a8e
CRs-Fixed: 967765
2016-03-31 13:30:50 -07:00
Vishwajith Upendra
f2cffceb69 cld-3.0: Incremental CLD3.1 Release 5.1.0.1C
Incremental CLD3.1 Release 5.1.0.1C after relocating
the driver development to new branch and path.

Change-Id: Icef0cc257781d8baf5f9684ffc08d6808a9bf4d4
CRs-Fixed: 688141
2016-03-30 12:01:39 -07:00
Siddarth Poddar
17dc4713ff qcacld-3.0: Refactor formation of vdev commands
Move tlv formation of wmi vdev start, vdev restart related commands
to common wmi layer from wma layer.

Change-Id: Ic01c9720fd73cb47ea24313c947d6c2a03dbaea4
CRs-Fixed: 987362
2016-03-30 00:35:29 -07:00
Himanshu Agarwal
009f1573e6 qcacld-3.0: Refactor formation of wmi mgmt. commands
Move tlv formation of wmi mgmt. commands to common wmi
layer from wma layer.

Change-Id: Idfc5c3e2aacb297fb3fb86f4d1895db1fc3905b1
CRs-Fixed: 987362
2016-03-30 00:35:25 -07:00
Himanshu Agarwal
bf6a12be5e qcacld-3.0: Refactor formation of roam scan commands
Move tlv formation of wmi roam scan commands to common wmi
layer from wma layer.

Change-Id: Iee92f71c6ae7470449f514f60a804a9cf021ccf0
CRs-Fixed: 987362
2016-03-30 00:35:20 -07:00
Himanshu Agarwal
4419541ce7 qcacld-3.0: Refactor formation of wmi feature commands
Move tlv formation of wmi feature related commands to common wmi
layer from wma layer.

Change-Id: Ice267f5fc2b057c0c5e288888c57886a1c61006e
CRs-Fixed: 987362
2016-03-30 00:35:12 -07:00
Himanshu Agarwal
17dea6eb82 qcacld-3.0: Refactor formation of wmi data commands
Move tlv formation of wmi datapath related commands to common wmi
layer from wma layer.

Change-Id: I5f7bf9eb578d0777e131b2b659e64d9365f4faec
CRs-Fixed: 987362
2016-03-29 21:23:02 -07:00
Govind Singh
b30d4c0c71 qcacld-3.0: Refactor formation of wmi peer assoc command
Move tlv formation of wmi peer assoc command to common wmi layer
from wma layer.

CRs-Fixed: 976998
Change-Id: I0562862a7acc16b88bbd295b998397f1acf7973a
2016-03-29 21:23:01 -07:00
Govind Singh
f25a0f1553 qcacld-3.0: Refactor formation of wmi init command
Move tlv formation of wmi init and wmi main commands to common wmi
layer from wma layer. Move diag events logs list and saved wmi
init command to wmi handle from of wma handle.

Change-Id: Ie58e10408ea52952021c22f63dd9f3c499e63e74
CRs-Fixed: 976998
2016-03-29 21:22:58 -07:00
Govind Singh
64b5e11e80 qcacld-3.0: Refactor formation of wmi scan roaming commands
Move tlv formation of wmi scan roaming commands to common wmi
layer from wma layer.

Change-Id: I6786ce42d99d6a3f29561c24dea7e3018fb0f3e9
CRs-Fixed: 976998
2016-03-29 21:22:36 -07:00
Govind Singh
4863da4d7e qcacld-3.0: Refactor formation of ll stats wmi commands
Move tlv formation of wmi link layer stats commands to common wmi
layer from wma layer.

Change-Id: I58831f16802dc3ca307145654196b7c9238a5e8c
CRs-Fixed: 976998
2016-03-29 21:22:34 -07:00
Govind Singh
aa64c24a2a qcacld-3.0: Refactor formation of wmi feature commands
Move tlv formation of wmi feature based commands to common wmi
layer from wma layer.

Change-Id: I2cda92c377faf16b09412f0dc746e537343242ff
CRs-Fixed: 976998
2016-03-29 21:22:32 -07:00
Govind Singh
f076e7292e qcacld-3.0: Refactor wmi ocb command formation
Move tlv formation of wmi ocb/dsrc commands to common wmi
layer from wma layer.

Change-Id: I16b6028b2c4448c8d3161676c642c0fd29e9a356
CRs-Fixed: 976998
2016-03-29 21:22:29 -07:00
Govind Singh
09c3b495b4 qcacld-3.0: Refactor wmi power and management commands
Move tlv formation of wmi power commands, management over wmi commands
to common wmi layer from wma layer.

Change-Id: If6be3f786edbad931e2f3af05b45103456b8229b
CRs-Fixed: 976998
2016-03-29 21:21:56 -07:00
Govind Singh
bc64c9e9eb qcacld-3.0: Refactor update channel list command
Move tlv formation of update channel list wmi command to common
wmi layer from wma layer.

Change-Id: I6f368d749a947e284d59fc394a8ecf657d916739
CRs-Fixed: 976998
2016-03-29 21:21:54 -07:00
Govind Singh
498bf2a1ba qcacld-3.0: Refactor scan related wmi command
Move tlv formation of start scan, stop scan wmi command to common
wmi layer from wma layer.

Change-Id: Ieff5c114e8ca6468a6ba74f57c08eaf4ebabd975
CRs-Fixed: 976998
2016-03-29 21:21:51 -07:00
Govind Singh
61ad26253c qcacld-3.0: Refactor beacon template wmi command
Move tlv formation of beacon template command to common
wmi layer from wma layer.

Change-Id: Ibca8441b4a8c5bed7aeedd1c6421415711b662a0
CRs-Fixed: 976998
2016-03-29 21:21:48 -07:00
Prakash Dhavali
1c6599c910 qcacld-3.0: Incremental CLD3.1 Release 5.1.0.1B
Incremental CLD3.1 Release 5.1.0.1B after relocating
the driver development to new branch and path.

Change-Id: Ibd2f045e31475458225ec43c38186074c640c8b1
CRs-Fixed: 688141
2016-03-29 14:03:08 -07:00
Anurag Chouhan
ffaf220142 qcacld-3.0: Add CDS specific MC timer
Add MC timer API's in CDS.

Change-Id: Idbb10f7d2a00ad8e4620b07275c610d21f699999
CRs-Fixed: 981188
2016-03-28 03:48:24 -07:00
Prakash Dhavali
897312e214 qcacld-3.0: Incremental CLD3.1 Release 5.1.0.1A
qcacld-3.0: Incremental CLD3.1 Release 5.1.0.1A

Change-Id: Icf1d1e397a587a0d56c74e9aee97bea5f77f148a
2016-03-28 03:48:20 -07:00
Govind Singh
d76a5b05cb qcacld-3.0: Adapt wma layer with common wmi layer
Modify wmi layer API calls with respect to new common wmi layer.
Register all wmi service events using standard wmi event register API.
Remove TLV formation of common API from wma layer.
Pass rx scheduling context of wmi events during event registration.

CRs-Fixed: 976998
Change-Id: Id490db96c28778ec371dd633d43dfa002c08c16a
2016-03-28 15:54:44 +05:30
Krishna Kumaar Natarajan
3c443556a9 qcacld-3.0: Rename enumeration associated with scan types
qcacld-2.0 to qcacld-3.0 propagation.

Rename enumeration associated with scan types.

WMI interface files shared between host and Firmware have
the same macro defined resulting in compilaiton issue. Hence
renaming these enumeration with LIM prefix.

Change-Id: Ia196b8e4bb582490a9f957b8cdf1e3a12c4fbde0
CRs-Fixed: 981355
2016-03-25 18:04:30 +05:30
Govind Singh
869c9871d0 qcacld-3.0: CL 1462943 update fw common interface files
Replace mac_id with pdev_id, add vdev_id to peer commands/events
and change reserved0 to pdev_id in PDEV commands

Change-Id: Id112e0eb6262739a1fd1767150d29cc5bd59955b
CRs-Fixed: 865207
2016-03-25 17:42:00 +05:30
Govind Singh
941bd5e5be qcacld-3.0: CL 1453185 update fw common interface files
NAN data WMI changes.

Change-Id: I9292af24d92c9e522b7889a02194e54b2f113917
CRs-Fixed: 865207
2016-03-25 17:42:00 +05:30
Govind Singh
45ef44a926 qcacld-3.0: CL 1448844 update fw common interface files
WMI handle changes to incorporate ini changes to enable/disable collection of MIB stats
WMI interface change for scan suspend

Change-Id: Icdcca16827af85e6b694dcd7ad0be2b4d0d8ac45
CRs-fixed: 865207
2016-03-25 17:41:59 +05:30
Govind Singh
8618029254 qcacld-3.0: CL 1446198 update fw common interface files
Added One tuple control flag bit WMI_FLAGS_IS_IPV6_ANYCAST and
added one parameter 'num_ns_ext_tuples_cfg' in wmi_resource_config
RTT definitions updated
Add wmi interface for MBO(MultiBand Operation) feature.

Change-Id: If698fc104e9ac39d6b58c88a542a30c2ba59d52b
CRs-fixed: 865207
2016-03-25 17:41:59 +05:30
Govind Singh
c7d519439b qcacld-3.0: CL 1444210 update fw common interface files
Merge WIN's wlanfw_cmn.2.0 WMI message defs

Change-Id: I6489713538ac945386bc9b089a4a014d41281382
CRs-fixed: 865207
2016-03-25 17:41:58 +05:30
Prakash Dhavali
5e99fff740 qcacld-3.0: First CLD3.1 Release 5.1.0.1
qcacld-3.0: First CLD3.1 Release 5.1.0.1
CRs-Fixed: 688141

Change-Id: Ib194b131c1caf4c7937fdcb0dcaed53bebea34ee
2016-03-24 11:58:54 -07:00
Houston Hoffman
e3846e4b48 qcacld-3.0: Remove ifdef HIF_PCI from ol_fw
The target defs need to be protected by a chip specific flag if
at all.  A bus flag is too generic.

Change-Id: I631b9686b69dcba0a47bf10bccf7f94ac3a4bd9c
CRs-Fixed: 986480
2016-03-24 11:58:52 -07:00
Houston Hoffman
f3c2e1d2df qcacld-3.0: Controll target sleep in hif
Reduce the api footprint of hif and make hif responsible for controlling
its own timer as part of suspend resume.

Change-Id: Ifdcc95f65cd56e5987d961c01c4e35a9a93787f7
CRs-Fixed: 986480
2016-03-24 11:58:46 -07:00
Houston Hoffman
ee9990f139 qcacld-3.0: Remove htc_set_target_to_sleep
Hif will take care of allowing target sleep after driver load.

Change-Id: I3def052f4c14d843e1f8eb8f261f11306958c0a7
CRs-Fixed: 986480
2016-03-24 11:58:44 -07:00
Houston Hoffman
c2cd5d472e qcacld-3.0: Remove power_gating from upper layers
These are pci specific power management features.  These should
be consolidated instead of littering bus agnostic code.

Change-Id: I366f1d14ab04368d77a144bebaeb038c1469abed
CRs-Fixed: 986480
2016-03-24 11:58:38 -07:00
Houston Hoffman
9a547dc0bc qcacld-3.0: Skip bmi and ramdump at runtime
Need to support SNOC and PCI dynamically.
Core BSP code is responsible for SNOC firmware
loading and crash dumps.

Change-Id: Ia16076809f2b74be6f32ad5015b79b1fe2c13ca3
CRs-Fixed: 986480
2016-03-24 11:58:36 -07:00
Houston Hoffman
ab091116bf qcacld-3.0: Let compiler resolve hif_device_id type
hif_device_id type is a opaque pointer that abstracts out
some of the pci data structures.

Change-Id: Ib472490b9de26cae291f86fd0e3c05af40e6951e
CRs-Fixed: 986480
2016-03-24 11:58:33 -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
600c3a00be qcacld-3.0: Add QDF mem API's
Replace CDF mem API's with QDF mem API's

Change-Id: Icf247b4dc5b26f4b960dcb98e323b096c1d6076c
CRs-Fixed: 981188
2016-03-24 11:58:16 -07:00
Anurag Chouhan
df2b26883d qcacld-3.0: Fix compilation issues after rebase
Remove the compilation issues for references to cdf after rebase

Change-Id: Ia39c5c72fe5c95f9a91d5f6967ea60904b46f756
CRs-Fixed: 981188
2016-03-24 11:58:14 -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
2ed1fced92 qcacld-3.0: Add QDF osdep changes
Replace CDF osdep with QDF osdep

Change-Id: Id2ba89c75df1fb8c4973a87219785353c3c2ff3c
CRs-Fixed: 981188
2016-03-24 11:58:05 -07:00
Anurag Chouhan
c554842327 qcacld-3.0: Add QDF utils
Replace CDF utils with QDF utils.

Change-Id: Ib6b3ad56b3268b1be438f3204f91d995f8bb3900
CRs-Fixed: 981188
2016-03-24 11:58:03 -07:00
Anurag Chouhan
c73697b4da qcacld-3.0: Add QDF net types
Replace CDF net types with QDF net types API's.

Change-Id: I0599a2f0cfe7c9a9b7fe589f7619f88fd5a72518
CRs-Fixed: 981188
2016-03-24 11:58:00 -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
754fbd8d95 qcacld-3.0: Add QDF timer API's
Replace CDF timer API's with QDF timer API's

Change-Id: I43aa23676ed893a7309135dec6a8b897b113f00e
CRs-Fixed: 981188
2016-03-24 11:57:52 -07:00
Anurag Chouhan
512c7d5fca qcacld-3.0: Add QDF threads API's
Replace CDF threads API's with QDF threads API's

Change-Id: Ic20e6734f85b37ed11580ff3ed7e1a6de1356afb
CRs-Fixed: 981188
2016-03-24 11:57:49 -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
8e0ccd330b qcacld-3.0: Add QDF atomic API's
Replace CDF atomic API's with QDF atomic API's.

Change-Id: I18b4ab3487357d150bdfb96f9a078e1b5abb3156
CRs-Fixed: 981188
2016-03-24 11:57:44 -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
Anurag Chouhan
ffb2154eff qcacld-3.0: Add QDF list API's
Replace CDF list API's with QDF list API's

Change-Id: Id7a3ec93fe6821450ef70e50649af8a4de285eeb
CRs-Fixed: 981188
2016-03-24 11:57:37 -07:00
Anurag Chouhan
ce0dc99ca8 qcacld-3.0: Add qdf event API's
Replace CDF event API's with QDF event API's

Change-Id: I1d75c9ca01cc6bd7cac42f1ae4c1dd78f37b3d26
CRs-Fixed: 981188
2016-03-24 11:57:34 -07:00
Houston Hoffman
43d47fa659 qcacld-3.0: change skb->cb to support 64 bit paddrs(1/2)
Praprogation from qcacld-3.0 to qcacld-3.1.

Change skb->sb such that it is overlayed between tx
and rx and each one of then still fits 48 bytes.
Note that this will break IPA and it will be fixed
subsequently by another change.

Change-Id: I96168aee99dbdbecbdbd4259597e179b02d29f5d
CRs-Fixed: 881090
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
2016-03-24 11:56:31 -07:00
Dhanashri Atre
83d373d681 qcacld-3.0: TSO (TCP Segmentation Offload) Clean-up
propagation from qcacld-3.0 to qcacld-3.1

Changes for TSO clean-up to address:
- conditional compile within function bodies
- change function return value
- convert macro to static inline function, etc
- Enable TSO for SAP mode

Change-Id: I29e764f64f7866d4c016ac31cd701c54526cc75d
CRs-Fixed: 881090
2016-03-23 13:45:10 -07:00
Komal Seelam
ad5a90d420 qcacld-3.0: Remove CDS instances in HIF
Remove CDS instances in HIF for WIN/MCL convergence.
a. Update con_mode param in HIF
b. Have callbacks to CDS from HIF to update CDS global context

Change-Id: Ie9a65b5684f38bb2bf4feac615b97415e2bc7ed9
CRs-Fixed: 967765
2016-03-23 13:45:10 -07:00
Komal Seelam
3d20286183 qcacld-3.0: Make hif_opaque_softc as global HIF Context
Rename ol_softc to hif_opaque_softc.

Change-Id: I48f6e4b6eb04ccfa2050cca052e1ad67a66e3479
CRs-Fixed: 967765
2016-03-23 13:45:10 -07:00
Komal Seelam
ec702b0afb qcacld-3.0: Create ini config structures for each modules
Update ini configuration parameters for each modules in the driver

Change-Id: I00b1f2a9690060a15854ad84d819e9b883e95c41
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
9ef9458c04 qcacld-3.0: Create BMI info structures for BMI Phase
BMI info is needed during BMI Phase. The structure holds
the physical address and virtual address of Command and response
of BMI buffer.

Change-Id: I97e8dad2ccba1352677cdf37e2f62204128d4b06
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
42c16a1606 qcacld-3.0: Move Targetdef from ol_softc to ol_context
Targetdef is needed during BMI phase of PLL switching.
Move this member to ol_context.

Change-Id: Ibd7d9a916d9e61c1f7c13d4e18d018add94a6fa3
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
0863349dd3 qcacld-3.0: Make Ramdump Work as member of ol_context
Initialize Ramdump Work as member of ol_context instead of
global work. Pass ol_context as private data to host to target
module.

Change-Id: I97712f40c4bfcd7d854e2a89727d73fd7178598c
CRs-Fixed: 967765
2016-03-23 13:45:09 -07:00
Komal Seelam
5a6e508834 qcacld-3.0: Pass ol_context to all BMI API's
Remove ol_softc as argument in BMI API's and pass ol_context
as the default argument.

Change-Id: I66b5daed047c7efe9a01cac30d2d0e7427aab2cd
CRs-Fixed: 967765
2016-03-23 13:45:08 -07:00
Komal Seelam
d910649caa qcacld-3.0: Create OL BMI Context in global CDS Context.
Create bmi context in global cds context for BMI operations.

Modify HIF BMI API to pass dma command and response
Pass BMI DMA Command and Response address to HIF BMI API as
arguments instead of using bmi context in HIF.

Change-Id: Ifdb51581a33665b1857c63e33b1c26bbd99575eb
CRs-Fixed: 967765
2016-03-23 13:45:08 -07:00
Komal Seelam
02d0934a4a qcacld-3.0: update WMA with ini config for max_peers
Max_peers configuration is needed only by WMA. Remove dependency of
ol layer for max_peers and move it WMA.

Change-Id: I336b02ae84c72c70ca459425b38b197e5fe551a0
CRs-Fixed: 967765
2016-03-23 13:45:07 -07:00
Komal Seelam
48152e1a16 qcacld-3.0: Make cdf_device_t as global device structure
aps_osdev/NIC_DEV is not needed in cld driver. Remove it's
reference in BMI and pktlog code. Use global cdf_device context for
memory allocations in BMI and pktlog files.

Initialize cdf_device global structure in HDD.

Change-Id: Idf257e196f86b8f0aae669ce05950a1212e5fd99
CRs-Fixed: 967765
2016-03-23 13:45:07 -07:00
Komal Seelam
04d3d6a364 qcacld-3.0: Carve Out hif_softc out of ol_softc
Carve out hif_softc for internal hif usage.
ol_softc acts a opaque handle to other modules.

Change-Id: I2f29aea93b0a64169a3e095e1d5bddca15aadbd7
CRs-Fixed: 967765
2016-03-23 13:45:07 -07:00
Komal Seelam
7fde14caba qcacld-3.0: Query HIF for FastPath support
Data Path bypasses HTC layer for better throughput's.
Instead of dereferencing HIF structures, query HIF for fastpath
mode support

Change-Id: Iad2ae907e2d5345a71f5b64bd29f81dde4358460
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
c12e675c50 qcacld-3.0: Remove cds_get_context in HIF
Refactor Transport Layer from cds_get_context and pass the hif context
to all the API's to operate.

Change-Id: I2fb376fda12951a77007f46ceb351bb2e7740ace
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
588ad2bc46 qcacld-3.0: Refactor BMI members from ol_softc
Group BMI members and access bmi info from hif instead of
dereferencing hif context.

Change-Id: I9108ec1b719ec3e62dd19cc3341cbc1c868bf5de
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
c4b2863aa8 qcacld-3.0: Refactor Ramdump API and PKTLOG API
Ramdump collection can be supported by buses other than PCIe, hence
move it to main files so other buses can also access those API's.

PKTLOG is a DataPath Feature, HIF doesn't need to have any info
of it. Move pktlog implementation to HTT folder.

Change-Id: I113ef9bb44438cd7a1ba70799ce7e72f2eaa7121
CRs-Fixed: 967765
2016-03-23 13:45:06 -07:00
Komal Seelam
c11bb2226c qcacld-3.0: Refactor ol_sc for target_info and ini params
Clean up driver modules to query hif for the handle, instead
of accessing hif context in other modules.

Change-Id: If179255b355916794c9097cf8ff1cbc64ba5df84
CRs-Fixed: 967765
2016-03-23 13:45:05 -07:00
Komal Seelam
7922cf8a6f qcacld-4.0: Removing HIF/HTC from driver project
Remove HIF/HTC from driver project.
This is moved to host common project

Change-Id: I7dd6d4117a197a474304aa4a28edacbca924b795
2016-03-23 13:45:05 -07:00
Satish Singh
9673f3a977 Release 5.0.0.161
Release 5.0.0.161

Change-Id: I09d45bfb7110880e7f2a38261c397ce346628b99
CRs-Fixed: 688141
2016-02-08 15:50:46 -08:00
Houston Hoffman
b58d8be3c4 qcacld-3.0: Reduce wma timeout values
Linux kernel would crash before the timeout values were reached.

Change-Id: I958ea6b1023c6e847b578ed3d709dbf67a9d59e9
CRs-Fixed: 970658
2016-02-08 15:50:46 -08:00
Houston Hoffman
103f39b70f qcacld-3.0: Fix wma_bus_suspend suspend type
Suspend type should be CDF_SYSTEM_SUSPEND.  Host gets
stuck while trying to post runtime suspend messages.

Change-Id: I5deeba401b7bda2a057802389d620149a92fcfbc
CRs-Fixed: 970656
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
add334b14f qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R option from SME
Conditional compilation option WLAN_FEATURE_VOWIFI_11R is always
defined in cld3.0 and underlying code is permanent in the driver.
Hence, remove #ifdef WLAN_FEATURE_VOWIFI_11R check from SME source
code.

CRs-Fixed: 960105
Change-Id: Ib42c92aaca69c04b98dd42b7aab2a552c88af24e
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
9f09e75f87 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R option from HDD
Conditional compilation option WLAN_FEATURE_VOWIFI_11R is always
defined in cld3.0 and underlying code is permanent in the driver.
Hence, remove #ifdef WLAN_FEATURE_VOWIFI_11R check from HDD source
code.

CRs-Fixed: 960105
Change-Id: Ifdad17f5b85148dfa4bb459939168beec4b5b1cf
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
26bda45b30 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R_DEBUG option
Conditional compilation option of #ifdef WLAN_FEATURE_VOWIFI_11R_DEBUG
is used to enable certain roaming logs. It has always been defined,
thus these logs are enabled by default.
Remove it from all the code to always enable those logs.

CRs-Fixed: 936683
Change-Id: I23bba225ce69311d416e6d847c398840919c43aa
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
f9714216c5 qcacld-3.0: Remove some LFR compilation flags from Kbuild
The condition #ifdef WLAN_FEATURE_LFR is used to include some of
the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.
Similarly code under WLAN_FEATURE_NEIGHBOR_ROAMING is permanent
part of the driver.
Remove FEATURE_WLAN_LFR and WLAN_FEATURE_NEIGHBOR_ROAMING compiler
flags from Kbuild script.
All the instances of above flags are presumed to be removed
from the driver source code prior to this change.
Remove WLAN_FEATURE_NEIGHBOR_ROAMING_DEBUG compiler flag from
Kbuild and csr_neighbor_roam.c and permanently enable roaming
debug logs.

CRs-Fixed: 936683
Change-Id: Iec251c2a4439ab3d492d9700d242aad401a0dbe0
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
9a7110c40f qcacld-3.0: Remove #ifdef FEATURE_WLAN_LFR from MAC
The condition #ifdef WLAN_FEATURE_LFR is used to include some of
the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.
Remove #ifdef FEATURE_WLAN_LFR compiler flag from MAC so that the code
will always be compiled in.

CRs-Fixed: 936683
Change-Id: I6e5afb8eeb5f4f3a0bb7f7b007ffb07cbeff1adf
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
4bd0d82d93 qcacld-3.0: Remove #ifdef FEATURE_WLAN_LFR from SME
The condition #ifdef FEATURE_WLAN_LFR is used to include some of
the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.

Removed 2 instances of FEATURE_WLAN_LFR that were not removed
in the previous change.

CRs-Fixed: 936683
Change-Id: Ic1550cc4f15ebd835f24a1cadb7d6bd5ed45edab
2016-02-08 15:50:45 -08:00
Deepak Dhamdhere
d97bfb3a53 qcacld-3.0: Use scan for preauth from LIM in roaming
Use single channel scan request for preauth operation, similar to
remain-on-channel. Remove all roaming preauth logic from WMA.

Change-Id: Ie3783306e0ff5b8a5bbcb6437e982590b03fe040
CRs-Fixed: 957094
2016-02-08 15:50:45 -08:00
Ryan Hsu
535d16a34f qcacld-3.0: Update bss_type and privacy params for cfg80211_get_bss
Commmit: 6eb1813 ("cfg80211: add bss_type and privacy arguments in
cfg80211_get_bss()")

This commit update the new bss_type and privacy argument and is
merged in Kernel 4.1, so adding the Kernel version check accordingly.

Change-Id: I2bda71fc3cb2e126a1059a963f72f7a194bf9580
CRs-fixed: 963677
2016-02-08 15:50:45 -08:00
Ryan Hsu
ceb390ceb4 qcacld-3.0: Fix compilation if MSM_PLATFORM is not enabled
This CDF_TRACE macro is declared in i_cdf_trace.h and is used
when MSM_PLATFORM is not enabled.
But the inclusion is not in the cdf_nbuf.h, so that it causes
the compilation issue, while CDF_TRACE is not found.

Since this function is used on the data path, so that the warning
is not necessary for non MSM platform.

And also refactor it to avoid compile flag inside the function.

Change-Id: I061eb35f5eee21c76fd486d378e53b35c02b5636
CRs-fixed: 966754
2016-02-08 15:50:45 -08:00
Ryan Hsu
5713c48cc4 qcacld-3.0: Remove usage of f_dentry for Kernel upgrade
Commit: 78d28e6 ("kill f_dentry macro")

Above commit is to remove the marco of f_dentry since Kernel 3.19.
Avoid to use the Kernel version check by using the field directly.

Change-Id: I7a4b45c62afed402d49d709bb1cb870db352b70e
CRs-fixed: 966066
2016-02-08 15:50:45 -08:00
Ryan Hsu
e0e49278a8 qcacld-3.0: Fix hif_bus_prevent_linkdown compilation
hif_bus_prevent_linkdown() calls to cnss_wlan_pm_control(), which
is only defined when CONFIG_PCI_MSM is enabled, fix the conditional
compilation.

Also fix a typo of RUNTIME_PM to FEATURE_RUNTIME_PM.

Change-Id: I9d4cd65ee0020ca1b41d026c3124317ce854ea92
CRs-fixed: 966771
2016-02-08 15:50:45 -08:00
Tushnim Bhattacharyya
e67bfc7385 qcacld-3.0: Configure maximum active session count to 3
Set the maximum active session count to 3. All the sessions may or
may not be in connected state.

Change-Id: I3f348228fbdf787da0e4c954cb243b2252af9524
CRs-Fixed: 967911
2016-02-08 15:50:45 -08:00
Dhanashri Atre
1f0cbe43e3 qcacld-3.0: Handle MIC Error in Chatter Mode
qcacld-2.0 to qcacld-3.0 propagation

Add support to handle an error indicated by the fw in offload mode.
In this case - MIC error type.

Change-Id: I53363bdbaafad7fab0a6e067a43892a3066abbb6
CRs-Fixed: 791274
2016-02-08 15:50:45 -08:00
Varun Reddy Yeturu
d8455813df qcacld-3.0: Allow Roaming Abort command to firmware
qcacld-2.0 to qcacld-3.0 propagation

Add the roaming abort command to the allowed commands
list and pass on the request to the firmware

CRs-Fixed: 943717
Change-Id: I711d3bd8629813af71e4db8659a1915ccfeaaa72
2016-02-08 15:50:45 -08:00
Govind Singh
0a60e55f46 qcacld-3.0: Abstract bus debug dump in hif layer
Remove direct call to CE debug routine from ol_fw
and hif main layer. Abstract the bus debug dump
register routines to respective hif-bus layer.

CRs-Fixed: 964031
Change-Id: I8b6f325f12aaa99e4f7461f9da26b7f60259c8f8
2016-02-08 15:50:45 -08:00
Edhar, Mahesh Kumar
abfad4f201 qcacld-3.0: Dump TX/RX count on get_station cfg80211 function call
qcacld-2.0 to qcacld-3.0 propagation

print TX/RX packet count values during get_station
function call to help in debugging data path issues.

Change-Id: I0798123f96111bbadc4014f5f04193d88977a38b
CRs-Fixed: 956473
2016-02-08 15:50:45 -08:00
Edhar, Mahesh Kumar
eb31abd2bf qcacld-3.0: Change to retrieve valid non 11P channels
11P channels are wrongly retrieved along with other valid channels
while using csr_get_cfg_valid_channels function call.
AS per the current implementation the above function call is used
to get the valid channel used for scan and roaming scenarios. Since
11P channels are not valid in scan and roaming scenarios
csr_get_cfg_valid_channels function is updated to retrieve non 11P
valid channels.

Change-Id: I25567b2791ac776480534534e10d900c2f9a6184
CRs-Fixed: 965218
2016-02-08 15:50:45 -08:00
Naveen Rawat
504adcee54 qcacld-3.0: Fix memory leak in OEM data request
Fix memory leak in OEM data request, by freeing data buffer as message
passed down the layers is consumed in lower layers.

Change-Id: I8e8dc0c96de3055fada2c19139bc9e0c03b9e73e
CRs-Fixed: 964290
2016-02-08 15:50:45 -08:00
Krishna Kumaar Natarajan
53ca2905f8 qcacld-3.0: Add support for get and set OEM capability
Add support for get and set OEM capability over private netlink
socket.

Change-Id: I8c4a8c19633845750ec9d2492632471c68ba410d
CRs-Fixed: 949469
2016-02-08 15:50:45 -08:00
Krishna Kumaar Natarajan
1ae4911ae5 qcacld-3.0: Add fine timing measurement capabilities from FW
Add support to use fine timing measurement capabilities coming
from the Firmware.

Currently INI config is being used for setting initiator
and responder roles. With this change, intersection of INI
config and FW indicated capability will be used.

Change-Id: If20bc8de2b6ec12bc638b75806e2a870a5ebc189
CRs-Fixed: 942290
2016-02-08 15:50:45 -08:00
Krunal Soni
7ff8603751 qcacld-3.0: Fix follow-up comments given during auth frame processing
Fix all the comments given while reindenting lim_process_auth_frame
API.

Change-Id: Ic9a53ebb8f61909e73783a142b50222c2a82ae49
CRs-Fixed: 824222
2016-02-08 15:50:45 -08:00
Krunal Soni
a8f946d75b qcacld-3.0: Reindent lim_process_auth_frame
This patch is to reindent lim_process_auth_frame

Change-Id: I7bd67b31574ba8da3c51b0948ef9f6f8d680c3ce
CRs-Fixed: 824222
2016-02-08 15:50:45 -08:00
Satish Singh
20e079ffa4 Release 5.0.0.160
Release 5.0.0.160

Change-Id: Ie65b9fdb1412a6d205e4b96d9c60d7847b7a2485
CRs-Fixed: 688141
2016-02-08 15:50:45 -08:00
Sandeep Puligilla
19ddda272c qcacld-3.0: Add wma handler for vdev delete and peer delete responses
- Add handler for the vdev delete and peer delete response at WMA.
- As part of timeout handler, assert if the response is not
  received in 3 seconds.

Change-Id: I7b20254013266414174f686e1f3918822adc65d8
CRs-fixed: 960173
2016-02-08 15:50:45 -08:00
Satish Singh
dd96ba9864 Release 5.0.0.159
Release 5.0.0.159

Change-Id: I3f104ce7093b6ba6d9a9bb166c519de998a8ac43
CRs-Fixed: 688141
2016-02-08 15:50:45 -08:00
Komal Seelam
98760bacd4 qcacld-3.0: Fix Compilation error on WLAN_FEATURE_11W disabled
eCSR_AUTH_TYPE_RSN_8021X_SHA256 is defined only when 11W feature
is enabled. The code is using the identifier
eCSR_AUTH_TYPE_RSN_8021X_SHA256 without conditional compilation.

Access eCSR_AUTH_TYPE_RSN_8021X_SHA256 under 11W feature flag.

Change-Id: I5e1e513c12cf526045991749a487ac89d1773659
CRs-Fixed: 947938
2016-02-08 15:50:45 -08:00
Wu Gao
2c3a80018b qcacld-3.0: Update channel width and center freq
qcacld-2.0 to qcacld-3.0 propagation
"cfg80211_chandef_create" doesn't support channel width "HT80". If
create chandef by it, channel width set to HT40 when working on
SAP VHT80 mode. Which cause a mismatch between supplicant and host
driver. Update channel width and center freq for VHT80 mode

Change-Id: I9c5734fca4bcc02436aea8684ca9d0b968eb1dee
CRs-Fixed: 944618
2016-02-08 15:50:44 -08:00
Abhishek Singh
be1849b417 qcacld-3.0: Move sta state to not connected after try disconnect
qcacld-2.0 to qcacld-3.0 propagation

If a connect is received with previous connect already in progress,
sta connect state is moved from connecting to disconnecting and
disconnect is initiated to stop the previous connect.

If previous is present in sme/roam pending queue the disconnect
will abort the previous connect by removing the cmd from pending
queue. In this case the connect state is not moved back to
not connected from disconecting.

Thus the current connect command fails and all new connect command
will fail as the connect state will always be in disconnecting state.

To avoid this, move the connect state to not connected, once try
disconnect is issued internally.

Change-Id: Ia563f85df84cb9dbb3d3a82bc97127d39e7b1421
CRs-Fixed: 961559
2016-02-08 15:50:44 -08:00
Deepak Dhamdhere
a2df6bb544 qcacld-3.0: Remove #ifdef FEATURE_WLAN_LFR from HDD
The condition #ifdef WLAN_FEATURE_LFR is used to include some of
the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.

Remove #ifdef FEATURE_WLAN_LFR compiler flag from HDD so that the code
will always be compiled in.

CRs-Fixed: 936683
Change-Id: If5010bc1470a35b2f1516a5c5d10461352fd87fc
2016-02-08 15:50:44 -08:00
Gupta, Kapil
54a1699b94 qcacld-3.0: Remove RRM ie in Assoc Req based on AP capability
RRM ie should not be present in association req if AP doesn't
support 11k. As a part of fix add the check to append RMM ie only
if AP support 11k.

Change-Id: I4e521dbdbdd5b083360405f26913278788c86555
CRs-Fixed: 961737
2016-02-08 15:50:44 -08:00
Govind Singh
6661529b7f qcacld-3.0: Fix IPA-uc callback in NON-SMP system
IPA callbacks need to be processed in tasklet
context in NON-SMP configuration as rx thread
is not used in NON-SMP context.
Hence Process IPA uc response in tasklet context
for NON-SMP configuration.

CRs-Fixed: 960302
Change-Id: I98d69dbdc1083f43035fe264bbee668e5efd5eee
2016-02-08 15:50:44 -08:00
Rakesh Sunki
f7f82e5131 qcacld-3.0: SAP DFS-3 Feature support in DFS layer
Introduce DFS-3 support changes in DFS layer.
Add support for per segment based queuing, processing
and pattern matching of the radar events in 80+80 channel
width mode,  when both segments are dfs.

Also, add support for parsing the new DFS-3 radar summary
report and extract the segment ID on which a phyerror is
seen.  Report the segment ID on which the radar has been
detected to the WMA layer to add only radar detected 80MHz
segment channels to be added to NOL in 80+80 MHz channel
width mode.

Change-Id: Ib9ed2122844cef5fde2b632accc8c798e86bf7a3
CRs-Fixed: 964262
2016-02-08 15:50:44 -08:00
Rakesh Sunki
8641f8a6b1 qcacld-3.0: SAP DFS-3 Feature support in WMA
Adding support for parsing the WMI_PHYERR_EVENTID
for DFS-3 in WMA event handler.  Configure the hw
board id to DFS module fetched from the wmi service
ready event.

Change-Id: I003fab790c7f46b54e5d41bcf1bbfa16f0cdc722
CRs-Fixed: 964262
2016-02-08 15:50:44 -08:00
Liangwei Dong
d7be7778d9 qcacld-3.0: correct phy_mode in hdd_chan_change_notify
qcacld-2.0 to qcacld-3.0 propagation

The sap Context related phyMode should be used
instead of the phyMode in hal. Otherwise, the incorrect
channel width will be reported to supplicant.

Change-Id: Ic0ce7861a786de5aef8b43c6aa0fde9f600b08b2
CRs-Fixed: 909668
2016-02-08 15:50:44 -08:00
Houston Hoffman
65a4a87ebd qcacld-3.0: move hif_bus_open to hif_open
Can consolidate these allocations.

Change-Id: I8af6fa459db62c99bf93ecdbd1dcd94bbee580a8
CRs-Fixed: 967256
2016-02-08 15:50:44 -08:00
Houston Hoffman
dc9c6c26b0 qcacld-3.0: Remove hif_claim_device
hif_claim_device does not serve a purpose in copy engine.
The usage and implementation of hif_claim_device need to be
reexamined for sdio and usb. It should not store the device
in a ce specific data structure.

Change-Id: I0847e152ae3a1ca57d5c6937d6929918063cc362
CRs-Fixed: 967244
2016-02-08 15:50:44 -08:00