mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-14 08:36:12 -04:00
Merge remote-tracking branch 'origin/wlan-cmn.driver.lnx.1.0-dev' into wlan-cmn.driver.lnx.2.0-dev
Fast-forwarding wlan-cmn.driver.lnx.2.0-dev to the tip of wlan-cmn.driver.lnx.1.0-dev which has driver version 5.1.0.22W * origin/wlan-cmn.driver.lnx.1.0-dev: Release 5.1.0.22W qcacmn: Modify __qdf_assert to invoke QDF_BUG Release 5.1.0.22V qcacmn: Reduce wake up IRQ enable/disable log level Release 5.1.0.22U qcacmn: Add API to update mark parameter in sk_buff structure qcacmn: Send anycast addresses for NS offload Release 5.1.0.22T qcacmn: Add support to provide assoc IEs to FW in RSO command qcacmn: Send anycast addresses for NS offload Change-Id: Ibc028c027427b2b31bb0123be2bcc0236b7c7389
This commit is contained in:
commit
a57aacae73
7 changed files with 81 additions and 5 deletions
|
|
@ -1,2 +1,2 @@
|
|||
Current Component wlan-cmn.driver.lnx.1.0 version 5.1.0.22S
|
||||
Current Component wlan-cmn.driver.lnx.1.0 version 5.1.0.22W
|
||||
Matches Component wlan-cld3.driver.lnx.1.1 version 5.1.0.22C
|
||||
|
|
|
|||
|
|
@ -371,8 +371,8 @@ QDF_STATUS hif_snoc_setup_wakeup_sources(struct hif_softc *scn, bool enable)
|
|||
return QDF_STATUS_E_RESOURCES;
|
||||
}
|
||||
|
||||
HIF_ERROR("%s: expecting wake from ce %d, irq %d",
|
||||
__func__, dl_pipe, irq_to_wake_on);
|
||||
HIF_INFO("%s: expecting wake from ce %d, irq %d enable %d",
|
||||
__func__, dl_pipe, irq_to_wake_on, enable);
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2057,4 +2057,17 @@ qdf_nbuf_get_priv_ptr(qdf_nbuf_t buf)
|
|||
*/
|
||||
unsigned int qdf_nbuf_update_radiotap(struct mon_rx_status *rx_status,
|
||||
qdf_nbuf_t nbuf, uint32_t headroom_sz);
|
||||
|
||||
/**
|
||||
* qdf_nbuf_mark_wakeup_frame() - mark wakeup frame.
|
||||
* @buf: Pointer to nbuf
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
static inline void
|
||||
qdf_nbuf_mark_wakeup_frame(qdf_nbuf_t buf)
|
||||
{
|
||||
__qdf_nbuf_mark_wakeup_frame(buf);
|
||||
}
|
||||
|
||||
#endif /* _QDF_NBUF_H */
|
||||
|
|
|
|||
|
|
@ -66,6 +66,9 @@ typedef struct sk_buff *__qdf_nbuf_t;
|
|||
#define QDF_NBUF_CB_PACKET_TYPE_WAPI 3
|
||||
#define QDF_NBUF_CB_PACKET_TYPE_DHCP 4
|
||||
|
||||
/* mark the first packet after wow wakeup */
|
||||
#define QDF_MARK_FIRST_WAKEUP_PACKET 0x80000000
|
||||
|
||||
/*
|
||||
* Make sure that qdf_dma_addr_t in the cb block is always 64 bit aligned
|
||||
*/
|
||||
|
|
@ -1655,5 +1658,16 @@ static inline void __qdf_invalidate_range(void *start, void *end)
|
|||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* __qdf_nbuf_mark_wakeup_frame() - mark wakeup frame.
|
||||
* @buf: Pointer to nbuf
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
static inline void
|
||||
__qdf_nbuf_mark_wakeup_frame(__qdf_nbuf_t buf)
|
||||
{
|
||||
buf->mark |= QDF_MARK_FIRST_WAKEUP_PACKET;
|
||||
}
|
||||
|
||||
#endif /*_I_QDF_NET_BUF_H */
|
||||
|
|
|
|||
|
|
@ -203,7 +203,7 @@ static inline bool __qdf_is_macaddr_equal(struct qdf_mac_addr *mac_addr1,
|
|||
pr_err("Assertion failed! %s:%s %s:%d\n", \
|
||||
# expr, __func__, __FILE__, __LINE__); \
|
||||
dump_stack(); \
|
||||
BUG_ON(1); \
|
||||
QDF_BUG(0); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
|
|
|
|||
|
|
@ -237,6 +237,8 @@
|
|||
#define TARGET_INIT_STATUS_GEN_FAILED 0x1
|
||||
#define TARGET_GET_INIT_STATUS_REASON(status) ((status) & 0xffff)
|
||||
#define TARGET_GET_INIT_STATUS_MODULE_ID(status) (((status) >> 16) & 0xffff)
|
||||
|
||||
#define MAX_ASSOC_IE_LENGTH 1024
|
||||
typedef uint32_t TARGET_INIT_STATUS;
|
||||
|
||||
typedef enum {
|
||||
|
|
@ -1714,6 +1716,8 @@ struct roam_offload_scan_params {
|
|||
* structure */
|
||||
roam_offload_param roam_offload_params;
|
||||
#endif
|
||||
uint32_t assoc_ie_length;
|
||||
uint8_t assoc_ie[MAX_ASSOC_IE_LENGTH];
|
||||
};
|
||||
|
||||
/* struct roam_offload_scan_rssi_params - structure containing
|
||||
|
|
@ -3080,6 +3084,7 @@ struct wmi_dual_mac_config {
|
|||
* @self_macaddr: self mac address
|
||||
* @srcIPv6AddrValid: src ipv6 address valid flag
|
||||
* @targetIPv6AddrValid: target ipv6 address valid flag
|
||||
* @target_ipv6_addr_ac_type: target ipv6 address type
|
||||
* @slotIdx: slot index
|
||||
*/
|
||||
struct ns_offload_req_params {
|
||||
|
|
@ -3089,6 +3094,7 @@ struct ns_offload_req_params {
|
|||
struct qdf_mac_addr self_macaddr;
|
||||
uint8_t srcIPv6AddrValid;
|
||||
uint8_t targetIPv6AddrValid[WMI_MAC_NUM_TARGET_IPV6_NS_OFFLOAD_NA];
|
||||
uint8_t target_ipv6_addr_ac_type[WMI_MAC_NUM_TARGET_IPV6_NS_OFFLOAD_NA];
|
||||
uint8_t slotIdx;
|
||||
};
|
||||
#endif /* WLAN_NS_OFFLOAD */
|
||||
|
|
|
|||
|
|
@ -4082,6 +4082,7 @@ QDF_STATUS send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
wmi_roam_11i_offload_tlv_param *roam_offload_11i;
|
||||
wmi_roam_11r_offload_tlv_param *roam_offload_11r;
|
||||
wmi_roam_ese_offload_tlv_param *roam_offload_ese;
|
||||
wmi_tlv_buf_len_param *assoc_ies;
|
||||
#endif /* WLAN_FEATURE_ROAM_OFFLOAD */
|
||||
/* Need to create a buf with roam_scan command at
|
||||
* front and piggyback with scan command */
|
||||
|
|
@ -4116,13 +4117,17 @@ QDF_STATUS send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
} else {
|
||||
len += WMI_TLV_HDR_SIZE;
|
||||
}
|
||||
|
||||
len += (sizeof(*assoc_ies) + (2*WMI_TLV_HDR_SIZE)
|
||||
+ roundup(roam_req->assoc_ie_length,
|
||||
sizeof(uint32_t)));
|
||||
} else {
|
||||
if (roam_req->is_roam_req_valid)
|
||||
WMI_LOGD("%s : roam offload = %d",
|
||||
__func__, roam_req->roam_offload_enabled);
|
||||
else
|
||||
WMI_LOGD("%s : roam_req is NULL", __func__);
|
||||
len += (2 * WMI_TLV_HDR_SIZE);
|
||||
len += (4 * WMI_TLV_HDR_SIZE);
|
||||
}
|
||||
if (roam_req->is_roam_req_valid &&
|
||||
roam_req->roam_offload_enabled) {
|
||||
|
|
@ -4138,6 +4143,7 @@ QDF_STATUS send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
}
|
||||
|
||||
buf_ptr = (uint8_t *) wmi_buf_data(buf);
|
||||
|
||||
roam_scan_mode_fp = (wmi_roam_scan_mode_fixed_param *) buf_ptr;
|
||||
WMITLV_SET_HDR(&roam_scan_mode_fp->tlv_header,
|
||||
WMITLV_TAG_STRUC_wmi_roam_scan_mode_fixed_param,
|
||||
|
|
@ -4312,7 +4318,30 @@ QDF_STATUS send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC,
|
||||
WMITLV_GET_STRUCT_TLVLEN(0));
|
||||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
}
|
||||
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC,
|
||||
sizeof(*assoc_ies));
|
||||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
|
||||
assoc_ies = (wmi_tlv_buf_len_param *) buf_ptr;
|
||||
WMITLV_SET_HDR(&assoc_ies->tlv_header,
|
||||
WMITLV_TAG_STRUC_wmi_tlv_buf_len_param,
|
||||
WMITLV_GET_STRUCT_TLVLEN(wmi_tlv_buf_len_param));
|
||||
assoc_ies->buf_len = roam_req->assoc_ie_length;
|
||||
|
||||
buf_ptr += sizeof(*assoc_ies);
|
||||
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_BYTE,
|
||||
roundup(assoc_ies->buf_len, sizeof(uint32_t)));
|
||||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
|
||||
if (assoc_ies->buf_len != 0) {
|
||||
qdf_mem_copy(buf_ptr, roam_req->assoc_ie,
|
||||
assoc_ies->buf_len);
|
||||
}
|
||||
|
||||
} else {
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC,
|
||||
WMITLV_GET_STRUCT_TLVLEN(0));
|
||||
|
|
@ -4325,6 +4354,12 @@ QDF_STATUS send_roam_scan_offload_mode_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC,
|
||||
WMITLV_GET_STRUCT_TLVLEN(0));
|
||||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_STRUC,
|
||||
WMITLV_GET_STRUCT_TLVLEN(0));
|
||||
buf_ptr += WMI_TLV_HDR_SIZE;
|
||||
WMITLV_SET_HDR(buf_ptr, WMITLV_TAG_ARRAY_BYTE,
|
||||
WMITLV_GET_STRUCT_TLVLEN(0));
|
||||
}
|
||||
#endif /* WLAN_FEATURE_ROAM_OFFLOAD */
|
||||
status = wmi_unified_cmd_send(wmi_handle, buf,
|
||||
|
|
@ -9823,6 +9858,10 @@ QDF_STATUS send_enable_arp_ns_offload_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
A_MEMCPY(&ns_tuple->solicitation_ipaddr,
|
||||
¶m->nsOffloadInfo.
|
||||
selfIPv6Addr[i], sizeof(WMI_IPV6_ADDR));
|
||||
if (param->nsOffloadInfo.
|
||||
target_ipv6_addr_ac_type[i])
|
||||
ns_tuple->flags |=
|
||||
WMI_NSOFF_FLAGS_IS_IPV6_ANYCAST;
|
||||
WMI_LOGD("NS solicitedIp: %pI6, targetIp: %pI6",
|
||||
¶m->nsOffloadInfo.selfIPv6Addr[i],
|
||||
¶m->nsOffloadInfo.
|
||||
|
|
@ -9893,6 +9932,10 @@ QDF_STATUS send_enable_arp_ns_offload_cmd_tlv(wmi_unified_t wmi_handle,
|
|||
A_MEMCPY(&ns_tuple->solicitation_ipaddr,
|
||||
¶m->nsOffloadInfo.selfIPv6Addr[i],
|
||||
sizeof(WMI_IPV6_ADDR));
|
||||
if (param->nsOffloadInfo.
|
||||
target_ipv6_addr_ac_type[i])
|
||||
ns_tuple->flags |=
|
||||
WMI_NSOFF_FLAGS_IS_IPV6_ANYCAST;
|
||||
WMI_LOGD("Index %d NS solicitedIp: %pI6, targetIp: %pI6", i,
|
||||
¶m->nsOffloadInfo.selfIPv6Addr[i],
|
||||
¶m->nsOffloadInfo.targetIPv6Addr[i]);
|
||||
|
|
|
|||
Loading…
Reference in a new issue