diff --git a/qdf/inc/qdf_ipa.h b/qdf/inc/qdf_ipa.h index 7c63fbbf98..5f8efda727 100644 --- a/qdf/inc/qdf_ipa.h +++ b/qdf/inc/qdf_ipa.h @@ -1,5 +1,6 @@ /* * Copyright (c) 2017-2021, The Linux Foundation. All rights reserved. + * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -256,6 +257,13 @@ typedef __qdf_ipa_wlan_hdr_attrib_val_t qdf_ipa_wlan_hdr_attrib_val_t; typedef int (*qdf_ipa_msg_pull_fn)(void *buff, u32 len, u32 type); typedef void (*qdf_ipa_ready_cb)(void *user_data); +#ifdef IPA_WDS_EASYMESH_FEATURE +/** + * __qdf_ipa_ast_info_type_t - AST entry create/update information + */ +typedef __qdf_ipa_ast_info_type_t qdf_ipa_ast_info_type_t; +#endif + #define QDF_IPA_SET_META_MSG_TYPE(meta, msg_type) \ __QDF_IPA_SET_META_MSG_TYPE(meta, msg_type) diff --git a/qdf/inc/qdf_ipa_wdi3.h b/qdf/inc/qdf_ipa_wdi3.h index 46c2dab122..38686c3542 100644 --- a/qdf/inc/qdf_ipa_wdi3.h +++ b/qdf/inc/qdf_ipa_wdi3.h @@ -72,6 +72,11 @@ typedef __qdf_ipa_wdi_init_in_params_t qdf_ipa_wdi_init_in_params_t; #define QDF_IPA_WDI_INIT_IN_PARAMS_INSTANCE_ID(in_params) \ __QDF_IPA_WDI_INIT_IN_PARAMS_INSTANCE_ID(in_params) +#ifdef IPA_WDS_EASYMESH_FEATURE +#define QDF_IPA_WDI_INIT_IN_PARAMS_WDS_UPDATE(in_params) \ + __QDF_IPA_WDI_INIT_IN_PARAMS_WDS_UPDATE(in_params) +#endif + /** * qdf_ipa_wdi_init_out_params_t - wdi init output parameters */ @@ -288,6 +293,12 @@ typedef __qdf_ipa_wdi_conn_in_params_t qdf_ipa_wdi_conn_in_params_t; __QDF_IPA_WDI_CONN_IN_PARAMS_RX_SMMU(pipe_in) #define QDF_IPA_WDI_CONN_IN_PARAMS_HANDLE(pipe_in) \ __QDF_IPA_WDI_CONN_IN_PARAMS_HANDLE(pipe_in) + +#ifdef IPA_WDS_EASYMESH_FEATURE +#define QDF_IPA_WDI_CONN_IN_PARAMS_AST_NOTIFY(pipe_in) \ + __QDF_IPA_WDI_CONN_IN_PARAMS_AST_NOTIFY(pipe_in) +#endif + #ifdef IPA_WDI3_TX_TWO_PIPES #define QDF_IPA_WDI_CONN_IN_PARAMS_IS_TX1_USED(pipe_in) \ __QDF_IPA_WDI_CONN_IN_PARAMS_IS_TX1_USED(pipe_in) diff --git a/qdf/linux/src/i_qdf_ipa.h b/qdf/linux/src/i_qdf_ipa.h index fecde85a91..102748ad43 100644 --- a/qdf/linux/src/i_qdf_ipa.h +++ b/qdf/linux/src/i_qdf_ipa.h @@ -484,6 +484,16 @@ typedef enum ipa_rm_resource_name __qdf_ipa_rm_resource_name_t; typedef enum ipa_wlan_event __qdf_ipa_wlan_event_t; typedef struct ipa_wlan_msg __qdf_ipa_wlan_msg_t; +#ifdef IPA_WDS_EASYMESH_FEATURE +/** + * __qdf_ipa_ast_info_type_t - AST entry create/update information + */ +typedef struct ipa_ast_info_type __qdf_ipa_ast_info_type_t; + +#define QDF_IPA_WLAN_MSG_WDS_UPDATE(ipa_msg) \ + (((struct ipa_wlan_msg *)(ipa_msg))->ast_update) +#endif + #define QDF_IPA_WLAN_MSG_NAME(ipa_msg) \ (((struct ipa_wlan_msg *)(ipa_msg))->name) #define QDF_IPA_WLAN_MSG_MAC_ADDR(ipa_msg) \ diff --git a/qdf/linux/src/i_qdf_ipa_wdi3.h b/qdf/linux/src/i_qdf_ipa_wdi3.h index e7b9d75ecf..ae623e6f6d 100644 --- a/qdf/linux/src/i_qdf_ipa_wdi3.h +++ b/qdf/linux/src/i_qdf_ipa_wdi3.h @@ -125,6 +125,11 @@ typedef struct ipa_wdi_init_in_params __qdf_ipa_wdi_init_in_params_t; (((struct ipa_wdi_init_in_params *)(in_params))->inst_id) #endif +#ifdef IPA_WDS_EASYMESH_FEATURE +#define __QDF_IPA_WDI_INIT_IN_PARAMS_WDS_UPDATE(in_params) \ + (((struct ipa_wdi_init_in_params *)(in_params))->ast_update) +#endif + /** * __qdf_ipa_wdi_init_out_params_t - wdi init output parameters */ @@ -323,6 +328,11 @@ typedef struct ipa_wdi_conn_in_params __qdf_ipa_wdi_conn_in_params_t; #define __QDF_IPA_WDI_CONN_IN_PARAMS_HANDLE(pipe_in) \ (((struct ipa_wdi_conn_in_params *)(pipe_in))->hdl) +#ifdef IPA_WDS_EASYMESH_FEATURE +#define __QDF_IPA_WDI_CONN_IN_PARAMS_AST_NOTIFY(pipe_in) \ + (((struct ipa_wdi_conn_in_params *)(pipe_in))->ast_notify) +#endif + /** * __qdf_ipa_wdi_conn_out_params_t - information provided * to WLAN druver