aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/sid.h
diff options
context:
space:
mode:
authorChristian König <deathsimple@vodafone.de>2012-09-18 15:30:44 -0400
committerAlex Deucher <alexander.deucher@amd.com>2012-12-07 19:48:06 -0500
commitae133a1129790ec288b429b5f08ab4701633844a (patch)
tree5b42bfef6981335fa6113b6830e07902cc02652b /drivers/gpu/drm/radeon/sid.h
parent1c4c3a99435c8891469fe6fca5ccd5fbe16f295a (diff)
drm/radeon: stop page faults from hanging the system (v2)
Redirect invalid memory accesses to the default page instead of locking up the memory controller. Also enable the invalid memory access interrupts and start spamming system log with it. v2 (agd5f): fix up against 2 level PT changes Signed-off-by: Christian König <deathsimple@vodafone.de> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/gpu/drm/radeon/sid.h')
-rw-r--r--drivers/gpu/drm/radeon/sid.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/sid.h b/drivers/gpu/drm/radeon/sid.h
index a8871afc5b4e..53b4d4535fd2 100644
--- a/drivers/gpu/drm/radeon/sid.h
+++ b/drivers/gpu/drm/radeon/sid.h
@@ -91,7 +91,18 @@
91#define VM_CONTEXT0_CNTL 0x1410 91#define VM_CONTEXT0_CNTL 0x1410
92#define ENABLE_CONTEXT (1 << 0) 92#define ENABLE_CONTEXT (1 << 0)
93#define PAGE_TABLE_DEPTH(x) (((x) & 3) << 1) 93#define PAGE_TABLE_DEPTH(x) (((x) & 3) << 1)
94#define RANGE_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 3)
94#define RANGE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 4) 95#define RANGE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 4)
96#define DUMMY_PAGE_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 6)
97#define DUMMY_PAGE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 7)
98#define PDE0_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 9)
99#define PDE0_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 10)
100#define VALID_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 12)
101#define VALID_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 13)
102#define READ_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 15)
103#define READ_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 16)
104#define WRITE_PROTECTION_FAULT_ENABLE_INTERRUPT (1 << 18)
105#define WRITE_PROTECTION_FAULT_ENABLE_DEFAULT (1 << 19)
95#define VM_CONTEXT1_CNTL 0x1414 106#define VM_CONTEXT1_CNTL 0x1414
96#define VM_CONTEXT0_CNTL2 0x1430 107#define VM_CONTEXT0_CNTL2 0x1430
97#define VM_CONTEXT1_CNTL2 0x1434 108#define VM_CONTEXT1_CNTL2 0x1434
@@ -104,6 +115,9 @@
104#define VM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x1450 115#define VM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x1450
105#define VM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x1454 116#define VM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x1454
106 117
118#define VM_CONTEXT1_PROTECTION_FAULT_ADDR 0x14FC
119#define VM_CONTEXT1_PROTECTION_FAULT_STATUS 0x14DC
120
107#define VM_INVALIDATE_REQUEST 0x1478 121#define VM_INVALIDATE_REQUEST 0x1478
108#define VM_INVALIDATE_RESPONSE 0x147c 122#define VM_INVALIDATE_RESPONSE 0x147c
109 123