diff options
author | Dave Airlie <airlied@redhat.com> | 2010-08-10 10:47:47 +1000 |
---|---|---|
committer | Dave Airlie <airlied@airlied-rhel5.(none)> | 2010-11-12 09:24:34 +1000 |
commit | 68618a6b0406c8952f571bf2414dd2f6d9037219 (patch) | |
tree | c6c0d4580f18b641b5cb8b5c810e297d64af776f | |
parent | bd9d25c4271a30a64dcb0d78df630e49a9e2a802 (diff) |
evergreen: add initial dac support
-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 |