atiext: Add DDC type to tables for radeon Linux driver (KMS) The connector info section needs a non-zero value in the DDC type field. Zero causes the Linux radeon driver to fail to initialize the DDC bus and then no connectors are found. DDC_DVI (0x2) is used here so that the GPIO_DVI_DDC register is used for the radeon. From what I have seen r128 drivers ignore this field entirely. Tested on Debian Squeeze (Linux 2.6.32) and Debian Trixie (Linux 6.12.94) with: qemu-system-x86_64 -vga none -device ati-vga,model=rv100,vgamem_mb=32 Signed-off-by: Chad Jablonski <chad@jablonski.xyz>
diff --git a/vgasrc/atiext.c b/vgasrc/atiext.c index 44c9afa..1b85796 100644 --- a/vgasrc/atiext.c +++ b/vgasrc/atiext.c
@@ -15,6 +15,9 @@ #include "svgamodes.h" +#define CONNECTOR_DVI_I_LEGACY 0x3 +#define DDC_DVI 0x2 + #define MM_INDEX 0x0000 #define MM_DATA 0x0004 #define CRTC_GEN_CNTL 0x0050 @@ -390,7 +393,7 @@ static struct ati_connector_table_s ati_connector_table VAR16 __aligned(16) = { .num_chip = 0x10, .num_connector = 1, - .flags = 0x3000, + .flags = (CONNECTOR_DVI_I_LEGACY << 12) | (DDC_DVI << 8) }; static void