#include <linux/dma-buf.h>
 #include <linux/dma-fence-array.h>
 #include <linux/pci-p2pdma.h>
-#include <linux/pm_runtime.h>
-#include "amdgpu_trace.h"
 
 /**
  * amdgpu_dma_buf_attach - &dma_buf_ops.attach implementation
        struct drm_gem_object *obj = dmabuf->priv;
        struct amdgpu_bo *bo = gem_to_amdgpu_bo(obj);
        struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
-       int r;
 
        if (pci_p2pdma_distance(adev->pdev, attach->dev, false) < 0)
                attach->peer2peer = false;
 
-       r = pm_runtime_get_sync(adev_to_drm(adev)->dev);
-       trace_amdgpu_runpm_reference_dumps(1, __func__);
-       if (r < 0)
-               goto out;
-
        return 0;
-
-out:
-       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
-       trace_amdgpu_runpm_reference_dumps(0, __func__);
-       return r;
-}
-
-/**
- * amdgpu_dma_buf_detach - &dma_buf_ops.detach implementation
- *
- * @dmabuf: DMA-buf where we remove the attachment from
- * @attach: the attachment to remove
- *
- * Called when an attachment is removed from the DMA-buf.
- */
-static void amdgpu_dma_buf_detach(struct dma_buf *dmabuf,
-                                 struct dma_buf_attachment *attach)
-{
-       struct drm_gem_object *obj = dmabuf->priv;
-       struct amdgpu_bo *bo = gem_to_amdgpu_bo(obj);
-       struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
-
-       pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
-       pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
-       trace_amdgpu_runpm_reference_dumps(0, __func__);
 }
 
 /**
 
 const struct dma_buf_ops amdgpu_dmabuf_ops = {
        .attach = amdgpu_dma_buf_attach,
-       .detach = amdgpu_dma_buf_detach,
        .pin = amdgpu_dma_buf_pin,
        .unpin = amdgpu_dma_buf_unpin,
        .map_dma_buf = amdgpu_dma_buf_map,
 
        amdgpu_ring_emit_fence(ring, ring->fence_drv.gpu_addr,
                               seq, flags | AMDGPU_FENCE_FLAG_INT);
        pm_runtime_get_noresume(adev_to_drm(adev)->dev);
-       trace_amdgpu_runpm_reference_dumps(1, __func__);
        ptr = &ring->fence_drv.fences[seq & ring->fence_drv.num_fences_mask];
        if (unlikely(rcu_dereference_protected(*ptr, 1))) {
                struct dma_fence *old;
                dma_fence_put(fence);
                pm_runtime_mark_last_busy(adev_to_drm(adev)->dev);
                pm_runtime_put_autosuspend(adev_to_drm(adev)->dev);
-               trace_amdgpu_runpm_reference_dumps(0, __func__);
        } while (last_seq != seq);
 
        return true;
 
                      __entry->value)
 );
 
-TRACE_EVENT(amdgpu_runpm_reference_dumps,
-           TP_PROTO(uint32_t index, const char *func),
-           TP_ARGS(index, func),
-           TP_STRUCT__entry(
-                            __field(uint32_t, index)
-                            __string(func, func)
-                            ),
-           TP_fast_assign(
-                          __entry->index = index;
-                          __assign_str(func, func);
-                          ),
-           TP_printk("amdgpu runpm reference dump 0x%x: 0x%s\n",
-                     __entry->index,
-                     __get_str(func))
-);
 #undef AMDGPU_JOB_GET_TIMELINE_NAME
 #endif