Mailinglist Archive: radeonhd (300 mails)

< Previous Next >
Re: [radeonhd] 0x9610:0x1458:0xD000: Radeon HD 3200 on SB800 IGP
  • From: Evgeni Golov <sargentd@xxxxxxxxxxxx>
  • Date: Mon, 5 May 2008 23:37:34 +0200
  • Message-id: <20080505213736.90FF6177926@xxxxxxxxxxxxxxxxxx>
Hey,

On Mon, 5 May 2008 22:24:49 +0200 (CEST) Nicolas Bougues wrote:

Just wanted to let you know that this integrated chipset works well(*)
with current git radeonhd, provided the following line is added to
rhd_id.c

RHD_DEVICE_MATCH( 0x9610, RHD_RV620 )

Uh, this is new.
I've hacked a patch to support 9610, 9612, 9614 (these three are new
according to http://ati.amd.com/developer/PC_ID_LIST_April_2008.txt).

However I don't really know if it should really be handled as a RV620
(it's an RS780 if you can trust AMD/ATI). Attached another patch to
handle RS780 on its own (dunno if it will work, just compile-tested).

Regards
Evgeni
diff --git a/src/rhd.h b/src/rhd.h
index cbba493..ec389c6 100644
--- a/src/rhd.h
+++ b/src/rhd.h
@@ -86,6 +86,7 @@ enum RHD_CHIPSETS {
RHD_RV620,
RHD_M82,
RHD_RV635,
+ RHD_RS780,
RHD_M86,
RHD_CHIP_END
};
diff --git a/src/rhd_atombios.c b/src/rhd_atombios.c
index bdfad71..7ec074d 100644
--- a/src/rhd_atombios.c
+++ b/src/rhd_atombios.c
@@ -2462,6 +2462,7 @@ rhdAtomGetChipKind(enum RHD_CHIPSETS chipset)
case RHD_RS600:
case RHD_RS690:
case RHD_RS740:
+ case RHD_RS780:
return RHD_CHIP_IGP;
default:
return RHD_CHIP_EXTERNAL;
diff --git a/src/rhd_driver.c b/src/rhd_driver.c
index 2b801b4..7408dc6 100644
--- a/src/rhd_driver.c
+++ b/src/rhd_driver.c
@@ -2451,6 +2451,7 @@ rhdGetIGPNorthBridgeInfo(RHDPtr rhdPtr)
break;
case RHD_RS690:
case RHD_RS740:
+ case RHD_RS780:
#ifdef XSERVER_LIBPCIACCESS
rhdPtr->NBPciInfo = pci_device_find_by_slot(0,0,0,0);
#else
diff --git a/src/rhd_id.c b/src/rhd_id.c
index e00a660..19face1 100644
--- a/src/rhd_id.c
+++ b/src/rhd_id.c
@@ -75,6 +75,7 @@ SymTabRec RHDChipsets[] = {
{ RHD_R680, "R680" },
{ RHD_RV620, "RV620" },
{ RHD_RV635, "RV635" },
+ { RHD_RS780, "RS780" },
{ -1, NULL }
};

@@ -256,6 +257,9 @@ const PCI_ID_LIST = {
RHD_DEVICE_MATCH( 0x95CD, RHD_RV620 ), /* ATI FireMV 2450 */
RHD_DEVICE_MATCH( 0x95CE, RHD_RV620 ), /* ATI FireMV 2260 */
RHD_DEVICE_MATCH( 0x95CF, RHD_RV620 ), /* ATI FireMV 2260 */
+ RHD_DEVICE_MATCH( 0x9610, RHD_RS780 ), /* ATI Radeon HD 3200 Graphics */
+ RHD_DEVICE_MATCH( 0x9512, RHD_RS780 ), /* ATI Radeon HD 3200 Graphics */
+ RHD_DEVICE_MATCH( 0x9514, RHD_RS780 ), /* ATI Radeon HD 3200 Graphics */
LIST_END
};

@@ -347,7 +351,8 @@ RHDIdentify(int flags)
xf86Msg(X_NONE,
"\tRS600 : Radeon Xpress 1200, Xpress 1250.\n"
"\tRS690 : Radeon X1200, X1250, X1270.\n"
- /* NOT YET "\tRS740 : RS740, RS740M\n" */ );
+ /* NOT YET "\tRS740 : RS740, RS740M\n"
+ "\tRS780 : RS780, RS780M\n" */ );
xf86Msg(X_NONE, "\n");

xf86Msg(X_INFO, "%s: version %s, built from %s\n\n",
diff --git a/src/rhd_pll.c b/src/rhd_pll.c
index 6a07b8c..a47c1da 100644
--- a/src/rhd_pll.c
+++ b/src/rhd_pll.c
@@ -112,6 +112,7 @@ PLLElectrical(RHDPtr rhdPtr, CARD16 FeedbackDivider)
case RHD_RS600:
case RHD_RS690:
case RHD_RS740:
+ case RHD_RS780:
/* depending on MiscInfo also 0x00120004 */
return 0x00120704;
case RHD_R600:
diff --git a/src/rhd_id.c b/src/rhd_id.c
index e00a660..37bf66b 100644
--- a/src/rhd_id.c
+++ b/src/rhd_id.c
@@ -256,6 +256,9 @@ const PCI_ID_LIST = {
RHD_DEVICE_MATCH( 0x95CD, RHD_RV620 ), /* ATI FireMV 2450 */
RHD_DEVICE_MATCH( 0x95CE, RHD_RV620 ), /* ATI FireMV 2260 */
RHD_DEVICE_MATCH( 0x95CF, RHD_RV620 ), /* ATI FireMV 2260 */
+ RHD_DEVICE_MATCH( 0x9610, RHD_RV620 ), /* ATI Radeon HD 3200 Graphics */
+ RHD_DEVICE_MATCH( 0x9512, RHD_RV620 ), /* ATI Radeon HD 3200 Graphics */
+ RHD_DEVICE_MATCH( 0x9514, RHD_RV620 ), /* ATI Radeon HD 3200 Graphics */
LIST_END
};

< Previous Next >
Follow Ups
References