qcacld-2.0 to qcacld-3.0 propagation
During suspend request host send wow cmd to fwr and set
target suspend true so other wmi cmd won't send to fwr.
While waiting for wow ack/nack from fwr, if time out
happens then host inject crash and start self recovery.
But inject cmd is getting dropped due to target suspend is
set.
As a part of this fix, reset target suspend flag if timeout
occur for wow ack so self recovery can be triggered.
Change-Id: I1db556f9aa83fbf1324ddc1c1d205b0217b11bc2
CRs-Fixed: 983694
(cherry picked from commit 7aa878de9ba001e573cb63b52ddf4d78543bb673)
qcacld-2.0 to qcacld-3.0 propagation
If SSR/ram dump collection is in progress, rmmod waits
for it's completion for 75 times. But for high latency
target SSR/ram dump collection is taking more then 75 sec.
As part of this fix,For HL target set retry count to 200.
Change-Id: I8cc052c748e6a6dfff45675f9c15ead00b002a11
CRs-Fixed: 974023
(cherry picked from commit f788043e64fe707c495b2c0baee6e6d116268068)
qcacld-2.0 to qcacld-3.0 propagation
Currently for low latency target, host is waiting for 1 sec for download
complete, which is blocking MC thread. Due to this MC thread is not
serving the SME queue and which triggers the active cmd time out.
As a part of this fix, MC thread waits for download complete only
for those frame which needs OTA.
Change-Id: I25f45e969dd5bbf2341d586265d84919755f6ed3
CRs-Fixed: 967842
(cherry picked from commit c54a6f76ec228eaca7fa5f1f529d29011a83c445)
This is a qcacld-2.0 to qcacld-3.0 propagation
This commit allows the upper layers to send setband request to
driver using vendor command.
Change-Id: I3ce769e5426a5afb85979b4e19dbabd234f18e98
CRs-Fixed: 879527
(cherry picked from commit 0e0eaa6aa061031c5cf5314497b9d41eb0aef850)
qcacld-2.0 to qcacld-3.0 propagation
Observed kernel panic due to the race between initialization of
logging wait_queue in supplicant thread context and the same
uninitialized wait_queue is referenced in MCThread context.
To mitigate this issue, don't send logs to upper layers if logging
service is not initialized.
Change-Id: I96e3efb3947279be64b83a27a7e2458d04021c4e
CRs-Fixed: 963275
(cherry picked from commit fe200c52491b12087752a46bc602288adaf26557)
This is a qcacld-2.0 to qcacld-3.0 propagation.
In present code, Host sets thermal power limits to 10dbm,
for both 2g and 5g, leading to connection failure.
Set Thermal Power limit to 30dbm for both 2g and 5g. So
that FW takes the default values from BDF.
Change-Id: I053108babfaa9ac2629cdb107ceb507c2f8891e5
CRs-Fixed: 1011361
(cherry picked from commit b25fb5987e792d286542e09f8d8fa30223115453)
qcacld-2.0 to qcacld-3.0 propagation.
There is a possibility of buffer overflow while processing
GET_CFG IOCTL to retrieve ini parameters from a global array,
because of invalid if condition.
Resolve buffer overflow issue by correcting if condition.
Change-Id: I8881abde0b543d7b1562968ecbb6240a0ca552a3
CRs-Fixed: 1000853
(cherry picked from commit 2dff47b5bc87559c430da20bf563975749b2a8cd)
qcacld-2.0 to qcacld-3.0 propagation
In SME, while processing set beacon parameters, free
dynamically allocated memory, once done with the it.
Change-Id: I281ef5eb9492fe75d639b2bef7ed588aacee8e74
CRs-Fixed: 974567
(cherry picked from commit feaa49e6b906f33a98a11f5ee35c947abe5d28bd)
qcacld-2.0 to qcacld-3.0 propagation.
Allow IPv4 and IPV6 offloads to FW by enabling ARP and NSoffload feature
by default even if it's not explicitly enabled in the ini file.
Change-Id: I9af928f5ea6e2b9589d3c8666abfa3927fe5e908
CRs-fixed: 1053887
(cherry picked from commit e0dba23a18a4484ae799e9db1eb867446e9ba0c8)
qcacld-2.0 to qcacld-3.0 propagation
Currently the following private ioctls are only supported on STA-type
interfaces: set_ldpc, get_ldpc, set_tx_stbc, get_tx_stbc, set_rx_stbc
and get_rx_stbc. Update the driver to support these commands on
SAP-type interfaces as well.
Change-Id: Ic135dcbd74918a2d27802e3edc34444545aa18ff
CRs-Fixed: 844097
(cherry picked from commit bf5ed2ca492bbe66b8825ad68ce975454f989dd6)
qcacld-2.0 to qcacld-3.0 propagation.
Added ini parameter for extscan so that scan can be aborted
if extscan ini is not enabled.
Change-Id: I7bfcd88901512de6b70af94d1ebd76894bb14755
CRs-Fixed: 927236
(cherry picked from commit 5af7ebadac8ea8ccd11af6c03d5d3a4cf209e85b)
qcacld-2.0 to qcacld-3.0 propagation.
If ACS is enabled in hostapd configuration,hostapd sends
a list of channels to HDD for softap bring-up. If hostapd
finds a invalid/unsupported channel in its channel list,
it will send a 0 for that channel. Since HDD always takes
the lowest channel as starting channel for scan, the scan
will always include 2.4Ghz channels even if channel mode
is set to a. Hence HDD should ignore these invalid entries
in channel list.
CRs-fixed: 959490
Change-Id: Iddaf6c4ba14e22b476f22f1f098faf726f4407ec
(cherry picked from commit 9f410939ff801316a153c44c603ce575fe6d15d5)
qcacld-2.0 to qcacld-3.0 propagation.
Log success or failure status whether disassoc/deauth sent successfully
over the air.
Change-Id: I527bd35546eb21157498f235fe74710dd3f7688e
CRs-Fixed: 1016866
(cherry picked from commit d081fef10c8440830cea8d6e598087d5021687ae)
qcacld-2.0 to qcacld-3.0 propagation
From Kernel-3.18 onwards pending scan request is handled
as part of NETDEV_DOWN event, by invoking the cfg80211_scan_done
callback which frees the scan request structure. To support this,
driver will not invoke scan_done_callback if interface is down.
In case, if interface down and up are called back to back there
is a chance that kernel frees scan request as part of NETDEV_DOWN
and after which before driver triggers scan_done_callback if
interface is made up, driver scan_done_callback is through its
execution and accesses the freed scan request results in kernel
panic.
To mitigate this, don't return from hdd_stop until scan request
is aborted. Though this fix is to avoid kernel panic due to 3.18
kernel specific changes, it is acceptable across all the kernel
versions.
Change-Id: Iba8bd7a32fac33e8a0c3eea293aad682a1105397
CRs-Fixed: 977264
(cherry picked from commit 153dba8b716c3d10a1745df6e2da09c0c05d9b01)
qcacld-2.0 to qcacld-3.0 propagation.
In current implementation, RA filter is enabled irrespective of the
BPF filter status. This change checks if BPF configuration in ini as
well as in target config is enabled, then RA will be disabled.
Change-Id: I85df0828af665d2bcc13c865b0ba40ebf882fffe
CRs-Fixed: 1058884
(cherry picked from commit 8dda6e83eb85ef9f0342ab23954e093c6dfebe2e)
qcacld-2.0 to qcacld-3.0 propagation
The new cfg80211 connect api 'cfg80211_connect_bss' takes
a new input parameter, the connected bss. This is required
for the kernel to map its current_bss to the bss on the
correct channel when more than one bssid, ssid pair is
present on different channels with the kernel. Without this
the kernel might report a wrong channel as the associated
channel. Hence add support in driver to use the new connect
api.
Change-Id: I1e5ded1b40ca324469917acebf17a03cc1e1c679
CRs-Fixed: 1008794
(cherry picked from commit fc06d173ce8155c1ee470f0a135490d42237d66e)
qcacld-2.0 to qcacld-3.0 propagation
Framework may initiate LL stat ops while roaming is
in middle, which in turn block the call or wait for
timeout hence introducing roaming delay.
This delay can be overcome by avoiding LL stat ops
if it is triggered in between the roaming.
Change-Id: Ie64c8c56f905cc297057e62b69c010cf1e0974ed
CRs-Fixed: 881429
(cherry picked from commit 125d2e3ce70d7829ed6b37ee032f6c2036974587)
qcacld-2.0 to qcacld-3.0 propagation.
Do not re-initialize periodic probe request timer if the calculated
value for "initScheduleTimeInMsecs" from max channel timer is zero.
Change-Id: I7cc03d84088c8c3f2b1e704c2e6c8c24c1a01189
CRs-Fixed: 909143
(cherry picked from commit 0d91c221310d699374b9d4373f7b5cd52ece3ac8)
qcacld-2.0 to qcacld-3.0 propagation
In AP+AP scenario, it is possible that hostapd can set default
key index before there is a session associated with pAdapter.
So save wep default key index in pHddApCtx and set it after bss start.
Change-Id: I1c27ad8984cb1ece266405fb5c427e59dd01db3a
CRs-Fixed: 938522
(cherry picked from commit d93be6957228143d757f299fcd32d2428860f9ee)
qcacld-2.0 to qcacld-3.0 propagation
In function "sap_select_channel" avoid selecting DFS channel if
DFS master mode is disabled.
Change-Id: I4b45401500db32f0677e5364e4cf415dca2ca23c
CRs-Fixed: 939153
(cherry picked from commit 0a1ecad5876e7526a9283cba331e22453e03490e)
qcacld-2.0 to qcacld-3.0 propagation
Currently if user space sends two different beacon
interval in AP+AP, driver is not updating correct beacon interval.
Beacon interval should be sent as per session.
Change-Id: I13653701e7ed6fb2eb643bbb8e20e7c0102c2ec2
CRs-Fixed: 1037455
(cherry picked from commit 183b9b33087f5afc925d5899b468450e88b97998)
qcacld-2.0 to qcacld-3.0 propagation
Currently there are no diag events to debug auth, assoc timeouts
and memory failure. Add such diag events which can be useful during
failures.
Change-Id: Iec4c2a9946fbef388959fdc796273944d3be8003
CRs-Fixed: 954888
(cherry picked from commit 96f330d11abe16a35c13a87346e8e60cbd0c7141)
qcacld-2.0 to qcacld-3.0 propagation
When deauth/disassoc is received from peer at the same time when
cleanup in progress because of disconnect from supplicant, there
is a chance that pHashTable can be NULL. Memory pointed by
pHashTable is freed during peDeleteSession, which is called during
cleanup. In dphLookupHashEntry, pHashTable is referenced without
any NULL check, which can lead to crash. Fix this by validating
pHashTable for NULL check.
Add a NULL check in _limProcessOperatingModeActionFrame before
referencing sta context to resolve potential KW issue.
Change-Id: I74d5c739cade19941320ee02eddc09e4fc74b105
CRs-Fixed: 898375
(cherry picked from commit b303090fde8d3a14dbf6f9c80d635e27718a583d)
qcacld-2.0 to qcacld-3.0 propagation
In CCX, BSS description is sent as part of beacon report. If BSS
description has random values, it leads to CCX certification failure.
Fix this by resetting memory allocated with zero. Also, reset memory
allocated to send beacon report to avoid this issue.
Change-Id: I445942b64ca9f382f8d24ca19665d6bda2341a80
CRs-Fixed: 931441
(cherry picked from commit c7a96bbd498d6d096f1dcade7fce0f6c1732248e)
qcacld-2.0 to qcacld-3.0 propagation.
In __iw_get_channel_list, driver populates valid
channel list from nv table.
Currently, the driver only populates 32 channels.
The driver should populate complete valid channel list.
Moreover, driver should not include DFS channels in channel list
if the device is not set to DFS_MASTER mode.
Fix these issues by returning all supported channels.
Change-Id: I4981941834f25b9d213c20715ca8237a4b885473
CRs-Fixed: 988849
(cherry picked from commit 7a4c5379f991bb4e72393e775f4664517d0a68aa)
HOST driver supports max LRO_DESC_POOL_SZ flows that can
be submitted to LRO manager. Currently there is no check
for flow greater than LRO_DESC_POOL_SZ and this is resulting
in invalid de-reference of hdd_lro_desc_entry.
Do not allocate LRO desc for flow greater than max range and
use normal rx path for flow greater than LRO_DESC_POOL_SZ.
Change-Id: I7f44c750afc78f5e044c9405dff30e729d3d28f3
CRs-Fixed: 1064624
(cherry picked from commit 2a8773e73b6c00edfcc621b4c1cba3bae677fb66)
qcacld-2.0 to qcacld-3.0 propagation.
In current driver, WE_UNIT_TEST_CMD has below problem.
- apps_arg[1] can have zero value and can lead to
buffer overead
Change the code to handle the number of args if user has
given zero.
CRs-Fixed: 1029540
Change-Id: Idc8e1d77d9623daeb98d0c4b7ad8a8d6cfa9c2d2
(cherry picked from commit 063a0db662927174d22af3b78402c63d7c388112)
qcacld-2.0 to qcacld-3.0 propagation.
This ioctl gets call during the start of SAP/hostapd with wext
interface and which is obsolete, currently using nl80211 interface
for the same
Remove the code related to setwpaie ioctl
CRs-Fixed: 1000913
Change-Id: Ia45860d7143639aa62d02afe8c08e283e20ba27a
(cherry picked from commit faa23a5a51fcad2cd38e4f4a41c10d8acdd42d36)
qcacld-2.0 to qcacld-3.0 propagation.
As there are a lot of prints dropped on the console in
short duration, it leads to interrupt disablement on
the cpu.
So reducing the logging level of log statement from
ERROR to INFO
Change-Id: I3eefac49378a7bfbcc235b1dd3362e1213fa1f42
CRs-Fixed: 886644
(cherry picked from commit 06c7d1b4aa89fb5c25241cec0558d559ee93b683)
qcacld-2.0 to qcacld-3.0 propagation
Reduce unwanted netlink log messages and modify the error value
print format from hex to decimal.
Change-Id: Ia94efe17b80d5f3c4a7006b914f4f0586360fded
CRs-Fixed: 804176
(cherry picked from commit f986a945d7124c5bcc962dc0b7f0642828b7687f)
qcacld-2.0 to qcacld-3.0 propagation.
Validate arguments for ENABLEEXTWOW command
and return failure on invalid arguments.
Change-Id: I73556989f79754bca1bf4226ad71c2358b3a7526
CRs-Fixed: 857123
(cherry picked from commit 15e232c5aab90e6ed53d3a9a7f8d631ae451402e)
During driver initialization, if hif_register_driver timeout
then memdump is not initialized. Due to this timeout, unregister
driver is called which deinitialize memdump which cause crash as
uninitialized mutex is accessed in memdump_deinit.
To fix this issue, deinit memdump only when the init is successful.
Change-Id: I781717a2a160aa09c9f60ebface1238507d1a623
CRs-Fixed: 991443
(cherry picked from commit 54eda9379d7dec74ac6c3efd1659dffdd32c0680)
Currently Host configures MaxTxPower as 22dbm
during join which fails the TRP requirement to meet
23dbm.
Change the code to configure the max tx Power to 30dbm
in FW during join.
Change-Id: I926288972e17a9276af2744d6a070b82333d5242
CRs-Fixed: 1023616
(cherry picked from commit 206e7dd1e735a3ff0a94f2d978b606dcf87e08fd)
qcacld-2.0 to qcacld-3.0 propagation
The QCSAP_IOCTL_VERSION IOCTL is registered with a maximum GET
buffer length of QCSAP_MAX_SC_IE = 256 bytes. But while filling
buffer, Host allows to fill till WE_MAX_STR_LEN which may lead to
buffer overflow.
As a part of this fix, Host ensure to register with maximum
WE_MAX_STR_LEN buffer length.
Change-Id: I5ba0268e978c7ddadabc96a4eba18140ff7db3c6
CRs-Fixed: 1001142
(cherry picked from commit 85f4f75e8396e27467716555d68b3a18dd57b6fe)
qcacld-2.0 to qcacld-3.0 propagation.
Add code for implementing sifs burst duration ini to be sent to be FW
as part of WMI_PDEV_PARAM_BURST_DUR command.
Change-Id: I96ccda760045ecd54592b649116f3e7fe4a4f31b
CRs-Fixed: 1028623
(cherry picked from commit 7a367f1535299b73d1886529e0a557853d943518)
qcacld-2.0 to qcacld-3.0 propagation.
hdd_bus_bw_compute_cbk function is responsible for computing
bus bandwidth by checking TX/RX stats per HDD adapter after
taking them from adapter list. However, it's scheduled on a global
timer so the following scenario can arise:
1)At time of scheduling, HDD adapter is valid and is passed.
2)During TX/RX stats check, HDD adapter is freed as a result
of interface down.
3)Null hddCtx from adapter is accessed as a result and kernel
panic occurs.
Thus,validate adapter magic before accessing the hddCtx stored
in adapter.
Change-Id: If076e122db0538d01140e16305f046e68a86212a
CRs-fixed: 1045004
(cherry picked from commit 27254744c270a98d15bb17e2ed48649450070385)
qcacld-2.0 to qcacld-3.0 propagation.
While processing GET_STAWPAIE, based on interface, driver calls
WLANSap_getstationIE_information()/csrRoamGetWpaRsnReqIE() to
get WPA-RSN IE data. For suppose WPA-RSN IE length is greter than
DOT11F_IE_RSN_MAX_LEN(114), then these functions returns failure
by updating only data length. But as calling functions are not
checking return value, driver updates kernel buffer with invalid
data.
Add check to validate WLANSap_getstationIE_information() and
csrRoamGetWpaRsnReqIE() return value.
Also update DOT11F_IE_RSN_MAX_LEN to 255 from 114 and update
IOCTL numbers.
Change-Id: If021318e526c1b1a5616f9447be11174aa4c6a34
CRs-Fixed: 1000857
(cherry picked from commit cc0e12838a8d5ca3fe509bb152b73caeb478744c)
qcacld-2.0 to qcacld-3.0 propagation.
Type mismatch is present in bitwise operation for TDLS specific
variables in hdd_update_tgt_services.
Change bitwise operation to logical as the variable in question
is used like a flag and not as a bitfield.
Change-Id: I63692816d0f4d867206a3d6b07363bbb054c6062
CRs-Fixed: 1017937
(cherry picked from commit d3e615b8fa6bcc58321ccc670b797fea7467ffc4)
qcacld-2.0 to qcacld-3.0 propagation.
In linkspeed ioctl handler, mac address array is allocated a
size of MAC_ADDRESS_STR_LEN, which is 18 bytes taking account of null
terminator '\0'. But in code, a null terminator is being manually added
at index MAC_ADDRESS_STR_LEN. This would overflow the buffer and hence
null terminator should be added at MAC_ADDRESS_STR_LEN -1.
Change-Id: I16c2d0f787dfa339780db7d888aff37355c32322
CRs-fixed: 1000861
(cherry picked from commit 1ebc752f4b5c0a32f3b063ffe89c16fa0e2d81a0)
Update tlv_check_required() to handle all WoW reason to prevent failure
of parsing the wow packet buffer.
WOW event AP_LOST_ASSOC reason is not handled in tlv_check_required function
which returns true to parse the wow packet buffer which is incorrect. Enhance
the tlv_check_required function by adding only the reasons that require
tlv parsing and return false for others.
Change-Id: I4079086c4a49279921f6af8dda72b32d923022c2
CRs-Fixed: 1064249
(cherry picked from commit 1cc8d077fb321e2b83a5f15bcd2a3bdb7d8ccb19)
Handle protected dual of public action frame in lim_process_action_frame.
GAS comeback request/response frames will be converted into protected dual of
public action frame on encryption. These frames should be passed to userspace
for further processing.
Change-Id: I25e7f06369cdd238a561ddb5a825a63fe35f7b17
CRs-Fixed: 1063665
(cherry picked from commit 7745335fbdebcd81b274c703e5a080d61dd86428)
Enable to forward Intra-BSS Rx packets when apDisableIntraBssFwd is
not set in the AP context.
Change-Id: Id845abec76826910bec021b79786f5d3d7a27b4d
CRs-Fixed: 1062536
(cherry picked from commit ef8d7e584def1aaa844d671bb11c6f7225dea192)
WMA is sending response to ADD_STA and
ADD_BSS request during failure scenario.
Add conditions not to send the response to LIM
during the roam sync indication operation.
Change-Id: Iad9a8b28e1029ebd12e2022fb38d2aa01a03e9aa
CRs-fixed: 1061963
(cherry picked from commit b23176083295303da6847274120af8ab48e62730)
Currently LRO is not enabled for non STA interface.
However during p2p adapter creation LRO is getting
enabled as p2p adapter is being created with change
interface handler with STA interface ID.
Check adapter device mode during LRO enable and bypass
if LRO enable is called for NON STA interface.
Change-Id: Ib0be2cfdf110bad9a76b47b57ad9e0319bad1947
CRs-Fixed: 1064044
(cherry picked from commit edbf9452cd01fdfef0f5b6014e534387530eeb78)
Check for active STA and SAP connections before switching the operating
channel of SAP to a DFS channel. SAP moves to a DFS channel only if
this movement ensures that the SAP does not go off the DFS channel which
is needed for continuous radar detection.
The existing check looks for the number of open sessions. But these
sessions may or may not be active. So, replace this check with suitable
APIs which will check for active sessions.
Change-Id: Ib37427a9c62a785abb5e22c14ec23f09e60bf4b7
CRs-Fixed: 1063212
(cherry picked from commit d470e33f6d390b84dd98892a1b4526fd45348c2b)
qcacld-2.0 to qcacld-3.0 propagation
Supplicant can get the scan results within 1 sec, 2 sec is aggressive.
Reduce time duration of WIFI_POWER_EVENT_WAKELOCK_RESUME_WLAN
from 2 sec to 1 sec.
Change-Id: I83a2c674f1e42fc78480b194ad08b903b8fecffa
CRs-Fixed: 1060384
(cherry picked from commit 75e507e42cb2d9fc353980085d1302fda43b5fae)
qcacld-2.0 to qcacld-3.0 propagation
Change-id Iac45ffc1736eecc40e203174888e296767b50a0d and
Iced4b80de60f9640cad0342afac57f9a17c2a3e2 added new entries in between
the existing enum list. Due to this stability scripts decodes
them incorrectly.
To fix this, move new entries to the bottom of the enum list.
Change-Id: If0b759f58dd6831fad45ac3d321989a550fef405
CRs-Fixed: 954222
(cherry picked from commit 1f7fcef8e5190d0a1f75185bf874a4c1b36db26f)
qcacld-2.0 to qcacld-3.0 propagation
Some MTRACE logs returns 'unknown code' instead of code and data passed
to MTRACE. To resolve this unknown code issues in MTRACE logs,
add any missing MTRACE code enums in corresponding trace functions.
Both mac_trace_msg_tx() and mac_trace_msg_rx() were not handling
eWniMsgTypes enums, we don't have module Id for SME to handle
in those functions itself. So, modified mac_trace_msg_tx() to mac_trace().
Change-Id: Ia994c971178e24843f652b67336afeaec5e949ab
CRs-Fixed: 871983
(cherry picked from commit 5e12a6f7a67de546c8567341f35707da61cf00b8)
Add type_specific_data for PKTLOG_TYPE_SW_EVENT in the pktlog header
to parse it so that pktlog script can do further processing based on the
value passed in that field.
Change-Id: Ia68d9e3ea02942c050c133f4547a353634d65e1c
CRs-Fixed: 1062295
(cherry picked from commit 1ab48b89e671ee62b384c2cbd7fede68cf963da6)
1) In function wma_update_hdd_cfg update tgt_cfg before calling hdd callback
function.
2) In function hdd_init_nan_data_mode correct check for status returned from
sme_open_session
Change-Id: Ibf86c348f95c6f5589c2089600dbe176b1fda5fe
CRs-Fixed: 962367
(cherry picked from commit c6e52d750fee0675efdbe08d7e6f0c274887cb65)
After completing NDP initiator and response between two NDP peers,
ping failure between the peers is observed due to mismatch in the
broadcast station id set in the driver and the broadcast MAC address
for the NDI. This sta id is eventually used as local id to fetch the
peer associated with the sta id and extract the vdev id from the peer
handler, which was pointing to the incorrect vdev leading to ping
packets drop in the firmware due to incorrect vdev id.
Assign the broadcast id for NDI same as the NDI self
peer's sta id, which will point to the correct vdev id.
Change-Id: I4a4eeae149a4347da236cb768cf41141d9efdaca
CRs-Fixed: 1059527
Currently ani_global.h is included in qca-cmn,
The change removes ani_global.h and there are
corresponding changes in Driver
Change-Id: I59684e475406386e250635bde88390797835c95f
CRs-Fixed: 1012452
Netdevice setup for the Monitor mode/Device mode are different
with Dynamic mode change the adapter is allocated for normal mode
and the device setup is done according to the normal modes.
Once the device mode change request for monitor mode comes via con_mode
the driver shall change to monitor mode, when the mode switch happens
presently driver is using the same setup as station in monitor mode.
Update the net device setup for the monitor mode once the device changes
to monitor mode.
Change-Id: I38ff0e31b80f8e800a37c10431902ab092b627ba
CRs-Fixed: 1064063
qcacld-2.0 to qcacld-3.0 propagation
In the scenario where association times out because device has missed
the assoc resp sent by peer, the peer assumes the device to be
connected and thus when device again sends the auth for fresh
connection the peer sends deauth. Thus fresh connection also fails.
To avoid this send deauth after association time out, to cleanup
the session in peer.
Change-Id: I1f7bfbe804da0dc92ce4ece87dc65954b086133c
CRs-Fixed: 987455
qcacld-2.0 to qcacld-3.0 propagation
Driver prints qpower disabled even if command for qpower enabled
is sent to firmware.
To avoid confusion print qpower enable/disable depending on the cmd
sent to firmware.
Change-Id: Ifb135d4ad1691d0e5024aa2ef31880be271cac9e
CRs-Fixed: 1044603
Presently, interface creation for the p2p_go is only supported from the
change interface. Add support for starting the adapter from the
add_virt_iface.
Change-Id: I09736226c8c4793e103d091caafee732e410a056
CRs-Fixed: 1064020
NDI interface creation is supported from the hdd_open_adapter, because of
invalidation of sessionId is done in the same function the session created
for NDI is getting overwritten.
To migitate the issue invalidate the sessionId once the adapter is created.
Change-Id: I0a4a116daae02b822b3e75c06e2b966be9f2e24b
CRs-Fixed: 1064031
NULL check is not required before freeing the memory allocated to
dfs_radartable.
Add the changes to remove unnecessary NULL checks.
Change-Id: I063c036024e6bfc235a418056d15843646bc5a3c
CRs-Fixed: 1063843
Some HDD suspend/resume logging messages are vague or include redundant
status codes. Update these messages to reflect what actually happened and
remove redundant status codes.
Change-Id: Ic3613ab37a4c118447ce14087c8e0b0b65a108d9
CRs-Fixed: 1062544
PM suspend and FW interrupt handler is running at same time
which is leading to multiple race conditions and host is missing
FW wake up interrupt which is causing APPS not waking up reliably.
Define .suspend_noirq and .resume_noirq callbacks and make
sure there is no pending FW interrupt before allowing PM
suspend to complete. Kernel PM suspend framework gives guarantee
that suspend_noirq and device interrupt handler can't run
simultaneously. This helps WLAN driver to reliably detect FW
wake up interrupt during PM suspend and fail PM suspend gracefully
if FW has requested for initial wake up.
Change-Id: Ib16a4e86f2378a8ca3f7eaada54fc7a3d67a886b
CRs-Fixed: 1060748
This reverts Change-Id I9e55f58aee29017fe09efeb5231b8be23053f7b7.
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. Race condition between PM suspend and fw
irq will occur again after reverting.
Change-Id: Id6497b81c703b3751fba0a85890203e316608aab
CRs-Fixed: 1060748
Fix some remaining u32 paddr references in htt and make sure
that they are defined as qdf_dma_addr_t.
Fix print %x's for such variables, as per printk-formats
document (use %llx and explicitly typecast the vars to uul).
Change-Id: I4bc25e631986d8343a704ac48fb7bdfe1717b396
CRs-Fixed: 1064917
Make sure that the message to enable flow steering is
sent to the FW when NAPI or LRO is enabled (as opposed
to sending it when LRO is enabled only).
Change-Id: Iadb4a08b213c9c31921c520f663a8a5359b0444b
CRs-Fixed: 1064917
Add throughput policy handler which triggers irq/CPU mananagement
functions as required.
Adapt NAPI enablement code to recent changes to the init sequence.
Add to the new files to build.
Change-Id: I8c16667a08982e419c2f2152cf31afcd3a535eb4
CRs-Fixed: 1064917
Register suspend_noirq/resume_noirq callbacks to kernel. It will
make sure no wake up is pending from FW and if initial wake up is
received then failing it should trigger resume.
Change-Id: I3d3de3789a7d560ed171294fa9a1ebe6389746a7
CRs-Fixed: 1060669
This reverts Change-Id Ifce8edc5db8c0410c5cddd24aceb88675f8ced42.
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. PM suspend_noirq/resume_noirq are
not available after reverting.
CRs-Fixed: 1060669
Change-Id: I0e015d664681c3e2ba57a26b04318d4aa13f0406
This reverts Change-Id Ic0627a14a65f07faeb5cfa0ec4fcdc85b79e3f63.
WLAN driver is blocked from promotion as the dependent kernel
change is not merged yet. Getting/setting unsafe channels and
dfs nol are no longer be present after reverting.
CRs-Fixed: 1061220
Change-Id: Id4e374310c5140cc7c5432183562998b2584853a
Under error conditions while suspending FW, the target-suspended flag
was not being cleared properly. This caused a situation where FW was
thought to be suspended, but was not. This prevented Apps from
suspending. Properly unsetting this flag under error conditions was
added in this change.
Change-Id: I77c57b3ee7a3327c181e3cc350a59cd1ee46df68
CRs-Fixed: 1063089
qcacld-2.0 to qcacld-3.0 propagation
If base channel is 5 GHz and when we support all 11a and 11g
rates, then there is no need to advertise 11b rates in TDLS setup
request/response frames.
Advertising 11b rates also leading to IOT issues with few third
party devices.
Fix is to ensure that 11b rates are not included if base channel is
5ghz.
Change-Id: I45590a4067194e8929bac225b1a82ec510903539
CRs-Fixed: 955788
qcacld-2.0 to qcacld-3.0 propagation
In the current implementation, DUT doesn't initialize the social
channels 1, 6 and 11 and doesn't support P2P discovery in 5GHz only
mode. So we don't see any AP's on 1, 6 and 11 channels during p2p scan.
Change-Id: I317119bbbc30d44214c11076faceba8101cf835a
CRs-Fixed: 962252
qcacld-2.0 to qcacld-3.0 propagation
Currently, since we are using same member from lim structure for p2p and
TDLS there could be possibilities that session id is overwritten
by p2p which would lead in not sending Tx completion indication from
lim to hdd thus leading to Tx timeout though we have received tx completion
indication from FW.
Fix is to create new session id for TDLS frames transmission
Change-Id: I1f78f24ac01e0b26c92238dbe831af88aa267bd5
CRs-Fixed: 991455
Bitmasks should use atomic operations when they can be
modified in multiple contexts. Also sanitize msdu_id length
to avoid potential memory corruption.
Change-Id: I119916dba883ab7aa27d8c42035af5588774f535
CRs-Fixed: 1061195