Mesa (master): r600: add support for RS880

Alex Deucher agd5f at kemper.freedesktop.org
Sat Aug 22 15:46:33 UTC 2009


Module: Mesa
Branch: master
Commit: 17813931db4cc114262d306f4c1484cd353a13f9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=17813931db4cc114262d306f4c1484cd353a13f9

Author: Alex Deucher <alexdeucher at gmail.com>
Date:   Sat Aug 22 11:44:05 2009 -0400

r600: add support for RS880

---

 src/mesa/drivers/dri/r600/r700_chip.c              |    1 +
 src/mesa/drivers/dri/r600/r700_state.c             |    2 ++
 src/mesa/drivers/dri/radeon/radeon_chipset.h       |    7 +++++++
 .../drivers/dri/radeon/radeon_common_context.c     |    1 +
 src/mesa/drivers/dri/radeon/radeon_screen.c        |    8 ++++++++
 5 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/src/mesa/drivers/dri/r600/r700_chip.c b/src/mesa/drivers/dri/r600/r700_chip.c
index e1c0c34..550fb73 100644
--- a/src/mesa/drivers/dri/r600/r700_chip.c
+++ b/src/mesa/drivers/dri/r600/r700_chip.c
@@ -127,6 +127,7 @@ void r700SetupVTXConstants(GLcontext  * ctx,
     if ((context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV610) ||
 	(context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV620) ||
 	(context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RS780) ||
+	(context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RS880) ||
 	(context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV710))
 	    r700SyncSurf(context, paos->bo, RADEON_GEM_DOMAIN_GTT, 0, TC_ACTION_ENA_bit);
     else
diff --git a/src/mesa/drivers/dri/r600/r700_state.c b/src/mesa/drivers/dri/r600/r700_state.c
index 6b44cc0..97c7d7c 100644
--- a/src/mesa/drivers/dri/r600/r700_state.c
+++ b/src/mesa/drivers/dri/r600/r700_state.c
@@ -1579,6 +1579,7 @@ static void r700InitSQConfig(GLcontext * ctx)
     case CHIP_FAMILY_RV610:
     case CHIP_FAMILY_RV620:
     case CHIP_FAMILY_RS780:
+    case CHIP_FAMILY_RS880:
     default:
 	    num_ps_gprs = 84;
 	    num_vs_gprs = 36;
@@ -1661,6 +1662,7 @@ static void r700InitSQConfig(GLcontext * ctx)
     if ((context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV610) ||
         (context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV620) ||
 	(context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RS780) ||
+	(context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RS880) ||
         (context->radeon.radeonScreen->chip_family == CHIP_FAMILY_RV710))
 	    CLEARbit(r700->sq_config.SQ_CONFIG.u32All, VC_ENABLE_bit);
     else
diff --git a/src/mesa/drivers/dri/radeon/radeon_chipset.h b/src/mesa/drivers/dri/radeon/radeon_chipset.h
index a275c8f..0da1c0f 100644
--- a/src/mesa/drivers/dri/radeon/radeon_chipset.h
+++ b/src/mesa/drivers/dri/radeon/radeon_chipset.h
@@ -335,6 +335,12 @@
 #define PCI_CHIP_RS780_9615             0x9615
 #define PCI_CHIP_RS780_9616             0x9616
 
+#define PCI_CHIP_RS880_9710             0x9710
+#define PCI_CHIP_RS880_9711             0x9711
+#define PCI_CHIP_RS880_9712             0x9712
+#define PCI_CHIP_RS880_9713             0x9713
+#define PCI_CHIP_RS880_9714             0x9714
+
 #define PCI_CHIP_RV770_9440             0x9440
 #define PCI_CHIP_RV770_9441             0x9441
 #define PCI_CHIP_RV770_9442             0x9442
@@ -421,6 +427,7 @@ enum {
    CHIP_FAMILY_RV620,
    CHIP_FAMILY_RV635,
    CHIP_FAMILY_RS780,
+   CHIP_FAMILY_RS880,
    CHIP_FAMILY_RV770,
    CHIP_FAMILY_RV730,
    CHIP_FAMILY_RV710,
diff --git a/src/mesa/drivers/dri/radeon/radeon_common_context.c b/src/mesa/drivers/dri/radeon/radeon_common_context.c
index ad4584a..ef296e4 100644
--- a/src/mesa/drivers/dri/radeon/radeon_common_context.c
+++ b/src/mesa/drivers/dri/radeon/radeon_common_context.c
@@ -92,6 +92,7 @@ static const char* get_chip_family_name(int chip_family)
 	case CHIP_FAMILY_RV620: return "RV620";
 	case CHIP_FAMILY_RV635: return "RV635";
 	case CHIP_FAMILY_RS780: return "RS780";
+	case CHIP_FAMILY_RS880: return "RS880";
 	case CHIP_FAMILY_RV770: return "RV770";
 	case CHIP_FAMILY_RV730: return "RV730";
 	case CHIP_FAMILY_RV710: return "RV710";
diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c
index e28543d..10afe52 100644
--- a/src/mesa/drivers/dri/radeon/radeon_screen.c
+++ b/src/mesa/drivers/dri/radeon/radeon_screen.c
@@ -853,6 +853,14 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id)
       screen->chip_family = CHIP_FAMILY_RS780;
       screen->chip_flags = RADEON_CHIPSET_TCL;
       break;
+   case PCI_CHIP_RS880_9710:
+   case PCI_CHIP_RS880_9711:
+   case PCI_CHIP_RS880_9712:
+   case PCI_CHIP_RS880_9713:
+   case PCI_CHIP_RS880_9714:
+      screen->chip_family = CHIP_FAMILY_RS880;
+      screen->chip_flags = RADEON_CHIPSET_TCL;
+      break;
 
    case PCI_CHIP_RV770_9440:
    case PCI_CHIP_RV770_9441:




More information about the mesa-commit mailing list