summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Deucher <alexdeucher@gmail.com>2009-01-21 15:20:47 -0500
committerAlex Deucher <alexdeucher@gmail.com>2009-01-21 15:20:47 -0500
commit1305376b009d17d65b4935896dc35cb7530f7c52 (patch)
tree1056376459d3dd96921073e76d3e6d0edc303a37
parent9e0cc0ca5d7bc68756ae92ee3b5b2392366be71a (diff)
Move active_device setup to detect()
Also add encoder debugging printouts
-rw-r--r--src/radeon_atombios.c6
-rw-r--r--src/radeon_output.c86
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;