summaryrefslogtreecommitdiff
path: root/avivotool.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2008-12-09 16:25:40 +1000
committerDave Airlie <airlied@redhat.com>2008-12-09 16:25:40 +1000
commitb3ca9904d6f024d5f81238b21010733799d0585d (patch)
treef39f7b5efdb62b1bcd8f3343770c8c2e7b16b725 /avivotool.c
parent1d13926df5f46d77152b69b0740b02c98a77dcfb (diff)
radeon: dacs have moved
Diffstat (limited to 'avivotool.c')
-rw-r--r--avivotool.c30
1 files changed, 22 insertions, 8 deletions
diff --git a/avivotool.c b/avivotool.c
index e502532..792e6eb 100644
--- a/avivotool.c
+++ b/avivotool.c
@@ -509,6 +509,7 @@ void radeon_output_set(char *output, char *status)
}
}
else if (strcmp(output, "dac1") == 0) {
+
if (on) {
SET_REG(AVIVO_DACA_FORCE_OUTPUT_CNTL, 0x00000000);
SET_REG(AVIVO_DACA_POWERDOWN, 0x00000000);
@@ -1208,11 +1209,17 @@ void radeon_cmd_regs(const char *type)
}
if (show_dac1) {
+ uint32_t base;
printf("\nDACA:\n");
- SHOW_REG(AVIVO_DACA_ENABLE);
- SHOW_REG(AVIVO_DACA_SOURCE_SELECT),
- SHOW_REG(AVIVO_DACA_FORCE_OUTPUT_CNTL);
- SHOW_REG(AVIVO_DACA_POWERDOWN);
+ if (card_info && IS_RV620(card_info))
+ base = RV620_DACA_BASE;
+ else
+ base = AVIVO_DACA_BASE;
+
+ SHOW_REG(base + AVIVO_DAC_ENABLE_OFFSET);
+ SHOW_REG(base + AVIVO_DAC_SOURCE_SELECT_OFFSET),
+ SHOW_REG(base + AVIVO_DAC_FORCE_OUTPUT_CNTL_OFFSET);
+ SHOW_REG(base + AVIVO_DAC_POWERDOWN_OFFSET);
}
else {
if (!shut_up)
@@ -1220,11 +1227,18 @@ void radeon_cmd_regs(const char *type)
}
if (show_dac2) {
+ uint32_t base;
printf("\nDACB:\n");
- SHOW_REG(AVIVO_DACB_ENABLE);
- SHOW_REG(AVIVO_DACB_SOURCE_SELECT),
- SHOW_REG(AVIVO_DACB_FORCE_OUTPUT_CNTL);
- SHOW_REG(AVIVO_DACB_POWERDOWN);
+ if (card_info && IS_RV620(card_info))
+ base = RV620_DACB_BASE;
+ else
+ base = AVIVO_DACB_BASE;
+ printf("\nDACB:\n");
+ SHOW_REG(base + AVIVO_DAC_ENABLE_OFFSET);
+ SHOW_REG(base + AVIVO_DAC_SOURCE_SELECT_OFFSET),
+ SHOW_REG(base + AVIVO_DAC_FORCE_OUTPUT_CNTL_OFFSET);
+ SHOW_REG(base + AVIVO_DAC_POWERDOWN_OFFSET);
+
}
else {
if (!shut_up)