mesa: Changes to 'upstream-unstable'
configure.ac | 2
src/gallium/auxiliary/draw/draw_vs.h | 3
src/gallium/auxiliary/draw/draw_vs_aos_io.c | 4
src/gallium/winsys/r600/drm/radeon_pciid.c | 5
src/glsl/ast_function.cpp | 2
src/glsl/glcpp/glcpp-parse.c | 2
src/glsl/glcpp/glcpp-parse.y | 2
src/glsl/glsl_parser_extras.cpp | 2
src/mesa/drivers/dri/intel/intel_tex_copy.c | 13 +
src/mesa/drivers/dri/r300/compiler/memory_pool.c | 2
src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c | 121 ++++++++++----
src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h | 6
src/mesa/drivers/dri/r300/compiler/radeon_optimize.c | 12 -
src/mesa/drivers/dri/radeon/radeon_chipset.h | 5
src/mesa/drivers/dri/radeon/radeon_screen.c | 5
src/mesa/main/dlist.c | 6
src/mesa/main/teximage.c | 2
17 files changed, 142 insertions(+), 52 deletions(-)
New commits:
commit eaadbacb5c646b8f01ae63f0a1f9ec831058f363
Author: Brian Paul <brianp@vmware.com>
Date: Thu May 26 19:26:36 2011 -0600
mesa: s/height/depth/ in texsubimage()
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=37648
(cherry picked from commit 4609e80288bacf19af99b0ed7656eef9bb280912)
diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
index c5ae630..e72bb49 100644
--- a/src/mesa/main/teximage.c
+++ b/src/mesa/main/teximage.c
@@ -2616,7 +2616,7 @@ texsubimage(struct gl_context *ctx, GLuint dims, GLenum target, GLint level,
format, type, texImage)) {
/* error was recorded */
}
- else if (width > 0 && height > 0 && height > 0) {
+ else if (width > 0 && height > 0 && depth > 0) {
/* If we have a border, offset=-1 is legal. Bias by border width. */
switch (dims) {
case 3:
commit 9286d0ddd37e64c3e8c50bb7de1bd100969a5c98
Author: Kenneth Graunke <kenneth@whitecape.org>
Date: Tue Feb 1 00:20:01 2011 -0800
glsl: Fix memory error when creating the supported version string.
Passing ralloc_vasprintf_append a 0-byte allocation doesn't work. If
passed a non-NULL argument, ralloc calls strlen to find the end of the
string. Since there's no terminating '\0', it runs off the end.
Fixes a crash introduced in 14880a510a1a288df0778395097d5a52806abfb0.
(cherry-picked from commit a7d350790b4d0416117bc785aa77de52e9298a01)
diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp
index 3a17db8..3dffb33 100644
--- a/src/glsl/glsl_parser_extras.cpp
+++ b/src/glsl/glsl_parser_extras.cpp
@@ -97,7 +97,7 @@ _mesa_glsl_parse_state::_mesa_glsl_parse_state(struct gl_context *ctx,
? 100 : 110;
const unsigned highest_version =
(ctx->API == API_OPENGL) ? ctx->Const.GLSLVersion : 100;
- char *supported = (char *) ralloc_context(this);
+ char *supported = ralloc_strdup(this, "");
for (unsigned ver = lowest_version; ver <= highest_version; ver += 10) {
const char *const prefix = (ver == lowest_version)
commit c66ffcf6639dffa53050fb2ed5da7c5287cdc19a
Author: Kenneth Graunke <kenneth@whitecape.org>
Date: Tue Mar 1 11:15:34 2011 -0800
intel: Support glCopyTexImage() from ARGB8888 to XRGB8888.
Nexuiz was hitting a software fallback.
(cherry-picked from commit d1fc920f613aa349e6721963e22e12c6eb49e3f9)
diff --git a/src/mesa/drivers/dri/intel/intel_tex_copy.c b/src/mesa/drivers/dri/intel/intel_tex_copy.c
index c6bc3d9..de42ac3 100644
--- a/src/mesa/drivers/dri/intel/intel_tex_copy.c
+++ b/src/mesa/drivers/dri/intel/intel_tex_copy.c
@@ -78,6 +78,7 @@ do_copy_texsubimage(struct intel_context *intel,
{
struct gl_context *ctx = &intel->ctx;
struct intel_renderbuffer *irb;
+ bool copy_supported = false;
bool copy_supported_with_alpha_override = false;
intel_prepare_render(intel);
@@ -90,13 +91,21 @@ do_copy_texsubimage(struct intel_context *intel,
return GL_FALSE;
}
+ copy_supported = intelImage->base.TexFormat == irb->Base.Format;
+
+ /* Converting ARGB8888 to XRGB8888 is trivial: ignore the alpha bits */
+ if (irb->Base.Format == MESA_FORMAT_ARGB8888 &&
+ intelImage->base.TexFormat == MESA_FORMAT_XRGB8888) {
+ copy_supported = true;
+ }
+
+ /* Converting XRGB8888 to ARGB8888 requires setting the alpha bits to 1.0 */
if (irb->Base.Format == MESA_FORMAT_XRGB8888 &&
intelImage->base.TexFormat == MESA_FORMAT_ARGB8888) {
copy_supported_with_alpha_override = true;
}
- if (intelImage->base.TexFormat != irb->Base.Format &&
- !copy_supported_with_alpha_override) {
+ if (!copy_supported && !copy_supported_with_alpha_override) {
if (unlikely(INTEL_DEBUG & DEBUG_FALLBACKS))
fprintf(stderr, "%s mismatched formats %s, %s\n",
__FUNCTION__,
commit 4a14f76c69c71af8868747eed4999eed944af293
Author: José Fonseca <jfonseca@vmware.com>
Date: Wed May 18 13:42:52 2011 -0600
draw: Fix draw_variant_output::format's type.
(cherry picked from commit b79b05e17e197a7cdc523deff8f7ea456a91e8d0)
diff --git a/src/gallium/auxiliary/draw/draw_vs.h b/src/gallium/auxiliary/draw/draw_vs.h
index f9a0387..08175dd 100644
--- a/src/gallium/auxiliary/draw/draw_vs.h
+++ b/src/gallium/auxiliary/draw/draw_vs.h
@@ -33,6 +33,7 @@
#include "draw_context.h"
#include "draw_private.h"
+#include "draw_vertex.h"
struct draw_context;
@@ -48,7 +49,7 @@ struct draw_varient_input
struct draw_varient_output
{
- enum pipe_format format; /* output format */
+ enum attrib_emit format; /* output format */
unsigned vs_output:8; /* which vertex shader output is this? */
unsigned offset:24; /* offset into output vertex */
};
diff --git a/src/gallium/auxiliary/draw/draw_vs_aos_io.c b/src/gallium/auxiliary/draw/draw_vs_aos_io.c
index 8f8bbe7..f1dd448 100644
--- a/src/gallium/auxiliary/draw/draw_vs_aos_io.c
+++ b/src/gallium/auxiliary/draw/draw_vs_aos_io.c
@@ -384,7 +384,7 @@ static void emit_store_R8G8B8A8_UNORM( struct aos_compilation *cp,
static boolean emit_output( struct aos_compilation *cp,
struct x86_reg ptr,
struct x86_reg dataXMM,
- unsigned format )
+ enum attrib_emit format )
{
switch (format) {
case EMIT_1F:
@@ -422,7 +422,7 @@ boolean aos_emit_outputs( struct aos_compilation *cp )
unsigned i;
for (i = 0; i < cp->vaos->base.key.nr_outputs; i++) {
- unsigned format = cp->vaos->base.key.element[i].out.format;
+ enum attrib_emit format = cp->vaos->base.key.element[i].out.format;
unsigned offset = cp->vaos->base.key.element[i].out.offset;
unsigned vs_output = cp->vaos->base.key.element[i].out.vs_output;
commit 068926aaea395983a76541b432ac9654747893e3
Author: Brian Paul <brianp@vmware.com>
Date: Wed May 18 13:42:37 2011 -0600
glsl: add cast to silence signed/unsigned comparison warning
diff --git a/src/glsl/ast_function.cpp b/src/glsl/ast_function.cpp
index 9ff0c0d..ae34a5b 100644
--- a/src/glsl/ast_function.cpp
+++ b/src/glsl/ast_function.cpp
@@ -199,7 +199,7 @@ match_function_by_name(exec_list *instructions, const char *name,
const char *prefix = "candidates are: ";
- for (int i = -1; i < state->num_builtins_to_link; i++) {
+ for (int i = -1; i < (int) state->num_builtins_to_link; i++) {
glsl_symbol_table *syms = i >= 0 ? state->builtins_to_link[i]->symbols
: state->symbols;
f = syms->get_function(name);
commit a5c09690873d5b4726e48ab5e22063795a52fbc0
Author: Brian Paul <brianp@vmware.com>
Date: Wed May 18 13:42:13 2011 -0600
glsl: add static qualifier to silence warning
diff --git a/src/glsl/glcpp/glcpp-parse.c b/src/glsl/glcpp/glcpp-parse.c
index 78dd351..e5d7284 100644
--- a/src/glsl/glcpp/glcpp-parse.c
+++ b/src/glsl/glcpp/glcpp-parse.c
@@ -3154,7 +3154,7 @@ _token_list_trim_trailing_space (token_list_t *list)
}
}
-int
+static int
_token_list_is_empty_ignoring_space (token_list_t *l)
{
token_node_t *n;
diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y
index bf94592..678676a 100644
--- a/src/glsl/glcpp/glcpp-parse.y
+++ b/src/glsl/glcpp/glcpp-parse.y
@@ -829,7 +829,7 @@ _token_list_trim_trailing_space (token_list_t *list)
}
}
-int
+static int
_token_list_is_empty_ignoring_space (token_list_t *l)
{
token_node_t *n;
commit b6bca2811362d36ffcebeb7d7de24f147e74a1ed
Author: Matt Turner <mattst88@gmail.com>
Date: Mon May 9 00:17:05 2011 -0400
r300/compiler: align memory allocations to 8-bytes
Eliminates unaligned accesses on strict architectures. Spotted by Jay
Estabrook.
Signed-off-by: Matt Turner <mattst88@gmail.com>
NOTE: This is a candidate for the 7.10 branch.
(cherry picked from commit 86852236a396bd9932a6ab6e73def0c8ef2f23a5)
diff --git a/src/mesa/drivers/dri/r300/compiler/memory_pool.c b/src/mesa/drivers/dri/r300/compiler/memory_pool.c
index 76c7c60..ddcdddf 100644
--- a/src/mesa/drivers/dri/r300/compiler/memory_pool.c
+++ b/src/mesa/drivers/dri/r300/compiler/memory_pool.c
@@ -28,7 +28,7 @@
#define POOL_LARGE_ALLOC 4096
-#define POOL_ALIGN 4
+#define POOL_ALIGN 8
struct memory_block {
commit 348779a1fc2e106194992036f67c6a37dc574ad9
Author: José Fonseca <jose.r.fonseca@gmail.com>
Date: Thu May 12 01:08:56 2011 +0100
mesa: Fix GetVertexAttrib* inside display lists.
GetVertexAttrib*{,ARB} is no longer aliased to the NV calls.
This fixes tracing yofrankie with apitrace, given it requires accurate
results from GetVertexAttribiv*.
NOTE: This is a candidate for the stable branches.
diff --git a/src/mesa/main/dlist.c b/src/mesa/main/dlist.c
index 6c0c556..ef7829f 100644
--- a/src/mesa/main/dlist.c
+++ b/src/mesa/main/dlist.c
@@ -9587,9 +9587,9 @@ _mesa_create_save_table(void)
SET_DeleteProgramsNV(table, _mesa_DeletePrograms);
SET_GenProgramsNV(table, _mesa_GenPrograms);
SET_IsProgramNV(table, _mesa_IsProgramARB);
- SET_GetVertexAttribdvNV(table, _mesa_GetVertexAttribdvNV);
- SET_GetVertexAttribfvNV(table, _mesa_GetVertexAttribfvNV);
- SET_GetVertexAttribivNV(table, _mesa_GetVertexAttribivNV);
+ SET_GetVertexAttribdvARB(table, _mesa_GetVertexAttribdvARB);
+ SET_GetVertexAttribfvARB(table, _mesa_GetVertexAttribfvARB);
+ SET_GetVertexAttribivARB(table, _mesa_GetVertexAttribivARB);
SET_GetVertexAttribPointervNV(table, _mesa_GetVertexAttribPointervNV);
SET_ProgramEnvParameter4dARB(table, save_ProgramEnvParameter4dARB);
SET_ProgramEnvParameter4dvARB(table, save_ProgramEnvParameter4dvARB);
commit abf9217ea4c6451de5890bdcc7ea16db45eee3c3
Author: Tom Stellard <tstellar@gmail.com>
Date: Wed May 11 18:46:02 2011 -0700
r300/compiler: Limit instructions to 3 source selects
Some presubtract conversions were generating more than 3 source
selects.
https://bugs.freedesktop.org/show_bug.cgi?id=36527
(cherry picked from commit 4612554dce5d787fca9c85a67378024b336bd6ad)
Conflicts:
src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c
diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c
index 2482fc6..97cde72 100644
--- a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c
+++ b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.c
@@ -178,53 +178,71 @@ unsigned int rc_source_type_mask(unsigned int mask)
return ret;
}
+struct src_select {
+ rc_register_file File;
+ int Index;
+ unsigned int SrcType;
+};
+
struct can_use_presub_data {
- struct rc_src_register RemoveSrcs[3];
- unsigned int RGBCount;
- unsigned int AlphaCount;
+ struct src_select Selects[5];
+ unsigned int SelectCount;
+ const struct rc_src_register * ReplaceReg;
+ unsigned int ReplaceRemoved;
};
+static void can_use_presub_data_add_select(
+ struct can_use_presub_data * data,
+ rc_register_file file,
+ unsigned int index,
+ unsigned int src_type)
+{
+ struct src_select * select;
+
+ select = &data->Selects[data->SelectCount++];
+ select->File = file;
+ select->Index = index;
+ select->SrcType = src_type;
+}
+
+/**
+ * This callback function counts the number of sources in inst that are
+ * different from the sources in can_use_presub_data->RemoveSrcs.
+ */
static void can_use_presub_read_cb(
void * userdata,
struct rc_instruction * inst,
- rc_register_file file,
- unsigned int index,
- unsigned int mask)
+ struct rc_src_register * src)
{
struct can_use_presub_data * d = userdata;
- unsigned int src_type = rc_source_type_mask(mask);
- unsigned int i;
- if (file == RC_FILE_NONE)
+ if (!d->ReplaceRemoved && src == d->ReplaceReg) {
+ d->ReplaceRemoved = 1;
return;
-
- for(i = 0; i < 3; i++) {
- if (d->RemoveSrcs[i].File == file
- && d->RemoveSrcs[i].Index == index) {
- src_type &=
- ~rc_source_type_swz(d->RemoveSrcs[i].Swizzle, 4);
- }
}
- if (src_type & RC_SOURCE_RGB)
- d->RGBCount++;
+ if (src->File == RC_FILE_NONE)
+ return;
- if (src_type & RC_SOURCE_ALPHA)
- d->AlphaCount++;
+ can_use_presub_data_add_select(d, src->File, src->Index,
+ rc_source_type_swz(src->Swizzle, 4));
}
unsigned int rc_inst_can_use_presub(
struct rc_instruction * inst,
rc_presubtract_op presub_op,
unsigned int presub_writemask,
- struct rc_src_register replace_reg,
- struct rc_src_register presub_src0,
- struct rc_src_register presub_src1)
+ const struct rc_src_register * replace_reg,
+ const struct rc_src_register * presub_src0,
+ const struct rc_src_register * presub_src1)
{
struct can_use_presub_data d;
unsigned int num_presub_srcs;
+ unsigned int i;
const struct rc_opcode_info * info =
rc_get_opcode_info(inst->U.I.Opcode);
+ int rgb_count = 0, alpha_count = 0;
+ unsigned int src_type0, src_type1;
if (presub_op == RC_PRESUB_NONE) {
return 1;
@@ -244,15 +262,62 @@ unsigned int rc_inst_can_use_presub(
}
memset(&d, 0, sizeof(d));
- d.RemoveSrcs[0] = replace_reg;
- d.RemoveSrcs[1] = presub_src0;
- d.RemoveSrcs[2] = presub_src1;
+ d.ReplaceReg = replace_reg;
- rc_for_all_reads_mask(inst, can_use_presub_read_cb, &d);
+ rc_for_all_reads_src(inst, can_use_presub_read_cb, &d);
num_presub_srcs = rc_presubtract_src_reg_count(presub_op);
- if (d.RGBCount + num_presub_srcs > 3 || d.AlphaCount + num_presub_srcs > 3) {
+ src_type0 = rc_source_type_swz(presub_src0->Swizzle, 4);
+ can_use_presub_data_add_select(&d,
+ presub_src0->File,
+ presub_src0->Index,
+ src_type0);
+
+ if (num_presub_srcs > 1) {
+ src_type1 = rc_source_type_swz(presub_src1->Swizzle, 4);
+ can_use_presub_data_add_select(&d,
+ presub_src1->File,
+ presub_src1->Index,
+ src_type1);
+
+ /* Even if both of the presub sources read from the same
+ * register, we still need to use 2 different source selects
+ * for them, so we need to increment the count to compensate.
+ */
+ if (presub_src0->File == presub_src1->File
+ && presub_src0->Index == presub_src1->Index) {
+ if (src_type0 & src_type1 & RC_SOURCE_RGB) {
+ rgb_count++;
+ }
+ if (src_type0 & src_type1 & RC_SOURCE_ALPHA) {
+ alpha_count++;
+ }
+ }
+ }
+
+ /* Count the number of source selects for Alpha and RGB. If we
+ * encounter two of the same source selects then we can ignore the
+ * first one. */
+ for (i = 0; i < d.SelectCount; i++) {
+ unsigned int j;
+ unsigned int src_type = d.Selects[i].SrcType;
+ for (j = i + 1; j < d.SelectCount; j++) {
+ if (d.Selects[i].File == d.Selects[j].File
+ && d.Selects[i].Index == d.Selects[j].Index) {
+ src_type &= ~d.Selects[j].SrcType;
+ }
+ }
+ if (src_type & RC_SOURCE_RGB) {
+ rgb_count++;
+ }
+
+ if (src_type & RC_SOURCE_ALPHA) {
+ alpha_count++;
+ }
+ }
+
+ if (rgb_count > 3 || alpha_count > 3) {
return 0;
}
diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h
index 461ab9f..fd0a38b 100644
--- a/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h
+++ b/src/mesa/drivers/dri/r300/compiler/radeon_compiler_util.h
@@ -40,8 +40,8 @@ unsigned int rc_inst_can_use_presub(
struct rc_instruction * inst,
rc_presubtract_op presub_op,
unsigned int presub_writemask,
- struct rc_src_register replace_reg,
- struct rc_src_register presub_src0,
- struct rc_src_register presub_src1);
+ const struct rc_src_register * replace_reg,
+ const struct rc_src_register * presub_src0,
+ const struct rc_src_register * presub_src1);
#endif /* RADEON_PROGRAM_UTIL_H */
diff --git a/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c b/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c
index 4c02246..1ab5418 100644
--- a/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c
+++ b/src/mesa/drivers/dri/r300/compiler/radeon_optimize.c
@@ -70,9 +70,9 @@ static void copy_propagate_scan_read(void * data, struct rc_instruction * inst,
if(!rc_inst_can_use_presub(inst,
reader_data->Writer->U.I.PreSub.Opcode,
rc_swizzle_to_writemask(src->Swizzle),
- *src,
- reader_data->Writer->U.I.PreSub.SrcReg[0],
- reader_data->Writer->U.I.PreSub.SrcReg[1])) {
+ src,
+ &reader_data->Writer->U.I.PreSub.SrcReg[0],
+ &reader_data->Writer->U.I.PreSub.SrcReg[1])) {
reader_data->Abort = 1;
return;
}
@@ -424,9 +424,9 @@ static void presub_scan_read(
if (!rc_inst_can_use_presub(inst, *presub_opcode,
reader_data->Writer->U.I.DstReg.WriteMask,
- *src,
- reader_data->Writer->U.I.SrcReg[0],
- reader_data->Writer->U.I.SrcReg[1])) {
+ src,
+ &reader_data->Writer->U.I.SrcReg[0],
+ &reader_data->Writer->U.I.SrcReg[1])) {
reader_data->Abort = 1;
return;
}
commit 0309089e5a588d829624feaad42d527b010f2a5f
Author: Alex Buell <alex.buell@munted.org.uk>
Date: Fri May 6 12:01:35 2011 -0600
configure: bump LIBDRM_REQUIRED to 2.4.24
Signed-off-by: Brian Paul <brianp@vmware.com>
diff --git a/configure.ac b/configure.ac
index 6662b8a..ad9eb01 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,7 +18,7 @@ AC_CONFIG_AUX_DIR([bin])
AC_CANONICAL_HOST
dnl Versions for external dependencies
-LIBDRM_REQUIRED=2.4.15
+LIBDRM_REQUIRED=2.4.24
LIBDRM_RADEON_REQUIRED=2.4.17
DRI2PROTO_REQUIRED=2.1
GLPROTO_REQUIRED=1.4.11
commit a8032483ecc8750ad58d89c4d96af6ef82a475e2
Author: Kostas Georgiou <georgiou@opengamma.com>
Date: Fri May 6 13:10:38 2011 -0400
r600c/g: Add pci id for FirePro 2270
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
diff --git a/src/gallium/winsys/r600/drm/radeon_pciid.c b/src/gallium/winsys/r600/drm/radeon_pciid.c
index c278d45..1be220f 100644
--- a/src/gallium/winsys/r600/drm/radeon_pciid.c
+++ b/src/gallium/winsys/r600/drm/radeon_pciid.c
@@ -206,6 +206,7 @@ struct pci_id radeon_pci_id[] = {
{0x1002, 0x68e8, CHIP_CEDAR},
{0x1002, 0x68e9, CHIP_CEDAR},
{0x1002, 0x68f1, CHIP_CEDAR},
+ {0x1002, 0x68f2, CHIP_CEDAR},
{0x1002, 0x68f8, CHIP_CEDAR},
{0x1002, 0x68f9, CHIP_CEDAR},
{0x1002, 0x68fe, CHIP_CEDAR},
diff --git a/src/mesa/drivers/dri/radeon/radeon_chipset.h b/src/mesa/drivers/dri/radeon/radeon_chipset.h
index 1c3924e..35a9576 100644
--- a/src/mesa/drivers/dri/radeon/radeon_chipset.h
+++ b/src/mesa/drivers/dri/radeon/radeon_chipset.h
@@ -407,6 +407,7 @@
#define PCI_CHIP_CEDAR_68E8 0x68E8
#define PCI_CHIP_CEDAR_68E9 0x68E9
#define PCI_CHIP_CEDAR_68F1 0x68F1
+#define PCI_CHIP_CEDAR_68F2 0x68F2
#define PCI_CHIP_CEDAR_68F8 0x68F8
#define PCI_CHIP_CEDAR_68F9 0x68F9
#define PCI_CHIP_CEDAR_68FE 0x68FE
diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c
index 6efec34..6a49b0e 100644
--- a/src/mesa/drivers/dri/radeon/radeon_screen.c
+++ b/src/mesa/drivers/dri/radeon/radeon_screen.c
@@ -1107,6 +1107,7 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id)
case PCI_CHIP_CEDAR_68E8:
case PCI_CHIP_CEDAR_68E9:
case PCI_CHIP_CEDAR_68F1:
+ case PCI_CHIP_CEDAR_68F2:
case PCI_CHIP_CEDAR_68F8:
case PCI_CHIP_CEDAR_68F9:
case PCI_CHIP_CEDAR_68FE:
commit 8963295b1be45fdeca9fa60e3f7f60de79abbf0d
Author: Alex Deucher <alexdeucher@gmail.com>
Date: Tue May 3 16:20:24 2011 -0400
r600g: add new pci ids
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
diff --git a/src/gallium/winsys/r600/drm/radeon_pciid.c b/src/gallium/winsys/r600/drm/radeon_pciid.c
index 4e1e746..c278d45 100644
--- a/src/gallium/winsys/r600/drm/radeon_pciid.c
+++ b/src/gallium/winsys/r600/drm/radeon_pciid.c
@@ -177,6 +177,7 @@ struct pci_id radeon_pci_id[] = {
{0x1002, 0x688A, CHIP_CYPRESS},
{0x1002, 0x6898, CHIP_CYPRESS},
{0x1002, 0x6899, CHIP_CYPRESS},
+ {0x1002, 0x689b, CHIP_CYPRESS},
{0x1002, 0x689c, CHIP_HEMLOCK},
{0x1002, 0x689d, CHIP_HEMLOCK},
{0x1002, 0x689e, CHIP_CYPRESS},
@@ -187,7 +188,9 @@ struct pci_id radeon_pci_id[] = {
{0x1002, 0x68b0, CHIP_JUNIPER},
{0x1002, 0x68b8, CHIP_JUNIPER},
{0x1002, 0x68b9, CHIP_JUNIPER},
+ {0x1002, 0x68ba, CHIP_JUNIPER},
{0x1002, 0x68be, CHIP_JUNIPER},
+ {0x1002, 0x68bf, CHIP_JUNIPER},
{0x1002, 0x68c0, CHIP_REDWOOD},
{0x1002, 0x68c1, CHIP_REDWOOD},
{0x1002, 0x68c8, CHIP_REDWOOD},
@@ -459,6 +462,7 @@ struct pci_id radeon_pci_id[] = {
{0x1002, 0x6729, CHIP_BARTS},
{0x1002, 0x6738, CHIP_BARTS},
{0x1002, 0x6739, CHIP_BARTS},
+ {0x1002, 0x673e, CHIP_BARTS},
{0x1002, 0x6740, CHIP_TURKS},
{0x1002, 0x6741, CHIP_TURKS},
{0x1002, 0x6742, CHIP_TURKS},
commit 3371397b1a36232d3f1ce4fa6e0610a022c99da5
Author: Alex Deucher <alexdeucher@gmail.com>
Date: Tue May 3 16:18:58 2011 -0400
r600c: add new pci ids
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
diff --git a/src/mesa/drivers/dri/radeon/radeon_chipset.h b/src/mesa/drivers/dri/radeon/radeon_chipset.h
index 60943d1..1c3924e 100644
--- a/src/mesa/drivers/dri/radeon/radeon_chipset.h
+++ b/src/mesa/drivers/dri/radeon/radeon_chipset.h
@@ -427,7 +427,9 @@
#define PCI_CHIP_JUNIPER_68B0 0x68B0
#define PCI_CHIP_JUNIPER_68B8 0x68B8
#define PCI_CHIP_JUNIPER_68B9 0x68B9
+#define PCI_CHIP_JUNIPER_68BA 0x68BA
#define PCI_CHIP_JUNIPER_68BE 0x68BE
+#define PCI_CHIP_JUNIPER_68BF 0x68BF
#define PCI_CHIP_CYPRESS_6880 0x6880
#define PCI_CHIP_CYPRESS_6888 0x6888
@@ -435,6 +437,7 @@
#define PCI_CHIP_CYPRESS_688A 0x688A
#define PCI_CHIP_CYPRESS_6898 0x6898
#define PCI_CHIP_CYPRESS_6899 0x6899
+#define PCI_CHIP_CYPRESS_689B 0x689B
#define PCI_CHIP_CYPRESS_689E 0x689E
#define PCI_CHIP_HEMLOCK_689C 0x689C
@@ -459,6 +462,7 @@
#define PCI_CHIP_BARTS_6729 0x6729
#define PCI_CHIP_BARTS_6738 0x6738
#define PCI_CHIP_BARTS_6739 0x6739
+#define PCI_CHIP_BARTS_673E 0x673E
#define PCI_CHIP_TURKS_6740 0x6740
#define PCI_CHIP_TURKS_6741 0x6741
diff --git a/src/mesa/drivers/dri/radeon/radeon_screen.c b/src/mesa/drivers/dri/radeon/radeon_screen.c
index 2a7e2d0..6efec34 100644
--- a/src/mesa/drivers/dri/radeon/radeon_screen.c
+++ b/src/mesa/drivers/dri/radeon/radeon_screen.c
@@ -1133,7 +1133,9 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id)
case PCI_CHIP_JUNIPER_68B0:
case PCI_CHIP_JUNIPER_68B8:
case PCI_CHIP_JUNIPER_68B9:
+ case PCI_CHIP_JUNIPER_68BA:
case PCI_CHIP_JUNIPER_68BE:
+ case PCI_CHIP_JUNIPER_68BF:
screen->chip_family = CHIP_FAMILY_JUNIPER;
screen->chip_flags = RADEON_CHIPSET_TCL;
break;
@@ -1144,6 +1146,7 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id)
case PCI_CHIP_CYPRESS_688A:
case PCI_CHIP_CYPRESS_6898:
case PCI_CHIP_CYPRESS_6899:
+ case PCI_CHIP_CYPRESS_689B:
case PCI_CHIP_CYPRESS_689E:
screen->chip_family = CHIP_FAMILY_CYPRESS;
screen->chip_flags = RADEON_CHIPSET_TCL;
@@ -1177,6 +1180,7 @@ static int radeon_set_screen_flags(radeonScreenPtr screen, int device_id)
case PCI_CHIP_BARTS_6729:
case PCI_CHIP_BARTS_6738:
case PCI_CHIP_BARTS_6739:
+ case PCI_CHIP_BARTS_673E:
screen->chip_family = CHIP_FAMILY_BARTS;
screen->chip_flags = RADEON_CHIPSET_TCL;
break;
Reply to: