qcacld-3.0: Enable/Disable intrabss for Rome IPA

In the Rome IPA case, it need wlanhost side to
enble/disable intrabss by WMI_VDEV_PARAM_INTRA_BSS_FWD.
If set to 1, the ip data transfer between two wlan clients
should be:
wlan client1 -> wlan fw -> wlanhost -> wlan fw-> wlan client2.
If set to 0, the ip data transfer between two wlan cleints
should be:
wlan client1 -> wlan fw -> ipa -> wlan fw -> wlan clients2.

Change-Id: I105ddbdb58f2cd01bdf94521bd7934508889de5d
This commit is contained in:
Chaoli Zhou
2020-09-29 14:50:40 +08:00
committato da snandini
parent 642f399756
commit 221e7e425e
11 ha cambiato i file con 156 aggiunte e 5 eliminazioni

Vedi File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018, 2019 The Linux Foundation. All rights reserved.
* Copyright (c) 2018-2020 The Linux Foundation. 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
@@ -87,7 +87,21 @@ struct ipa_uc_offload_control_params {
uint32_t enable;
};
/**
* struct ipa_intrabss_control_params - ipa intrabss control params
* @vdev_id: vdev id
* @enable: ipa intrabss enable/disable
*/
struct ipa_intrabss_control_params {
uint32_t vdev_id;
uint32_t enable;
};
/* fp to send IPA UC offload cmd */
typedef QDF_STATUS (*ipa_uc_offload_control_req)(struct wlan_objmgr_psoc *psoc,
struct ipa_uc_offload_control_params *req);
/* fp to send IPA intrabss cmd */
typedef QDF_STATUS (*ipa_intrabss_control_req)(struct wlan_objmgr_psoc *psoc,
struct ipa_intrabss_control_params *req);
#endif /* end of _WLAN_IPA_PUBLIC_STRUCT_H_ */

Vedi File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
* Copyright (c) 2018, 2020 The Linux Foundation. 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
@@ -33,4 +33,15 @@
*/
QDF_STATUS tgt_ipa_uc_offload_enable_disable(struct wlan_objmgr_pdev *pdev,
struct ipa_uc_offload_control_params *req);
/**
* tgt_ipa_intrabss_enable_disable() - send ipa intrabss control to target if
* @pdev: objmgr pdev object
* @req: ipa intrabss control request
*
* Return: QDF_STATUS
*/
QDF_STATUS
tgt_ipa_intrabss_enable_disable(struct wlan_objmgr_pdev *pdev,
struct ipa_intrabss_control_params *req);
#endif /* _WLAN_IPA_TGT_API_H_ */