diff options
author | Alex Deucher <alexdeucher@gmail.com> | 2009-01-21 15:20:47 -0500 |
---|---|---|
committer | Alex Deucher <alexdeucher@gmail.com> | 2009-01-21 15:20:47 -0500 |
commit | 1305376b009d17d65b4935896dc35cb7530f7c52 (patch) | |
tree | 1056376459d3dd96921073e76d3e6d0edc303a37 /src | |
parent | 9e0cc0ca5d7bc68756ae92ee3b5b2392366be71a (diff) |
Move active_device setup to detect()
Also add encoder debugging printouts
Diffstat (limited to 'src')
-rw-r--r-- | src/radeon_atombios.c | 6 | ||||
-rw-r--r-- | src/radeon_output.c | 86 |
2 files changed, 49 insertions, 43 deletions
diff --git a/src/radeon_atombios.c b/src/radeon_atombios.c index 9a4927c4..c0bd48d5 100644 --- a/src/radeon_atombios.c +++ b/src/radeon_atombios.c @@ -2299,6 +2299,12 @@ RADEONGetATOMConnectorInfoFromBIOSConnectorTable (ScrnInfoPtr pScrn) } } + for (i = 0; i < ATOM_MAX_SUPPORTED_DEVICE; i++) { + if (info->encoders[i] != NULL) { + ErrorF("encoder: 0x%x\n", info->encoders[i]->encoder_id); + } + } + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Bios Connector table: \n"); for (i = 0; i < ATOM_MAX_SUPPORTED_DEVICE; i++) { if (info->BiosConnector[i].valid) { diff --git a/src/radeon_output.c b/src/radeon_output.c index 13243d6c..edbb8959 100644 --- a/src/radeon_output.c +++ b/src/radeon_output.c @@ -356,49 +356,6 @@ RADEONConnectorFindMonitor(xf86OutputPtr output) } } - if (radeon_output->MonType == MT_DFP) { - if (radeon_output->devices & ATOM_DEVICE_DFP1_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_DFP1_SUPPORT; - else if (radeon_output->devices & ATOM_DEVICE_DFP2_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_DFP2_SUPPORT; - else if (radeon_output->devices & ATOM_DEVICE_DFP3_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_DFP3_SUPPORT; - else if (radeon_output->devices & ATOM_DEVICE_DFP4_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_DFP4_SUPPORT; - else if (radeon_output->devices & ATOM_DEVICE_DFP5_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_DFP5_SUPPORT; - else - radeon_output->active_device = 0; - } else if (radeon_output->MonType == MT_CRT) { - if (radeon_output->devices & ATOM_DEVICE_CRT1_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_CRT1_SUPPORT; - else if (radeon_output->devices & ATOM_DEVICE_CRT2_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_CRT2_SUPPORT; - else - radeon_output->active_device = 0; - } else if (radeon_output->MonType == MT_LCD) { - if (radeon_output->devices & ATOM_DEVICE_LCD1_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_LCD1_SUPPORT; - else if (radeon_output->devices & ATOM_DEVICE_LCD2_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_LCD2_SUPPORT; - else - radeon_output->active_device = 0; - } else if ((radeon_output->MonType == MT_STV) || - (radeon_output->MonType == MT_CTV)){ - if (radeon_output->devices & ATOM_DEVICE_TV1_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_TV1_SUPPORT; - else if (radeon_output->devices & ATOM_DEVICE_TV2_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_TV2_SUPPORT; - else - radeon_output->active_device = 0; - } else if (radeon_output->MonType == MT_CV) { - if (radeon_output->devices & ATOM_DEVICE_CV_SUPPORT) - radeon_output->active_device = ATOM_DEVICE_CV_SUPPORT; - else - radeon_output->active_device = 0; - } else - radeon_output->active_device = 0; - /* update panel info for RMX */ if (radeon_output->MonType == MT_LCD || radeon_output->MonType == MT_DFP) RADEONUpdatePanelSize(output); @@ -1085,6 +1042,49 @@ radeon_detect(xf86OutputPtr output) } } + if (radeon_output->MonType == MT_DFP) { + if (radeon_output->devices & ATOM_DEVICE_DFP1_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_DFP1_SUPPORT; + else if (radeon_output->devices & ATOM_DEVICE_DFP2_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_DFP2_SUPPORT; + else if (radeon_output->devices & ATOM_DEVICE_DFP3_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_DFP3_SUPPORT; + else if (radeon_output->devices & ATOM_DEVICE_DFP4_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_DFP4_SUPPORT; + else if (radeon_output->devices & ATOM_DEVICE_DFP5_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_DFP5_SUPPORT; + else + radeon_output->active_device = 0; + } else if (radeon_output->MonType == MT_CRT) { + if (radeon_output->devices & ATOM_DEVICE_CRT1_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_CRT1_SUPPORT; + else if (radeon_output->devices & ATOM_DEVICE_CRT2_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_CRT2_SUPPORT; + else + radeon_output->active_device = 0; + } else if (radeon_output->MonType == MT_LCD) { + if (radeon_output->devices & ATOM_DEVICE_LCD1_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_LCD1_SUPPORT; + else if (radeon_output->devices & ATOM_DEVICE_LCD2_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_LCD2_SUPPORT; + else + radeon_output->active_device = 0; + } else if ((radeon_output->MonType == MT_STV) || + (radeon_output->MonType == MT_CTV)){ + if (radeon_output->devices & ATOM_DEVICE_TV1_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_TV1_SUPPORT; + else if (radeon_output->devices & ATOM_DEVICE_TV2_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_TV2_SUPPORT; + else + radeon_output->active_device = 0; + } else if (radeon_output->MonType == MT_CV) { + if (radeon_output->devices & ATOM_DEVICE_CV_SUPPORT) + radeon_output->active_device = ATOM_DEVICE_CV_SUPPORT; + else + radeon_output->active_device = 0; + } else + radeon_output->active_device = 0; + if (radeon_output->MonType == MT_UNKNOWN) { output->subpixel_order = SubPixelUnknown; return XF86OutputStatusUnknown; |