diff options
-rw-r--r-- | avivotool.c | 14 | ||||
-rw-r--r-- | radeon_reg.h | 8 |
2 files changed, 21 insertions, 1 deletions
diff --git a/avivotool.c b/avivotool.c index 5694956..184aa62 100644 --- a/avivotool.c +++ b/avivotool.c @@ -939,7 +939,7 @@ void eg_cmd_regs(const char *type) int i; uint32_t tmp, tmp1; char tmpname[10]; - + 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); @@ -1010,6 +1010,18 @@ void eg_cmd_regs(const char *type) EG_GET_MODE_REG(i, EVERGREEN_CUR_SURFACE_ADDRESS_HIGH), EG_GET_MODE_REG(i, EVERGREEN_CUR_SURFACE_ADDRESS)); } + + tmp = GET_REG(EVERGREEN_DACA_BASE); + printf("\nDACA: %s\n", tmp & 0x1 ? "Enabled" : "Disabled"); + if (tmp & 0x1) { + printf("DACA en:%08x source:%08x\n", tmp, GET_REG(EVERGREEN_DACA_BASE + AVIVO_DAC_SOURCE_SELECT_OFFSET)); + } + + tmp = GET_REG(EVERGREEN_DACB_BASE); + printf("DACB: %s\n", tmp & 0x1 ? "Enabled" : "Disabled"); + if (tmp & 0x1) { + printf("DACB: en:%08x source:%08x\n", tmp, GET_REG(EVERGREEN_DACB_BASE + AVIVO_DAC_SOURCE_SELECT_OFFSET)); + } printf("\n"); } diff --git a/radeon_reg.h b/radeon_reg.h index aa588f1..2951a7b 100644 --- a/radeon_reg.h +++ b/radeon_reg.h @@ -3070,3 +3070,11 @@ /* CRTC blocks at 0x6df0, 0x79f0, 0x105f0, 0x111f0, 0x11df0, 0x129f0 */ #define EVERGREEN_CRTC_CONTROL 0x6e70 + +/* from ROM tables, EG DAC1 is at 0x66b0 and DAC2 at 0x6790 */ +#define EVERGREEN_DACA_BASE 0x6690 +#define EVERGREEN_DACB_BASE 0x6790 + +#define EVERGREEN_DACA_CONTROL 0x6690 +#define EVERGREEN_DACA_SOURCE_SELECT 0x6694 +#define EVERGREEN_DACB_CONTROL 0x6790 |