diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0532-drm-amdgpu-properly-enable-VM-fault-interrupts.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0532-drm-amdgpu-properly-enable-VM-fault-interrupts.patch | 128 |
1 files changed, 0 insertions, 128 deletions
diff --git a/common/recipes-kernel/linux/files/0532-drm-amdgpu-properly-enable-VM-fault-interrupts.patch b/common/recipes-kernel/linux/files/0532-drm-amdgpu-properly-enable-VM-fault-interrupts.patch deleted file mode 100644 index 3cee4a57..00000000 --- a/common/recipes-kernel/linux/files/0532-drm-amdgpu-properly-enable-VM-fault-interrupts.patch +++ /dev/null @@ -1,128 +0,0 @@ -From 140b519f7a117c86c085b3800a2fea3015cd877f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com> -Date: Fri, 4 Sep 2015 18:48:29 +0200 -Subject: [PATCH 0532/1050] drm/amdgpu: properly enable VM fault interrupts -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes not printing VM faults. - -Signed-off-by: Christian König <christian.koenig@amd.com> -Reviewed-by: Alex Deucher <alexander.deucher@amd.com> ---- - drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 16 +++++++++------- - drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 17 +++++++++-------- - 2 files changed, 18 insertions(+), 15 deletions(-) - -diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c -index 1021882..774528a 100644 ---- a/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c -+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c -@@ -523,17 +523,11 @@ static int gmc_v7_0_gart_enable(struct amdgpu_device *adev) - tmp = RREG32(mmVM_CONTEXT1_CNTL); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, ENABLE_CONTEXT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PAGE_TABLE_DEPTH, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, RANGE_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, RANGE_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, DUMMY_PAGE_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, DUMMY_PAGE_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PDE0_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PDE0_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, VALID_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, VALID_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, READ_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, READ_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, WRITE_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, WRITE_PROTECTION_FAULT_ENABLE_DEFAULT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PAGE_TABLE_BLOCK_SIZE, - amdgpu_vm_block_size - 9); -@@ -852,6 +846,13 @@ static int gmc_v7_0_early_init(void *handle) - return 0; - } - -+static int gmc_v7_0_late_init(void *handle) -+{ -+ struct amdgpu_device *adev = (struct amdgpu_device *)handle; -+ -+ return amdgpu_irq_get(adev, &adev->mc.vm_fault, 0); -+} -+ - static int gmc_v7_0_sw_init(void *handle) - { - int r; -@@ -976,6 +977,7 @@ static int gmc_v7_0_hw_fini(void *handle) - { - struct amdgpu_device *adev = (struct amdgpu_device *)handle; - -+ amdgpu_irq_put(adev, &adev->mc.vm_fault, 0); - gmc_v7_0_gart_disable(adev); - - return 0; -@@ -1301,7 +1303,7 @@ static int gmc_v7_0_set_powergating_state(void *handle, - - const struct amd_ip_funcs gmc_v7_0_ip_funcs = { - .early_init = gmc_v7_0_early_init, -- .late_init = NULL, -+ .late_init = gmc_v7_0_late_init, - .sw_init = gmc_v7_0_sw_init, - .sw_fini = gmc_v7_0_sw_fini, - .hw_init = gmc_v7_0_hw_init, -diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c -index 78109b7..9a07742 100644 ---- a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c -+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c -@@ -653,19 +653,12 @@ static int gmc_v8_0_gart_enable(struct amdgpu_device *adev) - tmp = RREG32(mmVM_CONTEXT1_CNTL); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, ENABLE_CONTEXT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PAGE_TABLE_DEPTH, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, RANGE_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, RANGE_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, DUMMY_PAGE_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, DUMMY_PAGE_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PDE0_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PDE0_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, VALID_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, VALID_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, READ_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, READ_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, WRITE_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, WRITE_PROTECTION_FAULT_ENABLE_DEFAULT, 1); -- tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, EXECUTE_PROTECTION_FAULT_ENABLE_INTERRUPT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, EXECUTE_PROTECTION_FAULT_ENABLE_DEFAULT, 1); - tmp = REG_SET_FIELD(tmp, VM_CONTEXT1_CNTL, PAGE_TABLE_BLOCK_SIZE, - amdgpu_vm_block_size - 9); -@@ -852,6 +845,13 @@ static int gmc_v8_0_early_init(void *handle) - return 0; - } - -+static int gmc_v8_0_late_init(void *handle) -+{ -+ struct amdgpu_device *adev = (struct amdgpu_device *)handle; -+ -+ return amdgpu_irq_get(adev, &adev->mc.vm_fault, 0); -+} -+ - static int gmc_v8_0_sw_init(void *handle) - { - int r; -@@ -978,6 +978,7 @@ static int gmc_v8_0_hw_fini(void *handle) - { - struct amdgpu_device *adev = (struct amdgpu_device *)handle; - -+ amdgpu_irq_put(adev, &adev->mc.vm_fault, 0); - gmc_v8_0_gart_disable(adev); - - return 0; -@@ -1288,7 +1289,7 @@ static int gmc_v8_0_set_powergating_state(void *handle, - - const struct amd_ip_funcs gmc_v8_0_ip_funcs = { - .early_init = gmc_v8_0_early_init, -- .late_init = NULL, -+ .late_init = gmc_v8_0_late_init, - .sw_init = gmc_v8_0_sw_init, - .sw_fini = gmc_v8_0_sw_fini, - .hw_init = gmc_v8_0_hw_init, --- -1.9.1 - |