Currently struct nan_datapath_peer_ind contains the following:
uint8_t session_id;
This is problematic since "session_id" is a legacy concept and should
not be used in the converged project. Fortunately this field does not
actually serve any purpose. But in order to cleanly remove it a 3-step
approach is required.
Step 1 (this change):
Remove the logic from the converged NAN code which currently reads
this field and logs the value.
Step 2 (qcacld-3.0 Change I2819556d48a9dd901158aaa04d6bda9c36f33012):
Remove the logic from the legacy NAN code which sets this field.
Step 3 (qcacld Change Ibeb8007c96ae1a902bfd7dd99a42ba4a291a1dc6):
Remove the session_id field from struct nan_datapath_peer_ind.
Change-Id: If6cf48ccbfe87b23b275720df51c6cc26af9fa5e
CRs-Fixed: 2284399
Normally probe request is sent in a passive channel if the
beacon received from the AP. With the strict passive scan
feature, STA doesnot send the probe request even if it
receives beacon from AP.
This can be enabled by using below command.
iwpriv /cfg80211 wifix pas_scanen 1/0
Added a support to send strict passive scan flag to FW in
cfg80211 framework during scan start command.
Change-Id: Ia2c069872541dba64c3d11fc0b533c2d202ee898
CRs-Fixed: 2280181
When disconnect happens, TDLS_NOTIFY_STA_DISCONNECTION will be
send to scheduler_thread, in bad case, it is processed after
3s later, and the vdev passed in notify msg has been freed in
the period, invalid vdev causes invalid memory access.
change as below:
1.1 Get vdev ref before send msg
1.2 register callback for release ref
1.3 send msg to scheduler_thread
1.4 process tdls notify msg and call callback function.
Change-Id: I2b03db8b30db623796f2e8299f14ee31e28efb91
CRs-Fixed: 2275019
Map all module level log APIs to per-level log APIs
to compile out specific log level if required.
Change-Id: I4072b6740cb43200fd95c40943b66e1d5f8f1847
CRs-Fixed: 2266719
Such log will show once has the spectral scan result message
need to send to application, which is boring and delete it
Change-Id: I4e7fd8877b354d94022b65a8e43cc4ca3e285943
CRs-Fixed: 2274032
Currently, it uses the dev mac as peer mac addr for parameter and
the function wlan_obj_psoc_peerlist_get_peer_by_pdev_id returns
NULL because the mac addr does not match. Then the callback will
be ignored for WMI_UPDATE_STATS_EVENTID.
Change-Id: I6e257d3103315bbacb66b3f5db660cfa883966b5
CRs-Fixed: 2272056
Forward declare 'struct wmi_spectral_cmd_ops' in
file wlan_spectral_utils_api.h to avoid
compilation issue when spectral feature flag
is disabled.
Change-Id: Iba8dfbb2007f20d409fbb2d67ee29f702264e50d
CRs-Fixed: 2269005
Add support for Short Range Devices 25 mW max power
channels in ETSI regulatory domain.
Add Short Range Devices 25 mW max power channels only
if DSRC feature is disabled.
Provide service apis to check SRD and DSRC channels.
Change-Id: Ib2a1d7cf191d07319cb29038ad60130f5cbe7f16
CRs-Fixed: 2264790
Error: implicit conversion from enumeration type
'enum wlan_umac_comp_id' to different enumeration type
'wlan_objmgr_ref_dbgid' [-Werror,-Wenum-conversion]
Change-Id: I641c1eee77e977547841cebb4fd2fef8c06ca18c
CRs-Fixed: 2271058
Vendor abort scan request is cancelling all
the pdev scans instead of a specific scan command.
Modified vendor abort scan API to cancel specific
scan request.
Change-Id: I087637e44b8ee7f6cc12e9e47db04eec3f9ff93e
CRs-Fixed: 2270030
Sometime user may not delete active NDP sessions before deleting NDI or
may not delete NDI before driver unload. In such case vdev/peer object
memory will leak. Free all NDI peers for that vdev before processing NDI
delete and free all NDI peers/vdev at driver unload.
Change-Id: I04631ffd611d6ded318ddfb65b2dfeba479c9bdc
CRs-Fixed: 2262769
Add support for NDP TCP/IP params in ndp initiator
request, responder request, indication and confirm.
Change-Id: I5d60af154ea4a2f33d18d9b86049f316e7fbc524
CRs-Fixed: 2252227
Assign the vdev in NDP request message and hold the vdev reference till
the command is processed. Else the consumer of message will fail when
trying to take reference since vdev was not set in request packet.
Change-Id: I4c7e50690eff1f92f151f00209ec786a03252e76
CRs-Fixed: 2252035
Create NDI vdev after adapter is added to back of hdd adapter list,
so that vdev create completion callback can identify right adapter
and set corresponding completion variable.
Change-Id: Id0d78a5e482c875fee346224f37c29a874814133
CRs-Fixed: 2252031
Add vendor command support to enable or disable GTX.
Currently there is no vendor attribute to enable/disable
GTX from vendor command. Add vendor attribute
QCA_WLAN_VENDOR_ATTR_CONFIG_GTX support through
QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION vendor command
and with new wmi command WMI_VDEV_PARAM_GTX_ENABLE.
Change-Id: I8a740f9209ffd5f6438c3cfdd830ee2a76d0aa52
CRs-Fixed: 2261322
Android Packet Filter 3.0 requires the framework to be able to
read and write into the APF work memory in the Firmware. It
also requires to be able to enable or disable the interpreter.
New WMI commands are defined for read/write/enable/disable
operations.
Complete the implementation of these new commands.
Change-Id: I852d61eb213d9ae530e8a71069144ef35816f5b8
CRs-Fixed: 2184971
In case os_if request times out, free the corresponding
memory allocated for stats event to os_if.
Change-Id: I23bd65f2b79c71070d65b5e4045eaf4e17113354
CRs-Fixed: 2262653
In implementation of Android Packet Filter, functions, variables,
definitions are named after BPF, which stands for Berkely Packet
Filter. The term was more appropriate for Link Layer packet
filters implemented in the Linux kernel, known as Linux Socket
Filters.
The term BPF is obsolete now, so rename it with the
appropriate acronym, APF.
Change-Id: I606afc747cddedb524a41cd8e5998400f04e69f6
CRs-Fixed: 2191531
While processing of NDP responder request if NDP response code is
accept NDI interface is must. Throw error if interface is not provided
and bail out of the function.
Change-Id: I7266e3c82062130f6dbeb078cddfaa15a87d9197
CRs-Fixed: 2247586
In low memory environments using GFP_KERNEL flag may cause
scheduler thread to sleep. Scheduler thread callback handlers
are expected to be atomic in nature to ensure timely execution
of different commands. Move all allocations done by scan module
in scheduler thread context to atomic allocation.
Change-Id: Iee3eafbc00a3afea0687ba67b3041ec0816094cc
CRs-Fixed: 2232553
Add support to send regulatory rules info in regulatory sync
event to user space for self managed regulatory when regulatory
info is updated.
Change-Id: Iac8704598fd181e47cb023405dfe592c4c93f51b
CRs-Fixed: 2242701
Add change to support get API for dcs chan stats from
within cp stats component
Change-Id: I55af5d83389f34c6c7ff9a7f2a7826eb3a9f4a4c
CRs-Fixed: 2247228
Add change to support get API for ATF peer cp stats from
within cp stats component
Change-Id: I1f7ed2e2d1c071df28f34f08d137be1302f61c36
CRs-Fixed: 2247228
Add spectral scan feature flag which can be
used to control the feature through build options.
Change-Id: Ic56416fc99b521174cccb3af27cc841bfb2ad27d
CRs-Fixed: 2244334
It may return NULL, which pass to another function and dereference it.
Check return value, don't pass to another function if return value is
NULL.
Change-Id: Ib2e87231bb724c5631c12e9bee98c22d4dcc9bf2
CRs-Fixed: 2233639
Add support for ndp schedule update event and provide channel information
in ndp confirm event.
Change-Id: Ic2c073dd4f220627cc2bd1a2d52d858136b6b450
CRs-Fixed: 2180310
Add change to alloc memory for WIN specific cp stats
structures, provide get/set API in cp stats component
for other umac component, reorganize files according
to usage inclusion in other header files
Change-Id: I8b4e4435f60cc0587917ad09ac99659f83f2cb10
CRs-Fixed: 2236328
Update qca_vendor with NAN attributes for TCP/IP info for IPv6
address transport port and transport protocol.
Change-Id: I2176cede68347c92b6f4ddddadfa56b9591ff8fa
CRs-Fixed: 2244176
Address the following issues in qca_vendor.h:
CHECK: 'Minumum' may be misspelled - perhaps 'Minimum'?
CHECK: 'staion' may be misspelled - perhaps 'station'?
Change-Id: Ifbeec8544ffefa45b9b211c888e65b418695ad38
CRs-Fixed: 2241579
Update qca_vendor.h with latest NDP vendor attribute definitions
and use those definitions in NAN component.
Change-Id: I43f0457690b1c4027adcd0abe4ef2ac2a8f9b068
CRs-Fixed: 2239047
The qca_wlan_vendor_ndp_policy for the attribute
QCA_WLAN_VENDOR_ATTR_NDP_CONFIG_QOS currently specifies type
NLA_BINARY with a maximum length of NDP_QOS_INFO_LEN (255). However
this attribute is defined to be an unsigned 32 bit value, and
nla_get_u32() is used to read the value, so change the policy to use
type NLA_U32 so that nla_parse() can properly verify that the TLV
payload has (at least) 4 bytes of data.
Change-Id: Iee5b620ef199b731fc6a449d0055db328430921b
CRs-Fixed: 2237660
The qca_wlan_vendor_ndp_policy for the attribute
QCA_WLAN_VENDOR_ATTR_NDP_RESPONSE_CODE currently specifies type
NLA_U16. However this attribute is defined to be an unsigned 32 bit
value, and nla_get_u32() is used to read the value, so change the
policy to use type NLA_U32 so that nla_parse() can properly verify
that the TLV payload has (at least) 4 bytes of data.
Change-Id: I915a94e7449c2bc1abde64e2a7f5df6a58488ed6
CRs-Fixed: 2237659
The current qca_wlan_vendor_ndp_policy for attribute
QCA_WLAN_VENDOR_ATTR_NDP_PEER_DISCOVERY_MAC_ADDR uses type NLA_BINARY.
Unfortunately this type uses the len as a maximum length and not a
minimum length which means that nla_parse() cannot guarantee that 6
bytes of MAC address are present. Change the policy to use type
NLA_UNSPEC so that nla_parse() will ensure that the NDP Discovery MAC
address TLV contains (at least) 6 bytes.
Change-Id: I2c7e1efdb413dbd2f79c36ed1626c006b86e8b5b
CRs-Fixed: 2237658
Spectral scan period is not in terms of tclk periods for
generation 3 Spectral HW. It is directly in micro seconds.
Default value is 224 us. Driver needs to use 224 us as
default value. Application needs to display the unit as
tclk period till generation II and micro second for
generation III. For this driver will be sharing the
Spectral HW generation info to application as part of
the capability exchange.
CRs-Fixed: 2225740
Change-Id: Iaeda8ebb77c2a39824b5f919e8578ff4d56c1aa5