aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/radeon/atom.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/gpu/drm/radeon/atom.c b/drivers/gpu/drm/radeon/atom.c
index 8e421f644a54..9b0773b75e86 100644
--- a/drivers/gpu/drm/radeon/atom.c
+++ b/drivers/gpu/drm/radeon/atom.c
@@ -733,16 +733,16 @@ static void atom_op_jump(atom_exec_context *ctx, int *ptr, int arg)
733static void atom_op_mask(atom_exec_context *ctx, int *ptr, int arg) 733static void atom_op_mask(atom_exec_context *ctx, int *ptr, int arg)
734{ 734{
735 uint8_t attr = U8((*ptr)++); 735 uint8_t attr = U8((*ptr)++);
736 uint32_t dst, src1, src2, saved; 736 uint32_t dst, mask, src, saved;
737 int dptr = *ptr; 737 int dptr = *ptr;
738 SDEBUG(" dst: "); 738 SDEBUG(" dst: ");
739 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1); 739 dst = atom_get_dst(ctx, arg, attr, ptr, &saved, 1);
740 SDEBUG(" src1: "); 740 mask = atom_get_src_direct(ctx, ((attr >> 3) & 7), ptr);
741 src1 = atom_get_src_direct(ctx, ((attr >> 3) & 7), ptr); 741 SDEBUG(" mask: 0x%08x", mask);
742 SDEBUG(" src2: "); 742 SDEBUG(" src: ");
743 src2 = atom_get_src(ctx, attr, ptr); 743 src = atom_get_src(ctx, attr, ptr);
744 dst &= src1; 744 dst &= mask;
745 dst |= src2; 745 dst |= src;
746 SDEBUG(" dst: "); 746 SDEBUG(" dst: ");
747 atom_put_dst(ctx, arg, attr, &dptr, dst, saved); 747 atom_put_dst(ctx, arg, attr, &dptr, dst, saved);
748} 748}