[PATCH] Fix ConnectorTable crash in radeon_output.c

Hans Verkuil hverkuil at xs4all.nl
Fri Feb 24 02:24:21 PST 2012


Hi Alex,

A few weeks ago I spent some time trying to get my sam440ep PPC board to
work with a recent kernel/debian distro. I discovered a bug causing it
to crash. It's a regression of commit 82f12e5a40c1fbcb91910a0f8b725c34fff02aae
from January 2009. Clearly, this board isn't used very often :-)

It would be nice if this patch is merged.

I've also tried to get drm to work with this board, but unfortunately the colors
have the wrong endianness and I don't really have any idea how to fix that (or
even where to look for that matter). For the record, this board has a ATI Radeon
Mobility M9.

Regards,

	Hans

Patch description:

The sam440ep PPC board requires a ConnectorTable xorg.conf option, but putting
in that option causes the radeon driver to crash. I finally traced it to a
copy-and-paste bug in radeon_output.c as a result of a major rework in commit
82f12e5a40c1fbcb91910a0f8b725c34fff02aae.

The actual crash occurred in RADEONPrintPortMap().

Signed-off-by: Hans Verkuil <hverkuil at xs4all.nl>

diff --git a/src/radeon_output.c b/src/radeon_output.c
index ccde346..5abd60e 100644
--- a/src/radeon_output.c
+++ b/src/radeon_output.c
@@ -3002,9 +3002,9 @@ Bool RADEONSetupConnectors(ScrnInfoPtr pScrn)
 		info->BiosConnector[i].devices |= ATOM_DEVICE_CRT2_SUPPORT;
 		if (!radeon_add_encoder(pScrn,
 					radeon_get_encoder_id_from_supported_device(pScrn,
-										    ATOM_DEVICE_CRT1_SUPPORT,
+										    ATOM_DEVICE_CRT2_SUPPORT,
 										    2),
-					ATOM_DEVICE_CRT1_SUPPORT))
+					ATOM_DEVICE_CRT2_SUPPORT))
 		    return FALSE;
 		info->BiosConnector[i].load_detection = FALSE;
 		break;


More information about the xorg-driver-ati mailing list