htt->tx_ops->htt_free_txbuff(htt);
 }
 
+static inline int ath10k_htt_h2t_aggr_cfg_msg(struct ath10k_htt *htt,
+                                             u8 max_subfrms_ampdu,
+                                             u8 max_subfrms_amsdu)
+
+{
+       if (!htt->tx_ops->htt_h2t_aggr_cfg_msg)
+               return -EOPNOTSUPP;
+
+       return htt->tx_ops->htt_h2t_aggr_cfg_msg(htt,
+                                                max_subfrms_ampdu,
+                                                max_subfrms_amsdu);
+}
+
 struct ath10k_htt_rx_ops {
        size_t (*htt_get_rx_ring_size)(struct ath10k_htt *htt);
        void (*htt_config_paddrs_ring)(struct ath10k_htt *htt, void *vaddr);
 int ath10k_htt_h2t_ver_req_msg(struct ath10k_htt *htt);
 int ath10k_htt_h2t_stats_req(struct ath10k_htt *htt, u32 mask, u32 reset_mask,
                             u64 cookie);
-int ath10k_htt_h2t_aggr_cfg_msg(struct ath10k_htt *htt,
-                               u8 max_subfrms_ampdu,
-                               u8 max_subfrms_amsdu);
 void ath10k_htt_hif_tx_complete(struct ath10k *ar, struct sk_buff *skb);
 int ath10k_htt_tx_fetch_resp(struct ath10k *ar,
                             __le32 token,
 
        return 0;
 }
 
-int ath10k_htt_h2t_aggr_cfg_msg(struct ath10k_htt *htt,
-                               u8 max_subfrms_ampdu,
-                               u8 max_subfrms_amsdu)
+static int ath10k_htt_h2t_aggr_cfg_msg_32(struct ath10k_htt *htt,
+                                         u8 max_subfrms_ampdu,
+                                         u8 max_subfrms_amsdu)
 {
        struct ath10k *ar = htt->ar;
        struct htt_aggr_conf *aggr_conf;
        .htt_tx = ath10k_htt_tx_32,
        .htt_alloc_txbuff = ath10k_htt_tx_alloc_cont_txbuf_32,
        .htt_free_txbuff = ath10k_htt_tx_free_cont_txbuf_32,
-       .htt_h2t_aggr_cfg_msg = ath10k_htt_h2t_aggr_cfg_msg,
+       .htt_h2t_aggr_cfg_msg = ath10k_htt_h2t_aggr_cfg_msg_32,
 };
 
 static const struct ath10k_htt_tx_ops htt_tx_ops_64 = {