static inline void ath10k_hif_send_complete_check(struct ath10k *ar,
                                                  u8 pipe_id, int force)
 {
-       ar->hif.ops->send_complete_check(ar, pipe_id, force);
+       if (ar->hif.ops->send_complete_check)
+               ar->hif.ops->send_complete_check(ar, pipe_id, force);
 }
 
 static inline u16 ath10k_hif_get_free_queue_number(struct ath10k *ar,
 
        *dl_pipe = 0;
 }
 
-/* This op is currently only used by htc_wait_target if the HTC ready
- * message times out. It is not applicable for SDIO since there is nothing
- * we can do if the HTC ready message does not arrive in time.
- * TODO: Make this op non mandatory by introducing a NULL check in the
- * hif op wrapper.
- */
-static void ath10k_sdio_hif_send_complete_check(struct ath10k *ar,
-                                               u8 pipe, int force)
-{
-}
-
 static const struct ath10k_hif_ops ath10k_sdio_hif_ops = {
        .tx_sg                  = ath10k_sdio_hif_tx_sg,
        .diag_read              = ath10k_sdio_hif_diag_read,
        .get_htt_tx_complete    = ath10k_sdio_get_htt_tx_complete,
        .map_service_to_pipe    = ath10k_sdio_hif_map_service_to_pipe,
        .get_default_pipe       = ath10k_sdio_hif_get_default_pipe,
-       .send_complete_check    = ath10k_sdio_hif_send_complete_check,
        .power_up               = ath10k_sdio_hif_power_up,
        .power_down             = ath10k_sdio_hif_power_down,
 #ifdef CONFIG_PM
 
        return 0;
 }
 
-/* This op is currently only used by htc_wait_target if the HTC ready
- * message times out. It is not applicable for USB since there is nothing
- * we can do if the HTC ready message does not arrive in time.
- * TODO: Make this op non mandatory by introducing a NULL check in the
- * hif op wrapper.
- */
-static void ath10k_usb_hif_send_complete_check(struct ath10k *ar,
-                                              u8 pipe, int force)
-{
-}
-
 static int ath10k_usb_hif_power_up(struct ath10k *ar,
                                   enum ath10k_firmware_mode fw_mode)
 {
        .stop                   = ath10k_usb_hif_stop,
        .map_service_to_pipe    = ath10k_usb_hif_map_service_to_pipe,
        .get_default_pipe       = ath10k_usb_hif_get_default_pipe,
-       .send_complete_check    = ath10k_usb_hif_send_complete_check,
        .get_free_queue_number  = ath10k_usb_hif_get_free_queue_number,
        .power_up               = ath10k_usb_hif_power_up,
        .power_down             = ath10k_usb_hif_power_down,