On 2016年12月20日 17:48, Xiangliang Yu wrote:
+ if (kiq->eop_obj == NULL) {
+ r = amdgpu_bo_create(adev,
+ MEC_HPD_SIZE,
+ PAGE_SIZE, true,
+ AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL,
+ &kiq->eop_obj);
+ if (r) {
+ dev_warn(adev->dev, "(%d) create HDP EOP bo failed\n",
r);
+ return r;
+ }
+ }
+
+ r = amdgpu_bo_reserve(kiq->eop_obj, false);
+ if (unlikely(r != 0)) {
+ gfx_v8_0_kiq_fini(adev);
+ return r;
+ }
+
+ r = amdgpu_bo_pin(kiq->eop_obj, AMDGPU_GEM_DOMAIN_GTT,
+ &kiq->eop_gpu_addr);
+ if (r) {
+ dev_warn(adev->dev, "(%d) pin HDP EOP bo failed\n", r);
+ gfx_v8_0_kiq_fini(adev);
+ return r;
+ }
+
+ r = amdgpu_bo_kmap(kiq->eop_obj, (void **)&hpd);
you can use amdgpu_bo_create/free_kernel helper to do these.
Regards,
David Zhou
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx