qcacmn: Do not send OUI to FW if info_presence OUI bit is not set

In cases where the user wants to ignore the OUI and OUI data in the
INI, the OUI bit of info_presence field is set to 0. In such cases
the OUI length would be 0.

Do not send OUI to FW if info_presence OUI bit is not set.

Change-Id: Ib55ad0dbb917c01ac7a9b024d2ac6d6e9cc42d4a
CRs-Fixed: 2294624
This commit is contained in:
Vignesh Viswanathan
2018-08-14 12:48:09 +05:30
committed by nshrivas
parent 041b10a5f7
commit 9ef73cbd90

View File

@@ -54,7 +54,10 @@ bool wmi_get_action_oui_id(enum action_oui_id action_id,
uint32_t wmi_get_action_oui_info_mask(uint32_t info_mask)
{
uint32_t info_presence = WMI_BEACON_INFO_PRESENCE_OUI_EXT;
uint32_t info_presence = 0;
if (info_mask & ACTION_OUI_INFO_OUI)
info_presence |= WMI_BEACON_INFO_PRESENCE_OUI_EXT;
if (info_mask & ACTION_OUI_INFO_MAC_ADDRESS)
info_presence |= WMI_BEACON_INFO_PRESENCE_MAC_ADDRESS;
@@ -126,8 +129,11 @@ wmi_fill_oui_extensions_buffer(struct action_oui_extension *extension,
var_buf[0] = i;
var_buf++;
qdf_mem_copy(var_buf, extension->oui, extension->oui_length);
var_buf += extension->oui_length;
if (extension->oui_length) {
qdf_mem_copy(var_buf, extension->oui,
extension->oui_length);
var_buf += extension->oui_length;
}
if (extension->data_length) {
qdf_mem_copy(var_buf, extension->data,