summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@kvothe.(none)>2011-05-02 21:24:49 +1000
committerDave Airlie <airlied@kvothe.(none)>2011-05-02 21:24:49 +1000
commit6ee8c82ab1c3f109561e5f8f79944f35b0c56114 (patch)
treecc5b1b99e08407b6af8a81573832608cc85e31c9
parent8639eee7b73960103f50866bbf9531768a1a52b9 (diff)
evergreen : more regs
-rw-r--r--avivotool.c46
-rw-r--r--radeon_reg.h14
2 files changed, 35 insertions, 25 deletions
diff --git a/avivotool.c b/avivotool.c
index 0137b8f..240f523 100644
--- a/avivotool.c
+++ b/avivotool.c
@@ -936,11 +936,26 @@ static uint32_t eg_offsets[] = { EVERGREEN_CRTC0_REGISTER_OFFSET, EVERGREEN_CRTC
void eg_cmd_regs(const char *type)
{
int show_all = (strcmp(type, "all") == 0);
+ int show_mc = (show_all || strstr(type, "mc"));
int show_grphs = 0;
int i;
uint32_t tmp, tmp1;
char tmpname[10];
+ if (show_mc) {
+ printf("\nMemory controller:\n");
+ SHOW_REG(MC_VM_FB_LOCATION);
+ SHOW_REG(MC_FUS_VM_FB_OFFSET);
+ SHOW_REG(MC_VM_AGP_TOP);
+ SHOW_REG(MC_VM_AGP_BOT);
+ SHOW_REG(MC_VM_AGP_BASE);
+ SHOW_REG(MC_VM_SYSTEM_APERTURE_LOW_ADDR);
+ SHOW_REG(MC_VM_SYSTEM_APERTURE_HIGH_ADDR);
+ SHOW_REG(MC_VM_SYSTEM_APERTURE_DEFAULT_ADDR);
+ SHOW_REG(VM_CONTEXT0_PAGE_TABLE_BASE_ADDR);
+ SHOW_REG(VM_CONTEXT0_PAGE_TABLE_START_ADDR);
+ SHOW_REG(VM_CONTEXT0_PAGE_TABLE_END_ADDR);
+ }
for (i = 0; i < EG_NUM_OFFSETS; i++) {
tmp = EG_GET_MODE_REG(i, EVERGREEN_CRTC_CONTROL);
tmp1 = EG_GET_MODE_REG(i, EVERGREEN_CUR_CONTROL);
@@ -1027,6 +1042,10 @@ void eg_cmd_regs(const char *type)
printf("\n");
if (show_all) {
+ for (i = 0x1410 ; i < 0x1600; i+=4)
+ SHOW_UNKNOWN_REG(i);
+ for (i = 0x2000 ; i < 0x2800; i+=4)
+ SHOW_UNKNOWN_REG(i);
for (i = 0x6250 ; i < 0x626c; i+=4)
SHOW_UNKNOWN_REG(i);
for (i = 0x6400 ; i < 0x641c; i+=4)
@@ -1055,32 +1074,9 @@ void eg_cmd_regs(const char *type)
SHOW_UNKNOWN_REG(i);
- for (i = 0x6fac ; i <= 0x7014; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x79f0 ; i < 0x7a78; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x7bac ; i <= 0x7c14; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x107ac ; i <= 0x10814; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x113ac ; i <= 0x11414; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x11fac ; i <= 0x12014; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x12bac ; i <= 0x12c14; i+=4)
- SHOW_UNKNOWN_REG(i);
-
- for (i = 0x71f0 ; i <= 0x7220; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x7df0 ; i <= 0x7e20; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x109f0 ; i <= 0x10a20; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x115f0 ; i <= 0x11620; i+=4)
- SHOW_UNKNOWN_REG(i);
- for (i = 0x121f0 ; i <= 0x12220; i+=4)
+ for (i = 0x8000 ; i <= 0xa000; i+=4)
SHOW_UNKNOWN_REG(i);
- for (i = 0x12df0 ; i <= 0x12e20; i+=4)
+ for (i = 0x28000 ; i <= 0x2a000; i+=4)
SHOW_UNKNOWN_REG(i);
}
}
diff --git a/radeon_reg.h b/radeon_reg.h
index 2951a7b..c5e57ff 100644
--- a/radeon_reg.h
+++ b/radeon_reg.h
@@ -3078,3 +3078,17 @@
#define EVERGREEN_DACA_CONTROL 0x6690
#define EVERGREEN_DACA_SOURCE_SELECT 0x6694
#define EVERGREEN_DACB_CONTROL 0x6790
+
+#define MC_VM_FB_LOCATION 0x2024
+#define MC_VM_AGP_TOP 0x2028
+#define MC_VM_AGP_BOT 0x202C
+#define MC_VM_AGP_BASE 0x2030
+#define MC_VM_SYSTEM_APERTURE_LOW_ADDR 0x2034
+#define MC_VM_SYSTEM_APERTURE_HIGH_ADDR 0x2038
+#define MC_VM_SYSTEM_APERTURE_DEFAULT_ADDR 0x203C
+
+#define MC_FUS_VM_FB_OFFSET 0x2898
+
+#define VM_CONTEXT0_PAGE_TABLE_BASE_ADDR 0x153c
+#define VM_CONTEXT0_PAGE_TABLE_END_ADDR 0x157c
+#define VM_CONTEXT0_PAGE_TABLE_START_ADDR 0x155c