diff --git a/src/rhd_card.h b/src/rhd_card.h index 89b674f..682f3a7 100644 --- a/src/rhd_card.h +++ b/src/rhd_card.h @@ -51,6 +51,9 @@ struct rhdCard { enum rhdCardFlag flags; struct rhdConnectorInfo ConnectorInfo[RHD_CONNECTORS_MAX]; +#ifdef ATOM_BIOS + enum atomDevice DeviceInfo[RHD_CONNECTORS_MAX][MAX_OUTPUTS_PER_CONNECTOR]; +#endif }; void RhdPrintConnectorInfo(int scrnIndex, struct rhdConnectorInfo *cp); diff --git a/src/rhd_connector.c b/src/rhd_connector.c index 9039bfe..ac1deb8 100644 --- a/src/rhd_connector.c +++ b/src/rhd_connector.c @@ -41,6 +41,10 @@ #endif #include "rhd.h" +#ifdef ATOM_BIOS +# include "rhd_atombios.h" +# include "rhd_atomout.h" +#endif #include "rhd_connector.h" #include "rhd_output.h" #include "rhd_regs.h" @@ -48,11 +52,6 @@ #include "rhd_card.h" #include "rhd_i2c.h" -#ifdef ATOM_BIOS -#include "rhd_atombios.h" -#include "rhd_atomout.h" -#endif - /* * */ diff --git a/src/rhd_ddia.c b/src/rhd_ddia.c index 80887a8..2dbc0a9 100644 --- a/src/rhd_ddia.c +++ b/src/rhd_ddia.c @@ -41,7 +41,6 @@ #include "rhd_connector.h" #include "rhd_output.h" #include "rhd_regs.h" -#include "rhd_card.h" #ifdef ATOM_BIOS #include "rhd_atombios.h" #endif diff --git a/src/rhd_dig.c b/src/rhd_dig.c index f9f07c9..2d34bb0 100644 --- a/src/rhd_dig.c +++ b/src/rhd_dig.c @@ -41,7 +41,6 @@ #include "rhd_connector.h" #include "rhd_output.h" #include "rhd_regs.h" -#include "rhd_card.h" #ifdef ATOM_BIOS #include "rhd_atombios.h" #endif diff --git a/src/rhd_driver.c b/src/rhd_driver.c index 245c25b..ec0987b 100644 --- a/src/rhd_driver.c +++ b/src/rhd_driver.c @@ -801,7 +801,33 @@ RHDPreInit(ScrnInfoPtr pScrn, int flags) goto error1; } #ifdef ATOM_BIOS - { + if (rhdPtr->Card + && rhdPtr->Card->ConnectorInfo[0].Type != RHD_CONNECTOR_NONE + && (rhdPtr->Card->DeviceInfo[0][0] != atomNone + || rhdPtr->Card->DeviceInfo[0][1] != atomNone)) { + int i, k = 0; + struct rhdAtomOutputDeviceList *OutputDeviceList = NULL; + + for (i = 0; i < RHD_CONNECTORS_MAX; i++) { + int j; + if (rhdPtr->Card->ConnectorInfo[i].Type == RHD_CONNECTOR_NONE) + break; + for (j = 0; j < MAX_OUTPUTS_PER_CONNECTOR; j++) { + if (rhdPtr->Card->ConnectorInfo[i].Output[j] != RHD_OUTPUT_NONE) { + if (!(OutputDeviceList = (struct rhdAtomOutputDeviceList *)xrealloc( + OutputDeviceList, sizeof (struct rhdAtomOutputDeviceList) * (k + 1)))) + break; + OutputDeviceList[k].ConnectorType = rhdPtr->Card->ConnectorInfo[i].Type; + OutputDeviceList[k].DeviceId = rhdPtr->Card->DeviceInfo[i][j]; + OutputDeviceList[k].OutputType = rhdPtr->Card->ConnectorInfo[i].Output[j]; + RHDDebug(rhdPtr->scrnIndex, "OutputDevice: C: 0x%2.2x O: 0x%2.2x DevID: 0x%2.2x\n", + OutputDeviceList[k].ConnectorType, OutputDeviceList[k].OutputType, + OutputDeviceList[k].DeviceId); + k++; + } + } + } + } else { struct rhdAtomOutputDeviceList *OutputDeviceList = NULL; AtomBiosArgRec data; diff --git a/src/rhd_id.c b/src/rhd_id.c index 305a766..f30fa42 100644 --- a/src/rhd_id.c +++ b/src/rhd_id.c @@ -32,12 +32,12 @@ #include "xf86Resources.h" #include "rhd.h" -#include "rhd_connector.h" -#include "rhd_output.h" -#include "rhd_card.h" #ifdef ATOM_BIOS #include "rhd_atombios.h" #endif +#include "rhd_connector.h" +#include "rhd_output.h" +#include "rhd_card.h" SymTabRec RHDChipsets[] = { /* R500 */ @@ -379,6 +379,10 @@ RHDIsIGP(enum RHD_CHIPSETS chipset) { {RHD_CONNECTOR_NONE, "NULL", RHD_DDC_NONE, RHD_HPD_NONE, \ { RHD_OUTPUT_NONE, RHD_OUTPUT_NONE}}} +#ifdef ATOM_BIOS +# define DEVINFO_EMPTY { { atomNone, atomNone } } +#endif + /* Sapphire X1550 reports 2x DVI-I but has only 1 VGA and 1 DVI */ #define VGA_A0_DVI_BB11 \ { {RHD_CONNECTOR_VGA, "VGA", RHD_DDC_0, RHD_HPD_NONE, \ @@ -410,6 +414,11 @@ RHDIsIGP(enum RHD_CHIPSETS chipset) {RHD_CONNECTOR_DVI, "DVI-I", RHD_DDC_0, RHD_HPD_0, \ { RHD_OUTPUT_DACB, RHD_OUTPUT_TMDSA}}} +#ifdef ATOM_BIOS +# define DEVINFO_MACBOOKPRO \ + { { atomLCD1, atomNone }, { atomCRT2, atomDFP1 } } +#endif + /* GeCube HD 2400PRO AGP (GC-RX24PGA2-D3) specifies 2 DVI again.*/ #define BROKEN_VGA_B1_DVI_AB00 \ { {RHD_CONNECTOR_DVI, "DVI-I", RHD_DDC_0, RHD_HPD_0, \ @@ -563,12 +572,12 @@ static struct rhdCard rhdCards[] = { /* 0x7100 : R520 : Radeon X1800 */ - { 0x7100, 0x1002, 0x0B12, "Powercolor X1800XT", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, + { 0x7100, 0x1002, 0x0B12, "Powercolor X1800XT", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, /* 0x7101 : M58 : Mobility Radeon X1800 XT */ /* 0x7102 : M58 : Mobility Radeon X1800 */ /* 0x7103 : M58 : Mobility FireGL V7200 */ /* 0x7104 : R520 : FireGL V7200 */ - { 0x7104, 0x1002, 0x0B32, "ATI FireGL V7200 RH", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, + { 0x7104, 0x1002, 0x0B32, "ATI FireGL V7200 RH", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, /* 0x7105 : R520 : FireGL V5300 */ /* 0x7106 : M58 : Mobility FireGL V7100 */ /* 0x7108 : R520 : Radeon X1800 */ @@ -579,28 +588,28 @@ rhdCards[] = /* 0x710E : R520 : FireGL V7300 */ /* 0x710F : R520 : FireGL V7350 */ /* 0x7140 : RV515 : Radeon X1600 */ - { 0x7140, 0x1787, 0x3000, "PowerColor X1550", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY }, + { 0x7140, 0x1787, 0x3000, "PowerColor X1550", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x7141 : RV505 : RV505 */ /* 0x7142 : RV515 : Radeon X1300/X1550 */ /* 0x7143 : RV505 : Radeon X1550 */ /* 0x7144 : M54 : M54-GL */ /* 0x7145 : M54 : Mobility Radeon X1400 */ - { 0x7145, 0x1028, 0x2002, "Dell Inspiron 9400", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0_DVI_A10 }, - { 0x7145, 0x1028, 0x2003, "Dell Inspiron 6400", RHD_CARD_FLAG_NONE, PANEL_B_VGA_A0 }, - { 0x7145, 0x1179, 0xFF10, "Toshiba Satellite A100-773", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A2 }, - { 0x7145, 0x1297, 0x3058, "M54P X1440", RHD_CARD_FLAG_HPDOFF, ID_CONNECTORINFO_EMPTY }, - { 0x7145, 0x1734, 0x10B0, "Fujitsu Siemens Amilo PI1536", RHD_CARD_FLAG_NONE, PANEL_B_DVI_AA1 }, - { 0x7145, 0x17AA, 0x2006, "Lenovo Thinkpad T60 (2007)", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0_DVI_A10 }, - { 0x7145, 0x17AA, 0x202A, "Lenovo Thinkpad Z61m", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0 }, + { 0x7145, 0x1028, 0x2002, "Dell Inspiron 9400", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0_DVI_A10, DEVINFO_EMPTY }, + { 0x7145, 0x1028, 0x2003, "Dell Inspiron 6400", RHD_CARD_FLAG_NONE, PANEL_B_VGA_A0, DEVINFO_EMPTY }, + { 0x7145, 0x1179, 0xFF10, "Toshiba Satellite A100-773", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A2, DEVINFO_EMPTY }, + { 0x7145, 0x1297, 0x3058, "M54P X1440", RHD_CARD_FLAG_HPDOFF, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, + { 0x7145, 0x1734, 0x10B0, "Fujitsu Siemens Amilo PI1536", RHD_CARD_FLAG_NONE, PANEL_B_DVI_AA1, DEVINFO_EMPTY }, + { 0x7145, 0x17AA, 0x2006, "Lenovo Thinkpad T60 (2007)", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0_DVI_A10, DEVINFO_EMPTY }, + { 0x7145, 0x17AA, 0x202A, "Lenovo Thinkpad Z61m", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0, DEVINFO_EMPTY }, /* 0x7146 : RV515 : Radeon X1300/X1550 */ - { 0x7146, 0x174B, 0x0470, "Sapphire X1300", RHD_CARD_FLAG_NONE, VGA_B1_DVI_AB01 }, - { 0x7146, 0x174B, 0x0920, "Sapphire X1300", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY }, - { 0x7146, 0x1545, 0x2350, "Visiontek C1550", RHD_CARD_FLAG_NONE, VISIONTEK_C1550 }, + { 0x7146, 0x174B, 0x0470, "Sapphire X1300", RHD_CARD_FLAG_NONE, VGA_B1_DVI_AB01, DEVINFO_EMPTY }, + { 0x7146, 0x174B, 0x0920, "Sapphire X1300", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, + { 0x7146, 0x1545, 0x2350, "Visiontek C1550", RHD_CARD_FLAG_NONE, VISIONTEK_C1550, DEVINFO_EMPTY }, /* 0x7147 : RV505 : Radeon X1550 64-bit */ - { 0x7147, 0x174B, 0x0840, "Sapphire X1550", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY }, + { 0x7147, 0x174B, 0x0840, "Sapphire X1550", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x7149 : M52 : Mobility Radeon X1300 */ - { 0x7149, 0x1028, 0x2003, "Dell Inspiron E1505", RHD_CARD_FLAG_NONE, PANEL_B_VGA_A0 }, - { 0x7149, 0x17AA, 0x2005, "Lenovo Thinkpad T60 (2008)", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0_DVI_A10 }, + { 0x7149, 0x1028, 0x2003, "Dell Inspiron E1505", RHD_CARD_FLAG_NONE, PANEL_B_VGA_A0, DEVINFO_EMPTY }, + { 0x7149, 0x17AA, 0x2005, "Lenovo Thinkpad T60 (2008)", RHD_CARD_FLAG_NONE, PANEL_B2_VGA_A0_DVI_A10, DEVINFO_EMPTY }, /* 0x714A : M52 : Mobility Radeon X1300 */ /* 0x714B : M52 : Mobility Radeon X1300 */ /* 0x714C : M52 : Mobility Radeon X1300 */ @@ -609,18 +618,18 @@ rhdCards[] = /* 0x714F : RV505 : RV505 */ /* 0x7151 : RV505 : RV505 */ /* 0x7152 : RV515 : FireGL V3300 */ - { 0x7152, 0x1002, 0x0B02, "ATI FireGL V3300", RHD_CARD_FLAG_NONE, DVI_BB11_DVI_AA00 }, + { 0x7152, 0x1002, 0x0B02, "ATI FireGL V3300", RHD_CARD_FLAG_NONE, DVI_BB11_DVI_AA00, DEVINFO_EMPTY }, /* 0x7153 : RV515 : FireGL V3350 */ /* 0x715E : RV515 : Radeon X1300 */ /* 0x715F : RV505 : Radeon X1550 64-bit */ /* 0x7180 : RV516 : Radeon X1300/X1550 */ /* 0x7181 : RV516 : Radeon X1600 */ /* 0x7183 : RV516 : Radeon X1300/X1550 */ - { 0x7183, 0x1028, 0x0D02, "Dell ATI Radeon X1300", RHD_CARD_FLAG_DMS59, DVI_AA00_DVI_BB11 }, - { 0x7183, 0x1092, 0x3000, "RX155PCI", RHD_CARD_FLAG_NONE, VGA_A0_TVB_DVI_BB12 }, + { 0x7183, 0x1028, 0x0D02, "Dell ATI Radeon X1300", RHD_CARD_FLAG_DMS59, DVI_AA00_DVI_BB11, DEVINFO_EMPTY }, + { 0x7183, 0x1092, 0x3000, "RX155PCI", RHD_CARD_FLAG_NONE, VGA_A0_TVB_DVI_BB12, DEVINFO_EMPTY }, /* 0x7186 : M64 : Mobility Radeon X1450 */ /* 0x7187 : RV516 : Radeon X1300/X1550 */ - { 0x7187, 0x174B, 0x3000, "RV516 : Radeon X1300/X1550", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY }, + { 0x7187, 0x174B, 0x3000, "RV516 : Radeon X1300/X1550", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x7188 : M64 : Mobility Radeon X2300 */ /* 0x718A : M64 : Mobility Radeon X2300 */ /* 0x718B : M62 : Mobility Radeon X1350 */ @@ -633,31 +642,31 @@ rhdCards[] = /* 0x719F : RV516 : Radeon X1550 64-bit */ /* 0x71C0 : RV530 : Radeon X1600 */ /* 0x71C1 : RV535 : Radeon X1650 */ - { 0x71C1, 0x174B, 0x0840, "Sapphire X1650 Pro", RHD_CARD_FLAG_NONE, DVI_AA00_DVI_BB11 }, + { 0x71C1, 0x174B, 0x0840, "Sapphire X1650 Pro", RHD_CARD_FLAG_NONE, DVI_AA00_DVI_BB11, DEVINFO_EMPTY }, /* 0x71C2 : RV530 : Radeon X1600 */ - { 0x71C2, 0x17EE, 0x71C0, "Connect3D Radeon X1600 Pro", RHD_CARD_FLAG_NONE, VGA_B1_DVI_AA00 }, + { 0x71C2, 0x17EE, 0x71C0, "Connect3D Radeon X1600 Pro", RHD_CARD_FLAG_NONE, VGA_B1_DVI_AA00, DEVINFO_EMPTY }, /* 0x71C3 : RV535 : Radeon X1600 */ /* 0x71C4 : M56 : Mobility FireGL V5200 */ - { 0x71C4, 0x17AA, 0x2007, "Lenovo Thinkpad T60p V5200", RHD_CARD_FLAG_HPDOFF, ID_CONNECTORINFO_EMPTY }, + { 0x71C4, 0x17AA, 0x2007, "Lenovo Thinkpad T60p V5200", RHD_CARD_FLAG_HPDOFF, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x71C5 : M56 : Mobility Radeon X1600 */ - { 0x71C5, 0x103C, 0x30A3, "HP/Compaq nc8430", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A0 }, - { 0x71C5, 0x103C, 0x30B4, "HP/Compaq nw8440", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A0 }, - { 0x71C5, 0x1043, 0x10B2, "Asus W3J/Z96", RHD_CARD_FLAG_NONE, PANEL_B_VGA_A0 }, - { 0x71C5, 0x106B, 0x0080, "Macbook Pro", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_MACBOOKPRO }, - { 0x71C5, 0x1179, 0xFF10, "Toshiba Satellite A100-237", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A2 }, + { 0x71C5, 0x103C, 0x30A3, "HP/Compaq nc8430", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A0, DEVINFO_EMPTY }, + { 0x71C5, 0x103C, 0x30B4, "HP/Compaq nw8440", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A0, DEVINFO_EMPTY }, + { 0x71C5, 0x1043, 0x10B2, "Asus W3J/Z96", RHD_CARD_FLAG_NONE, PANEL_B_VGA_A0, DEVINFO_EMPTY }, + { 0x71C5, 0x106B, 0x0080, "Macbook Pro", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_MACBOOKPRO, DEVINFO_MACBOOKPRO }, + { 0x71C5, 0x1179, 0xFF10, "Toshiba Satellite A100-237", RHD_CARD_FLAG_NONE, PANEL_B1_VGA_A2, DEVINFO_EMPTY }, /* 0x71C6 : RV530 : Radeon X1650 */ - { 0x71C6, 0x174B, 0x0850, "Sapphire X1650 Pro AGP", RHD_CARD_FLAG_NONE, VGA_A0_DVI_BA10 }, - { 0x71C6, 0x1462, 0x0400, "MSI RX1650 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, + { 0x71C6, 0x174B, 0x0850, "Sapphire X1650 Pro AGP", RHD_CARD_FLAG_NONE, VGA_A0_DVI_BA10, DEVINFO_EMPTY }, + { 0x71C6, 0x1462, 0x0400, "MSI RX1650 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, /* 0x71C7 : RV535 : Radeon X1650 */ - { 0x71C7, 0x1043, 0x01B6, "Asus EAX1650 Silent", RHD_CARD_FLAG_NONE, VGA_A0_DVI_BB10 }, - { 0x71C7, 0x1787, 0x2227, "Diamond Viper X1650 Pro", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY }, + { 0x71C7, 0x1043, 0x01B6, "Asus EAX1650 Silent", RHD_CARD_FLAG_NONE, VGA_A0_DVI_BB10, DEVINFO_EMPTY }, + { 0x71C7, 0x1787, 0x2227, "Diamond Viper X1650 Pro", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x71CD : RV530 : Radeon X1600 */ - { 0x71CD, 0x174B, 0x0840, "PCP X1600 400M/500E", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY }, + { 0x71CD, 0x174B, 0x0840, "PCP X1600 400M/500E", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x71CE : RV530 : Radeon X1300 XT/X1600 Pro */ /* 0x71D2 : RV530 : FireGL V3400 */ - { 0x71D2, 0x1002, 0x2B02, "ATI FireGL V3400", RHD_CARD_FLAG_NONE, DVI_BB11_DVI_AA00 }, + { 0x71D2, 0x1002, 0x2B02, "ATI FireGL V3400", RHD_CARD_FLAG_NONE, DVI_BB11_DVI_AA00, DEVINFO_EMPTY }, /* 0x71D4 : M66 : Mobility FireGL V5250 */ - { 0x71D4, 0x17AA, 0x20A4, "Lenovo Thinkpad T60p V5250", RHD_CARD_FLAG_HPDOFF, ID_CONNECTORINFO_EMPTY }, + { 0x71D4, 0x17AA, 0x20A4, "Lenovo Thinkpad T60p V5250", RHD_CARD_FLAG_HPDOFF, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x71D5 : M66 : Mobility Radeon X1700 */ /* 0x71D6 : M66 : Mobility Radeon X1700 XT */ /* 0x71DA : RV530 : FireGL V5200 */ @@ -673,24 +682,24 @@ rhdCards[] = /* 0x7247 : R580 : Radeon X1900 */ /* 0x7248 : R580 : Radeon X1900 */ /* 0x7249 : R580 : Radeon X1900 */ - { 0x7249, 0x1002, 0x0B12, "ATI Radeon X1900 XTX", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, - /* { 0x7249, 0x1043, 0x016B, "ATI Radeon X1900 XTX", RHD_CARD_FLAG_NONE, DVI_AB10_DVI_A01 }, */ + { 0x7249, 0x1002, 0x0B12, "ATI Radeon X1900 XTX", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, + /* { 0x7249, 0x1043, 0x016B, "ATI Radeon X1900 XTX", RHD_CARD_FLAG_NONE, DVI_AB10_DVI_A01, DEVINFO_EMPTY }, */ /* 0x724A : R580 : Radeon X1900 */ /* 0x724B : R580 : Radeon X1900 */ - { 0x724B, 0x1002, 0x0B12, "Sapphire Radeon X1900 GT", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_EMPTY }, + { 0x724B, 0x1002, 0x0B12, "Sapphire Radeon X1900 GT", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x724C : R580 : Radeon X1900 */ /* 0x724D : R580 : Radeon X1900 */ /* 0x724E : R580 : AMD Stream Processor */ /* 0x724F : R580 : Radeon X1900 */ /* 0x7280 : RV570 : Radeon X1950 */ - { 0x7280, 0x174B, 0xE190, "Sapphire X1950 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, - { 0x7280, 0x18BC, 0x2870, "GeCube X1950 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, + { 0x7280, 0x174B, 0xE190, "Sapphire X1950 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, + { 0x7280, 0x18BC, 0x2870, "GeCube X1950 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, /* 0x7281 : RV560 : RV560 */ /* 0x7283 : RV560 : RV560 */ /* 0x7284 : M68 : Mobility Radeon X1900 */ /* 0x7287 : RV560 : RV560 */ /* 0x7288 : RV570 : Radeon X1950 GT */ - { 0x7288, 0x174B, 0xE190, "Sapphire X1950 GT", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, + { 0x7288, 0x174B, 0xE190, "Sapphire X1950 GT", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, /* 0x7289 : RV570 : RV570 */ /* 0x728B : RV570 : RV570 */ /* 0x728C : RV570 : ATI FireGL V7400 */ @@ -699,9 +708,9 @@ rhdCards[] = /* 0x7293 : RV560 : Radeon X1650 */ /* 0x7297 : RV560 : RV560 */ /* 0x791E : RS690 : Radeon X1200 */ - { 0x791E, 0x1043, 0x826D, "Asus M2A-VM", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_EMPTY }, + { 0x791E, 0x1043, 0x826D, "Asus M2A-VM", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x791F : RS690 : Radeon X1200 */ - { 0x791F, 0x103C, 0x30C2, "HP/Compaq 6715b", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_EMPTY }, + { 0x791F, 0x103C, 0x30C2, "HP/Compaq 6715b", RHD_CARD_FLAG_NONE, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, /* 0x793F : RS600 : Radeon Xpress 1200 */ /* 0x7941 : RS600 : Radeon Xpress 1200 */ /* 0x7942 : RS600 : Radeon Xpress 1200 (M) */ @@ -710,7 +719,7 @@ rhdCards[] = /* 0x796E : RS740 : RS740 */ /* 0x796F : RS740 : RS740M */ /* 0x9400 : R600 : Radeon HD 2900 XT */ - { 0x9400, 0x1002, 0x3142, "Sapphire HD 2900 XT", RHD_CARD_FLAG_NONE, DVI_BB11_DVI_AA00 }, + { 0x9400, 0x1002, 0x3142, "Sapphire HD 2900 XT", RHD_CARD_FLAG_NONE, DVI_BB11_DVI_AA00, DEVINFO_EMPTY }, /* 0x9401 : R600 : Radeon HD 2900 XT */ /* 0x9402 : R600 : Radeon HD 2900 XT */ /* 0x9403 : R600 : Radeon HD 2900 Pro */ @@ -720,14 +729,14 @@ rhdCards[] = /* 0x940F : R600 : ATI FireGL V7600 */ /* 0x94C0 : RV610 : RV610 */ /* 0x94C1 : RV610 : Radeon HD 2400 XT */ - { 0x94C1, 0x1002, 0x0D02, "ATI Radeon HD 2400 XT", RHD_CARD_FLAG_DMS59, ID_CONNECTORINFO_EMPTY }, - { 0x94C1, 0x1028, 0x0D02, "Dell Radeon HD 2400 XT", RHD_CARD_FLAG_DMS59, ID_CONNECTORINFO_EMPTY }, - { 0x94C1, 0x174B, 0xE390, "Sapphire HD 2400 XT", RHD_CARD_FLAG_NONE, VGA_B1_DVI_AB00 }, + { 0x94C1, 0x1002, 0x0D02, "ATI Radeon HD 2400 XT", RHD_CARD_FLAG_DMS59, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, + { 0x94C1, 0x1028, 0x0D02, "Dell Radeon HD 2400 XT", RHD_CARD_FLAG_DMS59, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, + { 0x94C1, 0x174B, 0xE390, "Sapphire HD 2400 XT", RHD_CARD_FLAG_NONE, VGA_B1_DVI_AB00, DEVINFO_EMPTY }, /* 0x94C3 : RV610 : Radeon HD 2400 Pro */ - { 0x94C3, 0x1545, 0x3210, "ATI Radeon 2400HD Pro", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY }, - { 0x94C3, 0x174B, 0xE370, "Sapphire HD 2400 Pro", RHD_CARD_FLAG_NONE, VGA_A0_DVI_BB10 }, + { 0x94C3, 0x1545, 0x3210, "ATI Radeon 2400HD Pro", RHD_CARD_FLAG_HPDSWAP, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY }, + { 0x94C3, 0x174B, 0xE370, "Sapphire HD 2400 Pro", RHD_CARD_FLAG_NONE, VGA_A0_DVI_BB10, DEVINFO_EMPTY }, /* 0x94C4 : RV610 : ATI Radeon HD 2400 PRO AGP */ - { 0x94C4, 0x18BC, 0x0028, "GeCube Radeon HD 2400PRO AGP", RHD_CARD_FLAG_NONE, BROKEN_VGA_B1_DVI_AB00 }, + { 0x94C4, 0x18BC, 0x0028, "GeCube Radeon HD 2400PRO AGP", RHD_CARD_FLAG_NONE, BROKEN_VGA_B1_DVI_AB00, DEVINFO_EMPTY }, /* 0x94C5 : RV610 : ATI FireGL V4000 */ /* 0x94C6 : RV610 : RV610 */ /* 0x94C7 : RV610 : ATI Radeon HD 2350 */ @@ -741,20 +750,20 @@ rhdCards[] = /* 0x9583 : M76 : Mobility Radeon HD 2600 XT */ /* 0x9586 : RV630 : ATI Radeon HD 2600 XT AGP */ /* 0x9587 : RV630 : ATI Radeon HD 2600 Pro AGP */ - { 0x9587, 0x1002, 0x0028, "Sapphire Radeon HD 2600 PRO AGP", RHD_CARD_FLAG_NONE, DVI_BA10_TV_B0_VGA_A0 }, - { 0x9587, 0x1462, 0x0028, "MSI HD2600PRO AGP", RHD_CARD_FLAG_NONE, DVI_BA12_TV_B0_DVI_AB01 }, + { 0x9587, 0x1002, 0x0028, "Sapphire Radeon HD 2600 PRO AGP", RHD_CARD_FLAG_NONE, DVI_BA10_TV_B0_VGA_A0, DEVINFO_EMPTY }, + { 0x9587, 0x1462, 0x0028, "MSI HD2600PRO AGP", RHD_CARD_FLAG_NONE, DVI_BA12_TV_B0_DVI_AB01, DEVINFO_EMPTY }, /* 0x9588 : RV630 : Radeon HD 2600 XT */ - { 0x9588, 0x1002, 0x2542, "ATI Radeon HD 2600XT DDR4", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, - { 0x9588, 0x1448, 0x216C, "Gigabyte HD 2600 XT 256MB DDR3", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, - { 0x9588, 0x174B, 0x2E42, "Sapphire HD 2600 XT", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, + { 0x9588, 0x1002, 0x2542, "ATI Radeon HD 2600XT DDR4", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, + { 0x9588, 0x1448, 0x216C, "Gigabyte HD 2600 XT 256MB DDR3", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, + { 0x9588, 0x174B, 0x2E42, "Sapphire HD 2600 XT", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, /* 0x9589 : RV630 : Radeon HD 2600 Pro */ - { 0x9589, 0x174B, 0xE410, "Sapphire HD 2600 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01 }, + { 0x9589, 0x174B, 0xE410, "Sapphire HD 2600 Pro", RHD_CARD_FLAG_NONE, DVI_BA10_DVI_AB01, DEVINFO_EMPTY }, /* 0x958A : RV630 : Gemini RV630 */ /* 0x958B : M76 : Gemini ATI Mobility Radeon HD 2600 XT */ /* 0x958C : RV630 : ATI FireGL V5600 */ /* 0x958D : RV630 : ATI FireGL V3600 */ /* 0x958E : RV630 : ATI Radeon HD 2600 LE */ - { 0, 0, 0, NULL, 0, ID_CONNECTORINFO_EMPTY } /* KEEP THIS: End marker. */ + { 0, 0, 0, NULL, 0, ID_CONNECTORINFO_EMPTY, DEVINFO_EMPTY } /* KEEP THIS: End marker. */ }; /* diff --git a/src/rhd_lvtma.c b/src/rhd_lvtma.c index 69694c7..4b42d8d 100644 --- a/src/rhd_lvtma.c +++ b/src/rhd_lvtma.c @@ -47,7 +47,6 @@ #include "rhd_connector.h" #include "rhd_output.h" #include "rhd_regs.h" -#include "rhd_card.h" #ifdef ATOM_BIOS #include "rhd_atombios.h" #endif diff --git a/src/rhd_randr.c b/src/rhd_randr.c