diff options
author | Dave Airlie <airlied@redhat.com> | 2018-09-27 19:48:35 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2018-09-27 19:48:40 -0400 |
commit | 87c2ee740c07f1edae9eec8bc45cb9b32a68f323 (patch) | |
tree | 1515f53eacb86689f2f96279e51cf0053ae8a308 /drivers/gpu/drm/amd/amdgpu/cik_ih.c | |
parent | 2de0b0a158bf423208c3898522c8fa1c1078df48 (diff) | |
parent | 6a96243056217662843694a4cbc83158d0e84403 (diff) |
Merge branch 'drm-next-4.20' of git://people.freedesktop.org/~agd5f/linux into drm-next
More new features and fixes for 4.20:
- Add dynamic powergating support for VCN on picasso
- Scheduler cleanup
- Vega20 support for KFD
- DC cleanups and bug fixes
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Alex Deucher <alexdeucher@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180927184348.2696-1-alexander.deucher@amd.com
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/cik_ih.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/cik_ih.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/cik_ih.c b/drivers/gpu/drm/amd/amdgpu/cik_ih.c index 44d10c2172f6..b5775c6a857b 100644 --- a/drivers/gpu/drm/amd/amdgpu/cik_ih.c +++ b/drivers/gpu/drm/amd/amdgpu/cik_ih.c | |||
@@ -276,7 +276,7 @@ static void cik_ih_decode_iv(struct amdgpu_device *adev, | |||
276 | dw[2] = le32_to_cpu(adev->irq.ih.ring[ring_index + 2]); | 276 | dw[2] = le32_to_cpu(adev->irq.ih.ring[ring_index + 2]); |
277 | dw[3] = le32_to_cpu(adev->irq.ih.ring[ring_index + 3]); | 277 | dw[3] = le32_to_cpu(adev->irq.ih.ring[ring_index + 3]); |
278 | 278 | ||
279 | entry->client_id = AMDGPU_IH_CLIENTID_LEGACY; | 279 | entry->client_id = AMDGPU_IRQ_CLIENTID_LEGACY; |
280 | entry->src_id = dw[0] & 0xff; | 280 | entry->src_id = dw[0] & 0xff; |
281 | entry->src_data[0] = dw[1] & 0xfffffff; | 281 | entry->src_data[0] = dw[1] & 0xfffffff; |
282 | entry->ring_id = dw[2] & 0xff; | 282 | entry->ring_id = dw[2] & 0xff; |
@@ -318,7 +318,7 @@ static int cik_ih_sw_init(void *handle) | |||
318 | int r; | 318 | int r; |
319 | struct amdgpu_device *adev = (struct amdgpu_device *)handle; | 319 | struct amdgpu_device *adev = (struct amdgpu_device *)handle; |
320 | 320 | ||
321 | r = amdgpu_ih_ring_init(adev, 64 * 1024, false); | 321 | r = amdgpu_ih_ring_init(adev, &adev->irq.ih, 64 * 1024, false); |
322 | if (r) | 322 | if (r) |
323 | return r; | 323 | return r; |
324 | 324 | ||
@@ -332,7 +332,7 @@ static int cik_ih_sw_fini(void *handle) | |||
332 | struct amdgpu_device *adev = (struct amdgpu_device *)handle; | 332 | struct amdgpu_device *adev = (struct amdgpu_device *)handle; |
333 | 333 | ||
334 | amdgpu_irq_fini(adev); | 334 | amdgpu_irq_fini(adev); |
335 | amdgpu_ih_ring_fini(adev); | 335 | amdgpu_ih_ring_fini(adev, &adev->irq.ih); |
336 | amdgpu_irq_remove_domain(adev); | 336 | amdgpu_irq_remove_domain(adev); |
337 | 337 | ||
338 | return 0; | 338 | return 0; |
@@ -468,8 +468,7 @@ static const struct amdgpu_ih_funcs cik_ih_funcs = { | |||
468 | 468 | ||
469 | static void cik_ih_set_interrupt_funcs(struct amdgpu_device *adev) | 469 | static void cik_ih_set_interrupt_funcs(struct amdgpu_device *adev) |
470 | { | 470 | { |
471 | if (adev->irq.ih_funcs == NULL) | 471 | adev->irq.ih_funcs = &cik_ih_funcs; |
472 | adev->irq.ih_funcs = &cik_ih_funcs; | ||
473 | } | 472 | } |
474 | 473 | ||
475 | const struct amdgpu_ip_block_version cik_ih_ip_block = | 474 | const struct amdgpu_ip_block_version cik_ih_ip_block = |