Commit Graph

338 Commits

Author SHA1 Message Date
Varun Reddy Yeturu
5a18365aae qcacld-3.0: If mac_ctx is NULL, do not use it for logging purpose
1) Do not dereference mac_ctx for logging when mac_ctx itself is NULL
2) Use standard logging mechanism such as the QDF infrastructure for
logging purpose

Change-Id: Iedb4b5d20fd7aa85ff1b98e5fab4edb9de51f7b2
CRs-Fixed: 1065301
2016-09-15 17:47:50 -07:00
Dustin Brown
f660fb4c10 qcacld-3.0: Reset PS timeout when PS requested from user space
When receiving a power save request from user space, disable any active
power save timer and start a new one using the timeout supplied from
user space.

Change-Id: I88299776a973118e1bdba8cfd5fa4c8018f0758a
CRs-Fixed: 1065234
2016-09-12 21:45:58 -07:00
Anurag Chouhan
bf5e0e2457 qcacld-3.0: Add fw_test command
Add an Iwpriv command to update fw test params.

Change-Id: I7017fedbe8eddfa6b0f93f1d6129b12f22a462bb
CRs-Fixed: 1045265
2016-09-12 12:54:09 +05:30
Selvaraj, Sridhar
a7fc763e16 qcacld-3.0: Update Assoc IEs to firmware after STA connects
As part of MBO(Multiband Operations), the Assoc IE's including
MBO IE need to be sent to FW as part of Roam Scan Offload command
so that these IE's can be used later in firmware initiated roams

Change-Id: Ia873c65a7813ae63d8e53d7445095990b0c2fed7
CRs-Fixed: 1039969
(cherry picked from commit 0af3520421400b65002604e0a3a9c7c714cc1e21)
2016-09-11 17:37:17 -07:00
Selvaraj, Sridhar
fd889b56fd qcacld-3.0: Avoid race between user triggered disconnect and OTA disconnect
qcacld-2.0 to qcacld-3.0 propagation

Due to race between user triggered disconnect and OTA disconnect,
On receiving OTA disconnect PE sends DISCONNECT_IND to SME and
waits for conformation from SME. By the time if SME already received
disconnect from user it will give PE DEAUTH_REQ instead of DIASSOC_CNF
messgae. Upon receiving this PE will do the clean up and will send
DEAUTH_RSP message. SME will also process DISASSOC_IND and will send
eSmeCommandWmStatusChange. But this will be in pending queue as user
triggered deauth is in progress as a SME active command. If this is processed
after user initiated disconnect command, HDD will get two disconnects which
cause mess up of eConnectionState_Disconnecting/eConnectionState_NotConnected
states in hdd disconnect handler.

Fix is to remove pending eSmeCommandWmStatusChange command after
DEAUTH_RSP from SME.

Git-commit: 7f0986129d00270d1b7bba3d671bba79ba323933
Change-Id: I004834785491ab7cf3e90371dfd1910c25d0bbef
CRs-Fixed: 1003374
(cherry picked from commit 2b4f56c8dcbc292391d705993c7cd874c3dea008)
2016-09-11 17:36:34 -07:00
Nalla Kartheek
4fc5715f8c qcacld-3.0: Set fProbeRsp flag if PNO ind is from Probe response
qcacld-2.0 to qcacld-3.0 propagation

Kernel updates RSN IEs in BSS table only if it receives the Probe
response. Hence set fProbeRsp flag in BssDescriptor if PNO found
indication is due to probe response.

CRs-Fixed: 907635
Change-Id: I2bfee96c5a2abc6b0730c11e0c694ede81a69a21
(cherry picked from commit abb1af07e98ca6581186538a04a735b33e0ca66f)
(cherry picked from commit 5985919d63cb0e58920fc0022f0807ae36fa19fa)
2016-09-11 17:12:27 -07:00
Deepthi Gowri
9f2fc786f7 qcacld-3.0: Do not make a PMF connection, if supplicant sets it as optional
qcacld-2.0 to qcacld-3.0 propagation

In earlier android builds PMF was not enabled by default in the supplicant
unlike the latest builds. So even if PMF is set as optional, driver was
mandating it. So if we try to roam to an AP which is not PMF capabale
driver would simply drop the connection.

To address this, allow non PMF connection if PMF is set as optional by the
supplicant and the AP is not capable.

CRs-Fixed: 1018482
Change-Id: Ideecb861dcc362f94a73b47d1a4766d621a38214
(cherry picked from commit ec4d9feff5461a575b2988b38428b89cf6337584)
(cherry picked from commit 54b657e08ac628616b8cf6cbddfb9204ecf28ce5)
2016-09-11 17:12:14 -07:00
Selvaraj, Sridhar
4577a9b955 qcacld-3.0: Send p2p ack indication directly to HDD from PE
qcacld-2.0 to qcacld-3.0 propagation

During P2P functionality, Host will send GO NEG REQ and
receives ACK completion from firmware which will be queued
to indicate HDD. Meanwhile if host receives GO-NEG RESP it
will be sent directly to HDD via function callback. In HDD as
we got  GO NEG RESP before ACK completion for GO-NEG REQ, HDD
will generate pkt completion for GO NEG Request.
Now GO NEG CONFORMATION frame will be sent and driver will be
expecting completion for this. The GO NEG REQ ACK completion
which got buffered in PE will be delivered to Supplicant and
Supplicant assumes that this is the ACK for GO NEG CONF frame.
This causes early termination of remain on channel due to which
firmware may drop the GO NEG CONF frame and may not retry as ROC
is terminated.
Fix this by making ACK Completion indication to HDD via function
callback.

Git-commit: 32ddf4196f423b8eaea7ec6c0816e2961aa7fc45
Change-Id: I0dd3acb236b270839649d2becfdc007e7aae9fdd
CRs-Fixed: 1012547
(cherry picked from commit a3996d421de7f55d5a6f7da19d7ff4b568ce7c50)
(cherry picked from commit 42405db3bd3f4b10800cde8cdcd14f521461a5a7)
2016-09-11 17:12:10 -07:00
Hanumanth Reddy Pothula
7f7a27115c qcacld-3.0: Resolve memory leak issues
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)
2016-09-10 19:07:56 -07:00
Kondabattini, Ganesh
b72e25cb7f qcacld-3.0: Define data structures for new AP requirements
qcacld-2.0 to qcacld-3.0 propagation

Defining data structures for below new requirements.
        - beacon_tx_rate
        - vendor_ie
        - vendor_ie_len
        - vendor_ie_assoc_policy
        - sta_inactivity_timeout
        - tx_pkt_fail_cnt_threshold
        - short_retry_limit
        - long_retry_limit
        - ampdu_size
        - supp_rate_set
        - extended_rate_set

Change-Id: I9d05cd7b8e051c4e9e4912cf866206ae32ec293d
CRs-Fixed: 1020078
(cherry picked from commit 8f57eee853baff54397c68c8cd71aeb50610a56a)
2016-09-10 19:06:29 -07:00
Padma, Santhosh Kumar
17fac9f9c5 qcacld-3.0: Reset memory allocation of BSS description
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)
2016-09-10 19:06:20 -07:00
Anurag Chouhan
05d124f8cb qcacld-3.0: Logging level changes on wlan HOST
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)
2016-09-10 19:06:06 -07:00
Mukul Sharma
eae172c061 qcacld-3.0: Prevent Null pointer access during tdls exit
qcacld-2.0 to qcacld-3.0 propagation

Prevent Null pointer access during tdls exit.

Change-Id: I76f5896ae4c51d4816cc0389151e1e27b07d2193
CRs-Fixed: 1017282
(cherry picked from commit bfed788cb89d39092c755cb35b6a6aa4b8772503)
2016-09-10 19:05:56 -07:00
Sreelakshmi Konamki
8dfe91af5f qcacld-3.0: Fix to move newly added enums to the bottom of the list
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)
2016-09-10 19:05:24 -07:00
Sreelakshmi Konamki
beacc2eae2 qcacld-3.0: Resolve unknown code issues in MTRACE logs
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)
2016-09-10 19:05:23 -07:00
Naveen Rawat
cb186cf882 qcacld-3.0: Fix nan data interface create
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)
2016-09-10 19:05:19 -07:00
Rakesh Sunki
cf1c9abd5c qcacld-3.0: Fix NDP ping failure issue
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
2016-09-10 18:49:07 -07:00
Aggarwal, Nishank
9130c3db8d qcacld-3.0: Fix compilation issue for 32 bit builds
In function csr_roam_chk_lnk_disassoc_ind format
specifier to print sizeof() is for 64 bit systems
which leads in compilation error on 32 bit systems.

Fix this issue by common format specifier for both
32 and 64 bit compilation.

Change-Id: Ib3a5df243c8c29040321af4bdcf7230a6e5e0e52
CRs-Fixed: 1055344
2016-09-06 14:26:15 -07:00
Deepak Dhamdhere
f2a7d8be0e qcacld-3.0: Use OkcEnabled .ini flag to control firmware OKC
Turn off opportunistic key caching (OKC) in firmware based on
"OkcEnabled" parameter in WCNSS_qcom_cfg.ini.
It is enabled by default and can be turned off with value 0.
Remove FEATURE_WLAN_OKC compilation option because OKC is always
compiled in for cld3.0. Remove underlying empty routine
cb_notify_set_okc_feature_enabled().

CRs-Fixed: 1057181
Change-Id: I174e860abef0532d62517635fe56927d8c3c9fd3
2016-09-02 21:27:00 -07:00
Kiran Kumar Lokere
ea85ee0516 qcacld-3.0: Correct the country code validation check
Country code comparison result is checked against true value,
but the comparison result is non-zero if the country code is
valid, hence checking the result against true fails and do
not set the country code.

Correct the conditional logic to check if the given country
valid or not.

Change-Id: Id893cfec8571939e4e455fa35ea95310f4c77263
CRs-Fixed: 1060242
2016-09-02 18:23:44 -07:00
Abhishek Singh
f78bd2d501 qcacld-3.0: Ignore security mismatch during WPS registration
qcacld-2.0 to qcacld-3.0 propagation

During WPS registration process the psession encryption type is 0.
Now if AP's beacon have RSN IE, while processing beacons security
mismatch is detected and DUT sends unicast probe request without
WPS IE.

To avoid this ignore security mismatch during WPS registration.

Change-Id: Ic1b4de116ec6a99749ec3d8ba28b29d52190c344
CRs-Fixed: 967553
2016-09-02 18:22:57 -07:00
Gupta, Kapil
76ed25e536 qcacld-3.0: Removed invalid vht IEs for 2.4G in SAP Mode
qcacld-2.0 to qcacld-3.0 propagation

SoftAP should check gEnableVhtFor24GHzBand ini variable before
enabling vht mode in 2.4Ghz mode.
Added changes to turn off vht mode if gEnableVhtFor24GHzBand is
disabled for 2.4Ghz.

Change-Id: I135e5449f95342a98abfa0b9cd5b1849a84c5c4c
CRs-Fixed: 988240
2016-09-02 17:23:27 -07:00
Kapil Gupta
63ddab2c4b qcacld-3.0: Ignore active timeout handler in case of ROC timeout
qcacld-2.0 to qcacld-3.0 propagation

DUT sends continuous GO Negotiation Response for the request
while ROC is in progress. These frames increase timeout of
cancel ROC timer and ROC is not removed from the active timout.
This can cause ROC to be in active cmd list even after current
timeout value.

Add changes to return from active timeout handler in case of ROC.

Change-Id: I58577b5d2addf7614d8ee458df0ce4632dafa7c0
CRs-Fixed: 990808
2016-09-02 17:23:22 -07:00
Sreelakshmi Konamki
544e33b0bb qcacld-3.0: Remove redundant MTRACE logs
qcacld-2.0 to qcacld-3.0 propagation

Currently few MTRACE logs are logged repetitively which leads to
overwriting of other important MTRACE logs.

To avoid this,
1. Remove MTRACE logs which are seen repetitively in scan,
   connect/disconnect path and few timer functions.
2. Remove MTRACE log in lim_process_mlm_req_messages() and
   lim_process_sme_req_messages() as few enums already logged in
   lim_process_messages().
   Add MTRACE log in lim_post_mlm_message() and lim_post_sme_message() for
   the rest of enums which are not logged in lim_process_messages()

Change-Id: I1478f3e9ab8fb57d8b8b2f65cf2eb3450eb7b64c
CRs-Fixed: 855840
2016-09-02 17:23:07 -07:00
Sreelakshmi Konamki
6a06536e7f qcacld-3.0: Add missing MTRACE logs in SME
qcacld-2.0 to qcacld-3.0 propagation

MTRACE logs are not present in SME, for messages tx/rx WMA.
So add missing MTRACE logs in SME before transmitting and
after receiving messages to/from WMA.

Change-Id: Iac45ffc1736eecc40e203174888e296767b50a0d
CRs-Fixed: 855871
2016-09-02 17:23:03 -07:00
Sreelakshmi Konamki
58697e1331 qcacld-3.0: Fix suspicious dereference of pointer
qcacld-2.0 to qcacld-3.0 propagation

Dereference of 'roamSession' pointer before NULL check in
sme_is_sta_smps_allowed().

Fix to move dereference statements after NULL check.

Change-Id: I04d72a4b8fbc4ba68850ae665e2248a386fa4c10
CRs-Fixed: 992082
2016-09-02 17:22:56 -07:00
Aggarwal Nishank
51dece43e2 qcacld-3.0: Fix compilation issue for 32 bit builds
In function csr_roam_chk_lnk_disassoc_ind frame size
exceeds 1024 bytes. Because of this compilation fails
on 32 bit systems as there is stack check flag on
32-bit compilation.

Fix is to convert stack allocations to dynamic memory
allocation.

Change-Id: I7c91bc0ed91796ba4dac9c85ea4b1b6f2d8a6ee5
CRs-Fixed: 1055344
2016-09-02 17:22:48 -07:00
Kapil Gupta
0a2477b23f qcacld-3.0: Set initial dense status in case of dense roaming
In case of dense roam scenario, Host should set initial dense
status if roamable AP count is more than minimum dense AP count.
Current implementation checks for the number of channels in roam
cache list instead of AP count.

Add changes to set the flag if roamable AP count is more than
configured value.

Change-Id: I4d5f7c6c69b1a9a527aace1677050373065af213
CRs-Fixed: 1058211
2016-08-27 15:52:52 -07:00
Selvaraj, Sridhar
fe696d2bac qcacld-3.0: Update RRM scan results to user space
qcacld-2.0 to qcacld-3.0 propagation

Currently RRM scan results are sent out to the requesting AP, but
are not updated to the kernel.

Update the results to the kernel so that it will be useful in future
in the userspace if a BTM request is received and the lookup of
scan cache can fetch a result for the target AP and an additional
scan can be avoided.

Git-commit: 3075ac910c015ce525bf8badd1eb4a277286b28f
Change-Id: Ie56b86e5c54910648cb2ae8bf2a7dac2ee873e00
CRs-Fixed: 1010596
2016-08-27 15:46:48 -07:00
Selvaraj, Sridhar
6f92ecb764 qcacld-3.0: Start the scan right away for RRM beacon requests
qcacld-2.0 to qcacld-3.0 propagation

Currently all the scan requests going from the host to the
firmware pass a rest time to the firmware. The firmware
waits for the rest time before starting the scan. This is
not needed in the case of RRM beacon requests with single
channel request to make it more optimal.

Configure the rest times to minimum and start the scan
right after receiving the request

Git-commit: b0132824baeceb25bbc80d0e82ed6693b783b4dd
Change-Id: Ia5c5a1c2c765d13611b901742910325954ce3d8a
CRs-Fixed: 1010596
2016-08-27 15:45:44 -07:00
Srinivas Girigowda
c34f11dfd8 qcacld-3.0: Add support to enable/disable packetlog using iwpriv
Add support to enable/disable packetlog using
iwpriv wlan0 pktlog command.

Change-Id: Ia17f659e16221985be5cd9e75ebf0c46f2dc5693
CRs-Fixed: 970647
2016-08-20 10:36:55 -07:00
Krunal Soni
0193b6f143 qcacld-3.0: Provide support enable RX LDPC in certain cases
In following conditions RX LDPC support needs to be enabled
1) when STA is coming up in 5G band
2) when IBSS is coming up in 5G band

for anyother cases RX LDPC needs to be disabled. If user has
choosen RX LDPC to be disabled from INI file then it needs to
be disabled for all the cases including above mentioned cases.

To achieve this, take the intersection of global, INI, and harware
specific RX LDPC settings.

Change-Id: Iae10aa4a8c0931cdb796cd9c8ff558d4bc8e0aed
CRs-Fixed: 1050004
2016-08-19 18:52:48 -07:00
Sandeep Puligilla
829d6acb75 qcacld-3.0: Remove duplicate OBSS start scan request
Host is sending OBSS start scan request twice to firmware.
OBSS scan start is triggered as part of the set context response
processing and it gets called twice after association.

Added condition check to allow only once the OBSS scan request.

Change-Id: I8ccc7172df9d89aaa09ad924ced7f8ed5a6ace13
CRs-Fixed: 1053626
2016-08-17 20:06:11 -07:00
Masti, Narayanraddi
ab712a7a63 qcacld-3.0: Fix to encrypt broadcast frames
qcacld-2.0 to qcacld-3.0 propagation

Currently, In SAP mode due to incorrect wep key
index broadcast frames are not encrypted.

Fix is to make sure to update default index for
BSS(group) key.

Change-Id: I328855decbad20dbd88b48022e466e4f78f5d722
CRs-Fixed: 932749
2016-08-17 11:21:47 -07:00
Krunal Soni
53993f7939 qcacld-3.0: Sessionize VHT Capability
Sessionize VHT Capability by updating the session
entry at join request or start bss and read the same
capablities at LIM instead of reading from global VHT
CFG items.

Following CFG items are taken care as part of this change.
WNI_CFG_VHT_SU_BEAMFORMER_CAP,
WNI_CFG_VHT_SU_BEAMFORMEE_CAP,
WNI_CFG_VHT_CSN_BEAMFORMEE_ANT_SUPPORTED,
WNI_CFG_VHT_MU_BEAMFORMER_CAP,
WNI_CFG_VHT_MU_BEAMFORMEE_CAP

Change-Id: I7c33de1180416db0027b4690170060549847dd9a
CRs-Fixed: 1029145
2016-08-13 18:26:59 -07:00
Sandeep Puligilla
9891743c1e qcacld-3.0: Sessionize VHT Capability
Sessionize VHT Capability by updating the session
entry at join request or start bss and read the same
capablities at LIM instead of reading from global VHT
CFG items .

Change-Id: Idef009d4c76cfc6939359dc09379fc1f0d820589
CRs-Fixed: 1029145
2016-08-13 18:26:47 -07:00
Naveen Rawat
64e477ea40 qcacld-3.0: Add support for 5/10 MHz for STA and SAP role
Add support for 5/10 MHz channel width for STA and SAP role. To
enable/disable feature, following ini parameter will be used:
 * gSub20ChannelWidth=0: indicates do not use Sub 20 MHz bandwidth
   this is also the default value.
 * gSub20ChannelWidth=1: Bring up SAP/STA in 5 MHz bandwidth
 * gSub20ChannelWidth=2: Bring up SAP/STA in 10 MHz bandwidth

Change-Id: Ic6d534dc1eae60fcd2fb7533c934b9ea28e6dd78
CRs-Fixed: 1013211
2016-08-13 14:07:29 -07:00
Rakesh Sunki
1f0553fd55 qcacld-3.0: Fix NAN APIs when NAN data path feature is disabled
qcacld-2.0 to qcacld-3.0 propagation

Add NAN API wrapper function definitions and also fix compilation
failure when NAN data path feature is disabled.

Change-Id: Ib4a3133568eee0c2257c65bb0a8905c44048f0c2
CRs-Fixed: 1049546
2016-08-13 14:07:29 -07:00
Rakesh Sunki
ae936b6a50 qcacld-3.0: Delete peer(if needed) in ndp end indication
qcacld-2.0 to qcacld-3.0 propagation

Take action to delete peer in NDP_END Indication, rather than
NDP_END Response event from firmware. Earlier, device initiating
NDP_END will only get NDP_END_Response event from firmware, but
that behavior is changed now and both self and peer device will get
NDP_END_indication with peer map for ndp end.

Change-Id: I7316cc3864052eef4c7bbe9bbac01f0333909c59
CRs-Fixed: 962367
2016-08-13 14:07:29 -07:00
Krunal Soni
cbda8555e6 qcacld-3.0: Remove deprecated API csr_isconcurrentsession_valid
In current driver, there is already an API called cds_allow_concurrency
which is functionally similar to csr_isconcurrentsession_valid. Remove old
API csr_isconcurrentsession_valid to have single API.

Change-Id: If81900af5cb7291917fe915b44af5cf763f16d46
CRs-Fixed: 1047054
2016-08-13 14:07:28 -07:00
Krishna Kumaar Natarajan
c1fa17d047 qcacld-3.0: Remove usage of typedef for oem related structures
Remove the usage of typedef for oem data request and oem
data response data structure.

Change-Id: I94f05833baa9b6baaf2272f63a33236437a96bbf
CRs-Fixed: 1038872
2016-08-04 12:35:36 -07:00
Krishna Kumaar Natarajan
bbbf2ef17b qcacld-3.0: Remove unused data structures related to OEM message
Remove unused data structures related to OEM message

Change-Id: I33c5190b78ffff2bf160e57a6edaf4b67189062c
CRs-Fixed: 1038872
2016-08-04 12:35:34 -07:00
Krishna Kumaar Natarajan
ad79826137 qcacld-3.0: Remove global oem data request/response buffer
Remove global oem data request/response buffer.

Change-Id: I95078c985c5034d9d530ad542ace129309d79886
CRs-Fixed: 1038872
2016-08-04 12:35:33 -07:00
Krishna Kumaar Natarajan
73ea9f2259 qcacld-3.0: Remove oem data rsp passing over multiple layers
Remove oem data rsp passing over multiple layers.

This change set sends the OEM data response directly to
SME from WMA instead of going through LIM/MLM.

Change-Id: I3cff10ff7bdbcee39b39bd9ba03b5eff8444b017
CRs-Fixed: 1038872
2016-08-04 12:35:30 -07:00
Krishna Kumaar Natarajan
c5e06accd6 qcacld-3.0: Remove oem data request passing over multiple layers
Remove oem data request passing over multiple layers.

This change set sends the OEM data request directly from
SME to WMA instead of going through LIM/MLM.

Change-Id: I151fa771544e9f74b1b69b18d689176752760621
CRs-Fixed: 1038872
2016-08-04 12:35:28 -07:00
Selvaraj, Sridhar
258594ca59 qcacld-3.0: Fix uninitialized heap and stack usage
qcacld-2.0 to qcacld-3.0 propagation

Fix uninitialized stack use in csrRoamReadTSF by initializing
variable of struct type tCsrNeighborRoamBSSInfo to zero.

Git-commit: d39cf92e69222e03f89238313f5b8c100ecd4ecc
Change-Id: I4211b41b5e30d414e45691a5bab4048587cc8499
CRs-Fixed: 1018486
2016-08-03 18:57:35 -07:00
Selvaraj, Sridhar
bc950df65f qcacld-3.0: Fix stack corruption issue in sme_RrmProcessNeighborReport
qcacld-2.0 to qcacld-3.0 propagation

When STA process Neighbor report from AP, session_id is declared
as one byte variable and its overwritten with four bytes value
in csrRoamGetSessionIdFromBSSID. This is observed on enabling stack
protection in kernel config(CONFIG_CC_STACKPROTECTOR).

Fix is to declare session_id as four bytes variable.

Git-commit: 96646d1eb48c4f3bf45555b8f636f90cf925b8b8
Change-Id: I6b2fd40a5466fe5dd72d394abb682229a550e0b1
CRs-Fixed: 1025272
2016-08-03 18:57:16 -07:00
Rajeev Kumar
348ed99339 qcacld-3.0: Add memory allocation failure check for BPF instructions
Add check for BPF instructions memory allocation failure and fail
the request gracefully if memory allocation fails.

Change-Id: Ifa6cab73c59aa4a7c587fa0b7d38e9b8523a3b1c
CRs-Fixed: 1047209
2016-08-03 18:57:10 -07:00
Rajeev Kumar
e5a1682c3e qcacld-3.0: memset bpf load to zero, update the bpf enabled correctly
Propagation from qcacld-2.0 to qcacld-3.0

- Current length of bpf is not set during the reset filter. set offload
  is allocated through malloc, so invalid values for current_length
  are recieved during reset. Memset set_bpfload to zero after
  allocation.
- update the bpf service to hdd correctly depending on the
  wmi service bitmap recieved from the firmware.

Change-Id: Iaf4774865cf0698a2deebac5cea62c873146e838
CRs-Fixed: 985562
2016-08-03 18:55:55 -07:00
Arif Hussain
d3bf1115ef qcacld-3.0: Fix memory leak in csr_update_lost_link1_cmd
In function csr_update_lost_link1_cmd, memory is allocated to
local variable struct scan_filter, further we passing this
variable to csr_roam_prepare_filter_from_profile function and
allocating memory to the members of the scan_filter. At some
point in the function we are returning without freeing memory
allocated to scan_filter, which causes memory leak.

Make sure to free scan_filter’s memory before returning.

Change-Id: I448cf0d4bb16d4769b50c96495038684909e0739
CRs-Fixed: 1048116
2016-08-03 18:34:39 -07:00