drm/nouveau/bios: fix thinko in ZM_MASK_ADD opcode
authorBen Skeggs <bskeggs@redhat.com>
Tue, 7 May 2013 05:54:13 +0000 (15:54 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Mon, 20 May 2013 03:23:42 +0000 (13:23 +1000)
Cc: stable@vger.kernel.org
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/core/subdev/bios/init.c

index c300b5e..c434d39 100644 (file)
@@ -1940,8 +1940,8 @@ init_zm_mask_add(struct nvbios_init *init)
        trace("ZM_MASK_ADD\tR[0x%06x] &= 0x%08x += 0x%08x\n", addr, mask, add);
        init->offset += 13;
 
-       data  =  init_rd32(init, addr) & mask;
-       data |= ((data + add) & ~mask);
+       data =  init_rd32(init, addr);
+       data = (data & mask) | ((data + add) & ~mask);
        init_wr32(init, addr, data);
 }