summaryrefslogtreecommitdiff
path: root/src/radeon_output.c
diff options
context:
space:
mode:
authorAlex Deucher <alex@samba.(none)>2008-01-02 16:27:19 -0500
committerAlex Deucher <alex@samba.(none)>2008-01-02 16:27:19 -0500
commitdab4dc285154d40303aadaa849b85f8e251e578e (patch)
tree212ddeec4429ddabd3dceca3d26c980565391007 /src/radeon_output.c
parente8e585651215b011e3ad07c59d0eab9107ccd8c6 (diff)
RADEON: add support for ATOM component video table
Component output is still not working.
Diffstat (limited to 'src/radeon_output.c')
-rw-r--r--src/radeon_output.c23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/radeon_output.c b/src/radeon_output.c
index 847e69a3..ecbc7b19 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -48,17 +48,20 @@
#include "radeon_tv.h"
#include "radeon_atombios.h"
-const char *MonTypeName[7] = {
+const char *MonTypeName[10] = {
"AUTO",
"NONE",
"CRT",
"LVDS",
"TMDS",
"CTV",
- "STV"
+ "STV",
+ "CV",
+ "HDMI",
+ "DP"
};
-const RADEONMonitorType MonTypeID[7] = {
+const RADEONMonitorType MonTypeID[10] = {
MT_UNKNOWN, /* this is just a dummy value for AUTO DETECTION */
MT_NONE, /* NONE -> NONE */
MT_CRT, /* CRT -> CRT */
@@ -66,6 +69,9 @@ const RADEONMonitorType MonTypeID[7] = {
MT_DFP, /* DFPs are driven via TMDS */
MT_CTV, /* CTV -> CTV */
MT_STV, /* STV -> STV */
+ MT_CV,
+ MT_HDMI,
+ MT_DP
};
const char *TMDSTypeName[4] = {
@@ -82,7 +88,7 @@ const char *DACTypeName[4] = {
"None"
};
-const char *ConnectorTypeName[15] = {
+const char *ConnectorTypeName[16] = {
"None",
"VGA",
"DVI-I",
@@ -95,6 +101,8 @@ const char *ConnectorTypeName[15] = {
"SCART",
"HDMI-A",
"HDMI-B",
+ "Unsupported",
+ "Unsupported",
"DIN",
"DisplayPort",
"Unsupported"
@@ -1183,6 +1191,11 @@ void RADEONSetOutputType(ScrnInfoPtr pScrn, RADEONOutputPrivatePtr radeon_output
case CONNECTOR_DVI_A:
output = OUTPUT_DVI_A; break;
case CONNECTOR_DIN:
+ if (radeon_output->devices & ATOM_DEVICE_CV_SUPPORT)
+ output = OUTPUT_CV;
+ else if (radeon_output->devices & ATOM_DEVICE_TV1_SUPPORT)
+ output = OUTPUT_STV;
+ break;
case CONNECTOR_STV:
output = OUTPUT_STV; break;
case CONNECTOR_CTV:
@@ -1704,7 +1717,7 @@ void RADEONInitConnector(xf86OutputPtr output)
if (OUTPUT_IS_DVI) {
I2CBusPtr pDVOBus;
radeon_output->rmx_type = RMX_OFF;
- if (radeon_output->TMDSType == TMDS_EXT) {
+ if ((!IS_AVIVO_VARIANT) && radeon_output->TMDSType == TMDS_EXT) {
#if defined(__powerpc__)
radeon_output->dvo_i2c_reg = RADEON_GPIO_MONID;
radeon_output->dvo_i2c_slave_addr = 0x70;