Host driver processes cld80211 vendor sub command
CLD80211_VENDOR_SUB_CMD_GET_CAPS and respond with
NLA type CAP response
CRs-Fixed: 2595140
Change-Id: I5a6aa1fac537ca618404520b81c541a20dafd6fb
This is a propagation of qcacld-2.0 commit 98821c7dcf49d ("qcacld-2.0:
Add CONFIG_MULTI_IF_LOG to support multi if log"). Add CONFIG_MULTI_IF_LOG
to support multi if log by assigning the specific netlink protocol
when dual wlan cards are loaded.
Change-Id: I827fbd46893c47ed2d9b123bf753c06b2e115fbb
CRs-Fixed: 2525488
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within utils replace any such comparisons with logical
operations performed on the pointer itself.
Change-Id: Iae6c2f2f0b3041a9397dd13092ea500a8b995fd2
CRs-Fixed: 2418251
Qcacld supports multiple driver modules instance generation with
different file names and Kbuild options. Fix driver load time and
compilation errors on this feature.
Change-Id: I1ad66d3855379a59be071f8d0c4504a9bb5ebd5b
CRs-fixed: 2208751
Current cld80211 nl message size depends on PAGE_SIZE. PAGE_SIZE
can be 4K and thus it's limiting the maximum nl message size to
4K bytes. Make the max supported nl message size to 8K bytes
irrespective of PAGE_SIZE.
Change-Id: I58fe8f85a5c9a0476fc5df75d0caa342cc261967
CRs-Fixed: 2053305
Currently nl_srv_bcast() and nl_srv_ucast() allocate a temporary
buffer to hold the netlink message which is subsequently sent to
userspace. The value returned by qdf_mem_malloc() is not checked for
NULL, and hence if NULL is returned it will be dereferenced.
However in reality a temporary buffer is not required. Update the
functions to directly send the message from the skb.
Change-Id: Ia12e1695498323c4e29b8280b9265c20393a2fe7
CRs-Fixed: 2111674
Presently if the module name is changed to something other than wlan,
then MULTI_IF_NAME is defined and cnss diag log can't be captured
because the driver doesn't register itself to cnss_logger module.
Add fix to resolve this issue.
Also add free skb buffer operation for one case to sync with qcacld-2.0.
Change-Id: I815c5260fbc248e37e1ec0417ed5a8cc476ca8b7
CRs-Fixed: 2029803
Function dbglog_set_log_lvl needs to be commented out for WIN compilation
since enum DBG_LOG_LVL is not converged. Functions nl_srv_bcast and
nl_srv_is_initialized needs to be exported out for pushing FW Diag Log
events to user-space (cnss-diag)
CRs-Fixed: 2048651
Change-Id: I57a4bd3d78680b97bd75191ca58349abeb77240a
If netlink_unicast() fails it already frees SKB buffer hence
do not double free the SKB when netlink_unicast() returns failure.
Change-Id: I2aa99c47f99c573abbd281c06ff58fcb38aad76b
CRs-Fixed: 2022800
Add single wrapper API to send message over legacy userspace socket
or GENL socket.
Change-Id: I7cf46651d64467e77d85c147080d74a7470e42d6
CRs-Fixed: 2003488
Currently user space communication functions[cnss diag, PTT socket app]
in host driver uses netlink user sockets which is a security concern from
Linux Android SE policies.
Add support for to use netlink family cld80211 which uses generic
netlink sockets.
Change-Id: Ia833249c1f312415e38563d90214979cea3d9f0e
CRs-Fixed: 2015931
There is a memory leak within wlan logging thread.
To address this issue free the memory at appropriate places.
Change-Id: I41c7756d6547c0bfa783a48ebc31c9f1ef0df5db
CRs-Fixed: 2011525