unsigned int *sg_offset);
 int hns_roce_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata);
 int hns_roce_hw_destroy_mpt(struct hns_roce_dev *hr_dev,
-                           struct hns_roce_cmd_mailbox *mailbox,
                            unsigned long mpt_index);
 unsigned long key_to_hw_index(u32 key);
 
 
 }
 
 int hns_roce_hw_destroy_mpt(struct hns_roce_dev *hr_dev,
-                           struct hns_roce_cmd_mailbox *mailbox,
                            unsigned long mpt_index)
 {
-       return hns_roce_cmd_mbox(hr_dev, 0, mailbox ? mailbox->dma : 0,
-                                mpt_index, HNS_ROCE_CMD_DESTROY_MPT);
+       return hns_roce_cmd_mbox(hr_dev, 0, 0, mpt_index,
+                                HNS_ROCE_CMD_DESTROY_MPT);
 }
 
 static int alloc_mr_key(struct hns_roce_dev *hr_dev, struct hns_roce_mr *mr)
        int ret;
 
        if (mr->enabled) {
-               ret = hns_roce_hw_destroy_mpt(hr_dev, NULL,
+               ret = hns_roce_hw_destroy_mpt(hr_dev,
                                              key_to_hw_index(mr->key) &
                                              (hr_dev->caps.num_mtpts - 1));
                if (ret)
        if (ret)
                goto free_cmd_mbox;
 
-       ret = hns_roce_hw_destroy_mpt(hr_dev, NULL, mtpt_idx);
+       ret = hns_roce_hw_destroy_mpt(hr_dev, mtpt_idx);
        if (ret)
                ibdev_warn(ib_dev, "failed to destroy MPT, ret = %d.\n", ret);
 
        int ret;
 
        if (mw->enabled) {
-               ret = hns_roce_hw_destroy_mpt(hr_dev, NULL,
+               ret = hns_roce_hw_destroy_mpt(hr_dev,
                                              key_to_hw_index(mw->rkey) &
                                              (hr_dev->caps.num_mtpts - 1));
                if (ret)
 
 }
 
 static int hns_roce_hw_destroy_srq(struct hns_roce_dev *dev,
-                                  struct hns_roce_cmd_mailbox *mailbox,
                                   unsigned long srq_num)
 {
-       return hns_roce_cmd_mbox(dev, 0, mailbox ? mailbox->dma : 0, srq_num,
-                                HNS_ROCE_CMD_DESTROY_SRQ);
+       return hns_roce_cmd_mbox(dev, 0, 0, srq_num, HNS_ROCE_CMD_DESTROY_SRQ);
 }
 
 static int alloc_srqc(struct hns_roce_dev *hr_dev, struct hns_roce_srq *srq)
        struct hns_roce_srq_table *srq_table = &hr_dev->srq_table;
        int ret;
 
-       ret = hns_roce_hw_destroy_srq(hr_dev, NULL, srq->srqn);
+       ret = hns_roce_hw_destroy_srq(hr_dev, srq->srqn);
        if (ret)
                dev_err(hr_dev->dev, "DESTROY_SRQ failed (%d) for SRQN %06lx\n",
                        ret, srq->srqn);