Pārlūkot izejas kodu

qcacmn: Define WMI_HOST_PEER_* for no host to target conversion

Currently if ENABLE_HOST_TO_TARGET_CONVERSION is defined, WMI_HOST_PEER_*
can be translated to WMI_PEER_* through API
convert_host_peer_param_id_to_target_id_tlv.

If ENABLE_HOST_TO_TARGET_CONVERSION is not defined, WMI_HOST_PEER_* in
common code is sent to firmware directly, which is incorrect.

Define WMI_HOST_PEER_* to WMI_PEER_* if ENABLE_HOST_TO_TARGET_CONVERSION
is not defined. Then WMI_HOST_PEER_* can be used in common code.

Change-Id: I50aa604d8822a81eed223c8551e542007929424e
CRs-Fixed: 3271470
Bing Sun 2 gadi atpakaļ
vecāks
revīzija
fbcb2bb588

+ 11 - 0
target_if/son/inc/target_if_son.h

@@ -32,7 +32,18 @@ QDF_STATUS son_ol_send_null(struct wlan_objmgr_pdev *pdev,
 			    u_int8_t *macaddr,
 			    struct wlan_objmgr_vdev *vdev);
 
+#if defined(WMI_NON_TLV_SUPPORT) || defined(WMI_TLV_AND_NON_TLV_SUPPORT)
 QDF_STATUS son_ol_peer_ext_stats_enable(struct wlan_objmgr_pdev *pdev,
 					uint8_t *peer_addr,
 					struct wlan_objmgr_vdev *vdev,
 					uint32_t stats_count, uint32_t enable);
+#else
+static inline QDF_STATUS son_ol_peer_ext_stats_enable(
+					struct wlan_objmgr_pdev *pdev,
+					uint8_t *peer_addr,
+					struct wlan_objmgr_vdev *vdev,
+					uint32_t stats_count, uint32_t enable)
+{
+	return QDF_STATUS_SUCCESS;
+}
+#endif

+ 2 - 0
target_if/son/src/target_if_son.c

@@ -62,6 +62,7 @@ QDF_STATUS son_ol_send_null(struct wlan_objmgr_pdev *pdev,
 	return wmi_unified_stats_request_send(wmi_handle, macaddr, &param);
 }
 
+#if defined(WMI_NON_TLV_SUPPORT) || defined(WMI_TLV_AND_NON_TLV_SUPPORT)
 QDF_STATUS son_ol_peer_ext_stats_enable(struct wlan_objmgr_pdev *pdev,
 					uint8_t *peer_addr,
 					struct wlan_objmgr_vdev *vdev,
@@ -98,6 +99,7 @@ QDF_STATUS son_ol_peer_ext_stats_enable(struct wlan_objmgr_pdev *pdev,
 
 	return wmi_set_peer_param_send(wmi_handle, peer_addr, &param);
 }
+#endif
 
 void target_if_son_register_tx_ops(struct wlan_lmac_if_tx_ops *tx_ops)
 {

+ 43 - 30
wmi/inc/wmi_unified_param.h

@@ -38,6 +38,10 @@
 #include <wlan_vdev_mgr_tgt_if_rx_defs.h>
 #include <reg_services_public_struct.h>
 
+#ifndef ENABLE_HOST_TO_TARGET_CONVERSION
+#include <wmi_unified.h>
+#endif
+
 #define MAC_MAX_KEY_LENGTH 32
 #define MAC_PN_LENGTH 8
 #define MAX_MAC_HEADER_LEN 32
@@ -6671,6 +6675,12 @@ typedef enum {
 /* Disable aging & learning */
 #define WMI_HOST_WDS_FLAG_STATIC	0x1
 
+#ifdef ENABLE_HOST_TO_TARGET_CONVERSION
+#define PEER_PARAM(name) WMI_HOST_ ## name
+#else
+#define PEER_PARAM(name) WMI_HOST_ ## name = WMI_ ## name
+#endif /* ENABLE_HOST_TO_TARGET_CONVERSION */
+
 /**
  * Peer param enum abstracted from target
  * @WMI_HOST_PEER_MIMO_PS_STATE: mimo powersave state
@@ -6681,6 +6691,7 @@ typedef enum {
  * @WMI_HOST_PEER_NSS: peer NSS
  * @WMI_HOST_PEER_USE_4ADDR: USE 4 ADDR
  * @WMI_HOST_PEER_EXT_STATS_ENABLE: Enable extended peer stats
+ *                                  NON-TLV special
  * @WMI_HOST_PEER_USE_FIXED_PWR: Use FIXED Pwr,
  * @WMI_HOST_PEER_PARAM_FIXED_RATE: Set peer fixed rate
  * @WMI_HOST_PEER_SET_MU_ALLOWLIST: Allowlist peer TIDs
@@ -6691,7 +6702,7 @@ typedef enum {
  * @WMI_HOST_PEER_SET_HW_RETRY_CTS2S: Set hardware retry CTS to self
  * @WMI_HOST_PEER_IBSS_ATIM_WINDOW_LENGTH: IBSS ATIM window length
  * @WMI_HOST_PEER_PHYMODE: Peer Phymode
- * @WMI_HOST_PEER_SET_MAC_TX_RATE: Set MAC Tx rate
+ * @WMI_HOST_PEER_SET_MAX_TX_RATE: Set MAX Tx rate
  * @WMI_HOST_PEER_SET_DEFAULT_ROUTING: Set default Rx routing
  * @WMI_HOST_PEER_SET_MIN_TX_RATE: Set Minimum T rate
  * @WMI_HOST_PEER_NSS_VHT160: peer NSS for 160Mhz
@@ -6706,35 +6717,37 @@ typedef enum {
  *                                         puncture bitmap
  */
 enum {
-	WMI_HOST_PEER_MIMO_PS_STATE = 0x1,
-	WMI_HOST_PEER_AMPDU,
-	WMI_HOST_PEER_AUTHORIZE,
-	WMI_HOST_PEER_CHWIDTH,
-	WMI_HOST_PEER_NSS,
-	WMI_HOST_PEER_USE_4ADDR,
-	WMI_HOST_PEER_EXT_STATS_ENABLE,
-	WMI_HOST_PEER_USE_FIXED_PWR,
-	WMI_HOST_PEER_PARAM_FIXED_RATE,
-	WMI_HOST_PEER_SET_MU_ALLOWLIST,
-	WMI_HOST_PEER_MEMBERSHIP,
-	WMI_HOST_PEER_USERPOS,
-	WMI_HOST_PEER_CRIT_PROTO_HINT_ENABLED,
-	WMI_HOST_PEER_TX_FAIL_CNT_THR,
-	WMI_HOST_PEER_SET_HW_RETRY_CTS2S,
-	WMI_HOST_PEER_IBSS_ATIM_WINDOW_LENGTH,
-	WMI_HOST_PEER_PHYMODE,
-	WMI_HOST_PEER_SET_MAC_TX_RATE,
-	WMI_HOST_PEER_SET_DEFAULT_ROUTING,
-	WMI_HOST_PEER_SET_MIN_TX_RATE,
-	WMI_HOST_PEER_NSS_VHT160,
-	WMI_HOST_PEER_NSS_VHT80_80,
-	WMI_HOST_PEER_PARAM_SU_TXBF_SOUNDING_INTERVAL,
-	WMI_HOST_PEER_PARAM_MU_TXBF_SOUNDING_INTERVAL,
-	WMI_HOST_PEER_PARAM_TXBF_SOUNDING_ENABLE,
-	WMI_HOST_PEER_PARAM_MU_ENABLE,
-	WMI_HOST_PEER_PARAM_OFDMA_ENABLE,
-	WMI_HOST_PEER_PARAM_ENABLE_FT,
-	WMI_HOST_PEER_CHWIDTH_PUNCTURE_20MHZ_BITMAP,
+	PEER_PARAM(PEER_MIMO_PS_STATE),
+	PEER_PARAM(PEER_AMPDU),
+	PEER_PARAM(PEER_AUTHORIZE),
+	PEER_PARAM(PEER_CHWIDTH),
+	PEER_PARAM(PEER_NSS),
+	PEER_PARAM(PEER_USE_4ADDR),
+#if defined(WMI_NON_TLV_SUPPORT) || defined(WMI_TLV_AND_NON_TLV_SUPPORT)
+	PEER_PARAM(PEER_EXT_STATS_ENABLE),
+#endif
+	PEER_PARAM(PEER_USE_FIXED_PWR),
+	PEER_PARAM(PEER_PARAM_FIXED_RATE),
+	PEER_PARAM(PEER_SET_MU_ALLOWLIST),
+	PEER_PARAM(PEER_MEMBERSHIP),
+	PEER_PARAM(PEER_USERPOS),
+	PEER_PARAM(PEER_CRIT_PROTO_HINT_ENABLED),
+	PEER_PARAM(PEER_TX_FAIL_CNT_THR),
+	PEER_PARAM(PEER_SET_HW_RETRY_CTS2S),
+	PEER_PARAM(PEER_IBSS_ATIM_WINDOW_LENGTH),
+	PEER_PARAM(PEER_PHYMODE),
+	PEER_PARAM(PEER_SET_MAX_TX_RATE),
+	PEER_PARAM(PEER_SET_DEFAULT_ROUTING),
+	PEER_PARAM(PEER_SET_MIN_TX_RATE),
+	PEER_PARAM(PEER_NSS_VHT160),
+	PEER_PARAM(PEER_NSS_VHT80_80),
+	PEER_PARAM(PEER_PARAM_SU_TXBF_SOUNDING_INTERVAL),
+	PEER_PARAM(PEER_PARAM_MU_TXBF_SOUNDING_INTERVAL),
+	PEER_PARAM(PEER_PARAM_TXBF_SOUNDING_ENABLE),
+	PEER_PARAM(PEER_PARAM_MU_ENABLE),
+	PEER_PARAM(PEER_PARAM_OFDMA_ENABLE),
+	PEER_PARAM(PEER_PARAM_ENABLE_FT),
+	PEER_PARAM(PEER_CHWIDTH_PUNCTURE_20MHZ_BITMAP),
 };
 #define WMI_HOST_PEER_MIMO_PS_NONE	0x0
 #define WMI_HOST_PEER_MIMO_PS_STATIC	0x1

+ 2 - 2
wmi/src/wmi_unified_tlv.c

@@ -108,8 +108,8 @@ static const uint32_t peer_param_tlv[] = {
 	[WMI_HOST_PEER_PHYMODE] = WMI_PEER_PHYMODE,
 	[WMI_HOST_PEER_USE_FIXED_PWR] = WMI_PEER_USE_FIXED_PWR,
 	[WMI_HOST_PEER_PARAM_FIXED_RATE] = WMI_PEER_PARAM_FIXED_RATE,
-	[WMI_HOST_PEER_SET_MU_ALLOWLIST] = WMI_PEER_SET_MU_WHITELIST,
-	[WMI_HOST_PEER_SET_MAC_TX_RATE] = WMI_PEER_SET_MAX_TX_RATE,
+	[WMI_HOST_PEER_SET_MU_ALLOWLIST] = WMI_PEER_SET_MU_ALLOWLIST,
+	[WMI_HOST_PEER_SET_MAX_TX_RATE] = WMI_PEER_SET_MAX_TX_RATE,
 	[WMI_HOST_PEER_SET_MIN_TX_RATE] = WMI_PEER_SET_MIN_TX_RATE,
 	[WMI_HOST_PEER_SET_DEFAULT_ROUTING] = WMI_PEER_SET_DEFAULT_ROUTING,
 	[WMI_HOST_PEER_NSS_VHT160] = WMI_PEER_NSS_VHT160,