diff options
author | Chunming Zhou <david1.zhou@amd.com> | 2015-07-06 01:42:58 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-08-17 16:50:36 -0400 |
commit | 23ca0e4e478836dcb93a54aa68cb48fbc66fb0ed (patch) | |
tree | 6e68952c7bfac6a4409ba3a225e6567034de7649 /drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
parent | 4274f5d45cf11f88d7380702a7147b70553ddd6e (diff) |
drm/amdgpu: add kernel ctx support (v2)
v2: rebase against kfd changes
Signed-off-by: Chunming Zhou <david1.zhou@amd.com>
Acked-by: Christian K?nig <christian.koenig@amd.com>
Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_device.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index fefeeb2c4918..801ebfc44034 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |||
@@ -1525,6 +1525,14 @@ int amdgpu_device_init(struct amdgpu_device *adev, | |||
1525 | return r; | 1525 | return r; |
1526 | } | 1526 | } |
1527 | 1527 | ||
1528 | if (!adev->kernel_ctx) { | ||
1529 | uint32_t id = 0; | ||
1530 | r = amdgpu_ctx_alloc(adev, NULL, &id); | ||
1531 | if (r) { | ||
1532 | dev_err(adev->dev, "failed to create kernel context (%d).\n", r); | ||
1533 | return r; | ||
1534 | } | ||
1535 | } | ||
1528 | r = amdgpu_ib_ring_tests(adev); | 1536 | r = amdgpu_ib_ring_tests(adev); |
1529 | if (r) | 1537 | if (r) |
1530 | DRM_ERROR("ib ring test failed (%d).\n", r); | 1538 | DRM_ERROR("ib ring test failed (%d).\n", r); |
@@ -1586,6 +1594,7 @@ void amdgpu_device_fini(struct amdgpu_device *adev) | |||
1586 | adev->shutdown = true; | 1594 | adev->shutdown = true; |
1587 | /* evict vram memory */ | 1595 | /* evict vram memory */ |
1588 | amdgpu_bo_evict_vram(adev); | 1596 | amdgpu_bo_evict_vram(adev); |
1597 | amdgpu_ctx_free(adev, NULL, 0); | ||
1589 | amdgpu_ib_pool_fini(adev); | 1598 | amdgpu_ib_pool_fini(adev); |
1590 | amdgpu_fence_driver_fini(adev); | 1599 | amdgpu_fence_driver_fini(adev); |
1591 | amdgpu_fbdev_fini(adev); | 1600 | amdgpu_fbdev_fini(adev); |